Skip to content

editorGlobalsSingleSurfaceDescriptor

Class: SingleSurfaceDescriptor

The SingleSurfaceDescriptor represents a Mesh that only contains one Surface. It can be used as a normal Mesh, but guarantees to only contain one surface, which makes many operations easier to perform. It is used for external attachment of plates to create geometry that is not two-manifold.

Hierarchy

SingleSurfaceDescriptor

SvgSurfaceDescriptor

Implements

Index

Constructors

Properties

Methods

Constructors

constructor

+ new SingleSurfaceDescriptor(referenceTransforms?: IReadOnlyTransforms): SingleSurfaceDescriptor

Inherited from Mesh.constructor

Defined in src/model/data/Concepts/Mesh/Mesh.ts:81

Parameters:

Name Type
referenceTransforms? IReadOnlyTransforms

Returns: SingleSurfaceDescriptor

Properties

Protected implementation

implementation: IMeshImplementation

Inherited from Mesh.implementation

Defined in src/model/data/Concepts/Mesh/Mesh.ts:60

Methods

_getAnnotations

_getAnnotations(reason: string): SetMeshAnnotation‹››

Inherited from Mesh._getAnnotations

Defined in src/model/data/Concepts/Mesh/Mesh.ts:536

WARNING: This method is for serialization only. Do not use this to modify the Mesh.

Parameters:

Name Type
reason string

Returns: SetMeshAnnotation‹››


_getImplementation

_getImplementation(): IMeshImplementation

Inherited from Mesh._getImplementation

Defined in src/model/data/Concepts/Mesh/Mesh.ts:529

WARNING: This method is for serialization only. Do not use this to modify the Mesh.

Returns: IMeshImplementation


addAnnotation

addAnnotation(meshAnnotation: MeshAnnotation): void

Inherited from Mesh.addAnnotation

Defined in src/model/data/Concepts/Mesh/Mesh.ts:182

Adds an annotation to the mesh.

Parameters:

Name Type Description
meshAnnotation MeshAnnotation -

Returns: void


canBeModifiedSynchronously

canBeModifiedSynchronously(): boolean

Inherited from Mesh.canBeModifiedSynchronously

Defined in src/model/data/Concepts/Mesh/Mesh.ts:335

Returns: boolean


cleanupInvalidAnnotations

cleanupInvalidAnnotations(): void

Inherited from Mesh.cleanupInvalidAnnotations

Defined in src/model/data/Concepts/Mesh/Mesh.ts:200

Removes all annotations that have an invalid anchor and thus do not point to anything useful anymore

Returns: void


destroy

destroy(): void

Implementation of IPositionableElement

Inherited from Mesh.destroy

Defined in src/model/data/Concepts/Mesh/Mesh.ts:250

Returns: void


getAnalyzer

getAnalyzer(type: VOLUME_ANALYZER): MeshVolumeAnalyzer

Inherited from Mesh.getAnalyzer

Defined in src/model/data/Concepts/Mesh/Mesh.ts:422

Get an analyzer of the given type. This analyzer will remain valid until the next MeshChangeEvent.

Parameters:

Name Type Description
type VOLUME_ANALYZER -

Returns: MeshVolumeAnalyzer

getAnalyzer(type: SURFACE_ANALYZER): MeshSurfaceAnalyzer

Inherited from Mesh.getAnalyzer

Defined in src/model/data/Concepts/Mesh/Mesh.ts:423

Parameters:

Name Type
type SURFACE_ANALYZER

Returns: MeshSurfaceAnalyzer

getAnalyzer(type: POINTS_ANALYZER): MeshPointsAnalyzer

Inherited from Mesh.getAnalyzer

Defined in src/model/data/Concepts/Mesh/Mesh.ts:424

Parameters:

Name Type
type POINTS_ANALYZER

Returns: MeshPointsAnalyzer

