Subscribe to this thread
Home - General / All posts - Manifold 9 minilist
tjhb
8,063 post(s)
#22-Oct-17 01:39

Ages ago (months and months) Dimitri suggested writing a very short list of most desired items for the next Manifold GIS product.

It's really hard to get the list under 10 items (or so) but I've chewed on this long enough now (and cheated both with detail and by leaving out things that I am fairly sure will be implemented).

Here is my list. Comments welcome before I send it in.

1. Programmability

Rework/reenable the interface allowing .NET scripts to take and return a table. (Discussion here.)

Object Model or metadata access to the list of components currently selected in the Project pane, to the active window, and to the active layer in the current map (if any, in all cases).

2. Analysis

Line direction never changed on normalization of geometry. (With only necessary and trivial exceptions, e.g. where internal segments in opposite directions must be merged.)

Line direction never changed >= 180° on normalization of topology. (With the same exceptions as for normalizing geometry; and also that some lines may be completely eliminated.)

Line direction utilised in all networking tools, preferably as an option (to specify whether a network should be treated as a directed or an undirected graph).

Lines with Z values able to cross without intersection when used by networking tools (and on normalization).

3. Contents pane

3.1 Record panel

(a) Add a selection filter button.

With the filter enabled, clicking the next/previous buttons in the Record panel would take us through selected records, if any. Record order would follow the sort order currently defined for the table (View > Order), or arbitrary order if no order is defined.

(I don't know whether the selection scope should be limited to the first 50000 records of the table. See related comments starting here.)

An alternative to this would be a means to step through selected records under the Select panel, but I think the Record panel is a better place for it, not least since it already has a display of field values, which is what we really want.

(b) Add a Zoom to current object button, and a Pan to current object button.

These buttons would be useful mainly when the next/previous record buttons were also used, with or without the selection filter.

3.2 Locations panel (new)

This could equally be named the Views/Places/Bookmarks panel. It would be similar to the Views pane in Manifold 8.

(a) Locations listed by name (unique), backed by JSON properties:

{Component:<path>, Name:<string>, X:<x>, Y:<y>, Z:<z>, Scale:<1/v>}

(b) The JSON string for a location could be embedded in any text component, where it would be shown as a clickable link allowing direct navigation (see 4 below). It could also be shared by email etc.

(c) Right-click options for a location entry:

Copy. Copy JSON string to clipboard.

Paste. If the clipboard contains a compatible JSON string, create a new location entry with the given properties. Name conflicts would be resolved automatically by adding a number. The Component property would be ignored (it is redundant here; ignoring it allows sharing locations among components).

(d) Locations panel buttons:

Copy, Paste. Same functions as for right-click.

Export. Export all locations as JSON strings to file (.txt or .json).

Import. Add locations from file (.txt or .json). Name conflicts resolved automatically. Component property ignored.

(e) Locations could preferably be sorted either by name (the default) or by location (-Y then +X then -Z).

4. Text components

(a) Comments, Query, and Script components would allow locations to be embedded as hyperlinks, backed by strings in JSON format (see 2 above).

Clicking a location link would take us to the given component (if it exists), an X, Y, Z location and a scale (zoom factor).

(b) Right-click option for a location link:

Copy. Copy the underlying JSON string to the clipboard. (It could then be pasted into the Locations pane, sent by email, etc.)

(There was some discussion on this suggestion in the pre-Radian beta here.)

tjhb
8,063 post(s)
#22-Oct-17 02:16

(At least one typo. Point 4(a) should end with "see 3.2 above", not 2.)

Manifold User Community Use Agreement Copyright (C) 2007-2017 Manifold Software Limited. All rights reserved.