Skip to content

editor › Globals › OrnamentDescriptor

Class: OrnamentDescriptor

An OrnamentDescriptor is the blueprint for ornaments on a plate: it describes what ornament should be placed where on which surface. The realization itself depends on what realizers are used for mesh and ornament.

Hierarchy

↳ OrnamentDescriptor

↳ LocalOrnamentDescriptor

Implements

Index

Constructors

Properties

Methods

Constructors

constructor

+ new OrnamentDescriptor(assetIdAndResourceName: string, side: PlateSide): OrnamentDescriptor

Overrides AbstractOrnamentDescriptor.constructor

Defined in src/model/data/Concepts/OrnamentDescriptor.ts:11

Parameters:

Name Type Description
assetIdAndResourceName string the asset ID and resource name to be realized, @see getAssetIdAndResourceName()
side PlateSide the side of the plate to put the ornament on

Returns: OrnamentDescriptor

Properties

Protected anchor

• anchor: PointOnSurfaceAnchor | null

Inherited from AbstractOrnamentDescriptor.anchor

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:21


Protected assembly

• assembly: Assembly

Inherited from AbstractOrnamentDescriptor.assembly

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:19


Protected Readonly assetIdAndResourceName

• assetIdAndResourceName: string

Defined in src/model/data/Concepts/OrnamentDescriptor.ts:11


Protected Readonly changeEventEmitter

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

Inherited from AbstractOrnamentDescriptor.changeEventEmitter

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:23


Protected coversWholePlate

• coversWholePlate: boolean = true

Inherited from AbstractOrnamentDescriptor.coversWholePlate

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:25


Protected scale

• scale: Vector3 = new Vector3(1, 1, 1)

Inherited from AbstractOrnamentDescriptor.scale

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:27


Protected side

• side: PlateSide

Inherited from AbstractOrnamentDescriptor.side

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:31


Protected Readonly transformsChangeEventEmitter

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

Inherited from AbstractOrnamentDescriptor.transformsChangeEventEmitter

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:29

Methods

Protected _onAnchorChange

▸ _onAnchorChange(event: IAnchorChangeEvent): void

Inherited from AbstractOrnamentDescriptor._onAnchorChange

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:191

Parameters:

Name Type
event IAnchorChangeEvent

Returns: void


Protected _onAnchorTransformsChange

▸ _onAnchorTransformsChange(changeEvent: ITransformsChangeEvent): void

Inherited from AbstractOrnamentDescriptor._onAnchorTransformsChange

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:217

Parameters:

Name Type
changeEvent ITransformsChangeEvent

Returns: void


clone

▸ clone(): OrnamentDescriptor‹›

Overrides AbstractOrnamentDescriptor.clone

Defined in src/model/data/Concepts/OrnamentDescriptor.ts:35

Returns: OrnamentDescriptor‹›


destroy

▸ destroy(): void

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.destroy

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:187

Returns: void


doesCoverWholePlate

▸ doesCoverWholePlate(): boolean

Inherited from AbstractOrnamentDescriptor.doesCoverWholePlate

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:51

Whether the ornament covers the whole plate (e.g. an endless ornament or a programmatic ornament that always uses the whole plate).

Ornaments that cover the whole plate still stay valid event if their "position" is outside the plate border.

Returns: boolean


getAnchor

▸ getAnchor(): PointOnSurfaceAnchor‹›

Inherited from AbstractOrnamentDescriptor.getAnchor

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:101

Returns: PointOnSurfaceAnchor‹›


getAssembly

▸ getAssembly(): Assembly

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getAssembly

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:105

Returns: Assembly


getAssetIdAndResourceName

▸ getAssetIdAndResourceName(): string

Defined in src/model/data/Concepts/OrnamentDescriptor.ts:31

The assetID and resource name of the ornament ToDo: How to handle pre-defined programmatic ornaments? by using "special/voronoi" as a assetIdAndResourceName?

Returns: string


getChangeEventEmitter

▸ getChangeEventEmitter(): IPublicEventEmitterInterface‹IModelElementEvent›

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getChangeEventEmitter

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:130

Returns: IPublicEventEmitterInterface‹IModelElementEvent›


getElementsThisDependsOn

