Graphisoft®

Basic Library Version: 16

Wallhole Structure Macro

Index

  1. General Description
  2. Parameters
  3. Usage

1. General Description

2. Parameters

Name Type Description
AC_Hole_Display_Option Integer Floor plan display option
AC_Hole_Position_Angle Angle Hole Position Angle
AC_WallType Integer Wall type
1
Straight, trapezoid or curved wall
2
Polygonal wall
AC_WindowInWallContour Integer Array[4] Window in Wall Contour
AC_WallContourPolygon Length Array[x][3] Wall contour polygon definition (only for polygonal walls)
AC_Wall_Direction_Type Integer Wall direction type
0
Right
1
Left
2
Center (Right)
3
Center (Left)
iDemolitionOrNew Integer "Demolition / New construction"
gs_new_symb_fill FillPattern "New Wall Fill Type"
gs_new_symb_pen_Fg PenColor "New Wall Fill Pen"
gs_new_symb_pen_bg PenColor "New Wall Fill Background Pen"
gs_new_symb_width_r Length "New Wall Fill Width Right"
gs_new_symb_width_l Length "New Wall Fill Width Left"
gs_bShowNewOnCC Boolean "Show new construction on Wall"
gs_wallhole_geometry Title "Wallhole Geometry"
refWidth Length "Curved Wall - Reference Width"
leftWidth Length "Left Offset from the Origo"
rightWidth Length "Right Offset from the Origo"
iRevealType Integer "Reveal Type"
leftWallFrameRevealPnts Length Array[1][2] "Left Reveal Points"
rightWallFrameRevealPnts Length Array[1][2] "Right Reveal Points"
iRevealPointsIdx Integer Array[20] "Reveal Points Index"
radSill Length "Curved Wall - Sill Radius"
radBoard Length "Curved Wall - Board Radius"
WOD Length "Curved Wall - Wall Center Distance"
overSizeLeft Length ""
overSizeRight Length ""
overSizeUpper Length ""
overSizeLower Length ""
gs_function_control_parameters Title "Function Control Parameters"
bEnableSill Boolean "Enable/Disable Sill Function"
bEnableBoard Boolean "Enable/Disable Board Function"
bEnableThreshold Boolean "Enable/Disable Threshold Function"
bEnableCasing Boolean "Enable/Disable Casing Function"
bEnableShutter Boolean "Enable/Disable Shutter Function"
bEnableCustomCornerLeft Boolean "Enable/Disable Left Corner Column Function"
bEnableCustomCornerRight Boolean "Enable/Disable Right Corner Column Function"
gs_SillTypeEnable Integer "Sill Type Enable Mask"
gs_TresholdTypeEnable Integer "Threshold Type Enable Mask"
gs_macro_control_parameters Title "Macro Control Parameters"
gs_macro_version Integer "Macro Version"
iWindowShape Integer "Window Shape"
openingArchHeight Length "Arch Height"
nArchResolution Integer "Arch Resolution"
isWindow Boolean "Window"
isOpening Boolean "Opening"
gs_IsCurved Boolean "Curved Window"
bParalellInCurvedWalls Boolean "Parallel Opening in Curved Walls"
bCasingTolerance Boolean "Offset Casing with Tolerance Sizes"
bSillPlaneCut Boolean "Use Plane Cut for Sill"
bBoardPlaneCut Boolean "Use Plane Cut for Board"
lod2D_sillBoard Integer "2D Detail Level - Sill and Board"
lod2D_treshold Integer "2D Detail Level - Threshold"
lod2D_casing Length "2D Detail Level - Casing"
lod2D_shutter Length "2D Detail Level - Shutter"
lod3D Integer "3D Detail Level"
bOpeningDirection Boolean "Opening Direction"
bDisabeMirroring Boolean "Disable WindowMirroring"
iPanelType Integer "Window Panel Type"
ac_cw_debug Boolean "Corner Window Debug Function"
ac_cw_function Boolean "Placement Type (1=CW,0=W)"
ac_corner_window Boolean "Corner Window Function"
bLeftCornerFunction Boolean "Left Corner"
leftCornerAngle Angle "Left Corner Angle"
bLeftDiffConnWall Boolean "Left Diff. Conn. Wall Thickness"
leftConnWallThk Length "Left Connected Wall Thickness"
bRightCornerFunction Boolean "Right Corner"
gs_connTypeRight String "Right Corner Connection Type"
gs_ConnTypeLeft String "Corner Connection Type"
gs_cc_width Length "Corner Column Width"
gs_cc_thk Length "Corner Column Thickness"
gs_cc_pr Length "Corner Column Projection"
rightCornerAngle Angle "Right Corner Angle"
bRightDiffConnWall Boolean "Rightt Diff. Conn. Wall Thickness"
rightConnWallThk Length "Right Connected Wall Thickness"
ac_corner_angle Angle "Corner Angle"
ac_diff_con_wall_thk Boolean "Diff. Conn. Wall Thickness"
ac_con_wall_thk Length "Connecting Wall Thickness"
gs_corner_column Boolean "Corner Column"
gs_options Title "Options"
gs_window_sizes Title "Window Sizes"
minUnitWidth Length "Minimal Unit Width"
minUnitHeight Length "Minimal Unit Height"
gs_tolerance_left Length "Tolerance Left"
gs_tolerance_right Length "Tolerance Right"
gs_tolerance_upper Length "Tolerance Upper"
gs_tolerance_lower Length "Tolerance Lower"
ac_wallhole_width Length "Wallhole Width"
ac_wallhole_height Length "Wallhole Height"
ac_reveal_width Length "Reveal Width"
ac_reveal_height Length "Reveal Height"
ac_unit_width Length "Unit Width"
ac_unit_height Length "Unit Height"
gs_wallhole_nominal Boolean "Set Wallhole Size as Nominal Size"
gs_reveal_nominal Boolean "Set Reveal Size as Nominal Size"
gs_unit_nominal Boolean "Set Unit Size as Nominal Size"
gs_wallhole_hotspots Boolean "Show Wallhole Hotspots"
gs_unit_hotspots Boolean "Show Unit Hotspots"
gs_retain_nominal_sizes Boolean "Retain Nominal Size on Change"
gs_window_frame Title "Window Frame"
gs_frame_thk Length "Frame Thickness"
gs_frame_width Length "Frame Width"
gs_fsill Boolean "Bottom Frame at Sill"
gs_window_sash Title "Sash Frame"
gs_sash_thk Length "Sash Frame Thickness"
gs_sash_width Length "Sash Frame Width"
gs_glass_thk Length "Glass Thickness"
gs_doorwindow_trim String "Casing"
gs_trim_width_in Length "Casing Width Inside"
gs_trim_width_out Length "Casing Width Outside"
gs_trim_offs_in Length "Casing Offset Inside"
gs_trim_offs_out Length "Casing Offset Outside"
gs_trim_thk_in Length "Casing Thickness Inside"
gs_trim_thk_out Length "Casing Thickness Outside"
gs_tw_left_in Length "Casing Width Left Inside"
gs_tw_right_in Length "Casing Width Right Inside"
gs_tw_top_in Length "Casing Width Top Inside"
gs_tw_bottom_in Length "Casing Width on Bottom Inside"
gs_tw_left_out Length "Casing Width Left Outside"
gs_tw_right_out Length "Casing Width Right Outside"
gs_tw_top_out Length "Casing Width Top Outside"
gs_tw_bottom_out Length "Casing Width on Bottom Outside"
gs_trimov_top_left_out Length "Casing Overhang Top Left Outside"
gs_trimov_top_right_out Length "Casing Overhang Top Right Outside"
gs_trimov_bot_left_out Length "Casing Overhang Bottom Left Outside"
gs_trimov_bot_right_out Length "Casing Overhang Bottom Right Outside"
gs_trimov_top_left_in Length "Casing Overhang Top Left Inside"
gs_trimov_top_right_in Length "Casing Overhang Top Right Inside"
gs_trimov_bot_left_in Length "Casing Overhang Bottom Left Inside"
gs_trimov_bot_right_in Length "Casing Overhang Bottom Right Inside"
gs_trim_atframe_out Boolean "Casing at Frame Outside"
gs_trimb_atframe_out Boolean "Casing at Frame B. Outside"
gs_trim_atframe_in Boolean "Casing at Frame Inside"
gs_trim_stack_left Boolean "Casing at Ganging Left"
gs_trim_stack_right Boolean "Casing at Ganging Right"
gs_trim_stack_bottom Boolean "Casing at Ganging Bottom"
gs_trim_stack_top Boolean "Casing at Ganging Top"
gs_apron Boolean "Apron"
gs_apron_thk Length "Apron Thickness"
gs_apron_width Length "Apron Width"
gs_sill_outside Boolean "Sill"
gs_sill_oversize Boolean "Sill Oversize"
gs_sill_type String "Type of the Sill"
gs_sill_thk Length "Sill Thickness"
gs_sill_endthk Length "Sill Front Thickness"
gs_sill_elev Length "Sill Elevation"
gs_sill_drip Boolean "Sill Drip"
gs_sill_dripnos Length "Sill Drip Overlap"
gs_sill_dripwidth Length "Sill Drip Width"
gs_sill_nosing Length "Sill Nosing"
gs_sill_angle Angle "Sill Angle"
gs_sill_ovhg_left Length "Sill Overhang Left"
gs_sill_ovhg_right Length "Sill Overhang Right"
gs_sill_slip_in Length "Sill Slip-in Depth"
gs_sill_slip_wall Length "Sill Slip from Wall"
gs_sill_width Length "Width of Sill"
gs_sill_frame_nosing Length "Sill Frame Nosing"
gs_sill_frame_keep Length "Sill Frame Keep"
gs_sill_curved Boolean "Sill is Curved in Curved Walls"
gs_brick_sill_detlev String "Brick Sill 3D Detail Level"
gs_brick_sill_br_thk Length "Brick Thickness"
gs_brick_sill_mort_thk Length "Mortar Thickness"
gs_board_inside Boolean "Board"
gs_board_thk Length "Board Thickness"
gs_board_nosing Length "Board Nosing"
gs_board_angle Angle "Board Angle"
gs_board_ovhg_left Length "Board Overhang Left"
gs_board_ovhg_right Length "Board Overhang Right"
gs_board_slip_in Length "Board Slip In Depth"
gs_board_curved Boolean "Board is Curved in Curved Walls"
bBoardInPolyWall Boolean "Board in Polygonal Walls"
gs_door_treshold String "Threshold"
iTreshold Integer "Threshold"
gs_treshold_inFloor Boolean "Threshold in Floor"
gs_treshold_thk Length "Threshold Thickness"
gs_treshold_width Length "Threshold Width"
gs_treshold_nosing Length "Threshold Nosing Outside"
gs_treshold_nosing_2 Length "Threshold Nosing Inside"
gs_treshold_ovhg Length "Side Overhang Outside"
gs_treshold_ovhg_2 Length "Side Overhang Inside"
gs_doorwindow_shutter String "Shutter"
gs_shutter_type String "Shutter Style"
gs_shutter_width Length "Shutter Width"
gs_shutter_pos String "Shutter Position"
gs_shut_open Boolean "Close Shutter"
gs_masonry_arch String "Masonry Arch"
AC_wido_sill Length "Sill Depth"
gs_reveal_type String "Reveal Type"
gs_reveal_double_innerType String "Inner Reveal Type"
gs_reveal_left Length "Left Jamb Depth"
gs_reveal_right Length "Right Jamb Depth"
revealInnerLeft Length "Inner Left Jamb Depth"
revealInnerRight Length "Inner Right Jamb Depth"
gs_reveal_splayed_innerLeft Length "Inner Left Jamb Depth"
gs_reveal_splayed_innerRight Length "Inner Right Jamb Depth"
gs_reveal_double_innerLeft Length "Inner Left Jamb Depth"
gs_reveal_double_innerRight Length "Inner Right Jamb Depth"
gs_reveal_top Length "Head Depth"
gs_reveal_bottom Length "Sill Depth"
gs_reveal_splayed_innerTop Length "Inner Left Jamb Depth"
gs_reveal_splayed_innerBottom Length "Inner Right Jamb Depth"
gs_reveal_double_innerTop Length "Inner Head Depth"
gs_reveal_double_innerBottom Length "Inner Sill Depth"
gs_reveal_left_angle Angle "Left Side Angle"
gs_reveal_right_angle Angle "Right Side Angle"
gs_reveal_top_angle Angle "Upper Side Angle"
gs_reveal_bottom_angle Angle "Bottom Side Angle"
gs_window_oversize Title "Oversize"
gs_left_oversize Length "Left Opening Oversize"
gs_right_oversize Length "Right Opening Oversize"
gs_upper_oversize Length "Upper Opening Oversize"
gs_lower_oversize Length "Lower Opening Oversize"
gs_window_stack Title "Ganging"
gs_stack_left Boolean "Connection on the Left"
gs_stack_right Boolean "Connection on the Right"
gs_stack_top Boolean "Connection on the Top"
gs_stack_bottom Boolean "Connection on the Bottom"
gs_parapet_wall_inset Boolean "Parapet Wall Inset"
gs_parapet_inset_thk Length "Depth of Inset"
gs_2D_representation Title "2D Representation"
gs_show_Hs Boolean "Show Additional Hotspots"
gs_pen_2D PenColor "Symbol Pen"
gs_frame_pen_cont PenColor "Corner Column Contour Pen"
gs_trim_pen_cont PenColor "Casing Contour Pen"
gs_wcont_line String "Wall Contour Line"
gs_bFills Boolean "Use Fills"
gs_wallhole_fill FillPattern "Plan Symbol Fill Type"
gs_wallhole_pen_fg PenColor "Plan Symbol Fill Pen"
gs_wallhole_pen_bg PenColor "Plan Symbol Fill Background Pen"
gs_fillFr FillPattern "Corner Column Fill Type"
gs_penFr_fg PenColor "Corner Column Fill Pen"
gs_penFr_bg PenColor "Corner Column Fill Backg. Pen"
gs_sill_fill FillPattern "Sill Section Fill Type"
gs_sill_pen_fg PenColor "Sill Section Fill Pen"
gs_sill_pen_bg PenColor "Sill Section Fill Backg. Pen"
gs_board_fill FillPattern "Board Section Fill Type"
gs_board_pen_fg PenColor "Board Section Fill Pen"
gs_board_pen_bg PenColor "Board Section Fill Backg. Pen"
gs_treshold_fill FillPattern "Threshold Fill Type"
gs_treshold_pen_fg PenColor "Threshold Fill Pen"
gs_treshold_pen_bg PenColor "Threshold Fill Background Pen"
gs_trim_fill_in FillPattern "Casing Fill Type Inside"
gs_trim_pen_fg_in PenColor "Casing Fill Pen Inside"
gs_trim_pen_bg_in PenColor "Casing Fill Background Pen Inside"
gs_trim_fill_out FillPattern "Casing Fill Type Outside"
gs_trim_pen_fg_out PenColor "Casing Fill Pen Outside"
gs_trim_pen_bg_out PenColor "Casing Fill Background Pen Outside"
gs_fillShutter FillPattern "Shutter Fill Type"
gs_penShutter_fg PenColor "Shutter Fill Pen"
gs_penShutter_bg PenColor "Shutter Fill Background Pen"
gs_3D_representation Title "3D Representation"
gs_frame_pen PenColor "Frame Pen"
res Integer "Curve Resolution"
gs_window_material Title "Materials"
gs_frame_mat Material "Corner Column Material"
gs_trim_in_mat Material "Interior Casing Material"
gs_trim_out_mat Material "Exterior Casing Material"
gs_shut_frame_mat Material "Shutter Frame Material"
gs_shut_fill_mat Material "Shutter Filling Material"
gs_sill_mat Material "Sill Material"
gs_brick_sill_mort_mat Material "Brick Sill Mortar Material"
gs_board_mat Material "Board Material"
gs_apron_mat Material "Apron Material"
gs_treshold_mat Material "Threshold Material"
ac_details Title "AC Opening Oversize"
ac_left_oversize Length "AC Left Opening Oversize"
ac_right_oversize Length "AC Right Opening Oversize"
ac_upper_oversize Length "AC Upper Opening Oversize"
ac_lower_oversize Length "AC Lower Opening Oversize"
gs_stDoorFrame String Array[3] "String Resource"
gs_ui_sub_tabpage Integer "Sub Tabpage Selector"
gs_trim_inside Boolean "Casing Inside"
gs_trim_outside Boolean "Casing Outside"
idTab_SillSettings Integer ""
idTab_ThresholdSettings Integer ""
idTab_ThresholdSettings_NOR Integer ""
idTab_TrimSettings Integer ""
idTab_TrimSettings_NOR Integer ""
idTab_ShutterSettings Integer ""
idTab_CustomCornerSettings Integer ""
idTab_BoardSettings Integer ""
gs_sidelight_left Boolean "Left Sidelight"
gs_sidelight_width_left Length "Sidelight Width"
gs_sidelight_right Boolean "Right Sidelight"
gs_sidelight_width_right Length "Sidelight Width"
gs_door_frame Title "Door Frame"
gs_frame_style String "Frame Style"
gs_frame_wthk Boolean "Frame Thickness = Wall Thicknes"
gs_fthk Length "Frame Thickness"
gs_frame_thkin Length "Frame Thickness Inside"
gs_frame_width_left Length "Frame Width Left"
gs_frame_width_right Length "Frame Width Right"
gs_ds_thk Length "Door Stop Thickness"
gs_ds_w Length "Door Stop Width"
gs_rebate_width Length "Rebate Width"
gs_door_panel Title "Door Panel"
gs_leaf_thk Length "Leaf Thickness"
gs_string_resources Title "String Resources"
stSillTypes String Array[11] "gs_sill_type"
stCasing String Array[4] "gs_doorwindow_trim"
stThresholdTypes String Array[14] "gs_door_treshold"
stShutterStyles String Array[8] "gs_doorwindow_shutter"
stShutterType String Array[2] "gs_shutter_type"
stShutterPos String Array[3] "gs_shutter_pos"
stSillUI String Array[26] ""
stThresholdUI String Array[12] ""
stBoardUI String Array[12] ""
stCasingUI String Array[9] ""
stCasingTextNOR String Array[2] ""
stShutterUI String Array[21] ""
stBsilldetlevel String Array[2] ""
stCustomCornerUI String Array[11] ""
stBoardInPolyWall String Array[1] ""
gs_usa_parameters Title "USA Parameters"
bBoardElevUsa Length "Board Elevation (USA)"
bBoardNnosUsa Length "Board Negativ Nosing at Rebate Width Lower (USA)"
bSillNnosUsa Length "Sill Negativ Nosing at Rebate Width Lower (USA)"
gs_wt_m Integer "Wall Type"
idTab_TrimSettings_USA Integer ""
idTab_SillSettings_USA Integer ""
iDoorType Integer "Type of the Door"
gs_rebw_lower Length "Rebate Width Lower"
stCasingTextUSA String Array[4] "Casing UI Text"
stSillTextUSA String Array[10] "Sill UI Text"
iFrameStyle Integer "Frame Style"
gs_threshold_usa Boolean "Door Threshold"
gs_threshold_nor Boolean "NOR Threshold"
gs_metal Boolean "Metal Window"
gs_trim_offs_out_top Length "Trim Offset Out Top"
gs_sectgar Boolean "Sectional Garage Door"
stCornerConnType String Array[3] "gs_connType"
gs_transom_display Boolean "Display as Transom"
gs_boardInPolyWall String ""

