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

10,126 post(s)
#27-Jun-22 17:06

SHA256: fbd42f654baaf1e816ff2f4f55d1539de4a072640f6d91b2573a3ce054359a90

SHA256: 7be0e5a5ea5f146f49e254128ad3033d2bae3569b8e24e6e855c763dde2285cb

SHA256: 5f0978fafd1800ff3dcfa8e09922f9272cf9a5059aa2f171fc118d3423c593ae

This build contains small improvements to the UI and a set of additions to MANIFOLDSRV which can now run as a Windows service. The next build will likely be 9.0.177, a new base build.


10,126 post(s)
#27-Jun-22 17:07


(Fix) The TileGeomOverlayCount query function on longer allows specifying a non-numeric field (specify either no field by passing an empty string, or a numeric field).

There is a new View - Panes - Fit to Screen command that puts all undocked panes and windows onto the screen. If there are multiple monitors, the command chooses the nearest monitor for each pane or window and puts the pane or window onto that monitor. The command helps locating panes and windows that have been accidentally moved nearly offscreen using the cursor or ended up being completely offscreen due to changes in monitors (may happen with remote desktop connections, among other scenarios).

The Register pane shows autoplaced control points with distinctive icon. Any editing done to an autoplaced control point removes the autoplaced flag.

Alt-clicking a control point in the Register pane pans map window to it.

Creating a new RTREE index for tiles suggests using fields starting with 'x' and 'y' for XY.

Editing a traverse allows entering a traverse command for the insert coordinate. This allows entering geometry data as a sequence of traverse commands, with visual feedback at every step.

MANIFOLDSRV binds to the network interface in exclusive mode for security purposes.

MANIFOLDSRV supports the -logfolder:xxx command-line option to redirect logs.

MANIFOLDSRV sets the console title to 'MANIFOLDSRV - addr:port - filename'. This both hides sensitive information like username and password and shows connection information even if it was not spelled out in the command line.

MANIFOLDSRV supports the -service command-line option to run as a service. There can be multiple MANIFOLDSRV services running on the same machine. If a particular service is configured to run under one of the non-interactive system accounts, such as SYSTEM, running it requires installing the Manifold license for all users. The default location for log files for a service is in the common application data folder (C:\ProgramData\Manifold\v9.0).

There is a new Tools - Manage Services command that lists MANIFOLDSRV services on the system. For each service, the command shows its name, path to the served file, network address and port, start type (auto / manual / disabled), status (starting, running, paused, stopping, stopped) and process ID. The command is only available in the regular product, not in Viewer, not in SQL for ArcGIS.

The Manage Services dialog allows double-clicking a service in the list of services to show service parameters: service name, path to the MANIFOLDSRV executable, path to the served file, network address, network port, start type, additional command-line options.

The Manage Services dialog allows refreshing the list of services.

The Manage Services dialog allows adding a new service, editing the parameters of an existing service and deleting selected services. Adding, editing and deleting services requires administrator rights. If the current user has no administrator rights, the dialog disables relevant functionality and shows a prompt to run the program as administrator.

Adding a new service in the Manage Services dialog suggests the network address (the first registered network address) and the network port (the first unused port between all listed MANIFOLDSRV services, starting with the default 9099 and going up), and provides a list of all registered and loopback network addresses to select from for convenience.

The Manage Services dialog allows starting and stopping selected services. Starting and stopping services requires administrator rights.

End of list.


7,066 post(s)
#27-Jun-22 18:37

Quick note: when launching Server from Tools - Manage Services, it's important that the license has been installed on the machine for all users. So, if you haven't done that, launch Manifold as administrator (right click on manifold.exe and choose Run as Administrator) and then in Help - About where it says "License for all user" if it doesn't say "Intalled", press the Install button. That's all you have to do.

Now you can launch Tools - Manage Server. Press the "new" button, add the service. Ctrl-click the row to select it, and then press the Run button in the toolbar. I found that a lot easier than launching a command prompt and doing the command line launch.

Mike Pelletier

2,038 post(s)
#27-Jun-22 20:20

Very much appreciate the improvement to traverses. Could it work such that after entering a bearing/distance and pressing Enter, the cursor stays in the dialogue ready for entering another bearing/distance? That would allow someone to keep entering values without having to grab the mouse for each entry.

