I have an irregular polygon feature that I need to split into x number of equal area features. I need to be able to have the divisions be something other than north/south or east/west.
Example:
The black polygon in this case needs to be divided into 3 equal area polygons. I manually split these, but I need it to be more precise and the splits need to be aligned in parallel to each other. They need to be able to be calculated with an angle/rotation specification, and not just north/south or east/west.
What I have tried:
- This excellent code is the closest I have gotten to splitting an irregular polygon up into equal areas. Unfortunately, it only runs for north/south or east/west lines. I can't figure out how to rotate it and I don't have enough coding experience/time to efficiently edit it for my needs.
- Fishnet Tool (as suggested by this, this, this, and this) and this has an angle of rotation. However, this creates a grid, but not equal areas. Also, it is for the feature extent not shape.
- I cannot use the Parcel Fabrics tool (as suggested by this, this, this, and this) as I don't have the necessary licensing for it.
It really blows my mind that this isn't a tool that exists/is readily available.
Any advice/suggestions is welcomed. Or, if you really want to be a super hero, edit the code so I can specify an angle for rotation. Thank you very much!
for the hero that wants to take it on, it is far easier to rotate polygon by the desired rotation angle, proceed with Alex's implementation, then rotate result back.
This will work with projected coordinates. Take the polygon, subtract the centroid value from the polygon points (ie a translation to the origin). Rotate by your desired angle (rotation). Do the work (rotate the reverse) and translate back to the original location.