3. Usage

Localization

The macro's default language is the English, but you can localize it with the following parameters:

stRevealClosureTypes parameter for the value list of the gs_reveal_closure_type

Row Default value Description
1 No Reveal Value list item
2 Reveal Value list item
3 Negative Reveal Value list item
4 Slanted Reveal Value list item
5 Splayed Reveal Value list item
6 Historic Reveal Value list item
7 Traditional Cavity Closure Value list item
8 Prefabricated Cavity Closure Value list item
9 Custom Closure Value list item
10 Studwall Value list item
11 Studwall with Siding Value list item
12 Brick Veneer Value list item

stCavityClosureSide parameter for the value list of the gs_cavity_side

Row Default value Description
1 Both Value list item
2 Left Value list item
3 Right Value list item

stCavityClosureTurnDir parameter for the value list of the gs_nTurnDir

Row Default value Description
1 Reference side Value list item
2 Opposite side Value list item

stCavityClosureEditedJambSide parameter for the value list of the gs_custom_cc_edit_jamb_side

Row Default value Description
1 Edit Both Jambs Value list item
2 Edit Left Jamb Value list item
3 Edit Right Jamb Value list item

stCavityClosureEditedWallSide parameter for the value list of the gs_custom_cc_edit_wall_side

Row Default value Description
1 Reference Side Value list item
2 Opposite Side Value list item

