cancel
Showing results for
Did you mean:
cancel
Showing results for
Did you mean:
Developer forum

## API Calculate polyline length

Enthusiast

Is there a simple way to fetch polyline length apart from looping through memo data, vertexes and arcs?

I couldn't find one... has anyone already been through this?

1 ACCEPTED SOLUTION
4 REPLIES 4
Expert

I am guessing that you already tried the measure tool ? I am not as skilled with Archicad as some are but there must be a way to determine the length of a complicated polyline in creating a bill of quantities somehow ?

AC8.1 - AC24 + Ci Tools
Apple Studio CPU 10C
GPU 24C 7.8TF 32GB RAM
Enthusiast

Expert

Whoops ! I didn’t check the category first. That’s something I know nothing about lol. I hope you get a reply here from someone who knows. Have fun.

AC8.1 - AC24 + Ci Tools
Apple Studio CPU 10C
GPU 24C 7.8TF 32GB RAM
Solution
Enthusiast

``````// first point of memo.coords is dummy zeroes
for (short r = 2; r <= element.polyLine.poly.nCoords; r++) {
segmentLength = sqrt(pow((*memo.coords)[r].x - (*memo.coords)[r - 1].x, 2) + pow((*memo.coords)[r].y - (*memo.coords)[r - 1].y, 2));
arcIndex = FindArc(*memo.parcs, element.polyLine.poly.nArcs, r - 1);
if (arcIndex >= 0) {
// points with indexes r-1 and r are beginning and ending of an arc
segmentLength = abs((*memo.parcs)[arcIndex].arcAngle) * segmentLength / 2 / sin(abs((*memo.parcs)[arcIndex].arcAngle)/2);
}
totalLength += segmentLength;
}``````

Latest solutions

Most liked posts