Subscribe to this thread
Home - Cutting Edge / All posts - Manifold System 9.0.169.10
adamw


8,764 post(s)
#11-Nov-19 16:50

9.0.169.10

Here is a new build.

We added a big set of changes for coordinate systems. We have also been working on additions to vector editing, but these additions are not yet ready and will come in the next build, which we are planning to have early next week.

Please install the latest Visual C++ redistributable from (same link as for the previous build):

https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads

Build:

manifold-9.0.169.10-x64.zip

SHA256: 68cc30baa13e542eda29a044c0073083cb3f1646354214fd09be81ff3588650f

manifold-viewer-9.0.169.10-x64.zip

SHA256: 7ff27404b09cc1db704409672959da80389eca775ea37fca4f3802397c0d86c4

adamw


8,764 post(s)
#11-Nov-19 16:54

Changes

Built-in coordinate system data include EPSG data up to EPSG 9.8.2 (previous data was up to EPSG 8.9). This adds about 1000 systems and transforms, deprecates a number of previous systems, etc.

New coordinate system type: Equal Earth. Built-in coordinate system data include EPSG systems based on Equal Earth.

New coordinate transform type: NADCON. Built-in coordinate system data include EPSG transforms based on NADCON. NADCON transforms use grid files, usually named XXX.LAS and XXX.LOS. Using a NADCON transform searches for these files in the Manifold folders (~\SHARED, etc). If one or both of the required files is not found or otherwise cannot be loaded (no permissions to read, corrupted data, or something similar), the transform logs the name of the file that failed to load and returns NULL values for the coordinates.

New coordinate transform type: NTv2. Built-in coordinate system data include EPSG transforms based on NTv2. NTv2 transforms use a single grid file, usually named XXX.GSB. If the file fails to load, the transform logs the name of the file and returns NULL values for the coordinates.

The Coordinate Base dialog allows setting the default transform from the edited base lat/lon system to WGS84 to NADCON or NTv2, and specifying the names of grid files to use. Browsing for a grid file allows picking a file outside of the Manifold folders, however, the transform will only use the name of the file and will always try to load the file only from the Manifold folders (otherwise the definition of the coordinate system is going to be tied to the machine).

Parsing coordinate systems supports WKT2. Printing coordinate systems supports WKT2 through the new CoordSystemWkt2 query function.

Coordinate system conversions support prime meridians. The Coordinate Base dialog shows prime meridians for base lat/lon systems and allows editing them for custom base lat/lon systems. (This was a long-standing omission. No more.)

Loading built-in coordinate system data looks for deprecated transforms and never uses them as default transforms to WGS84. (Deprecated transforms come from EPSG. Transforms are normally deprecated either because previously submitted data for a transform was incorrect, or because there is a newer transform which is better than the old one for some reason. In the latter case the deprecated transform is mostly fine, however because a lot of deprecated transforms fall into the former case, we just never use a deprecated transform as the default.)

Converting coordinates between coordinate systems better optimizes scales and shifts, reducing errors.