stCavityClosureEditedSkinNumber parameter for the value list of the gs_custom_cc_edit_skin

Row Default value Description
1 1. Skin Value list item
2 2. Skin Value list item
3 3. Skin Value list item
4 4. Skin Value list item

stCavityClosureTurnInThickness parameter for the value list of the gs_custom_cc_thickness_type

Row Default value Description
1 Original Value list item
2 Custom Value list item

stCavityClosureHatchOrientation parameter for the value list of the gs_custom_cc_orientation

Row Default value Description
1 Original Value list item
2 Turned in Value list item

stCavityClosureUI parameter for the static texts on the user interface

Row Default value Description
1 Cavity Closure UI string - static text (title of the lower left pane)
2 Closure Method UI string - gs_closureMethod
3 Cavity Side UI string - gs_cavity_side
4 Number of Outside Skins Obsolete
5 Number of Turned Skins UI string - gs_nTurn
6 Number from UI string - gs_nTurnDir
7 Turn at Reveal Obsolete
8 Insulation Strip UI string - gs_bJoint (title of the right pane)
9 Thickness UI string - gs_thkJoint
10 Contour Pen UI string - gs_penJoint and gs_penPlug
11 Line Type UI string - gs_ltJoint and gs_ltPlug
12 Fill Type UI string - gs_fillJoint and gs_fillPlug
13 Fill Pen UI string - gs_penJointFg and gs_penPlugFg
14 Fill Background Pen UI string - gs_penJointBg and gs_penPlugBg
15 Profile UI string - static text (title of the right pane)
16 Width UI string - gs_widthPlug
17 Turn Plaster UI string - static text (title of the Turn PLaster pane)
18 Reference-Side UI string - static text
19 Opposite-Side UI string - static text
20 Auto UI string - static text
21 Number of Skins to Turn UI string - static text
22 Consider Skin as Plaster if it is thinner than: UI string - static text
23 Use Wall Finish Skins UI string - static text
24 Select Skin to Edit UI string - gs_custom_cc_edit_wall_side and gs_custom_cc_edit_skin
25 Turn In Skin UI string - gs_custom_cc_turn_in
26 1. Turn-In Thickness UI string - gs_custom_cc_thickness_type
27 Custom Thickness UI string - gs_custom_cc_thickness
28 Hatch Orientation UI string - gs_custom_cc_orientation
29 Separating Line at Turn In UI string - gs_custom_cc_separator
30 Separating Line Pen UI string - gs_custom_cc_separator_pen
31 2. Skin Overhang to Frame Depth UI string - gs_custom_cc_overhang
32 Consider Skin as Plaster if Thinner Than or Equal To UI string - static text

