Modeling
About Archicad's design tools, element connections, modeling concepts, etc.

Splitting a linear element into multiple equal elemnts

Mike96
Advocate
Is it possible to quickly and automatically split a linear element (line, polyline, arc, curve, wall, beam) into a number of equally long elements? For example, split a wall into 7 small wallies
Of course, it's easy to do it manually with straight elements by just using snapping, drawing one and arraying it, but with curved ones - it is not so easy already.
ArchiCAD 25

Windows 10
3 REPLIES 3
furtonb
Advisor
I dont know about an automatic way in vanilla AC.

I usually deal with problems like this:
Set snap point values : divisions to the desired number (e.g. 7), place hotspots to the snap points, then cut the original element by the hotspots.

https://helpcenter.graphisoft.com/user-guide/76358/

You can also use the "distribute along" command to get the cut points.

To do it more automatically or to deal with larger sets, you could use Grasshopper - maybe the Python API is capable of writing such a command (select object, ask for the number of divisions, ask whether to keep the original element, return the segments), but I haven't tried it so far.
odv.hu | actively using: AC25-27 INT | Rhino6-8 | macOS @ apple silicon / win10 x64
JSN
Enthusiast
Python won't help you much here at the moment as the documentation does not list such geometry manipulation options: http://archicadapi.graphisoft.com/archicadPythonPackage/archicad.html

I would suggest the Grasshopper way as well - would be very easy to accomplish. The only donwside you have there is that you cannot alter your elements but you can re-create them as you wish. So take that in mind.
Barry Kelly
Moderator
Einstein96 wrote:
Of course, it's easy to do it manually with straight elements by just using snapping, drawing one and arraying it, but with curved ones - it is not so easy already.

If you want a circular array then you can do that - it is an option in the array settings.
You can also distribute along a path (spline) if you do not want a circular distribution.

There is no way I know of to split an existing element into equal parts other than using the division snap points as mentioned and manually splitting the element.


Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11