getAnalyzer(type: EDGE_ANALYZER): MeshEdgeAnalyzer

Inherited from Mesh.getAnalyzer

Defined in src/model/data/Concepts/Mesh/Mesh.ts:425

Parameters:

Name Type
type EDGE_ANALYZER

Returns: MeshEdgeAnalyzer


getAnnotationsFor

getAnnotationsFor(target: MeshElement): MeshAnnotation[]

Inherited from Mesh.getAnnotationsFor

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

Parameters:

Name Type
target MeshElement

Returns: MeshAnnotation[]


getAssembly

getAssembly(): Assembly

Implementation of IPositionableElement

Inherited from Mesh.getAssembly

Defined in src/model/data/Concepts/Mesh/Mesh.ts:139

Returns: Assembly


getCache

getCache(type: SURFACE_NORMALS): SurfaceNormalCache

Inherited from Mesh.getCache

Defined in src/model/data/Concepts/Mesh/Mesh.ts:386

Get a cache of the given type. This cache will remain valid until the next MeshChangeEvent.

Parameters:

Name Type Description
type SURFACE_NORMALS -

Returns: SurfaceNormalCache

getCache(type: SURFACE_POINTS): SurfacePointsCache

Inherited from Mesh.getCache

Defined in src/model/data/Concepts/Mesh/Mesh.ts:387

Parameters:

Name Type
type SURFACE_POINTS

Returns: SurfacePointsCache

getCache(type: SURFACE_PLANE): SurfacePlaneCache

Inherited from Mesh.getCache

Defined in src/model/data/Concepts/Mesh/Mesh.ts:388

Parameters:

Name Type
type SURFACE_PLANE

Returns: SurfacePlaneCache


getChangeEventEmitter

getChangeEventEmitter(): IPublicEventEmitterInterfaceMeshChangeEvent‹››

Implementation of IPositionableElement

Inherited from Mesh.getChangeEventEmitter

Defined in src/model/data/Concepts/Mesh/Mesh.ts:147

Returns: IPublicEventEmitterInterfaceMeshChangeEvent‹››


getDimensionConception

getDimensionConception(): DimensionConception

Inherited from Mesh.getDimensionConception

Defined in src/model/data/Concepts/Mesh/Mesh.ts:170

Returns: DimensionConception


getEdges

getEdges(): MeshHalfEdge[]

Inherited from Mesh.getEdges

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

Returns: MeshHalfEdge[]


getElementsThisDependsOn

getElementsThisDependsOn(): IModelElement[]

Implementation of IPositionableElement

Inherited from Mesh.getElementsThisDependsOn

Defined in src/model/data/Concepts/Mesh/Mesh.ts:369

Returns: IModelElement[]


getGlobalTransforms

getGlobalTransforms(): Transforms

Inherited from Mesh.getGlobalTransforms

Defined in src/model/data/Concepts/Mesh/Mesh.ts:159

Returns: Transforms


getIsTwoManifold

getIsTwoManifold(): boolean

Inherited from Mesh.getIsTwoManifold

Defined in src/model/data/Concepts/Mesh/Mesh.ts:119

Returns: boolean


getIsValid

getIsValid(): boolean

Implementation of IPositionableElement

Inherited from Mesh.getIsValid

Defined in src/model/data/Concepts/Mesh/Mesh.ts:241

Returns: boolean


getNumberOfNotDisabledSurfaces

getNumberOfNotDisabledSurfaces(): number

Inherited from Mesh.getNumberOfNotDisabledSurfaces

Defined in src/model/data/Concepts/Mesh/Mesh.ts:215

Returns: number


getParent

getParent(): ITransformable

Implementation of IPositionableElement

Inherited from Mesh.getParent

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

Returns: ITransformable


getPoints

getPoints(): MeshPoint[]

Inherited from Mesh.getPoints

Defined in src/model/data/Concepts/Mesh/Mesh.ts:131

