FULL GDL MASTER SCRIPT:
EPS = 0.0001
w=0
dim stFontStyle[4]
stFontStyle[1] = `Plain`
stFontStyle[2] = `Bold`
stFontStyle[3] = `Italic`
stFontStyle[4] = `Underline`
dim stBoxText[11]
stBoxText[1] = `Zone Name`
stBoxText[2] = `Zone No.`
stBoxText[3] = `Floor Finish`
stBoxText[4] = `Measured Area`
stBoxText[5] = `Calculated Area`
stBoxText[6] = `Source`
stBoxText[7] = `Perimeter`
stBoxText[8] = `Ceiling Height`
stBoxText[9] = `Volume`
stBoxText[10] = `None`
stBoxText[11] = `Occupancy`
numBoxText = 11
dim functionOrder[11]
functionOrder[1] = ord_1
functionOrder[2] = ord_2
functionOrder[3] = ord_3
functionOrder[4] = ord_4
functionOrder[5] = ord_5
functionOrder[6] = ord_6
functionOrder[7] = ord_7
functionOrder[8] = ord_8
functionOrder[9] = ord_9
functionOrder[10] = ord_10
functionOrder[10] = ord_11
numFunctionOrder = 11
dim functionFrame[11]
functionFrame[1] = bFrameName
functionFrame[2] = bFrameNum
functionFrame[3] = bFrameFin
functionFrame[4] = bFrameGrossArea
functionFrame[5] = bFrameArea
functionFrame[6] = bFrameCode
functionFrame[7] = bFramePeri
functionFrame[8] = bFrameCeil
functionFrame[9] = bFrameVolume
functionFrame[10] = 0
functionFrame[11] = gs_show_frame_occupancy
dim oldShowBoolean[9]
oldShowBoolean[1] = name
oldShowBoolean[2] = num
oldShowBoolean[3] = Fin
oldShowBoolean[4] = GrossArea
oldShowBoolean[5] = area
oldShowBoolean[6] = code
oldShowBoolean[7] = peri
oldShowBoolean[8] = ceil_s
oldShowBoolean[9] = Volume
! ==============================================================================
! Compatibility
! ==============================================================================
if gs_compatibility_contr = 0 then
iCompatibOrder = 1
for iCompatib = 1 to 9
if oldShowBoolean[iCompatib] = 1 then
functionOrder[iCompatibOrder] = stBoxText[iCompatib]
iCompatibOrder = iCompatibOrder + 1
endif
next iCompatib
if iCompatibOrder <= 9 then
repeat
functionOrder[iCompatibOrder] = stBoxText[9]
iCompatibOrder = iCompatibOrder + 1
until iCompatibOrder = 10
endif
parameters ord_1 = functionOrder[1],
ord_2 = functionOrder[2],
ord_3 = functionOrder[3],
ord_4 = functionOrder[4],
ord_5 = functionOrder[5],
ord_6 = functionOrder[6],
ord_7 = functionOrder[7],
ord_8 = functionOrder[8],
ord_9 = functionOrder[9]
if box_y then
bFrameName = 0
bFrameNum = 1
bFrameFin = 1
bFrameGrossArea = 1
bFrameArea = 1
bFrameCode = 1
bFramePeri = 1
bFrameCeil = 1
bFrameVolume = 1
else
bFrameName = 0
bFrameNum = 0
bFrameFin = 0
bFrameGrossArea = 0
bFrameArea = 0
bFrameCode = 0
bFramePeri = 0
bFrameCeil = 0
bFrameVolume = 0
endif
parameters bFrameName = bFrameName,
bFrameNum = bFrameNum,
bFrameFin = bFrameFin,
bFrameCode = bFrameCode,
bFrameGrossArea = bFrameGrossArea,
bFrameArea = bFrameArea,
bFramePeri = bFramePeri,
bFrameCeil = bFrameCeil,
bFrameVolume = bFrameVolume
endif
wasOldstyleParameter = 0
for iFront = 1 to 10
if functionOrder[iFront] = `Measured Gross Area` then
functionOrder[iFront] = stBoxText[4]
wasOldstyleParameter = 1
endif
next iFront
if wasOldstyleParameter = 1 then
ord_1 = functionOrder[1]
ord_2 = functionOrder[2]
ord_3 = functionOrder[3]
ord_4 = functionOrder[4]
ord_5 = functionOrder[5]
ord_6 = functionOrder[6]
ord_7 = functionOrder[7]
ord_8 = functionOrder[8]
ord_9 = functionOrder[9]
parameters ord_1 = functionOrder[1],
ord_2 = functionOrder[2],
ord_3 = functionOrder[3],
ord_4 = functionOrder[4],
ord_5 = functionOrder[5],
ord_6 = functionOrder[6],
ord_7 = functionOrder[7],
ord_8 = functionOrder[8],
ord_9 = functionOrder[9]
endif
! ==============================================================================
! Hiding text parameters when their's unused
! ==============================================================================
bZname = 1
bZnum = 1
bZFin = 1
bZgross = 1
bZarea = 1
bZcode = 1
bZperi = 1
bZheight = 1
bZvolume = 1
bOccupancy = 1
FOR iFunction = 1 to 10 ! 9 -> None does nothing
poss = iFunction
if ord_1 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_2 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_3 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_4 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_5 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_6 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_7 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_8 = stBoxText[iFunction] then
poss = poss + 100
endif
if ord_9 = stBoxText[iFunction] then
poss = poss + 100
if ord_10 = stBoxText[iFunction] then
poss = poss + 100
endif
if poss = 1 then
hideparameter "iname", "AC_TextFont_1", "cn_zn", "zonastyle", "zonapen", "bFrameName"
bZname = 0
endif
if poss = 2 then
hideparameter "inum", "zonofont", "zonostyle", "zonopen", "bFrameNum"
bZnum = 0
endif
if poss = 3 then
hideparameter "iFin", "FinText", "FinFont", "FinStyle", "FinPen", "bFrameFin"
bZFin = 0
endif
if poss = 4 then
hideparameter "iGrossArea", "GrossAreaText", "GrossAreaFont", "GrossAreaStyle", "GrossAreaPen", "bFrameGrossArea"
bZgross = 0
endif
if poss = 5 then
hideparameter "iarea", "areatext", "areafont", "areastyle", "areapen", "bFrameArea"
bZarea = 0
endif
if poss = 6 then
hideparameter "icode", "basec", "wallc", "ceilc", "codefont", "codestyle", "codepen", "bFrameCode"
bZcode = 0
endif
if poss = 7 then
hideparameter "iperi", "peritext", "perifont", "peristyle", "peripen", "bFramePeri"
bZperi = 0
endif
if poss = 8 then
hideparameter "iceil_s", "ceiltext", "ceilhfont", "ceilhstyle", "ceilhpen", "bFrameCeil"
bZheight = 0
endif
if poss = 9 then
hideparameter "iVolume", "VolumeText", "VolumeFont", "VolumeStyle", "VolumePen", "bFrameVolume"
bZvolume = 0
endif
if poss = 10 then
hideparameter "iOccupancy",
"gs_show_occupancy_area", "gs_number_person", "gs_number_add_occupants", "gs_number_occupants",
"gs_occupancy_text", "gs_type_font_occupancy", "gs_style_font_occupancy", "gs_pen_font_occupancy",
"gs_show_frame_occupancy"
bOccupancy = 0
endif
NEXT iFunction
! ==============================================================================
! Frame Function : "Show Frame" Boolean
! On: assign the unique settings (every line've own frame)
! Off: turn off and hide everything about the frame
! ==============================================================================
if not (box_y) then
bFrameName = 0
bFrameNum = 0
bFrameFin = 0
bFrameGrossArea = 0
bFrameArea = 0
bFrameCode = 0
bFramePeri = 0
bFrameCeil = 0
bFrameVolume = 0
gs_show_frame_occupancy = 0
endif
! ==============================================================================
IF ROOM_POLY_STATUS = 0 then Temp_CalcArea = ROOM_CALC_AREA ! Method 1 and 2 (Calculated Area)
IF ROOM_POLY_STATUS = 1 then Temp_CalcArea = ROOM_CALC_AREA ! Method 3/Net (Calculated Area)
IF ROOM_POLY_STATUS = 2 then Temp_CalcArea = ROOM_CALC_AREA ! Method 3/Gross (Calculated Area)
if gs_show_occupancy_area then
result_occupancy = str("%~",int(gs_number_person * Temp_CalcArea) + gs_number_add_occupants)
parameters result_occupancy = result_occupancy
else
result_occupancy = str("%~",gs_number_occupants)
parameters result_occupancy = result_occupancy
endif
! ==============================================================================