Graphisoft®

Basic Library Version: 16

Resize Wall End Macro

  1. General Description
  2. Parameters
  3. Usage

General Description

The purpose of this macro is to faclitate the generation of correct bounding hotspots in 2D and in 3D. Two fix hotspots are put on the end of the wall and two editable hotspots on the other end of the wall end, which edit the length of the object.

Hotspots in 2D

Parameters

Name Type Description
GS_HotspotUnIDBegin Integer Starting unique ID for the hotspots.
AC_CutWidth Length The cut width to modify.
cutWidthAngle Angle The angle version of the cut width to modify.
r0 Length Inner radius of the curved wall or 0 for non-curved walls.
wallIncl Angle Side inclination of the trapeze wall or 0 for non-trapeze walls.
onWallBeg Boolean True if the wall end is on the begin of the wall, false otherwise.
ZZYZX Length Height of the wall end.

Usage

Coordinate System

The macro assumes that the local coordinate system is set as shown below:
2D Coordinate System
3D Coordinate System

This is the natural assumption that the body is generated in the positive plane-quarter and the origin is in the local origin of the wall-end object.

Parameters in the original object

The original wall end object must contain two parameters for proper work: AC_CutWidth and cutWidthAngle. And these parameters must be connected in the parameter script, for example see the following code:

if GLOB_MODPAR_NAME = "cutWidthAngle" then
    PARAMETERS AC_CutWidth = \
            cutWidthAngle * (innerRadius + WALL_THICKNESS/2) * PI/180
else
    if GLOB_MODPAR_NAME <> "" then
        PARAMETERS cutWidthAngle = \
                (AC_CutWidth / (innerRadius + WALL_THICKNESS/2)) * 180/PI
    endif
endif

Naturally the AC_Hole_Hotspot_Control parameter should be set to 0, otherwise ArchiCAD will place its own hotspots on the ones of the object. If you want to use this macro for the 2D (or 3D) hotspots only, set the AC_Hole_Hotspot_Control parameter to 2 (1) and call the macro in the script of the desired view.