Also, the software changes entered values by plus/minus about .000000000001 for some of the entered values. I believe this used to happen all the time, perhaps this is an improvement as well?


10,126 post(s)
#28-Jun-22 10:06

Entering a traverse command already keeps the cursor ready for entering another command.

Create a new drawing, open it, select the Create Line tool, click in the window to enter the first coordinate. Now go to the Info pane and switch to the Coordinates tab, select Show Traverse. The list of coordinates contains two traverse commands: 'SP xx yy' for the clicked coordinate, and an empty line for the insert coordinate. The focus is on the insert coordinate. Click into the insert coordinate, this will open the edit box. Enter 'DD 0 100' (go in the direction of 0 = North, walk for 100 meters). Press Enter. This replaces the insert coordinate with the entered coordinate, adds the new insert coordinate below it and moves the focus to the new insert coordinate. Or, we can say that this adds the new coordinate pushing the insert coordinate down. Press Enter to start entering a new command, enter 'AD 30 100' (change the direction 30 degrees right, walk for 100 meters), press Enter to finish the command. This adds one more coordinate and pushes the insert coordinate down again. You can just keep entering commands that way.

You can also enter new coordinates into the middle of an existing branch. Switch the cursor mode to Move Coordinates (this removes the insert coordinate), click the coordinate after which you want to enter new coordinates, switch the cursor mode to Insert Coordinates again (this adds the insert coordinate after the coordinate you clicked). Now enter a command into the insert coordinate. This adds a new coordinate and pushes the insert coordinate down. The coordinates after the insert coordinate also move as the traverse commands are being replayed from the new location / direction. You can keep entering new coordinates into the middle of the branch like that and every time the insert coordinate will keep being pushed down and the rest of the branch will move with the traverse commands being replayed.

Regarding entered values sometimes being changed to values 0.00000000001 higher or lower, that's the nature of floating-point math. There's no way to keep values absolutely precise. Some software packages mask that by changing the output to round to, say, 3 decimal digits. We don't do that because then exporting and re-importing the list of commands loses data, the re-imported coordinates are not where the original coordinates were.

Mike Pelletier

2,038 post(s)
#28-Jun-22 13:08

Ah, it was the need to press enter twice after entering values that threw me. FWIW, I played with this for quite awhile without finding that. Unless there's a good reason to keep it, you might consider making it a single enter.

Please can we get an option to round the values that get displayed to the user. I'm glad to hear the reason for keeping the precision and it is sound. However, displaying all that precision is harder on the eyes and makes it more difficult to edit values. It comes across as unnecessary complication to the average person. Thanks for considering.


10,126 post(s)
#28-Jun-22 15:03

We believe there is a good reason to keep an Enter (or F2 or click) to start editing: after you enter a coordinate, you might realize you need to correct it. If, after we accept an entered coordinate, we immediately start editing a new one, getting back to the entered coordinate needs an extra Escape. You might want to correct the coordinate you just entered because, say, the initial numbers you put were just in the right ballpark and now that you see how the numbers work on the screen, you want to tune them. Or you might want to correct it simply because you made a mistake during entering.

Also, saving an Enter from immediately starting to edit a new coordinate only works if there's no Alt-Tab / warning message / anything else in between. Whenever anything like that happens, the initiated editing is canceled. That's probably not going to happen often, but this still creates a situation of "after I enter a coordinate, I sometimes need to press Enter to start entering a new one". So the user will still have to know that he might need to press Enter anyway, only this time he will need to do that "sometimes".

Maybe we should add the "start editing a new coordinate after entering one" as an option. We'll think about it.

On rounding of values during display - we'll consider doing that as an option, too. Only for display purposes, not for export.

Mike Pelletier

2,038 post(s)
#28-Jun-22 20:10

Sounds good Adam. Perhaps make Tab act as two Enters.

218 post(s)
#28-Jun-22 08:41

I haven't worked with every software on the market, but with its speed, previews, variety of available registration methods, suggestions for locations of control points, and now with the way to navigate to control points fast, Manifold 9 is probably the best tool for georegistrations available.

Something nice is also that the Alt-clicking to pan to a registration points functionality can be used as a way to navigate to specific coordinates, until a dedicated "go to coordinates" tool is added.


10,126 post(s)
#28-Jun-22 09:50

Thank you! :-)

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