Subscribe to this thread
Home - General / All posts - Editing the shape of area objects - 9 workflow questions

921 post(s)
#24-Jan-18 06:02

Acknowledging the difference to what we're used to in 8, I'm reading the examples and searching the forum.

Found "snap" - still spacebar to toggle on/off.

I have replicated the bare bones of one of our workhorse 8 projects as a 9 project. A main drawing is irregular postcode areas for an Australian state. They change shape on occasion. Depending on the nature of change(s), in 8 we use a combination of:

  1. moving individual coordinates with "shared edit" turned on (made a note inthis thread, but though a separate thread more relevant).
  2. Creating line objects in a separate drawing, where the new boundaries will be, selecting the area(s) whose boundaries are to be changed, transform toolbar Target (selection of areas) / Operation (Split With) / Source_Argument (all objects or selection in lines drawing).

Providing transfer rules are appropriately set. it works.

In 9 creating a new lines drawing is fine. However, there isn't (yet) a shared edit option so 1. isn't available. There doesn't appear to be a "Split With" transform (yet) either so 2. seems out.

I thought I'd try an SQL approach (my Fehily is on the way). Keeping it as simple as possible by adding a line to the existing areas only drawing, however I can't add a line to the drawing - I get an invalid key field value (null) error - see screenshot. I can add a line fine to a separate dwg. I'm obviously missing something fundamental and would appreciate any clue. I did go through Art's Udemy Radian course, and some of it is coming back to me - dragging participating components into the table pane in the command window.

I'm probably not alone in finding the on-line manual heavy going when trying to find entry points.. Any leg up appreciated!

Adding a line to an area drawing invalid key field.PNG

8,094 post(s)
#24-Jan-18 06:23


I don’t know how far drawing a line will take this task, but for the immediate problem it looks as if the target drawing has a BTREE or BTREEDUP Index defined on a combination of fields—?—I’m guessing.

Use Ctrl-E from the table to inspect the schema.

(You might not have touched the schema since opening the project or importing the drawing—if so then an inherited situation.)

You might have to remove the composite BTREE index, and replace it with a BTREE only on mfd_id (or the imported analogue) before adding new objects.

Again just guessing.


921 post(s)
#24-Jan-18 07:06

Thanks Tim, I did add an extra geom for label purposes several days ago, that didn't cause any problems when creating centres for label anchors. The table seems to have both types of index for both geoms, screenshot of the table schema attached..

Area drawing schema.PNG

8,094 post(s)
#24-Jan-18 07:12

Is the problem the BTREE on ID? That field won’t automatically get a new unique value when you draw a new object (unlike mfd_id).

Try deleting the index named ID-x before drawing the line?

I think that’s probably it.


921 post(s)
#24-Jan-18 07:32

Yes, that was it. Deleted via table /edit / schema / clicked on ID-x, delete button became available, hit it and then hit update table. Create Line Tool now does so. Great!

Now to the SQL. In transform / expression, I'm guessing "GeomSplitToConvex(<area>, <tolerance>)" is the starting point. I don't want to be spoon fed with this, but a link to a help topic / help example would be really useful.


4,899 post(s)
#24-Jan-18 06:47

however I can't add a line to the drawing - I get an invalid key field value (null) error - see screenshot.

How are you trying to add the line to the drawing? I guess you are not using the Create Line tool, right?

If you copy/paste into the table, make sure to use Shift-Ctrl-V to paste ignoring mfd_id values in pasted records, not just Ctrl-V, which can cause collisions with existing mfd_id values.


921 post(s)
#24-Jan-18 07:10

Thanks Dimitri, yes I used the "create new line" tool, with the area drawing active in a map. That's when I discovered the "snap", I think previously when I commented I didn't have a drawing tool active, I apologise for the oversight.


7,972 post(s)
#25-Jan-18 07:37

Regarding shared edit - we are going to add it, but not right away (eg, not next week). The tool needs big changes from 8 due to the data model and data size, plus we want to extend it a bit, since we have to change it anyway.

Regarding Split With - you can perhaps do Normalize Topology on areas + lines, but that's suboptimal. We are going to add a function to split an area with a line, it is currently missing. After that, you will be able to do what you want using a query (we already have means to collapse a line set into a single line, etc). We will look into adding a transform, but given that you typically want the split objects to stay in the same drawing, we would likely first need to add a mode to do the equivalent of Add Component, but adding new objects to the existing component.

Also, we will try to report the name of the field which fails the insert in the "Invalid key field value (null)" message.

Thanks a lot for your notes, the specifics are very helpful.


1,867 post(s)
#25-Jan-18 11:15

In preparing vegetation maps (M8) I use Split With and Shared Edit routinely when trimming draft area maps to follow aerial photo features. Some of the split areas are then most likely re-assigned to an adjoining vegetation community type (ultimately different community type fragments are all merged using Dissolve). Snap and COGO tools are also essential to this process. For shared edit it would be great to be able to add a node to both sides of adjoined areas with the one click having them automatically snapped together.

Aussie Nature Shots


7,972 post(s)
#25-Jan-18 16:23

The last sentence is a good example of an extension to the tool we'd like to do. (In fact, I will check if we have this particular one on the list. If not, I will add it. Thanks!)


456 post(s)
#17-Jun-18 07:43

I have such information that occur when try to copy a row in table for duplicate item in drawing !!

I try to create a new row and copy paste geom content but don't succeed . ( build 8 may 2018)


join image "Because my dad promised me" interstellar from Manifold: Time by Stephen Baxter. power Math destruction


7,972 post(s)
#21-Jun-18 16:14

You probably have a BTREE / BTREEDUP index on some field and so when you are adding a new object you have to fill in the value for that field.

We realize it could be a bother to have to do so for each object if you are adding many, we have plans to make that scenario easier.

In the meantime, if the drawing is just some custom data (reasonably small) you can always drop the index temporarily, add all objects you want to add, then fill in the key values for them in the table window, then add the index back.

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