stSubTabpageClosure parameter for the value list of the gs_ui_sub_tab_closure

Row Default value Description
1 Closure Settings Value list item
2 Reveal Geometry Value list item

stRevealClusureUITips parameter for the tooltips on the user interface

Row Default value Description
1 Sill Depth UI tooltip string - AC_wido_sill
2 Left Jamb Depth UI tooltip string - gs_reveal_left
3 Right Jamb Depth UI tooltip string - gs_reveal_right
4 Inner Left Jamb Depth UI tooltip string - gs_reveal_double_innerLeft
5 Inner Right Jamb Depth UI tooltip string - gs_reveal_double_innerRight
6 Head Height UI tooltip string - gs_reveal_top
7 Sill Height UI tooltip string - gs_reveal_bottom
8 Inner Head Height UI tooltip string - gs_reveal_double_innerTop
9 Inner Sill Height UI tooltip string - gs_reveal_double_innerBottom
10 Left Side Angle UI tooltip string -
11 Right Side Angle UI tooltip string -
12 Upper Side Angle UI tooltip string -
13 Bottom Side Angle UI tooltip string -

Example scripts

The following example script demonstrates the usage of this macro:

Master Script

The window object has to define the string tables for the parameters.

! ============================================================================= ! Localization ! ============================================================================= dim stRevealClosureTypes[12] ! gs_reveal_closure_type stRevealClosureTypes[ 1] = `Sill` stRevealClosureTypes[ 2] = `Reveal` stRevealClosureTypes[ 3] = `Negative Reveal` stRevealClosureTypes[ 4] = `Slanted Reveal` stRevealClosureTypes[ 5] = `Splayed Reveal` stRevealClosureTypes[ 6] = `Historic Reveal` stRevealClosureTypes[ 7] = `Traditional Cavity Closure` stRevealClosureTypes[ 8] = `Prefabricated Cavity Closure` stRevealClosureTypes[ 9] = `Custom Closure` stRevealClosureTypes[10] = `Studwall` stRevealClosureTypes[11] = `Studwall with Siding` stRevealClosureTypes[12] = `Brick Veneer` dim stRevealTypes[7] ! gs_reveal_type stRevealTypes[1] = `Sill` stRevealTypes[2] = `Reveal` stRevealTypes[3] = `Negative Reveal` stRevealTypes[4] = `Slanted Reveal` stRevealTypes[5] = `Splayed Reveal` stRevealTypes[6] = `Historic Reveal` stRevealTypes[7] = `Double Reveal` dim stWallContourLine[4] stWallContourLine[1] = `Off` stWallContourLine[2] = `Inside` stWallContourLine[3] = `Outside` stWallContourLine[4] = `Both Sides` dim stCavityClosureSide[3] ! gs_cavity_side stCavityClosureSide[1] = `Both` stCavityClosureSide[2] = `Left` stCavityClosureSide[3] = `Right` dim stCavityClosureTurnDir[2] ! gs_nTurnDir stCavityClosureTurnDir[1] = `Reference side` stCavityClosureTurnDir[2] = `Opposite side` dim stCavityClosureEditedJambSide[3] stCavityClosureEditedJambSide[1] = `Edit Both Jambs` stCavityClosureEditedJambSide[2] = `Edit Left Jamb` stCavityClosureEditedJambSide[3] = `Edit Right Jamb` dim stCavityClosureEditedWallSide[2] stCavityClosureEditedWallSide[1] = `Reference Side` stCavityClosureEditedWallSide[2] = `Opposite Side` dim stCavityClosureEditedSkinNumber[4] stCavityClosureEditedSkinNumber[1] = `1. Skin` stCavityClosureEditedSkinNumber[2] = `2. Skin` stCavityClosureEditedSkinNumber[3] = `3. Skin` stCavityClosureEditedSkinNumber[4] = `4. Skin` dim stCavityClosureTurnInThickness[2] stCavityClosureTurnInThickness[1] = `Original` stCavityClosureTurnInThickness[2] = `Custom` dim stCavityClosureHatchOrientation[2] stCavityClosureHatchOrientation[1] = `Original` stCavityClosureHatchOrientation[2] = `Turned in`

