Subdivide Quadrilateral Area - Increment attribute value of new Features

I need to divide existing rectangle shapes into multiple smaller rectangle shapes. I can do this easily with the subdivide.

My problem is I want to add a value to an attribute as this happens. So if I want to break a rectangle into 20, I want to have the 20 new rectangles have a value for an attribute identifying that new shape - 1-20.

So, as an example, the first of 20 new shapes will have a value entered into "attribute" of 1, the 2nd shape will have a value of 2, etc.

Is there a way to do this?

Basically I am trying to turn drawing of solar sites from a string level drawing into module level drawings so I need thousands of string shapes broken into smaller module shapes with the same attributes from the original string shape copied to the new module shape with an addition attribute called module and have there be a value from 1-20 for each of the new module shapes.


Answers

  • Try exporting your data as a shapefile first and then importing it back in. Then when you peform the subdivide and other tasks on it the attributes will be included. If you have the Panel IDs listed in the <Feature Name> column, when you run the subdivide it will lask you if you want to Add Label Suffix to New Subdivision Features. If you check this it will add the numbers to the end e.g. PanelA1 will become PanelA1_1.


    You can copy the <Feature Name> attributes into a new column called Subdivisions and then use search and replace to delete the PanelIDs via Search > Search and Replace from the main dropdown menus and leave the Replace Text empty. This will leave you with just the subdivision numbers.

  • GlobalMapper Support figured it out. Below is the process.


    1. Select all your rectangle features

    2. Right-click > Crop/Combine/Split.. > Subdivide Quadrilateral Area

    3. In the Subdivide Quadrilateral area setting dialog, set row as 20 and columns as 1. Click OK.

    4. Store newly created featured in a new layer.

    5. Open the Attribute Editor table for this new layer and select the Attribute Calculator tool.

    6. Use the following formula to create a new field based on existing <Index in Layer>:

    if(mod(<Index in Layer>+1, 20)=0,20,mod(<Index in Layer>+1, 20))
    


    7. After clicking OK, you may be able to see the newly created field has stored the values ranging from 1 to 20.