Coordinate transforms that use grid files can load grid files from a compressed GRIDS.DAT file. The GRIDS.DAT file has to be at the top of ~\SHARED folder (that is, it has to be at ...\SHARED\GRIDS.DAT, similarly to how ICUDTL.DAT has to be at ...\SHARED\ICUDTL.DAT or it won't load). The file contains 170+ grids referenced by EPSG: traditional NADCON, HARN NADCON, NTv2 grids for Australia, Austria, Brazil, Canada, France, Germany, Ireland, Japan, Netherlands, New Zealand, Portugal, Spain, Switzerland and the UK.

http://www.manifoldsoftwarelimited.mobi/downloads/grids.dat (233 MB)

Grid files loaded by coordinate transforms are cached. The cache is limited by 16 MB in 32-bit and unlimited in 64-bit.

Changing the coordinate system of a component displays available transform paths and allows picking a specific transform to use. For each transform path, the dialog displays the name of the transform, the names of referenced grid files if the transform uses grid files, and the reported accuracy if it is available. Deprecated transforms are shown with distinctive icons. (Transform paths are available when converting between EPSG systems. Several conversions with multiple transform path, any direction: EPSG:4312 <-> EPSG:4258, EPSG:4204 <-> EPSG:4326, EPSG:4267 <-> EPSG:4269.)

Built-in coordinate system data has been optimized to load faster. Legacy coordinate system data used in Manifold 8 superceded by GRIDS.DAT has been removed, reducing the size of installation packages noticeably.

New query functions:

  • CoordSystemMatchEpsg - takes a coordinate system definition and returns an EPSG code corresponding to it. The EPSG code is taken from the name, the definition of the referenced EPSG system is then checked against coordinate system parameters sans local scales and offsets.
  • CoordSystemMatchEpsgBase - takes a coordinate system definition and returns an EPSG code corresponding to its base lat/lon coordinate system. The EPSG code is taken from the name of the base, the definition of the referenced EPSG system is then checked against datum parameters.
  • CoordTransformChoices - takes a pair of coordinate systems and returns a table of transforms that can be used to convert coordinates between them.
  • CoordConverterMakePath - takes a pair of coordinate system and a conversion path hint, and returns the coordinate converter object that can be used to convert coordinates between the systems. The conversion path hint can be either 'EPSG:xxx' with the EPSG code of the transform to use in path, or 'GRID:xxx' with the name of the grid file of the transform to use in path. (For a list of transforms that could be used to convert coordinates between the specified systems, use CoordTransformChoices.)

New transform templates:

  • Viewshed Area, Visible from All - takes an image, a drawing with observers, visibility parameters and computes an area visible from all observers.
  • Viewshed Area, Visible from Any - as above, but computes an area visible from any observer.
  • Viewshed Image, Visibility of All - takes an image, a drawing with observers, visibility parameters and computes an image with a visibility index from all observers (a positive value if a pixel is visible, a negative value if it is not, the magnitude of the value conveys how visible or invisible the pixel is).
  • Viewshed Image, Visibility of Any - as above, but computes an image with a visibility index from any observer.
  • Viewshed Image, Visible Count - as above, but computes an image with the number of visible observers for each pixel.

Connecting to SQL Server supports the old SQL Server driver named SQLOLEDB. This allows working with SQL Server on systems which do not have the newer driver from SQL Server native client: SQLNCLI10 / SQLNCLI11.

Connecting to SQL Server supports the newest SQL Server driver named MSOLEDBSQL. This driver appeared fairly recently as a result of Microsoft un-deprecating OLE DB, and is recommended for all modern uses of SQL Server. The current latest version of the driver is available from:

https://www.microsoft.com/en-us/download/details.aspx?id=56730

(Fix) Connecting to SQL Server via ADO .NET no longer sometimes fails due to connection string version unsupported by the driver.

The Edit Schema dialog only allows creating indexes on computed fields in MAP files, not on other data sources.

The main menu and context menus allow using access keys (Alt-F-O for File - Open, etc). The names of all commands have been altered to specify access keys. If a menu includes multiple commands with the same access key, pressing it cycles between these commands without invoking them. Access keys for commands with plain key shortcuts without any modifiers (eg, M = Move Coordinates) coincide with those shortcuts.

The main menu and context menus honor the global system setting for showing access keys: only show access keys if the menu was activated using the keyboard and hide access keys if the menu was activated using the cursor (the default) or always show access keys.

Metes and bounds data in the Record pane are processed with higher tolerance for angles, to avoid turning tangent curves to non-tangent prematurely.

(Fix) Reading GDB data no longer sometimes produces NULL geoms. Exporting GDB no longer sometimes fails. (We had multiple regressions in this dataport, we think we have them all fixed.)

(Fix) Importing GDB with a table that contains multi-patch geometry no longer fails to import that table and stops the import.

End of list.

Dimitri


5,611 post(s)
#12-Nov-19 12:55

Not in the new features, but should be: Viewer and Manifold downloads have been reduced in size by approximately 20 MB, providing faster downloads and faster launches. Viewer is now only 47 MB and 64 bit Manifold only 60 MB. That's about a third smaller for Viewer and a fourth smaller for Manifold. In terms of capabilities,Viewer packs one heck of a punch for a mere 47 MB download. :-)

Regarding...

Coordinate transforms that use grid files can load grid files from a compressed GRIDS.DAT file

That's a 233 MB file, but if you have the individual files in their original formats, for your area of interest, you can just put them into the ~\SHARED\ folder for your installation, with no need to download the whole GRIDS.DAT file. (Many people working with NADCON or NTv2 already have the grid files for their area of interest.)

I expect that in the future Manifold will evolve means to simply download on the fly those grid files you need if you don't have them. That would make it possible to avoid downloading a whole world of grid files just in case you might need one of them. On the other hand, in an era of inexpensive 6 TB drives there's certainly some convenience in having all the world's grid files on hand if you are into NADCON or NTv2 transformations. :-)

rk
343 post(s)
#14-Nov-19 13:31

The main menu and context menus allow using access keys

Good, I'd like sub-menus to open immediately (or at least after pressing Space, Right Arrow is too far for me). I understand that this would interrupt cycling between commands with same access key. I would customize important keys not to collide. Currently my imagined 'Alt-V-D-D' shortcut for &View - Mo&de - &Default (previously Esc) does not do what I hoped it would. After Alt-V-D it expects me to open the sub-menu.

The main menu and context menus honor the global system setting for showing access keys: only show access keys if the menu was activated using the keyboard and hide access keys if the menu was activated using the cursor (the default) or always show access keys.

I turned 'Underline Access Keys' On (W10 1809). Otherwise context menu access keys won't activate.

Attachments:
Underline.jpg

adamw


8,764 post(s)
#14-Nov-19 16:41

We'll look into why a submenu with an unambiguous access key does not open immediately as you press that key - good catch.

Having to turn 'Underline Access Keys' on to use access keys in context menus is more or less by design - if that setting is turned off, we have to hide access keys unless the menu is activated from the keyboard and our context menus are always activated using the cursor. I suppose we can support activating context menus using Shift-F10, which would fall under Windows design guidelines, but according to those same guidelines, that has to largely ignore the cursor location and so is of limited use. A more promising area is using the keyboard to drive various custom controls that show dropdown menus, like the coordinate system picker - that's on the list, we do want as much as possible to be accessible using both the keyboard and the mouse.

rk
343 post(s)
#17-Nov-19 19:40

Estonian translation file updated.

No access keys yet.

Attachments:
ui.et.txt

KlausDE

6,356 post(s)
#20-Nov-19 07:00

german ui translation file for Mfd 9.0.169.10

Attachments:
ui.de.txt

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