Skip to content

editorGlobalsPlateRenderer

Class: PlateRenderer

Transforms the plate outline based on all finger joints into an outline with actual fingerjoints

Hierarchy

  • PlateRenderer

Index

Constructors

Properties

Methods

Constructors

constructor

+ new PlateRenderer(plate: Plate, plateMatrix?: Matrix4): PlateRenderer

Defined in src/model/visualization/Plates/PlateRenderer.ts:88

Parameters:

Name Type
plate Plate
plateMatrix? Matrix4

Returns: PlateRenderer

Properties

Private Readonly cancelFunctions

cancelFunctions: Array‹function› = []

Defined in src/model/visualization/Plates/PlateRenderer.ts:84


Private cancelled

cancelled: boolean = false

Defined in src/model/visualization/Plates/PlateRenderer.ts:83


Private Readonly plate

plate: Plate

Defined in src/model/visualization/Plates/PlateRenderer.ts:81


Private Optional Readonly plateMatrix

plateMatrix? : Matrix4

Defined in src/model/visualization/Plates/PlateRenderer.ts:82


Private Readonly warningEventEmitter

warningEventEmitter: EventEmitter‹object› = new EventEmitter<{ code: string; message: string; }>()

Defined in src/model/visualization/Plates/PlateRenderer.ts:85

Methods

Private _applyAdditionGroups

_applyAdditionGroups(clipper: PolygonClipper, polygon: MultiPolygon, additionGroups: ShapeChange[][], failedPolygons: MultiPolygon[]): MultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:571

Parameters:

Name Type Default
clipper PolygonClipper -
polygon MultiPolygon -
additionGroups ShapeChange[][] -
failedPolygons MultiPolygon[] []

Returns: MultiPolygon


Private _applyAdditionGroupsAsynchronously

_applyAdditionGroupsAsynchronously(asyncClipper: AsyncPolygonClipper, polygon: MultiPolygon, additionGroups: ShapeChange[][], failedPolygons: Array‹Polygon | MultiPolygon›): PromiseMultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:653

Parameters:

Name Type Default
asyncClipper AsyncPolygonClipper -
polygon MultiPolygon -
additionGroups ShapeChange[][] -
failedPolygons Array‹Polygon | MultiPolygon []

Returns: PromiseMultiPolygon


Private _applyCutoutGroups

_applyCutoutGroups(clipper: PolygonClipper, polygon: MultiPolygon, cutoutGroups: ShapeChange[][], failedPolygons: MultiPolygon[]): MultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:546

Parameters:

Name Type Default
clipper PolygonClipper -
polygon MultiPolygon -
cutoutGroups ShapeChange[][] -
failedPolygons MultiPolygon[] []

Returns: MultiPolygon


Private _applyCutoutGroupsAsynchronously

_applyCutoutGroupsAsynchronously(asyncClipper: RemotePolygonClipper, polygon: MultiPolygon, cutoutGroups: ShapeChange[][], failedPolygons: MultiPolygon[]): PromiseMultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:591

Parameters:

Name Type Default
asyncClipper RemotePolygonClipper -
polygon MultiPolygon -
cutoutGroups ShapeChange[][] -
failedPolygons MultiPolygon[] []

Returns: PromiseMultiPolygon


Private _fixPolygons

_fixPolygons(polygons: readonly Polygon[]): Polygon[]

Defined in src/model/visualization/Plates/PlateRenderer.ts:637

Parameters:

Name Type
polygons readonly Polygon[]

Returns: Polygon[]


Private _getAdditionGroups

_getAdditionGroups(jointShapeChanges: JointShapeChangeMap): ShapeChange[][]

Defined in src/model/visualization/Plates/PlateRenderer.ts:524

Parameters:

Name Type
jointShapeChanges JointShapeChangeMap

Returns: ShapeChange[][]


Private _getBasePolygon

_getBasePolygon(rasterizedOutline: RasterizedOutline, holeCutouts: ShapeChange[], ornamentCutoutGroups: ShapeChange[][]): object

Defined in src/model/visualization/Plates/PlateRenderer.ts:493

Returns the rasterizedOutline as a polygon with some cutouts already applied optimized based on the fact that polygon clipping only has to be performed if the cutouts may overlap.

Parameters:

Name Type
rasterizedOutline RasterizedOutline
holeCutouts ShapeChange[]
ornamentCutoutGroups ShapeChange[][]

Returns: object


Private _getCutoutGroups

_getCutoutGroups(jointShapeChanges: JointShapeChangeMap): ShapeChange[][]

Defined in src/model/visualization/Plates/PlateRenderer.ts:535

Parameters:

Name Type
jointShapeChanges JointShapeChangeMap

