[Frage] Globale Koordinaten im Skript abrufen


Hallo zusammen,

Ich würde gerne in meinem Python Skript auf die globalen Koordinaten eines Punkts zugreifen. In folgendem Thread (https://campus.allplan.com/fr/forum/topics/topic/topics/cad-smartparts/globale-allplan-koordinaten-im-smartpart-abrufen.html wird erwähnt, dass das mit Python möglich wäre. Ziel wäre dass ich zum Beispiel ein Symbolpunkt absetze und dann im gleichen Skript auch seine globalen Koordinaten erhalte und diese für weitere Zwecke verwenden kann. Wichtig ist hierbei, dass das in einem PythonPart abläuft und nicht in zwei getrennten. Ansonsten könnte ich mir vorstellen, dass ich ein 3D Symbolpunkt mit einem Part platziere und in einem anderen Part die Informationen über die Geometrie, ähnlich wie bei dem „GetObjectByAttributeValue“, ermittle.

Vielleicht hat ja jemand eine Idee und kann einen Denkanstoß in die richtige Richtung liefern.

Grüße
Niklas

Hilfreichste Antwort anzeigen Hilfreichste Antwort verbergen

Hallo Niklas,

das wäre mit PythonPart Framework ohne Probleme möglich, jedoch nur in einem Interactor PythonPart. Was dein Ziel ist, ist während die Maus geklickt wird, das Teil nicht nur abzusetzen, sondern auch zusätzliche Aktionen (Koordinaten lesen) durchführen. Das kann man ohne Probleme in einem Interactor implementieren, denn dort kannst Du:

  • den Event von Mausklick behandeln und darauf reagieren (sh. hier)
  • auf das CoordinateInput-Objekt zugreifen, was dir Ermöglicht, die Koordinaten des gerade von Maus gezeigten Punkt im globalen Koordinatensystem abzulesen. Hier beschreiben wir es ausführlicher

Zwar führen die links zu der Dokumentation von Allplan 2025, aber die zwei Themen sind in 2024 nicht wesentlich anders behandelt.

Also PythonPart als Interactor bauen und deine Aktionen in die process_mouse_msg Methode des Interactors implementieren.

Grüße,
Bart

Hallo Niklas,

das wäre mit PythonPart Framework ohne Probleme möglich, jedoch nur in einem Interactor PythonPart. Was dein Ziel ist, ist während die Maus geklickt wird, das Teil nicht nur abzusetzen, sondern auch zusätzliche Aktionen (Koordinaten lesen) durchführen. Das kann man ohne Probleme in einem Interactor implementieren, denn dort kannst Du:

  • den Event von Mausklick behandeln und darauf reagieren (sh. hier)
  • auf das CoordinateInput-Objekt zugreifen, was dir Ermöglicht, die Koordinaten des gerade von Maus gezeigten Punkt im globalen Koordinatensystem abzulesen. Hier beschreiben wir es ausführlicher

Zwar führen die links zu der Dokumentation von Allplan 2025, aber die zwei Themen sind in 2024 nicht wesentlich anders behandelt.

Also PythonPart als Interactor bauen und deine Aktionen in die process_mouse_msg Methode des Interactors implementieren.

Grüße,
Bart

Hallo Bart,

vielen Dank für den wieder einmal guten Tipp. Werde ich mir anschauen!