Parameter Script

For implementing the parameter logic of the Window Opening, you have to call this macro passing the following parameters.

! ============================================================================= ! Wallhole Structure ! ============================================================================= call "WallholeStructure" parameters all A = A, B = B, refWidth = refWidth, leftWidth = leftWidth, rightWidth = rightWidth, openingHeight = openingHeight, iRevealType = iRevealType, leftWallholeRevealPnts = leftWallholeRevealPnts, rightWallholeRevealPnts = rightWallholeRevealPnts, iRevealPointsIdx = iRevealPointsIdx, iClosureType = iClosureType, ! --- Coustom CC Settings --- gs_custom_cc_turn_in = gs_custom_cc_turn_in, gs_custom_cc_thickness_type = gs_custom_cc_thickness_type, gs_custom_cc_orientation = gs_custom_cc_orientation, gs_custom_cc_separator = gs_custom_cc_separator, gs_custom_cc_edit_jamb_side = gs_custom_cc_edit_jamb_side, gs_custom_cc_edit_wall_side = gs_custom_cc_edit_wall_side, gs_custom_cc_edit_skin = gs_custom_cc_edit_skin, gs_custom_cc_array_left = gs_custom_cc_array_left, gs_custom_cc_array_right = gs_custom_cc_array_right, gs_custom_cc_thickness = gs_custom_cc_thickness, gs_custom_cc_overhang = gs_custom_cc_overhang, gs_custom_cc_separator_pen = gs_custom_cc_separator_pen, ! --- Connections --- gs_stack_left = gs_stack_left, gs_stack_right = gs_stack_right, gs_stack_top = gs_stack_top, ! --- Function Control Parameters bEnablePlasterLeftIn = bEnablePlasterLeftIn, bEnablePlasterLeftOut = bEnablePlasterLeftOut, bEnablePlasterRightIn = bEnablePlasterRightIn, bEnablePlasterRightOut = bEnablePlasterRightOut, bEnableParapetInset = bEnableParapetInset, bEnableMasonryArch = bEnableMasonryArch, bEnableFaschen = bEnableFaschen, gs_RevealTypeEnable = gs_RevealTypeEnable, ! --- Macro Control Parameters isWindow = 1, iWindowShape = iWindowShape, defaultSillDepth = defaultSillDepth, ! --- Corner Functions bLeftCornerFunction = bLeftCornerFunction, leftCornerAngle = leftCornerAngle, leftConnWallThk = leftConnWallThk, bRightCornerFunction = bRightCornerFunction, rightCornerAngle = rightCornerAngle, rightConnWallThk = rightConnWallThk, ac_wallhole_width = ac_wallhole_width, gs_wallhole_width_half = gs_wallhole_width_half, ac_reveal_width = ac_reveal_width, gs_reveal_width_half = gs_reveal_width_half, ! --- String Resources stRevealClosureTypes = stRevealClosureTypes, stRevealTypes = stRevealTypes, stWallContourLine = stWallContourLine, stSubTabpageClosure = stSubTabpageClosure, stCavityClosureSide = stCavityClosureSide, stCavityClosureTurnDir = stCavityClosureTurnDir, stCavityClosureEditedJambSide = stCavityClosureEditedJambSide, stCavityClosureEditedWallSide = stCavityClosureEditedWallSide, stCavityClosureEditedSkinNumber = stCavityClosureEditedSkinNumber, stCavityClosureTurnInThickness = stCavityClosureTurnInThickness, stCavityClosureHatchOrientation = stCavityClosureHatchOrientation, stMasonryArchTypes = stMasonryArchTypes, stMasonryArchStructure = stMasonryArchStructure

