BIM.works SDKs - v3.0.0-b.115
    Preparing search index...

    Class ObjectDistanceMeasurement

    Hierarchy (View Summary)

    Index

    Constructors

    Accessors

    • get distance(): number | null

      Returns number | null

      The distance in millimetres, or null while there is no result

    • get editable(): boolean

      Whether the points of this measurement can be dragged to a new position after it has been finalized (default true). Supported for area, path and point measurements, and for the laser, which is dragged as a whole by its instrument (a click on it selects it instead); the other types have no draggable points. The points show a pointer cursor on hover; while dragging, vertex snapping applies as during measuring (Shift temporarily disables it) and the label (area/length/position) is updated in realtime. Dropping the point fires the committed listener event, Escape cancels the drag

      Returns boolean

    • set editable(editable: boolean): void

      Parameters

      • editable: boolean

      Returns void

    • get editState(): | {
          index: number
          | null;
          moved: boolean;
          originalText: string | null;
      }
      | null

      The point being dragged (see editable): its index, whether it moved yet, and the measurement's value before the drag as its label shows it. Null when no point is dragged. A right-click during the drag puts the point back, like Escape. For a laser, index is the beam end dragged along its beam (0-2 the ends along the axes, 3-5 those opposite), null while it moves as a whole by its instrument; originalText is null

      Returns { index: number | null; moved: boolean; originalText: string | null } | null

    • get finished(): boolean

      Returns boolean

      Whether this measurement is finished

    • get id(): number

      Get the unique identifier of this measurement

      Returns number

    • get pointCount(): number

      Returns number

      The points placed so far while this measurement is being taken (objects picked, for an object distance)

    • get qids(): [string | null, string | null]

      Returns [string | null, string | null]

      The qids of the two objects (null for a slot that has not been picked yet)

    • get referenceModes(): ReferenceMode[]

      Returns ReferenceMode[]

      Per object, whether it is measured on its surface or on its reference (centre line / axis plane)

    • get referenceObjects(): (ReferenceObject | null)[]

      Returns (ReferenceObject | null)[]

      Per side, the level or grid line it holds instead of an object, or null

    • get referenceOn(): boolean

      Whether the measurement goes to the references of its objects: while picking the choice made with preferReference, once finished whether a slot actually uses its reference

      Returns boolean

    • get references(): (ObjectReference | null)[]

      Returns (ObjectReference | null)[]

      The references of the two objects once they have been fetched (the first O key press fetches them), null per object without one

    • get result(): ObjectDistanceResult | null

      Returns ObjectDistanceResult | null

      The result, or null while the objects are still being picked or the distance is being computed

    • get snapsToVertices(): boolean

      Returns boolean

      Whether the points of this measurement snap to vertices and edges (point, length, area, angle)

    Methods

    • Whether the O key can cycle this measurement's reference modes: it is finished and both objects are known

      Returns boolean

    • Returns boolean

      Whether finish() would complete this measurement now (enough points for a length or an area)

    • Move to the next reference-mode state and recompute (the O key): surface/surface, then B on its reference, both, A alone, skipping states an object without a reference cannot take. Fires committed again on the new result.

      Returns Promise<boolean>

      true when the modes changed; false when neither object has a reference, or while a computation is still running

    • Returns vec3[] | null

      The points (viewer measurement coordinates) a camera fit on this measurement encloses, or null when it has none yet

    • Returns boolean

      Whether this measurement is hovered

    • Returns boolean

      Whether this measurement is selected

    • Before the second object is picked: measure to the objects' references (a slot whose object has none stays on its surface) or to their surfaces

      Parameters

      • on: boolean

      Returns boolean

      Whether the choice could be made (not once finished, use cycleReferenceMode then)

    • One object's Centre line toggle (0 the first object, 1 the second): whether it is measured on its reference, and whether that can be switched: not for a level or grid line, nor, once the references are in, for an object without one. In vertical mode a vertical centre line (a window's, a column's axis) is measured from its middle, the object's centre height

      Parameters

      • slot: 0 | 1

      Returns ReferenceToggleState

    • Returns void

      Remove this Measurement

    • Measure one object (0 the first, 1 the second) on its reference or on its surface, the other staying as it is: a choice for the computation while picking, a recomputation once finished (fires committed again, as cycleReferenceMode)

      Parameters

      • slot: 0 | 1
      • on: boolean

      Returns Promise<boolean>

      Whether the modes changed; false when the object has no reference (a message says so)

    • Remove the last placed point while this measurement is being taken, see Measuring.undoLastPoint

      Returns boolean

      Whether a point was taken back