DE 3-Punkte-Kreis.GSM


 

Informations / Informationen

Status of developing / Entwicklungsstatus:
Stable

Actual version / Aktuelle Version:
15.1.2014

Language / Sprache:
German

Licensing / Lizenzierung:
public domain

Environment / Umgebung:
ArchiCAD 11+, Windows (development/est)

Target group / Zielgruppe:
GDL developers

Author(s) / Autor(en):
Frank Beister

Description / Beschreibung

arc/circle definition by given 3 points. ZIP for download contains 2 older Makros, which calculate the circle and sort the 3 points in ascending order. The main object draws a sampe circle.
Current version is a merged GSM macro, with improved calculation method.


Kreis(bogen), der durch den Einsetzpunkt und parametrische Punkte definiert ist. Berechnung des Mittelpunktes/ Radius erfolgt durch das Makro Kreis3P.gdl. Da für die Darstellung des Kreisbogens die Reihenfolge der 3 Punkte wesentlich ist, werden mit dem Makro Sort3x2.gdl die 3 Punkte in eine aufsteigende Reihenfolge (nach der x-Koordinate) gebracht.

3PKreis.gdl
Aufruf: CALL "Kreis3P" x1,y1, x2,y2, x3,y3, radius
'x1'/'y1' bis 'x3'/'y3' sind die Koordinaten der Punkte, 'radius' legt fest, ob der Radius (=0) ebenfalls berechnet und zurückgegeben werden soll oder nicht (=1).
Die Rückgabe der Werte erfolgt auf dem Stapelspeicher in der Reihenfolge x/y-Koordinate des Mittelpunktes und ggf. des Radius.

Sort3x2.gdl
Aufruf: CALL "Sort3x2" x1,y1, x2,y2, x3,y3

'x1'/'y1' bis 'x3'/'y3' sind die Koordinaten der Punkte, die in aufsteigender Reihenfolge auf dem Stapelspeicher wieder zurückgegeben werden.

Die aktuelle Version ist ein GSM-Macro-Objekt, das bei de Skripte vereint. Mit verbesserter Berechnungsmethode und soertierten Start- und Endwinkeln (gegen den Uhrzeigersinn).

Documents / Dokumente

 Bezeichnunggeändert amGröße BeschreibungKlicks
3-Punkte-Kreis.zip07.02.20072,46 KBDownloadObject file.2794

News + History

 
Bugfixing - Mittwoch, 15. Januar 2014
Merged the plain GDL scripts to one macro object and fixed a bug with arc direction.

 

To do + wishlist

Seems to be finished.