UI Script

For implementing the user interface page in your object, just call the macro from the UI script.

! ============================================================================= ! Masonry Arch, Cavity Closure, Custom Reveal Settings Tabpage ! ============================================================================= dim stCavityClosureUI[32] stCavityClosureUI[ 1] = `Cavity Closure` stCavityClosureUI[ 2] = `Closure Method` stCavityClosureUI[ 3] = `Cavity Side` stCavityClosureUI[ 4] = `Number of Outside Skins` stCavityClosureUI[ 5] = `Number of Turned Skins` stCavityClosureUI[ 6] = `Number from` stCavityClosureUI[ 7] = `Turn at Reveal` stCavityClosureUI[ 8] = `Insulation Strip` stCavityClosureUI[ 9] = `Thickness` stCavityClosureUI[10] = `Contour Pen` stCavityClosureUI[11] = `Line Type` stCavityClosureUI[12] = `Fill Type` stCavityClosureUI[13] = `Fill Pen` stCavityClosureUI[14] = `Fill Background Pen` stCavityClosureUI[15] = `Profile` stCavityClosureUI[16] = `Width` stCavityClosureUI[17] = `Turn Plaster` stCavityClosureUI[18] = `Reference-Side` stCavityClosureUI[19] = `Opposite-Side` stCavityClosureUI[20] = `Auto` stCavityClosureUI[21] = `Number of Skins to Turn` stCavityClosureUI[22] = `Plaster Thickness Limit` stCavityClosureUI[23] = `Use Wall Finish Skins` stCavityClosureUI[24] = `Select Skin to Edit` stCavityClosureUI[25] = `Turn In Skin` stCavityClosureUI[26] = `1. Turn-In Thickness` stCavityClosureUI[27] = `Custom Thickness` stCavityClosureUI[28] = `Hatch Orientation` stCavityClosureUI[29] = `Separating Line at Turn In` stCavityClosureUI[30] = `Separating Line Pen` stCavityClosureUI[31] = `2. Skin Overhang to Frame Depth` stCavityClosureUI[32] = `Consider Skin as Plaster if Thinner Than or Equal To` dim stRevealClusureUITips[13] stRevealClusureUITips[ 1] = `Sill Depth` stRevealClusureUITips[ 2] = `Left Jamb Depth` stRevealClusureUITips[ 3] = `Right Jamb Depth` stRevealClusureUITips[ 4] = `Inner Left Jamb Depth` stRevealClusureUITips[ 5] = `Inner Right Jamb Depth` stRevealClusureUITips[ 6] = `Head Height` stRevealClusureUITips[ 7] = `Sill Height` stRevealClusureUITips[ 8] = `Inner Head Height` stRevealClusureUITips[ 9] = `Inner Sill Height` stRevealClusureUITips[10] = `Left Side Angle` stRevealClusureUITips[11] = `Right Side Angle` stRevealClusureUITips[12] = `Upper Side Angle` stRevealClusureUITips[13] = `Bottom Side Angle` call "WallholeStructure" parameters all A = A, iRevealType = iRevealType, iClosureType = iClosureType, ! --- Function Control Parameters bEnablePlasterLeftIn = bEnablePlasterLeftIn, bEnablePlasterLeftOut = bEnablePlasterLeftOut, bEnablePlasterRightIn = bEnablePlasterRightIn, bEnablePlasterRightOut = bEnablePlasterRightOut, bEnableParapetInset = bEnableParapetInset, bEnableMasonryArch = bEnableMasonryArch, bEnableFaschen = bEnableFaschen, ! --- Macro Control Parameters isWindow = 1, iWindowShape = iWindowShape, gs_parapet_sizes = gs_parapet_sizes, ! --- Corner Functions bLeftCornerFunction = bLeftCornerFunction, leftCornerAngle = leftCornerAngle, leftConnWallThk = leftConnWallThk, bRightCornerFunction = bRightCornerFunction, rightCornerAngle = rightCornerAngle, rightConnWallThk = rightConnWallThk, idTab_MasonryArchSettings = idTab_MasonryArchSettings, idTab_CavityClosureSettings = idTab_CavityClosureSettings, idTab_CustomRevealSettings = idTab_CustomRevealSettings, idTab_RevealClouserSettings = idTab_RevealClouserSettings, idTab_BoardSettings = idTab_BoardSettings, idTab_WallInset = idTab_WallInset, ! --- String Resources stRevealClosureTypes = stRevealClosureTypes, stRevealTypes = stRevealTypes, stWallContourLine = stWallContourLine, stCavityClosureSide = stCavityClosureSide, stCavityClosureTurnDir = stCavityClosureTurnDir, stMasonryArchTypes = stMasonryArchTypes, stMasonryArchStructure = stMasonryArchStructure, stWallholeCutUI = stWallholeCutUI, stCavityClosureUI = stCavityClosureUI, stMasonryArchUI = stMasonryArchUI, stSubTabpageClosure = stSubTabpageClosure, stRevealClusureUITips = stRevealClusureUITips