Returns: MeshPoint[]


getSurface

getSurface(): MeshSurface

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

Returns: MeshSurface

the single surface of this mesh


getSurfaces

getSurfaces(): readonly MeshSurface[]

Inherited from Mesh.getSurfaces

Defined in src/model/data/Concepts/Mesh/Mesh.ts:111

Returns: readonly MeshSurface[]

the surfaces that define this mesh. Note that the transforms defined by the transforms-defining anchor are NOT applied (== surfaces are in "local coordinates"), this is the responsibility of whoever uses theses surfaces.


getTransforms

getTransforms(): IReadOnlyTransforms | null

Implementation of IPositionableElement

Inherited from Mesh.getTransforms

Defined in src/model/data/Concepts/Mesh/Mesh.ts:155

Returns: IReadOnlyTransforms | null


getTransformsChangeEventEmitter

getTransformsChangeEventEmitter(): IPublicEventEmitterInterfaceITransformsChangeEvent

Implementation of IPositionableElement

Inherited from Mesh.getTransformsChangeEventEmitter

Defined in src/model/data/Concepts/Mesh/Mesh.ts:378

Returns: IPublicEventEmitterInterfaceITransformsChangeEvent


getTransformsDefiner

getTransformsDefiner(): IPositioningAnchor | null

Implementation of IPositionableElement

Inherited from Mesh.getTransformsDefiner

Defined in src/model/data/Concepts/Mesh/Mesh.ts:151

Returns: IPositioningAnchor | null


hasEdge

hasEdge(edge: MeshHalfEdge): boolean

Inherited from Mesh.hasEdge

Defined in src/model/data/Concepts/Mesh/Mesh.ts:135

Parameters:

Name Type
edge MeshHalfEdge

Returns: boolean


hasSurface

hasSurface(surface: MeshSurface): boolean

Inherited from Mesh.hasSurface

Defined in src/model/data/Concepts/Mesh/Mesh.ts:115

Parameters:

Name Type
surface MeshSurface

Returns: boolean


isSurfaceDisabled

isSurfaceDisabled(surface: MeshSurface): boolean

Inherited from Mesh.isSurfaceDisabled

Defined in src/model/data/Concepts/Mesh/Mesh.ts:225

Parameters:

Name Type
surface MeshSurface

Returns: boolean


mapLocalDirectionToWorld

mapLocalDirectionToWorld(localDirection: ReadonlyVector3, target: Vector3): Vector3

Inherited from Mesh.mapLocalDirectionToWorld

Defined in src/model/data/Concepts/Mesh/Mesh.ts:475

Maps a Vector3 direction from the mesh-local coordinate system to the world coordinate system Pretends identity transform if there is no assembly

Parameters:

Name Type Default Description
localDirection ReadonlyVector3 - -
target Vector3 new Vector3() -

Returns: Vector3


mapLocalPositionToWorld

mapLocalPositionToWorld(localPosition: ReadonlyVector3, target: Vector3): Vector3

Inherited from Mesh.mapLocalPositionToWorld

Defined in src/model/data/Concepts/Mesh/Mesh.ts:464

Maps a Vector3 position from the mesh-local coordinate system to the world coordinate system Pretends identity transform if there is no assembly

Parameters:

Name Type Default Description
localPosition ReadonlyVector3 - -
target Vector3 new Vector3() -

Returns: Vector3


mapLocalRotationToWorld

mapLocalRotationToWorld(localRotation: ReadonlyQuaternion, target: Quaternion): Quaternion

Inherited from Mesh.mapLocalRotationToWorld

Defined in src/model/data/Concepts/Mesh/Mesh.ts:486

Maps a Quaternion rotation from the mesh-local coordinate system to the world coordinate system Pretends identity transform if there is no assembly

Parameters:

Name Type Default Description
localRotation ReadonlyQuaternion - -
target Quaternion new Quaternion() -

Returns: Quaternion


