Skip to content

editor › Globals › RelativeTransformsAnchor

Class: RelativeTransformsAnchor

Positions something relative to another (= reference) anchor. The relative offset and rotation are in the reference anchor's local coordinate system, thus this anchor behaves as if it was fixated to the reference anchor. This anchor can hold multiple transforms but you can also use it as if it only had one, the first one is the default. Multiple transforms are used for cycling through grid inferrer results.

Hierarchy

  • RelativeTransformsAnchor

Implements

Index

Properties

Methods

Properties

Private Readonly changeEventEmitter

• changeEventEmitter: EventEmitter‹IAnchorChangeEvent› = new EventEmitter()

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:62


Private chosenTransformsIndex

• chosenTransformsIndex: number = 0

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:60


Private destroyed

• destroyed: boolean = false

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:66


Private offsetsAndRelativeRotations

• offsetsAndRelativeRotations: ITransformProperties[] = [ { offset: new Vector3(), relativeRotation: new Quaternion() }, ]

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:56


Private referenceAnchor

• referenceAnchor: IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:49


Private transforms

• transforms: Transforms = new Transforms()

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:54

The position/rotation of this anchor in assembly space


Private Readonly transformsChangeEventEmitter

• transformsChangeEventEmitter: EventEmitter‹ITransformsChangeEvent› = new EventEmitter()

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:64

Methods

Private _onReferenceAnchorChange

▸ _onReferenceAnchorChange(event: IAnchorChangeEvent): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:231

Parameters:

Name Type
event IAnchorChangeEvent

Returns: void


Private _onReferenceAnchorTransformsChange

▸ _onReferenceAnchorTransformsChange(event: any): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:213

apply local offsets to calc own transforms, emit event

Parameters:

Name Type Description
event any -

Returns: void


Private _updateTransformsAndEmitEvent

▸ _updateTransformsAndEmitEvent(): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:217

Returns: void


addOffsetAndRelativeRotation

▸ addOffsetAndRelativeRotation(newOffset: Vector3, newRotation: Quaternion): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:137

Parameters:

Name Type
newOffset Vector3
newRotation Quaternion

Returns: void


clone

▸ clone(): RelativeTransformsAnchor

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:173

Returns: RelativeTransformsAnchor

a clone of this and the reference anchor


destroy

▸ destroy(): void

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:188

Returns: void


getAllOffsetsAndRelativeRotations

▸ getAllOffsetsAndRelativeRotations(): Array‹object›

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:156

Returns: Array‹object›


getChangeEventEmitter

▸ getChangeEventEmitter(): IPublicEventEmitterInterface‹IAnchorChangeEvent›

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:117

Returns: IPublicEventEmitterInterface‹IAnchorChangeEvent›


getChosenTransformsIndex

▸ getChosenTransformsIndex(): number

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:160

Returns: number


getIsValid

▸ getIsValid(): boolean

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:113

Returns: boolean


getOffset

▸ getOffset(): Vector3‹›

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:104

Returns: Vector3‹›


getReferenceAnchor

▸ getReferenceAnchor(): IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:87

Returns: IPositioningAnchor


getRelativeRotation

▸ getRelativeRotation(): Quaternion‹›

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:95

Returns: Quaternion‹›


getTargets

▸ getTargets(): IModelElement[]

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:125

Returns: IModelElement[]


getTransforms

▸ getTransforms(): IReadOnlyTransforms

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:133

Returns: IReadOnlyTransforms


getTransformsChangeEventEmitter

▸ getTransformsChangeEventEmitter(): IPublicEventEmitterInterface‹ITransformsChangeEvent›

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:121

Returns: IPublicEventEmitterInterface‹ITransformsChangeEvent›


getTransformsTargets

▸ getTransformsTargets(): IPositioningAnchor[]

Implementation of IPositioningAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:91

Returns: IPositioningAnchor[]


removeOffsetAndRelativeRotationWithIndex

▸ removeOffsetAndRelativeRotationWithIndex(index: number): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:141

Parameters:

Name Type
index number

Returns: void


setAllOffsetsAndRelativeRotations

▸ setAllOffsetsAndRelativeRotations(offsetAndRotation: Array‹object›): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:148

Parameters:

Name Type
offsetAndRotation Array‹object›

Returns: void


setChosenTransformsIndex

▸ setChosenTransformsIndex(index: number): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:164

Parameters:

Name Type
index number

Returns: void


setOffset

▸ setOffset(newOffset: Vector3): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:108

Parameters:

Name Type
newOffset Vector3

Returns: void


setReferenceAnchor

▸ setReferenceAnchor(reference: IPositioningAnchor): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:68

Parameters:

Name Type
reference IPositioningAnchor

Returns: void


setRelativeRotation

▸ setRelativeRotation(newRotation: Quaternion): void

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:99

Parameters:

Name Type
newRotation Quaternion

Returns: void


Static fromAnchors

▸ fromAnchors(reference: IPositioningAnchor, target: IPositionableElementTransformsDefiner): RelativeTransformsAnchor

Defined in src/model/data/Concepts/Anchors/RelativeTransformsAnchor.ts:31

Creates a relative transforms so that this anchor will initially realize the target's coordinate system until the reference changes.

Parameters:

Name Type Description
reference IPositioningAnchor reference anchor to adjust to. As this will chain an anchor to the reference, the reference anchor must not be shared with others
target IPositionableElementTransformsDefiner a TransformsDefiner that provides the initial position (which is applied to the new anchor's coordinate system)

Returns: RelativeTransformsAnchor