2D Script

In this kind of script the window has to contain the following code lines. It has to empty the transformation stack before calling this macro (eg. with a del top command)

! ============================================================================= ! Wallhole Structure ! ============================================================================= call "WallholeStructure" parameters all A = A, iDemolitionOrNew = iDemolitionOrNew, refWidth = refWidth, leftWidth = leftWallholeWidth, rightWidth = rightWallholeWidth, iRevealType = iRevealTypeForDisplay, leftWallholeRevealPnts = leftWallholeRevealPnts, rightWallholeRevealPnts = rightWallholeRevealPnts, iRevealPointsIdx = iRevealPointsIdx, bAddPoint = bAddPoint, iClosureType = iClosureType, radSill = radSill, radBoard = radBoard, WOD = WOD, overSizeLeft = overSizeLeft, overSizeRight = overSizeRight, overSizeUpper = overSizeUpper, overSizeLower = overSizeLower, lineSections = lineSections, ! --- Turned Plaster Skins possibleSkinTurnIn = possibleSkinTurnIn, possibleSkinTurnOut = possibleSkinTurnOut, maxSkinTurnIn = maxSkinTurnIn, maxSkinTurnOut = maxSkinTurnOut, nSkinTurnIn = nSkinTurnIn, nSkinTurnOut = nSkinTurnOut, ! --- Function Control Parameters bEnablePlasterLeftIn = bEnablePlasterLeftIn, bEnablePlasterLeftOut = bEnablePlasterLeftOut, bEnablePlasterRightIn = bEnablePlasterRightIn, bEnablePlasterRightOut = bEnablePlasterRightOut, bEnableParapetInset = bEnableParapetInset, bEnableMasonryArch = bEnableMasonryArch, bEnableFaschen = bEnableFaschen, ! --- Macro Control Parameters isWindow = 1, gs_IsCurved = gs_IsCurved, bParalellInCurvedWalls = bParalellInCurvedWalls, bDrawSillFill = bDrawSillFill, bDrawBoardFill = bDrawBoardFill, ! --- Corner Functions bLeftCornerFunction = bLeftCornerFunction, leftCornerAngle = leftCornerAngle, leftConnWallThk = leftConnWallThk, bRightCornerFunction = bRightCornerFunction, rightCornerAngle = rightCornerAngle, rightConnWallThk = rightConnWallThk, ! --- Window Sizes gs_wallhole_hotspots = gs_wallhole_hotspots, gs_reveal_hotspots = gs_reveal_hotspots, ! --- Reveal and Closure Type gs_reveal_left = gs_reveal_left, gs_reveal_right = gs_reveal_right, revealInnerLeft = revealInnerLeft, revealInnerRight = revealInnerRight, ! --- String Resources stWallContourLine = stWallContourLine, stCavityClosureSide = stCavityClosureSide, stCavityClosureTurnDir = stCavityClosureTurnDir, stMasonryArchTypes = stMasonryArchTypes, stMasonryArchStructure = stMasonryArchStructure, ! --- Parapet gs_parapet_sizes = gs_parapet_sizes

