New GDL Features in ArchiCAD 10
Index
- Purpose of the document
-
List of new features
- Macro call enhancments
- Text label for GOTO and GOSUB
- Getting the lisft of font names
- User Interface enhancments
- New fix named optional parameters
- New global variables
- Requests for Door/Window unique display options
- Request for Database identification
- Legal commas before PARAMETERS and ADDITIONAL_DATA keywords
- New
poly2_bversion - New
project2anddrawing3version - New command for defining the section attributes
- Cut polygon status control for
cutplaneandcutshape - New version of
sprism_ - Skylight Add-on improovements
1. Purpose of the document
This document informs you about the new GDL features in ArchiCAD 10. You can find the definition of the new and changed commands in the GDL Reference Guide. Some of these topics are described in the Basic Library Documentation, too. The links in this document refer to the latter one, if available.
2. List of new features
Macro call enhancments
- RETURNED_PARAMETERS for returning parameters from macros. See Section 5.1 of Technical Standards.
- Advanced PARAMETERS ALL with passing extra parameters. See Section 5.1 of Technical Standards.
Text label for GOTO and GOSUB
Text labels are available for GOTO and GOSUB commands making the scripting more transparent.
Use it as suggested in Section 5 of GDL Style Guide 1.0.
Getting the lisft of font names
request ("FONTNAMES_LIST", "", fontnames)
See Section 4.4 of Technical Standards.
User Interface enhancments
The User Interface scripting capabilities of Library Parts were enhanced.
- New chooser controls with the ability to display pictures.
- Flexible binding of selectable infield options and the value list items of the parameter. See Thumbnail controls with dynamic items subsection of Section 4.5 of Technical Standards.
- The paging technique inside the tab page was enhanced. (Direct page selection is possible. E.g. Pop-up can be used as a page selector). See Tabpage handling subsection of Section 4.5 of Technical Standards.
- Alpha-channel based transparency for images appearing on the UI page. See Transparent UI pictures subsection of Section 4.5 of Technical Standards.
- More precisely definable text appearance: text can be aligned in the box and can also be grayed.
- Availability of tooltips: Every interface item can have its own tooltip.
- New Link attribute of UI_BUTTON to invoke custom web page.
- Custom parameter-modifier functionality assigned to button elements.
New fix named optional parameters
Fix named optional parameters are described in the Appendix A of this documentation. The newly added parameter groups are listed below.
- Doow/Window Floor plan display
- Doow/Window Direction
- Doow/Window Polygonal wall data
- Doow/Window Position
- Wall Floor plan display
- Wall Geometric data
- Column Floor plan display
- Column Geometric data
- Beam Floor plan display
- Beam Geometric data
- Roof Floor plan display
- Floor plan cutting of planar elements
New global variables
- WALL_SECT_PEN pen of the contours of the wall cut surfaces
- WALL_VIEW_PEN pen of the contours of the wall on view
- COLU_SECT_PEN pen of the contours of the column cut surfaces
- COLU_VIEW_PEN pen of the column on view
- BEAM_SECT_PEN pen of the contours of the beam cut surfaces
- ROOF_SECT_PEN pen of the contours of the roof cut surfaces
- ROOF_VIEW_PEN pen of the roof on view
- GLOB_CUTPLANES_INFO [4] - array of 4 length values: 1: cutplane height, 2: cutplane top level, 3: cutplane bottom level, 4: absolute display limit
- WALL_SKINS_PARAMS - changed to 13 columns
Requests for Door/Window unique display options
These commands allow one to query the display options of the particular Door/Window object.
REQUEST ("wido_show_dim", "", show)
REQUEST ("window_show_dim", "", show)
REQUEST ("door_show_dim", "", show)
Request for Database identification
This command returns database information about a placed object. The information is the id and the name of the container database. Together with GLOB_INTID the collected data can be used to identify elements uniquely in different ArchiCAD databases of a plan file.
REQUEST ("HomeDB_info", "", homeDBIntId, homeDBUserId, homeDBName, homeContext)
Legal commas before PARAMETERS and ADDITIONAL_DATA keywords
With the possibility to add commas in the following context types you can do the linewrapping in your scripts in a more natural way.
CALL macro_name_string [, parameter_list]CALL macro_name_string [,] PARAMETERS [name1=value1 , ... namen=valuen]CALL macro_name [,] PARAMETERS ALLDEFINE SYMBOL_FILL name ... [,] PARAMETERS [name1 = value1, ... namen = valuen]LIGHT red, ... distance_falloff [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE MATERIAL parameters [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE FILL parameters [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE FILL_A parameters [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE SYMBOL_FILL parameters [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE LINE_TYPE parameters [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE SYMBOL_LINE parameters [[,] ADDITIONAL_DATA name1 = value1, name2 = value2, ...]DEFINE EMPTY_FILL name [[,] FILLTYPES_MASK fill_types]DEFINE SOLID_FILL name [[,] FILLTYPES_MASK fill_types]VALUES "fillparam_name" [[,] FILLTYPES_MASK fill_types,] value_definition1 [, value_definition2, ...]DEFINE MATERIAL name [,] BASED_ON orig_name [,] PARAMETERS name1 = expr1 [, ...][[,] ADDITIONAL_DATA name1 = expr1 [, ...]]
New poly2_b version
poly2_b{3} n,
frame_fill, fill_pen, fill_background_pen,
fillOrigoX, fillOrigoY, fillAngle, slopeDirAngle, slopeAngle,
x1, y1, s1, ..., xn, yn, sn
Advanced version of the poly2_b{2} command, where the slope of the fill can be defined.
New project2 and drawing3 version
PROJECT2{3} projection_code, angle, method, parts
[, backgroundColor, fillOrigoX, fillOrigoY, filldirection][[,]
PARAMETERS name1=value1 , ... namen=valuen]
DRAWING3{3} projection_code, angle, method , parts
[, backgroundColor, fillOrigoX, fillOrigoY, filldirection][[,]
PARAMETERS name1=value1 , ... namen=valuen]
The new version, project2{3}, adds the possibility to define
which parts of the projected model are required and
to control the attributes of the cut and view part separately, including the line type.
You can also generate the projection with actual parameters set in the command.
New command for defining the section attributes
SECT_ATTRS fill, fill_background_pen, fill_pen, contour_pen [, line_type]
The command is an extension of sect_fill.
Cut polygon status control for
cutplane and cutshape
CUTPLANE [x, y, z [, side [, status]]]
[statement1 ... statementn]
CUTEND
CUTPLANE{2} angle [, status]
[statement1 ... statementn]
CUTEND
CUTSHAPE d [, status]
[statement1 statement2 ... statementn]
CUTEND
The status parameter controls the treatment of the generated cut polygons
New version of sprism_
sprism_{2} allows to define an inclination angle for the bottom side of the prism,
in addition it makes it possible to set the material for each face independently.
Skylight Add-on improovements
When placing a Skylight object into a roof, it has an opportunity to control the upper and lower edges of the hole. For more information see the Skylight Elements documentation.