Returns: ShapeChange[][]


Private _getJointShapeChanges

_getJointShapeChanges(config: PlatePipelineConfig, rasterizedOutlines: RasterizedOutline[]): Map‹Joint, ShapeChanges

Defined in src/model/visualization/Plates/PlateRenderer.ts:452

Parameters:

Name Type
config PlatePipelineConfig
rasterizedOutlines RasterizedOutline[]

Returns: Map‹Joint, ShapeChanges


Private _getPolygonFromResults

_getPolygonFromResults(resultPolygon: MultiPolygon, operation: string, basePolygon: Polygon | MultiPolygon, appliedPolygons: Array‹Polygon | MultiPolygon›): MultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:677

Parameters:

Name Type
resultPolygon MultiPolygon
operation string
basePolygon Polygon | MultiPolygon
appliedPolygons Array‹Polygon | MultiPolygon

Returns: MultiPolygon


Private _getRenderClassForJoint

_getRenderClassForJoint(joint: any): Constructor‹JointRendererJoint››

Defined in src/model/visualization/Plates/PlateRenderer.ts:698

Parameters:

Name Type
joint any

Returns: Constructor‹JointRendererJoint››


applyShapeChanges

applyShapeChanges(rasterizedOutline: RasterizedOutline, shapeChanges: ICompoundShapeChanges): object

Defined in src/model/visualization/Plates/PlateRenderer.ts:190

Parameters:

Name Type
rasterizedOutline RasterizedOutline
shapeChanges ICompoundShapeChanges

Returns: object


applyShapeChangesAsynchronously

applyShapeChangesAsynchronously(rasterizedOutline: RasterizedOutline, shapeChanges: ICompoundShapeChanges): Promise‹object›

Defined in src/model/visualization/Plates/PlateRenderer.ts:261

Parameters:

Name Type
rasterizedOutline RasterizedOutline
shapeChanges ICompoundShapeChanges

Returns: Promise‹object›


cancel

cancel(): void

Defined in src/model/visualization/Plates/PlateRenderer.ts:447

Returns: void


getFlexPlatePolygon

getFlexPlatePolygon(rasterizedOutlines: RasterizedOutline[]): IFlexPolygonWithHoles

Defined in src/model/visualization/Plates/PlateRenderer.ts:140

Returns the plate outlines, already transformed with the plateMatrix

Parameters:

Name Type
rasterizedOutlines RasterizedOutline[]

Returns: IFlexPolygonWithHoles


getPlatePolygon

getPlatePolygon(rasterizedOutline: RasterizedOutline, shapeChanges: ICompoundShapeChanges): MultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:352

Parameters:

Name Type
rasterizedOutline RasterizedOutline
shapeChanges ICompoundShapeChanges

Returns: MultiPolygon


getPlatePolygonAsynchronously

getPlatePolygonAsynchronously(rasterizedOutline: RasterizedOutline, shapeChanges: ICompoundShapeChanges): PromiseMultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:388

Parameters:

Name Type
rasterizedOutline RasterizedOutline
shapeChanges ICompoundShapeChanges

Returns: PromiseMultiPolygon


getPlatePolygonWithoutOrnamentCutouts

getPlatePolygonWithoutOrnamentCutouts(rasterizedOutline: RasterizedOutline, shapeChanges: ICompoundShapeChanges): MultiPolygon

Defined in src/model/visualization/Plates/PlateRenderer.ts:428

Parameters:

Name Type Description
rasterizedOutline RasterizedOutline -
shapeChanges ICompoundShapeChanges -

Returns: MultiPolygon

A polygon of the plate with only some important cutouts applied: holes and click-through ornament cutouts. This can be used for raycasting.


getShapeChanges

getShapeChanges(config: PlatePipelineConfig, rasterizedOutlines: RasterizedOutline[]): ICompoundShapeChanges

Defined in src/model/visualization/Plates/PlateRenderer.ts:99

Parameters:

Name Type
config PlatePipelineConfig
rasterizedOutlines RasterizedOutline[]

Returns: ICompoundShapeChanges


getShapeChangesAsynchronously

getShapeChangesAsynchronously(config: PlatePipelineConfig, rasterizedOutlines: RasterizedOutline[]): PromiseICompoundShapeChanges

Defined in src/model/visualization/Plates/PlateRenderer.ts:147

Parameters:

Name Type
config PlatePipelineConfig
rasterizedOutlines RasterizedOutline[]

Returns: PromiseICompoundShapeChanges


getWarningEventEmitter

getWarningEventEmitter(): IPublicEventEmitterInterface‹object›

Defined in src/model/visualization/Plates/PlateRenderer.ts:95

Returns: IPublicEventEmitterInterface‹object›