3D Script

In this kind of script the window has to contain the following code lines. It has to empty the transformation stack before calling this macro (eg. with a del top command)

! ============================================================================= ! Wallhole Structure ! ============================================================================= call "WallholeStructure" parameters all A = A, AC_Sill_To_Curr_Story = AC_Sill_To_Curr_Story, AC_Wall_Slant_Angle1 = AC_Wall_Slant_Angle1, AC_Wall_Slant_Angle2 = AC_Wall_Slant_Angle2, AC_Wall_CrossSection_Type = AC_Wall_CrossSection_Type, refWidth = refWidth, leftWidth = leftWallholeWidth, rightWidth = rightWallholeWidth, iRevealType = iRevealType, leftWallholeRevealPnts = leftWallholeRevealPnts, rightWallholeRevealPnts = rightWallholeRevealPnts, iRevealPointsIdx = iRevealPointsIdx, revealInnerLeft = revealInnerLeft, revealInnerRight = revealInnerRight, iClosureType = iClosureType, radSill = radSill, radBoard = radBoard, WOD = WOD, overSizeLeft = overSizeLeft, overSizeRight = overSizeRight, overSizeUpper = overSizeUpper, overSizeLower = overSizeLower, ! --- Function Control Parameters bEnableParapetInset = bEnableParapetInset, bEnableMasonryArch = bEnableMasonryArch, bEnableFaschen = bEnableFaschen, ! --- Macro Control Parameters isWindow = 1, gs_IsCurved = gs_IsCurved, bParalellInCurvedWalls = bParalellInCurvedWalls, ! --- Corner Functions bLeftCornerFunction = bLeftCornerFunction, leftCornerAngle = leftCornerAngle, leftConnWallThk = leftConnWallThk, bRightCornerFunction = bRightCornerFunction, rightCornerAngle = rightCornerAngle, rightConnWallThk = rightConnWallThk, ! --- String Resources stRevealTypes = stRevealTypes, stWallContourLine = stWallContourLine, stMasonryArchTypes = stMasonryArchTypes, stMasonryArchStructure = stMasonryArchStructure, ! --- Parapet gs_parapet_bottom = gs_parapet_bottom, gs_parapet_sizes = gs_parapet_sizes