DIQ_Layout
Purpose
The
A layout acts as the interactive measurement surface where users create, modify, and manage dimensions. It defines scaling, calibration, unit configuration, display settings, and drawing metadata for a specific page of a drawing.
This is commonly used when:
- Loading drawing pages into the widget
- Managing measurement settings per page
- Applying calibration and scaling adjustments
- Controlling visual display preferences
- Storing title block metadata
- Persisting layout-level configuration
By structuring layout configuration into a defined type, DimensionIQ ensures consistent measurement behavior and predictable rendering across integrations.
Why This Type Exists
Drawings often contain multiple pages, views, or sheets, each with different:
- Scales
- Units
- Calibration settings
- Measurement rules
- Display references
The
- Provide per-page measurement configuration
- Store calibration and scaling values independently
- Preserve layout-specific visual settings
- Support BIM-specific unit handling
- Maintain revision-aware layout states
- Enable locking and workflow control
Because the host application is responsible for persistence and business rules,
Properties
| Properties | Type | Required | Description |
|---|---|---|---|
key | string | Yes | Unique identifier for the layout |
drawingRevisionKey | string | Yes | References the parent DIQ_DrawingRevision |
ID | string | Yes | External or business-specific identifier for the layout |
name | string | Yes | Display name of the layout (eg, "Ground Floor Plan") |
UOM | string | Yes | Primary unit of measurement used in this layout |
bimLengthUOM | string | No | BIM-specific length unit |
bimAreaUOM | string | No | BIM-specific area unit |
bimVolumeUOM | string | No | BIM-specific volume unit |
bimWeightUOM | string | No | BIM-specific weight unit |
revisedState | string | No | Indicates the revision state of the layout (eg, Revising, Revised) |
locked | boolean | Yes | Indicates whether the layout is locked for editing |
multiplier | number | Yes | Global measurement multiplier applied to dimensions |
xscale | number | Yes | X-axis scale factor |
yscale | number | Yes | Y-axis scale factor |
zscale | number | Yes | Z-axis scale factor (used for 3D/BIM scaling) |
xcalibration | number | Yes | X-axis calibration factor |
ycalibration | number | Yes | Y-axis calibration factor |
calibrationAngle | number | Yes | Rotation angle applied during calibration |
dimensionMode | string | Yes | Determines how dimensions behave (eg, 2D, BIM, scaled) |
backgroundColor | string | No | Layout background color setting |
showText | boolean | Yes | Controls visibility of dimension text |
showHatching | boolean | No | Controls display of hatch patterns |
warnMissingXRefs | boolean | Yes | Indicates whether missing external references should trigger warnings |
thumbnail | string | No | Encoded thumbnail preview of the layout |
extendedData | string | No | Host defined extended metadata |
TBTitle | string | No | Title block title value |
TBDrawingNumber | string | No | Title block drawing number |
TBRevision | string | No | Title block revision value |
TBDateReceived | string | No | Title block received date |
Behavioral Expectations
Identity and Association- keymust be unique and stable
- drawingRevisionKeymust reference a validDIQ_DrawingRevision
- A layout cannot exist independently of a drawing revision
- UOMhow DimensionIQ interprets the measurements from this drawing
- BIM-specific UOMproperties override or supplement standard units when BIM mode is active
- multiplierapplies globally to calculated measurements
- xscale,yscale,zscaledefine drawing scaling factors
- xcalibration,ycalibration,calibrationAngleare used during calibration workflows
- Incorrect calibration values will affect all measurement outputs
- The host is responsible for persisting accurate calibration values
- When lockedistrue:
- Editing operations should be prevented
- New dimensions may be blocked
- UI changes may be restricted
- revisedStatemay influence workflow logic
- showTextcontrols dimension label visibility
- showHatchingtoggles hatch rendering
- backgroundColorcontrols visual rendering context
- warnMissingXRefsenables validation warnings for missing references
- TB-prefixed properties store title block data
- These values are informational and do not affect measurement logic
- Host applications may synchronize these values with external systems
Summary
It controls scaling, calibration, units, workflow state, rendering preferences, and title block metadata for a specific drawing page.
By separating layout configuration from drawings and revisions, DimensionIQ ensures precise measurement control, flexible integration, and predictable rendering behavior across host applications.