As usual, ARCHICAD 22 comes with a lot of changes and developments concerning the GDL language.
We highly recommend taking a good look at the new information before creating a new GDL library part, or updating existing ones.
Curtain Wall
Curtain Wall Model View Options in GDL
ARCHICAD provides a whole new set of global variables to support automatic representation of the Curtain Wall sub-elements based on MVO, see Curtain Wall component Globals section.
- GLOB_MVO_CWFRAME_DETLEVEL: detail level of frames
- GLOB_MVO_CWPANEL_DETLEVEL: detail level of panels
- GLOB_MVO_CWJUNCT_DETLEVEL: detail level of junctions
- GLOB_MVO_CWACC_DETLEVEL: detail level of accessories
To control whether the ARCHICAD creates the schematic model for curtain wall frames and panels, the new AC_AutoSchematicModel fix named optional parameter has been introduced. In order to create a schematic curtain wall panel bounded by the frame axes in GDL, new ac_frameAxisCoords[][2] fix named optional parameter has been added.
Curtain Wall Frame Type handling
ARCHICAD provides different handling methods for curtain wall frames regarding the ARCHICAD Dialog User Interface and the symbolic representation of the frames. The ac_iCWFrameType and ac_bButtGlazedFrame fix named optional parameters determine the type of the frame.
In profiled curtain wall frames the frame and cap bounding sizes can be handled by ARCHICAD. The existence of ac_beamProfileID and the new ac_capProfileID fix named optional parameters determines the calculation of the frame sizes.
New Curtain Wall Frame size handling method
The curtain wall frame sizes can be defined in GDL and can be provided by ARCHICAD. A whole new set of fix named optional parameters has been introduced to support this method – see Curtain Wall Parameters set and read by ARCHICAD section.
The new ac_frameOffsetSide fix named optional parameter affects the sizes of the curtain wall panels. It determines the position for ARCHICAD on the centerline of the curtain wall panels from where their clamp depth is calculated.
New Curtain Wall Frame attribute handling
The attributes of the symbolic representation of the curtain wall frames are defined by new fix named optional GDL parameters, see Curtain Wall Frame parameters read by ARCHICAD section.
New Curtain Wall Frame cutting parameters
ARCHICAD provides cutting planes and polylines for the top and bottom cut of the curtain wall frames. The new CWFRAME_TOP_CUTTYPE and CWFRAME_BOTTOM_CUTTYPE global variables define the recommended cutting method for the top and bottom cut of the frames, further global variables contain the necessary geometric data for the cutting polygon or plane – see Curtain Wall Frame 3D variables section.
Text handling in Annotation elements
The unification of text handling options has been completed for ARCHICAD 22, so the following functions are now available for all annotation type GDL objects via fix named optional parameters:
- font type (AC_TextFont_1)
- font size (AC_TextSize_1)
- text style B/I/U/T (AC_TextStyle_1)
- text pen (AC_TextPen_1)
- alignment (AC_TextAlignment_1)
- line spacing (AC_TextLeading_1)
- character width factor (AC_TextCharWidthFactor_1)
- character space factor (AC_TextCharSpaceFactor_1)
These options are now collected on a separate default panel of the Settings Dialog in annotation tools (Section/Elevation/Interior Elevation/Story Level markers, Detail/Worksheet/Change markers, Zones, Labels, Grid element – limited set), with the possibility to lock or hide any of them via the GDL object’s parameter script, for unused functions.
For details such as compatibility and parameter values, visit the section called Parameters for Text Handling.
From now on, ROOM_LSIZE is considered deprecated in zones: use AC_TextStyle_1 instead. See Deprecated Zone Stamp parameters section for more.
Label globals and fix named optional parameters
To support the unified Text handling throughout ARCHICAD, labels had to change as well.
The previously available text handling label global variables are considered deprecated from now on (and only kept for compatibility reasons), and the uniform fix named optional parameters have been introduced instead.
Moreso, except for a few items, most label format global variables are now turned into fix named parameters, supporting lock/hide functions.
Just a teaser:
- Text handling parameters
- Pointer parameters
- new Label Orientation for symbol labels, just like in Text/Autotext Labels (AC_LabelOrientation), supporting nominal rotation angles
- Fixed Angle and Optimize Position are also became available for symbol labels (not available for GDL, automatic ARCHICAD functions)
See Parameters for Labels section for the whole feature set, and don’t forget to check out the Deprecated Label Global Variables section.
New User Interface commands
- Extend the reach of LOCK/HIDEPARAMETER by setting up the new compatibility option called “Enable hide/lock of specific fix named optional parameters”.
- Create pushcheck buttons with icons, matching the style of ARCHICAD interface items in GDL with UI_PICT_PUSHCHECKBUTTON. Simple syntax, unlike UI_INFIELD methods.
- To add individually positioned radiobuttons with icon to a GDL interface, use UI_PICT_RADIOBUTTON.
- An exact copy of the ARCHICAD Text Style buttons are added to GDL: see UI_TEXTSTYLE_INFIELD. All B/I/U/T icons and tooltips are channeled from the program itself, making separate localization of the control unnecessary.
Stair and Railing parameter and global variable updates
Extensions for existing functions:
- GLOB_MVO_STAIR_FLOOR_PLAN_COMP: new flag for monolithic structure visibility.
- STAIR2D_BREAKMARK_GEOM: breakmark polyline node updated with start-end extensions.
- STAIR_STRUCTURE_GEOMETRY: new base-points are added to support cantilevered structure, tread-riser data.
New global variables:
- Complete new set for Stair Monolithic Structure Data: see Stair structure 2D variables – Monolithic Structure section.
- New set for Stair fine-tuning: STAIR_START_WITH_RISER, STAIR_TREAD_EXIST, STAIR_RISER_EXIST, STAIR_NOSING_EXIST – see General 2D related variables section.
- RAIL_DISCONNECTED_CUTS: orientation definition of end surface in case of disconnected railing connections.
New fix named optional parameters:
Check out Stair Parameters set/read by ARCHICAD section, and Stair Parameters set by ARCHICAD section for exact details.
Command updates and extended versions
- STR{2}: decimeter (dm) is now supported in formats (also available in Project Preferences/Calculation Units and Rules)
- SWEEPGROUP{5}: new version allowing in-line defined surface parameters
- NEWPARAMETER: extended to support BuildingMaterial and Profile type migration
New global variables, changes
Starting form ARCHICAD 22, project dependent global variables are enabled in Property scripts. However, the exclusion from Parameter script stays in effect. Please, refer to each global for the exact environmental information.
Template-dependent Solid and Background fill indexes are now made “constant”:
- GLOB_FILL_INDEX_SOLID: contains the index of Solid Fill according to the current template/attribute set
- GLOB_FILL_INDEX_BACKGROUND: contains the index of Background Fill according to the current template/attribute set
Detail/Worksheet/Change markers – head rotation data is extended:
- MARKER_HEAD_ROT_MODE: channels information about the function “Marker Angle: Fixed Angle to Screen/Fixed Angle to Model”
- MARKER_HEAD_ANGLE: marker head symbol rotation data for GDL symbol part of the marker
Wall flip on reference line state is now available for labels through WALL_FLIPPED variable.
Beam elevation data is added to support all beam geometries, including profiled ones:
- BEAM_ELEVATION_TOP: calculated elevation of the topmost point of the beam geometry
- BEAM_ELEVATION_BOTTOM: calculated elevation of the lowest point of the beam geometry
Detail level in Model View Options
No new GDL options are connected to this feature, but we think it is important to let you GDL developers know:
all library parts shipped with ARCHICAD are now act upon the detail level settings of the Model View Options dialog, in the following categories: Stair/Railing, Curtain Wall, Doors-Windows-Skylights, Objects and Lamps.
The available detail levels may vary depending on the category.
In case of custom made objects, please consider adding different 2D symbols and 3D models for the supported detail levels according to the object category.
Please note the following:
- custom objects/stair-railing libparts/curtain wall doors-windows/lamps shipped through BIMcomponents should not rely on the built-in MVO library objects, but have a custom MVO library part included specially for them to set common detail levels.
- in case the above list is not shipped through BIMcomponents, and is to be used parallel to the official library, go ahead and use LIBRARYGLOBAL request to check on the built-in MVO settings.