Support Forum

[Question] Schnittpunkte an Polygon mit ClosestIntersectionPoint [Solved]


Ich habe eine Reihe paralleler Linien und ein geschlossenes Polygon (Rectangle3D).
Das Polygon kann beliebig verschoben und gedreht werden. Alles nur in der XY-Ebene, alle Z-Werte bei 0.

Ich möchte mit dem Node ClosestIntersectionPoint alle möglichen Schnittpunkte zwischen den parallelen Linien und dem Polygon ermitteln, die dem jeweiligen Startpunkt der Linien an nächsten liegen. Also alle „südlichen“ Schnittpunkte am Polygon.

Wenn ich das Polygon direkt an das ClosestIntersectionPoint übergebe, erhalte ich nie ein Ergebnis. Egal welche Listenoperationen ich einstelle. (ClosestIntersectionPoint_w_Polygon.pyp)

Übergebe ich die einzelnen Linien des Polygons durch GetEdges an das ClosestIntersectionPoint, erhalte ich die Schnittpunkte, wenn die Listenoperationen entsprechend eingestellt sind. (ClosestIntersectionPoint_w_GetEdges.pyp)

Müsste es nicht auch ohne GetEdges funktionieren?

Gruß Felix
Allplan 2024-0-1

Attachments (2)

Type: image/png
Downloaded 56 times
Size: 105,06 KiB
Type: application/zip
Downloaded 429 times
Size: 3,84 KiB

Show solution Hide solution

Wenn Du wirklich nur einen Schnittpunkt (den nächsten zum Referenzpunkt) für den Test "einer Linie gegen ein Polygon" haben möchtest, mußt Du das Polygon3D in eine Polylinie3D umwandeln.
Dafür gibt es keinen Node, der das dirket kann, sondern Du muss die Punkte aus dem Polygon "extrahieren", und dann mit diesen Punkten eine Polyline3D erzeugen.

Attachments (1)

Type: image/png
Downloaded 59 times
Size: 119,49 KiB

Wenn Du wirklich nur einen Schnittpunkt (den nächsten zum Referenzpunkt) für den Test "einer Linie gegen ein Polygon" haben möchtest, mußt Du das Polygon3D in eine Polylinie3D umwandeln.
Dafür gibt es keinen Node, der das dirket kann, sondern Du muss die Punkte aus dem Polygon "extrahieren", und dann mit diesen Punkten eine Polyline3D erzeugen.

Attachments (1)

Type: image/png
Downloaded 59 times
Size: 119,49 KiB

Besten Dank für die Lösung!
Wenn ich das Ploygon durch eine Polyline ersetze und alle Inputs im ClosestIntersectionPoint als "One list with single elements" definiere, dann erhalte ich auch eine saubere Ergebnisliste.

Gruß Felix
Allplan 2024-0-1


https://connect.allplan.com/ uses cookies  -  More information

Accept