▸ getElementsThisDependsOn(): IModelElement[]

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getElementsThisDependsOn

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:123

Returns: IModelElement[]


getIsValid

▸ getIsValid(): boolean

Implementation of IPositionableElement

Overrides AbstractOrnamentDescriptor.getIsValid

Defined in src/model/data/Concepts/OrnamentDescriptor.ts:23

Returns: boolean


getParent

▸ getParent(): ITransformable

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getParent

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:149

Returns: ITransformable


getPosition

▸ getPosition(): Vector3‹›

Inherited from AbstractOrnamentDescriptor.getPosition

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:71

Returns: Vector3‹›


getRealizerForClone

▸ getRealizerForClone(modelElement: OrnamentDescriptor): OrnamentDescriptorRealizer

Overrides AbstractOrnamentDescriptor.getRealizerForClone

Defined in src/model/data/Concepts/OrnamentDescriptor.ts:42

Parameters:

Name Type
modelElement OrnamentDescriptor

Returns: OrnamentDescriptorRealizer


getRotation

▸ getRotation(): Quaternion‹›

Inherited from AbstractOrnamentDescriptor.getRotation

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:97

Returns: Quaternion‹›


getScale

▸ getScale(): ReadonlyVector3

Inherited from AbstractOrnamentDescriptor.getScale

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:75

Returns: ReadonlyVector3


getSide

▸ getSide(): PlateSide

Inherited from AbstractOrnamentDescriptor.getSide

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:40

Returns: PlateSide


getSurface

▸ getSurface(): MeshSurface | null

Inherited from AbstractOrnamentDescriptor.getSurface

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:63

Returns: MeshSurface | null


getTransforms

▸ getTransforms(): IReadOnlyTransforms

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getTransforms

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:142

Returns: IReadOnlyTransforms


getTransformsChangeEventEmitter

▸ getTransformsChangeEventEmitter(): IPublicEventEmitterInterface‹ITransformsChangeEvent›

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getTransformsChangeEventEmitter

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:134

Returns: IPublicEventEmitterInterface‹ITransformsChangeEvent›


getTransformsDefiner

▸ getTransformsDefiner(): IPositionableElementTransformsDefiner

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.getTransformsDefiner

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:138

Returns: IPositionableElementTransformsDefiner


mapGlobalPositionToLocalPosition

▸ mapGlobalPositionToLocalPosition(position: Vector3): Vector3

Inherited from AbstractOrnamentDescriptor.mapGlobalPositionToLocalPosition

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:109

Parameters:

Name Type
position Vector3

Returns: Vector3


setAssembly

▸ setAssembly(assembly: Assembly): void

Implementation of IPositionableElement

Inherited from AbstractOrnamentDescriptor.setAssembly

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:156

Parameters:

Name Type
assembly Assembly

Returns: void


setCoversWholePlate

▸ setCoversWholePlate(coversWholePlate: any): void

Inherited from AbstractOrnamentDescriptor.setCoversWholePlate

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:55

Parameters:

Name Type
coversWholePlate any

Returns: void


setPlateSide

▸ setPlateSide(plateSide: PlateSide): void

Inherited from AbstractOrnamentDescriptor.setPlateSide

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:59

Parameters:

Name Type
plateSide PlateSide

Returns: void


setPosition

▸ setPosition(position: ReadonlyVector3): void

Inherited from AbstractOrnamentDescriptor.setPosition

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:89

Parameters:

Name Type
position ReadonlyVector3

Returns: void


setRotation

▸ setRotation(rotation: Quaternion): void

Inherited from AbstractOrnamentDescriptor.setRotation

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:93

Parameters:

Name Type
rotation Quaternion

Returns: void


setScale

▸ setScale(scale: ReadonlyVector3): this

Inherited from AbstractOrnamentDescriptor.setScale

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:79

Parameters:

Name Type
scale ReadonlyVector3

Returns: this


setTransformsDefiner

▸ setTransformsDefiner(newAnchor: PointOnSurfaceAnchor): this

Inherited from AbstractOrnamentDescriptor.setTransformsDefiner

Defined in src/model/data/Concepts/AbstractOrnamentDescriptor.ts:163

Parameters:

Name Type Description
newAnchor PointOnSurfaceAnchor the anchor that defines the point on surface

Returns: this