Informations / Informationen

Status of developing / Entwicklungsstatus:

Actual version / Aktuelle Version:
Version 0.8

Language / Sprache:
German, (English)

Licensing / Lizenzierung:

Environment / Umgebung:
ArchiCAD 11+

Target group / Zielgruppe:
GDL developers

Author / Autor:
Frank Beister

Documents / Dokumente

 TitleModified DateSize DescriptionClicks
Splines4/10/2013915.00 KBDownloadDemo screencast.1916
Post processing algorithm.4/9/20131.63 MBDownloadDemo screencast.1937
Bezier4/9/20131.28 MBDownloadDemo screencast.1914


The available free curves in ArchiCAD are 2D only and without implementation into other polygonal objects like arcs in slab boundarys. This macro objects offers this functiuonality in GDL by segmenting a given curve. It provides handles and tangents for graphical editing the spline in 2D. The macro is called for calculating the nodes and returns them in the buffer or from ArchiCAD10 on by a returning parameter array.
This object can not be placed in a project file. It is for programmers usage only!

News + History

Version 0.8 - Kubischer Spline - Sunday, April 7, 2013
Thanks to Arndt Brünners math site there is now a macro to solve linear equations and a cubic spline algorithm in the curve macro. Coworking with Andi Muttenthaler has brought theory into useable GDL.

new version. stable - Wednesday, March 27, 2013
Implemented UI for developer. Improved node correction. Clearified parameter usage.

Version 0.45 - Sunday, March 24, 2013
Implemented cardinal spline. Serachicng for cubic spline. Macro call functionality added. Several improvemnts for common usage. Perpendicular vector added.

Start of programming - Thursday, June 7, 2007
After a long search for it I found how to calculate a Bezier-curve. A milestone to program editable nurbs objects in GDL. But first I want to use the advantages of this knowledge for polyline based elements like fills, roofs and prisms. A 3d editable curve in space is in mind, looking forward to use it for a tube path. Have to do some homework in "polyline diting".


To do + wishlist


  • ...


  • Normalenvektoren an Teilungspunkten (wenn auf "freier Strecke" als Stützpunkte neu berechnen und einfügen ->Punkttyp): an Stützpunkten / in bestimmten Längenabständen (Anfang/Ende-Länge, gemittelt) / nach Anzahl über Gesamtlänge
  • Flächenfüllung ausgeben
  • Prüfung auf Überschneidung
  • Berechnung der Fläche und evt. des Schwerpunktes
  • Rückgabe der Werte optimieren


  • 3D Spline
  • Spline als Konstruktionslinie, Ergebnis sind 1 oder 2 Parallelverläufe