Table Of ContentGDL Reference Guide
®
GRAPHISOFT
Visit the GRAPHISOFT website at http://www.graphisoft.com for local distributor and product availability information.
GDL Reference Guide
Copyright© 2012 by GRAPHISOFT, all rights reserved. Reproduction, paraphrasing or translation without express prior written permission
is strictly prohibited.
Trademarks
®
ArchiCAD is a registered trademark and PlotMaker, Virtual Building and GDL are trademarks of GRAPHISOFT. All other trademarks are
the property of their respective holders.
Introduction
Introduction
This manual is a complete reference to the GRAPHISOFT's proprietary scripting language, GDL (Geometric Description Language). The manual is recommended
for those users who wish to expand on the possibilities presented by the construction tools and object libraries in GRAPHISOFT software. It gives a detailed description
of GDL, including syntax definitions, commands, variables, etc.
GDL Reference Guide iii
GDL Reference Guide
Table of Contents
General Overview ........................................................................................................................................................... 1
Starting Out .......................................................................................................................................................... 1
Scripting ............................................................................................................................................................... 1
3D Generation ....................................................................................................................................................... 7
GDL Syntax ................................................................................................................................................................ 10
Rules of GDL Syntax ............................................................................................................................................ 10
Statements ........................................................................................................................................................... 10
Line ................................................................................................................................................................... 10
Label .................................................................................................................................................................. 10
Characters ........................................................................................................................................................... 10
Strings ................................................................................................................................................................ 11
Identifiers ............................................................................................................................................................ 11
Variables ............................................................................................................................................................. 11
Parameters ........................................................................................................................................................... 12
Simple Types ........................................................................................................................................................ 12
Derived Types ...................................................................................................................................................... 12
Conventions used in this book ................................................................................................................................ 13
Coordinate Transformations ............................................................................................................................................ 14
2D Transformations .............................................................................................................................................. 14
ADD2 ........................................................................................................................................................ 14
MUL2 ......................................................................................................................................................... 14
ROT2 ......................................................................................................................................................... 15
3D Transformations .............................................................................................................................................. 15
ADDX ....................................................................................................................................................... 15
ADDY ........................................................................................................................................................ 15
ADDZ ........................................................................................................................................................ 15
ADD .......................................................................................................................................................... 15
MULX ........................................................................................................................................................ 16
MULY ........................................................................................................................................................ 16
MULZ ........................................................................................................................................................ 16
GDL Reference Guide iv
GDL Reference Guide
MUL .......................................................................................................................................................... 16
ROTX ........................................................................................................................................................ 16
ROTY ........................................................................................................................................................ 16
ROTZ ........................................................................................................................................................ 17
ROT .......................................................................................................................................................... 17
XFORM ..................................................................................................................................................... 17
Managing the Transformation Stack .......................................................................................................................... 18
DEL .......................................................................................................................................................... 18
DEL TOP ................................................................................................................................................... 18
NTR .......................................................................................................................................................... 18
3D Shapes ................................................................................................................................................................... 20
Basic Shapes ........................................................................................................................................................ 20
BLOCK ...................................................................................................................................................... 20
BRICK ....................................................................................................................................................... 20
CYLIND ..................................................................................................................................................... 21
SPHERE ..................................................................................................................................................... 21
ELLIPS ...................................................................................................................................................... 22
CONE ........................................................................................................................................................ 23
PRISM ........................................................................................................................................................ 23
PRISM_ ...................................................................................................................................................... 24
CPRISM_ .................................................................................................................................................... 27
CPRISM_{2} ............................................................................................................................................... 28
BPRISM_ .................................................................................................................................................... 29
FPRISM_ .................................................................................................................................................... 30
HPRISM_ ................................................................................................................................................... 32
SPRISM_ .................................................................................................................................................... 33
SPRISM_{2} ................................................................................................................................................ 34
SLAB ......................................................................................................................................................... 35
SLAB_ ........................................................................................................................................................ 36
CSLAB_ ...................................................................................................................................................... 36
CWALL_ ..................................................................................................................................................... 37
BWALL_ ..................................................................................................................................................... 40
XWALL_ .................................................................................................................................................... 42
GDL Reference Guide v
GDL Reference Guide
XWALL_{2} ................................................................................................................................................ 45
BEAM ........................................................................................................................................................ 48
CROOF_ .................................................................................................................................................... 48
CROOF_{2} ............................................................................................................................................... 51
MESH ........................................................................................................................................................ 52
ARMC ........................................................................................................................................................ 54
ARME ........................................................................................................................................................ 55
ELBOW ...................................................................................................................................................... 55
Planar Shapes in 3D .............................................................................................................................................. 56
HOTSPOT .................................................................................................................................................. 57
HOTLINE .................................................................................................................................................. 57
HOTARC .................................................................................................................................................... 57
LIN_ .......................................................................................................................................................... 57
RECT ......................................................................................................................................................... 57
POLY ......................................................................................................................................................... 58
POLY_ ....................................................................................................................................................... 58
PLANE ...................................................................................................................................................... 59
PLANE_ ..................................................................................................................................................... 59
CIRCLE ...................................................................................................................................................... 59
ARC ........................................................................................................................................................... 60
Shapes Generated from Polylines ............................................................................................................................. 60
EXTRUDE ................................................................................................................................................. 62
PYRAMID .................................................................................................................................................. 65
REVOLVE .................................................................................................................................................. 67
REVOLVE{2} ............................................................................................................................................. 69
RULED ...................................................................................................................................................... 73
RULED{2} ................................................................................................................................................. 74
SWEEP ...................................................................................................................................................... 77
TUBE ........................................................................................................................................................ 79
TUBEA ...................................................................................................................................................... 84
COONS ...................................................................................................................................................... 86
MASS ......................................................................................................................................................... 90
POLYROOF ................................................................................................................................................ 93
GDL Reference Guide vi
GDL Reference Guide
EXTRUDEDSHELL ..................................................................................................................................... 97
REVOLVEDSHELL ..................................................................................................................................... 99
REVOLVEDSHELLANGULAR .................................................................................................................... 101
RULEDSHELL .......................................................................................................................................... 102
Elements for Visualization ..................................................................................................................................... 104
LIGHT ..................................................................................................................................................... 104
PICTURE .................................................................................................................................................. 108
3D Text Elements ............................................................................................................................................... 110
TEXT ....................................................................................................................................................... 110
RICHTEXT ............................................................................................................................................... 111
Primitive Elements ............................................................................................................................................... 111
VERT ....................................................................................................................................................... 112
TEVE ....................................................................................................................................................... 112
VECT ....................................................................................................................................................... 112
EDGE ...................................................................................................................................................... 113
PGON ...................................................................................................................................................... 113
PGON{2} ................................................................................................................................................. 114
PIPG ........................................................................................................................................................ 114
COOR ...................................................................................................................................................... 114
BODY ...................................................................................................................................................... 116
BASE ........................................................................................................................................................ 119
Cutting in 3D ..................................................................................................................................................... 120
CUTPLANE .............................................................................................................................................. 120
CUTPLANE{2} ......................................................................................................................................... 120
CUTPLANE{3} ......................................................................................................................................... 120
CUTPOLY ................................................................................................................................................. 123
CUTPOLYA ............................................................................................................................................... 126
CUTSHAPE ............................................................................................................................................... 129
CUTFORM ................................................................................................................................................ 129
Solid Geometry Commands ................................................................................................................................... 131
GROUP - ENDGROUP .............................................................................................................................. 135
ADDGROUP ............................................................................................................................................. 135
SUBGROUP .............................................................................................................................................. 136
GDL Reference Guide vii
GDL Reference Guide
ISECTGROUP ........................................................................................................................................... 136
ISECTLINES ............................................................................................................................................. 136
PLACEGROUP .......................................................................................................................................... 136
KILLGROUP ............................................................................................................................................. 136
SWEEPGROUP ......................................................................................................................................... 137
CREATEGROUPWITHMATERIAL .............................................................................................................. 138
Binary 3D .......................................................................................................................................................... 139
BINARY ................................................................................................................................................... 139
2D Shapes ................................................................................................................................................................. 140
Drawing Elements ............................................................................................................................................... 140
HOTSPOT2 ............................................................................................................................................... 140
HOTLINE2 ............................................................................................................................................... 140
HOTARC2 ................................................................................................................................................ 140
LINE2 ...................................................................................................................................................... 141
RECT2 ...................................................................................................................................................... 141
POLY2 ...................................................................................................................................................... 141
POLY2_ .................................................................................................................................................... 142
POLY2_A .................................................................................................................................................. 143
POLY2_B .................................................................................................................................................. 143
POLY2_B{2} ............................................................................................................................................. 144
POLY2_B{3} ............................................................................................................................................. 144
POLY2_B{4} ............................................................................................................................................. 145
POLY2_B{5} ............................................................................................................................................. 145
ARC2 ........................................................................................................................................................ 146
CIRCLE2 .................................................................................................................................................. 146
SPLINE2 ................................................................................................................................................... 147
SPLINE2A ................................................................................................................................................ 149
PICTURE2 ................................................................................................................................................ 150
PICTURE2{2} ........................................................................................................................................... 150
Text Element ...................................................................................................................................................... 150
TEXT2 ..................................................................................................................................................... 150
RICHTEXT2 ............................................................................................................................................. 151
Binary 2D .......................................................................................................................................................... 151
GDL Reference Guide viii
GDL Reference Guide
FRAGMENT2 ............................................................................................................................................ 151
3D Projections in 2D ........................................................................................................................................... 151
PROJECT2 ................................................................................................................................................ 151
PROJECT2{2} ........................................................................................................................................... 152
PROJECT2{3} ........................................................................................................................................... 154
Drawings in the List ............................................................................................................................................ 155
DRAWING2 .............................................................................................................................................. 155
DRAWING3 .............................................................................................................................................. 155
DRAWING3{2} ......................................................................................................................................... 155
DRAWING3{3} ......................................................................................................................................... 155
Graphical Editing Using Hotspots .................................................................................................................................. 157
Status Codes ............................................................................................................................................................... 164
Status Code Syntax .............................................................................................................................................. 164
Additional Status Codes ........................................................................................................................................ 165
Previous part of the polyline: current position and tangent is defined ..................................................................... 166
Segment by absolute endpoint ........................................................................................................................ 166
Segment by relative endpoint ......................................................................................................................... 166
Segment by length and direction ..................................................................................................................... 167
Tangential segment by length ......................................................................................................................... 167
Set start point ............................................................................................................................................. 168
Close polyline ............................................................................................................................................. 168
Set tangent ................................................................................................................................................. 168
Set centerpoint ............................................................................................................................................ 169
Tangential arc to endpoint ............................................................................................................................. 169
Tangential arc by radius and angle .................................................................................................................. 170
Arc using centerpoint and point on the final radius ............................................................................................ 170
Arc using centerpoint and angle ..................................................................................................................... 171
Full circle using centerpoint and radius ............................................................................................................ 171
Attributes ................................................................................................................................................................... 177
Directives ........................................................................................................................................................... 177
Directives for 3D and 2D Scripts ................................................................................................................... 177
LET ................................................................................................................................................. 177
RADIUS ............................................................................................................................................ 177
GDL Reference Guide ix
GDL Reference Guide
RESOL ............................................................................................................................................. 178
TOLER ............................................................................................................................................. 179
PEN ................................................................................................................................................. 180
LINE_PROPERTY ............................................................................................................................. 181
[SET] STYLE ..................................................................................................................................... 181
Directives Used in 3D Scripts Only ................................................................................................................. 181
MODEL ............................................................................................................................................ 181
[SET] MATERIAL .............................................................................................................................. 182
SECT_FILL ....................................................................................................................................... 183
SECT_ATTRS .................................................................................................................................... 183
SHADOW ......................................................................................................................................... 183
Directives Used in 2D Scripts Only ................................................................................................................. 184
DRAWINDEX ................................................................................................................................... 184
[SET] FILL ........................................................................................................................................ 184
[SET] LINE_TYPE ............................................................................................................................. 185
Inline Attribute Definition ..................................................................................................................................... 185
Materials .................................................................................................................................................... 186
DEFINE MATERIAL ......................................................................................................................... 186
DEFINE MATERIAL BASED_ON ....................................................................................................... 188
DEFINE TEXTURE ........................................................................................................................... 189
Fills .......................................................................................................................................................... 191
DEFINE FILL ................................................................................................................................... 191
DEFINE FILLA ................................................................................................................................. 195
DEFINE SYMBOL_FILL .................................................................................................................... 197
DEFINE SOLID_FILL ....................................................................................................................... 198
DEFINE EMPTY_FILL ...................................................................................................................... 199
DEFINE LINEAR_GRADIENT_FILL .................................................................................................. 199
DEFINE RADIAL_GRADIENT_FILL .................................................................................................. 199
DEFINE TRANSLUCENT_FILL .......................................................................................................... 199
DEFINE IMAGE_FILL ...................................................................................................................... 199
Line Types ................................................................................................................................................. 200
DEFINE LINE_TYPE ........................................................................................................................ 200
DEFINE SYMBOL_LINE ................................................................................................................... 200
GDL Reference Guide x
Description:ArchiCAD® is a registered trademark and PlotMaker, Virtual Building and GDL
are trademarks of GDL, including syntax definitions, commands, variables, etc.