- •Contents
- •General Overview
- •Starting Out
- •Scripting
- •Library Part Structure
- •Analyze, Deconstruct and Simplify
- •Elaboration
- •Entry Level
- •Intermediate Level
- •Advanced Level
- •Expert Level
- •3D Generation
- •The 3D Space
- •Coordinate Transformations
- •The GDL Interpreter
- •The GDL Script Analysis
- •GDL Syntax
- •Statements
- •Line
- •Label
- •Characters
- •Strings
- •Identifiers
- •Variables
- •Parameters
- •Simple Types
- •Derived Types
- •Coordinate Transformations
- •2D Transformations
- •3D Transformations
- •Managing the Transformation Stack
- •3D Shapes
- •Basic Shapes
- •BLOCK
- •BRICK
- •CYLIND
- •SPHERE
- •ELLIPS
- •CONE
- •PRISM
- •PRISM_
- •CPRISM_
- •BPRISM_
- •FPRISM_
- •HPRISM_
- •SPRISM_
- •SLAB
- •SLAB_
- •CSLAB_
- •CWALL_
- •BWALL_
- •XWALL_
- •XWALL_{2}
- •BEAM
- •CROOF_
- •MESH
- •ARMC
- •ARME
- •ELBOW
- •Planar Shapes in 3D
- •HOTSPOT
- •RECT
- •POLY
- •POLY_
- •PLANE
- •PLANE_
- •CIRCLE
- •Shapes Generated from Polylines
- •EXTRUDE
- •PYRAMID
- •REVOLVE
- •RULED
- •RULED{2}
- •SWEEP
- •TUBE
- •TUBEA
- •COONS
- •MASS
- •Elements for Visualization
- •LIGHT
- •PICTURE
- •3D Text Elements
- •TEXT
- •RICHTEXT
- •Primitive Elements
- •VERT
- •TEVE
- •VECT
- •EDGE
- •PGON
- •PIPG
- •COOR
- •BODY
- •BASE
- •Cutting in 3D
- •CUTPLANE
- •CUTPOLY
- •CUTPOLYA
- •CUTSHAPE
- •CUTFORM
- •Solid Geometry Commands
- •GROUP
- •ENDGROUP
- •ADDGROUP
- •SUBGROUP
- •ISECTGROUP
- •ISECTLINES
- •PLACEGROUP
- •KILLGROUP
- •SWEEPGROUP
- •Binary 3D
- •2D Shapes
- •Drawing Elements
- •HOTSPOT2
- •LINE2
- •RECT2
- •POLY2
- •POLY2_
- •POLY2_A
- •POLY2_B
- •POLY2_B{2}
- •POLY2_B{3}
- •CIRCLE2
- •SPLINE2
- •SPLINE2A
- •PICTURE2
- •PICTURE2{2}
- •Text Element
- •TEXT2
- •RICHTEXT2
- •Binary 2D
- •FRAGMENT2
- •FRAGMENT2
- •3D Projections in 2D
- •PROJECT2
- •PROJECT2{2}
- •PROJECT2{3}
- •Drawings in the List
- •DRAWING2
- •DRAWING3
- •DRAWING3{2}
- •DRAWING3{3}
- •Graphical Editing
- •Hotspot-based Editing Commands
- •HOTSPOT
- •HOTLINE2
- •HOTARC2
- •Status Codes
- •Status Code Syntax
- •Additional Status Codes
- •Previous part of the polyline: current position and tangent is defined
- •Segment by absolute endpoint
- •Segment by relative endpoint
- •Segment by length and direction
- •Tangential segment by length
- •Set start point
- •Close polyline
- •Set tangent
- •Set centerpoint
- •Tangential arc to endpoint
- •Tangential arc by radius and angle
- •Arc using centerpoint and point on the final radius
- •Arc using centerpoint and angle
- •Full circle using centerpoint and radius
- •Attributes
- •Directives
- •Directives for 3D and 2D Scripts
- •RADIUS
- •RESOL
- •TOLER
- •LINE_PROPERTY
- •[SET] STYLE
- •SET STYLE 0
- •Directives Used in 3D Scripts Only
- •MODEL
- •[SET] MATERIAL
- •SECT_FILL
- •SHADOW
- •Directives Used in 2D Scripts Only
- •DRAWINDEX
- •[SET] FILL
- •[SET] LINE_TYPE
- •Inline Attribute Definition
- •Materials
- •DEFINE MATERIAL
- •DEFINE MATERIAL BASED_ON
- •DEFINE TEXTURE
- •Fills
- •DEFINE FILL
- •DEFINE FILLA
- •DEFINE SYMBOL_FILL
- •DEFINE SOLID_FILL
- •DEFINE EMPTY_FILL
- •Line Types
- •DEFINE LINE_TYPE
- •DEFINE SYMBOL_LINE
- •Styles
- •DEFINE STYLE
- •DEFINE STYLE {2}
- •Paragraph
- •Textblock
- •Additional Data
- •External file dependence
- •Non-Geometric Scripts
- •The Properties Script
- •DATABASE_SET
- •DESCRIPTOR
- •REF DESCRIPTOR
- •COMPONENT
- •REF COMPONENT
- •BINARYPROP
- •SURFACE3D ( )
- •VOLUME3D ( )
- •POSITION
- •DRAWING
- •The Parameter Script
- •VALUES
- •PARAMETERS
- •LOCK
- •HIDEPARAMETER
- •The User Interface Script
- •UI_DIALOG
- •UI_PAGE
- •UI_CURRENT_PAGE
- •UI_BUTTON
- •UI_SEPARATOR
- •UI_GROUPBOX
- •UI_PICT
- •UI_STYLE
- •UI_OUTFIELD
- •UI_INFIELD
- •UI_INFIELD {2}
- •UI_INFIELD{3}
- •UI_TOOLTIP
- •Expressions and Functions
- •Expressions
- •VARDIM1(expr)
- •VARDIM2(expr)
- •Operators
- •Arithmetical Operators
- •Relational Operators
- •Boolean Operators
- •Functions
- •Arithmetical Functions
- •CEIL
- •ROUND_INT
- •Circular Functions
- •Transcendental Functions
- •Boolean Functions
- •Statistical Functions
- •Bit functions
- •BITTEST
- •BITSET
- •Special Functions
- •String Functions
- •SPLIT
- •STRLEN
- •STRSTR
- •STRSUB
- •Control Statements
- •Flow Control Statements
- •NEXT
- •GOTO
- •GOSUB
- •RETURN
- •END / EXIT
- •Parameter Buffer Manipulation
- •Macro Objects
- •The Output Statement
- •File Operations
- •OPEN
- •INPUT
- •VARTYPE
- •OUTPUT
- •CLOSE
- •Miscellaneous
- •Global Variables
- •General environment information
- •Story information
- •Fly-through information
- •General element parameters
- •Object, Lamp, Door, Window parameters
- •Object, Lamp parameters
- •Object, Lamp, Door, Window parameters - available for listing and labels only
- •Object, Lamp parameters - available for listing and labels only
- •Window, Door and Wall End parameters
- •Window, Door parameters - available for listing and labels only
- •Lamp parameters - available for listing and labels only
- •Label parameters
- •Wall parameters - available for Doors/Windows
- •Wall parameters - available for listing and labels only
- •Column parameters - available for listing and labels only
- •Beam parameters - available for listing and labels only
- •Slab parameters - available for listing and labels only
- •Roof parameters - available for listing and labels only
- •Fill parameters - available for listing and labels only
- •Mesh parameters - available for listing and labels only
- •Free users’ globals
- •Requests
- •REQUEST
- •Doors and Windows
- •General Guidelines
- •Creation of Door/Window Library Parts
- •3D related challanges
- •Rectangular Doors/Windows in Straight Walls
- •Non-Rectangular Doors/Windows in Straight Walls
- •WALLHOLE
- •WALLNICHE
- •Rectangular Doors/Windows in Curved Walls
- •Non-Rectangular Doors/Windows in Curved Walls
- •2D Related Challanges
- •Cutting custom wall opening
- •WALLHOLE2
- •WALLBLOCK2
- •WALLLINE2
- •WALLARC2
- •GDL Created from the Floor Plan
- •Keywords
- •Common Keywords
- •Reserved Keywords
- •3D Use Only
- •2D Use Only
- •Non-Geometric Scripts
- •Property Script
- •Parameter Script
- •Interface Script
- •Alphabetical List of Current GDL Keywords
- •Parameter Naming Convention
- •GDL Data I/O Add-On
- •Description of Database
- •Opening a Database
- •Reading Values from Database
- •Writing Values into Database
- •Closing Database
- •GDL DateTime Add-On
- •Opening Channel
- •Reading Information
- •Closing Channel
- •GDL File Manager I/O Add-On
- •Specifying Folder
- •Getting File/Folder Name
- •Finishing Folder Scanning
- •GDL Text I/O Add-On
- •Opening File
- •Reading Values
- •Writing Values
- •Closing File
- •Property GDL Add-On
- •OPEN
- •CLOSE
- •INPUT
- •OUTPUT
- •GDL XML Extension
- •Opening XML Document
- •Reading XML Document
- •Modifying XML Document
- •Index
- •Numerics
INDEX
Numerics
2D script 11
2D symbol
generating Door/Window ~ 253 3D script 11
A
ABS 199
ACS 200
ADD 27
ADD2 25 ADDGROUP 108, 111
ADDITIONAL_DATA 177 ADDX 26
ADDY 26
ADDZ 26
advanced commands and features 16 AND 198
arc definition 121 ARC2 121
ArchiCAD 12
Component Lists in ~ 181 Element Lists in ~ 131
ArchiFM 12
ARMC 57
ARME 58
arrays for parameters 23 ASN 200
ATN 200 attributes
defining ~ 19
B
BackgroundColor 128 base 10 logarithm 200
basic syntactic elements 21 BEAM 52
beam definition 52 BINARY 11, 114
binary 2D data 11 binary 3D data 11 binary data reference binary properties data
BINARYPROP 12, 181
bitmap pattern 168 BITSET 201
BITTEST 201 BLOCK 31
block definition 31
bodies 93 BODY 98
body definition with primitives 98
Boolean difference 109 BPRISM_ 38
BREAKPOINT 214
breakpoint definition in script 214
BRICK 31
BWALL_ 47
C
CALL 218
CEIL 199
changing element type in listing 181 Character strings 22
characters available in GDL scripts 21 circle definition 121
CIRCLE2 121
CLOSE 221 closing a file 221
colons in GDL scripts 21 commas in GDL scripts 21 comments 12
complex transformation matrix 29 COMPONENT 180, 181
components 12
~definition 180
~reference 181 conditions 210 CONE 33
cone frustrum definition 33 COONS 84
Coons patch generation 84 COOR 96
coordinate system definition local ~ for primitives 96
coordinate transformations 25 basic ~ 14
intermediate level ~ 15 COS 200
CPRISM_ 37
CSLAB_ 45
curved prism definition 38
curved wall definition 47 CUSTOM 183
CUTFORM 106
CUTPLANE 100
CUTPOLY 102
CUTPOLYA 104
CUTSHAPE 106
cutting polygon definition 102, 104 CWALL_ 45
CYLIND 31 cylinder definition 31
D
database definition 179 DATABASE_SET 179 DEFINE FILL 177, 278 DEFINE FILL_A 177 DEFINE FILLA 169 DEFINE LINE_TYPE DEFINE MATERIAL
DEFINE STYLE 173
DEFINE SYMBOL_FILL 171, 177, 279
DEFINE SYMBOL_LINE 173, 177 DEL 29
DEL TOP 29 DESCRIPTOR 180 descriptors 12
~definition 180
~reference 180 DIALOG 303
DIM 195
DO 210
draw order definition 159 DRAWINDEX 159 DRAWING 182 drawing
~definition for Element Lists 131
~reference in 2D script 182 DRAWING2 131
ArchiCAD 11 GDL Reference Guide |
321 |
Index
DRAWING3 131
DRAWING3{2} 131
E
EDGE 95
edge definition 95 edges 93 ELBOW 58
ELLIPS 32
ELSE 212
END 21, 214
end of script definition 214
ENDGROUP 111 ENDIF 212
ENDWHILE 210
entry level commands 13
exclamation marks in GDL scripts 21 EXIT 21
EXOR 198
EXP 200
expert level scripting 17 exporting values to a file 221 EXTRUDE 64
extruded prism generation 64
F
file operations 220
FILE_DEPENDENCE 178, 220, 280
FILL 159, 166, 219
fill pattern definition simple ~ 166
fill pattern setting
~ in 2D views 159 FILLA 169
flow control statements 16 FOR 209
FPRISM_ 39 FRA 199
FRAGMENT2 11, 127 FULLPATH 303
G
geometric primitives 17 GET 214
global origin 18
global variables 19, 23
GOSUB 212, 213
GOTO 212, 213
GROUP 111
H
half ellipsoid definition 32 HIDEPARAMETER 185 HOTARC2 138 HOTLINE2 137
HOTSPOT 133 HOTSPOT2 117, 133 HPRISM_ 41
hybrid 110
I
Identifiers 22
IF 212
importing values from a file 221
IND 202, 247
INPUT 220 INT 199
intermediate commands 14 ISECTGROUP 108, 112 ISECTLINES 109, 112
K
KILLGROUP 112
L
labels 21 LET 151 LGT 200
LIBRARY 303 library parts 11 LIGHT 89
light source definition 89 line definition 117
line type
~definition 172
~setting 160
Line Types 172 LINE_PROPERTY 119, 155
Line_Property 282 LINE_TYPE 160, 172, 219 LINE2 117
lines in scripts 21
local coordinate system 18
local variables 22 LOCK 185 LOG 201
log wall parameters 49 loops 209
Ludolphs constant 200
M
macro calls 17
~definition 218
~for doors/windows 254 macro objects 218
mask values 140 masking rules
~for meshes 56
~for prisms 139
MASS 87
master coordinate system 18
Master Script 11
MASTER_GDL 19, 23, 160, 182
MASTEREND_GDL 19
MATERIAL 156, 160, 219 material definition 160
material setting 156 MAX 201
MESH 56 mesh definition
equidistant ~ 56
mesh generation 87 MIN 201
MOD 198
MODE 303
MODEL 155, 219
MODEL SURFACE 111 modeling mode setting 155
moving the local coordinate system 26 MUL 27
MUL2 25
MULX 27
MULY 27
MULZ 27
N
natural logarithm 201 NEXT 209
node definition in 3D 94
~ with texture origin 94
322 |
ArchiCAD 11 GDL Reference Guide |
Index
non-rectangular doors/windows
~in curved walls 263
~in straight walls 256 NOT 201
NSP 215 NTR 30
Numeric expressions 23
O
OPEN 220
opening a file 220
OR 198
OUTPUT 221
P
Parameter Script 12
PARAMETERS 184 parameters 12, 23
~buffer 214
~in GDL scripts 17 derived types 23 locking ~ values 185
modifying ~ values in GDL 184 simple types 23
PEN 219
pen color setting 154 PGON 95
PI 200
PICTURE 12
picture element definition 91, 126
picture polygon definition 96 PICTURE2 12, 125
PICTURE2{2} 126 PIPG 96
PLACEGROUP 112 planar polylines
circle using centerpoint and radius 147
segment by relative endpoint 142 POLY2 118
POLY2_ 119
POLY2_A 119
POLY2_B 120
polygon definition 95, 118 advanced ~ 120
polygons 93 POSITION 181 preview picture 12
PRINT 220
PRISM 33
prism definition 33
~with hill 39
~with non-parallel upper polygon 41 extended ~ 37
extended oblique ~ 44 extruded general ~ 64 oblique ~ 44
PRISM_ 34 programming language 11 PROJECT2 127 PROJECT2{2} 128
projection of 3D script into 2D symbol 128 prompt 24
Properties Script 12 PYRAMID 67 pyramid definition 67
Q
quotation marks in GDL scripts 22
R
RADIUS 152, 219 RANGE 183 RECT2 118
rectangle definition 118 rectangular doors/windows
~ in straight walls 254 REF 180
REQ 202, 242
REQUEST 202, 243 request calls 202 resetting counter
~ for primitive elements 100 RESOL 219
RETURN 213
REVOLVE 69
revolved surface definition 69 RICHTEXT 93, 288 RICHTEXT2 126, 288 RND 201
RO 303
roof definition sloped ~ 53
ROT 28
ROT2 26
rotating the coordinate system 28 ROTX 28
ROTY 28
ROTZ 28
RULED 72 RULED{2} 73
S
scaling the local coordinate system 27
script types 11 SECT_FILL 157
SEPARATOR 303 156, 160
SET FILL 159
SET LINE_TYPE 160
SET MATERIAL 156
SET STYLE 155 SGN 199 SHADOW 158, 219
shadow casting control 158
simple shapes 13 SIN 200
smoothness definition for cylindrical elements
~by approximation 154
~by radius 152
~by resolution 153 SOLID 155
solid 110
solid base 110 special characters 24 SPHERE 32 sphere definition 32
spline definition 123 Bézier type ~ 125
SPLINE2 123 SPLINE2_A 124 SPLIT 205 SPRISM_ 41 SQR 199
square brackets in GDL scripts 23
statements 21
STEP 183, 209
storing values in parameter buffer 214 STR 202
STR{2} 202 string expressions
creating ~ from numeric expressions 202 format string 203
ArchiCAD 11 GDL Reference Guide |
323 |
Index
length of ~ 206
position of ~ in each other 206 splitting ~ 205
substrings 207 width of ~ 206
STRLEN 206
STRSTR 206
STRSUB 207 STW 206
STYLE 155, 173, 219
SUBGROUP 108, 111 subroutines 212, 213
SURFACE 155 surface 110 surface base 110
surface generated by polyline
~from planar curve and space curve 73
~sweeping along space curve path 78, 82
~sweeping space curve path 75
surface of the 3D shape of the object 181 SURFACE3D 181
SWEEP 75 SWEEPGROUP 109, 114
T
TAN 200
TEVE 94
TEXT 92 text definition
~in 2D 126
~in 3D 92
Text Extension 295
text style
~ setting 155 TEXT2 126
TEXTURE 164
texture definition 164 THEN 212
TO 209
TOLER 154, 219 transformations
deleting ~ 29 TUBE 78
tube definition
~starting from another tube 57
~starting from ellipsoid 58 bending ~ 58
TUBEA 82
U
UI_BUTTON 186 UI_DIALOG 185 UI_GROUPBOX 187 UI_INFIELD 189 UI_OUTFIELD 188 UI_PAGE 185 UI_SEPARATOR 187 UI_STYLE 188 UNTIL 211
USE 215
user global variables User Interface script
V
value assignment 151 value lists 19, 23 VALUES 183
VARDIM1 196
VARDIM2 196 variable 24
variables 22 VARTYPE 221 VECT 94 vectorial hatch 168 vectors 93
~ definition 94 VERT 94
vertices 93
volume of the 3D shape of the object 181
W
WA 303
wall definition 45 curved ~ 47 extended ~ 49
Wall End 227 WALLARC2 266 WALLBLOCK2 265 WALLHOLE 256 WALLHOLE2 264 WALLLINE2 265 WALLNICHE 260 WHILE 210
WIRE 155 wireframe 110 wireframe base 110
wireframe modeling mode 155
WO 303
writing out arguments 220
X
XFORM 28
XWALL_{2} 51
324 |
ArchiCAD 11 GDL Reference Guide |