mapWorldDirectionToLocal

mapWorldDirectionToLocal(worldDirection: Vector3, target: Vector3): Vector3

Inherited from Mesh.mapWorldDirectionToLocal

Defined in src/model/data/Concepts/Mesh/Mesh.ts:509

Maps a Vector3 direction from the world coordinate system to the mesh-local coordinate system Pretends identity transform if there is no assembly

Parameters:

Name Type Default Description
worldDirection Vector3 - -
target Vector3 new Vector3() -

Returns: Vector3


mapWorldPositionToLocal

mapWorldPositionToLocal(worldPosition: Vector3, target: Vector3): Vector3

Inherited from Mesh.mapWorldPositionToLocal

Defined in src/model/data/Concepts/Mesh/Mesh.ts:498

Maps a Vector3 position from the world coordinate system to the mesh-local coordinate system Pretends identity transform if there is no assembly

Parameters:

Name Type Default Description
worldPosition Vector3 - -
target Vector3 new Vector3() -

Returns: Vector3


mapWorldRotationToLocal

mapWorldRotationToLocal(worldRotation: Quaternion, target: Quaternion): Quaternion

Inherited from Mesh.mapWorldRotationToLocal

Defined in src/model/data/Concepts/Mesh/Mesh.ts:520

Maps a Quaternion rotation from the world coordinate system to the mesh-local coordinate system Pretends identity transform if there is no assembly

Parameters:

Name Type Default Description
worldRotation Quaternion - -
target Quaternion new Quaternion() -

Returns: Quaternion


modify

modify(callback: function): Promise‹void›

Overrides Mesh.modify

Defined in src/model/data/Concepts/SingleSurfaceDescriptor.ts:18

Parameters:

callback: function

▸ (mesh: Mesh, meshImplementation: IMeshImplementation): PromiseIMeshOperationResult

Parameters:

Name Type
mesh Mesh
meshImplementation IMeshImplementation

Returns: Promise‹void›


modifySync

modifySync(callback: function): void

Overrides Mesh.modifySync

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

Parameters:

callback: function

▸ (mesh: Mesh, meshImplementation: IMeshImplementation): IMeshOperationResult

Parameters:

Name Type
mesh Mesh
meshImplementation IMeshImplementation

Returns: void


removeAnnotation

removeAnnotation(meshAnnotation: MeshAnnotation): void

Inherited from Mesh.removeAnnotation

Defined in src/model/data/Concepts/Mesh/Mesh.ts:233

Removes an annotation from the set of mesh annotations

Parameters:

Name Type Description
meshAnnotation MeshAnnotation -

Returns: void


setAssembly

setAssembly(assembly: Assembly): void

Implementation of IPositionableElement

Inherited from Mesh.setAssembly

Defined in src/model/data/Concepts/Mesh/Mesh.ts:143

Parameters:

Name Type
assembly Assembly

Returns: void


setDimensionConception

setDimensionConception(dimensionConception: DimensionConception): void

Inherited from Mesh.setDimensionConception

Defined in src/model/data/Concepts/Mesh/Mesh.ts:174

Parameters:

Name Type
dimensionConception DimensionConception

Returns: void


setImplementation

setImplementation(implementation: IMeshImplementation): Mesh‹›

Overrides Mesh.setImplementation

Defined in src/model/data/Concepts/SingleSurfaceDescriptor.ts:13

Parameters:

Name Type
implementation IMeshImplementation

Returns: Mesh‹›


setTransformsDefiner

setTransformsDefiner(transformsAnchor: IPositioningAnchor | null): this

Inherited from Mesh.setTransformsDefiner

Defined in src/model/data/Concepts/Mesh/Mesh.ts:259

Replaces the transformsDefiningAnchor. Emits a transformsChange event with the new anchor.

Parameters:

Name Type Description
transformsAnchor IPositioningAnchor | null -

Returns: this