Skip to content

editorGlobalsRoundEdgeDescriptor

Class: RoundEdgeDescriptor

Represents a round edge, realized by RoundEdgeDescriptorRealizer. Saves things like radius, edgeanchor, controlpoints

The round edge is symmetric by default and approximates a segment of a circle. This can be customized by changing radius start or radius end.

see ../../src/model/data/Concepts/RoundEdgeDescriptor_documentation.svg

Hierarchy

  • RoundEdgeDescriptor

Implements

Index

Constructors

Properties

Methods

Constructors

constructor

+ new RoundEdgeDescriptor(radiusStart: number, radiusEnd: number): RoundEdgeDescriptor

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:76

Parameters:

Name Type Default
radiusStart number -
radiusEnd number radiusStart

Returns: RoundEdgeDescriptor

Properties

Private anchor

anchor: MeshEdgeAnchor = null

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:72


Private assembly

assembly: Assembly = null

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:70


Private Readonly changeEventEmitter

changeEventEmitter: EventEmitterIModelElementEvent = new EventEmitter()

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:74


Private radius

radius: object

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:76

Type declaration:

  • end: number

  • start: number


Static radiusStep

radiusStep: number = 25

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

Methods

Private _onAnchorChange

_onAnchorChange(changeEvent: IAnchorChangeEvent): void

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:353

Parameters:

Name Type
changeEvent IAnchorChangeEvent

Returns: void


clone

clone(): RoundEdgeDescriptor

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:349

Returns: RoundEdgeDescriptor


consumedLengthOnEdge

consumedLengthOnEdge(edge: MeshHalfEdge, radius?: number): number

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:114

Parameters:

Name Type
edge MeshHalfEdge
radius? number

Returns: number

the length (in mm) this round edge consumes / would consume with radius on edge.


decreaseRadius

decreaseRadius(): void

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:314

Returns: void


destroy

destroy(): void

Implementation of IModelElement

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

Returns: void


getAnchor

getAnchor(): MeshEdgeAnchor

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:158

Returns: MeshEdgeAnchor


getAssembly

getAssembly(): Assembly

Implementation of IModelElement

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:82

Returns: Assembly


getChangeEventEmitter

getChangeEventEmitter(): IPublicEventEmitterInterfaceIModelElementEvent

Implementation of IModelElement

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

Returns: IPublicEventEmitterInterfaceIModelElementEvent


getEdge

getEdge(): MeshHalfEdge

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:154

Returns: MeshHalfEdge


getElementsThisDependsOn

getElementsThisDependsOn(): IModelElement[]

Implementation of IModelElement

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:180

Returns: IModelElement[]


getIsValid

getIsValid(): boolean

Implementation of IModelElement

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:150

Returns: boolean


getNameOfCloserEnd

getNameOfCloserEnd(meshSurface: MeshSurface): "start" | "end"

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:341

Parameters:

Name Type
meshSurface MeshSurface

Returns: "start" | "end"


getNameOfCloserEndFromPoint

getNameOfCloserEndFromPoint(point: Vector3): "start" | "end"

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:326

Parameters:

Name Type Description
point Vector3 Point in mesh coordinates

Returns: "start" | "end"


getPossibleRadius

getPossibleRadius(startOrEnd: "start" | "end", byRatio: boolean, useCurrentRadius: boolean): number

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:208

Calculates the maximal radius this round edge can have (at most its current radius) limited by boxels/holes on adjacent plates and other round edges.

Parameters:

Name Type Default Description
startOrEnd "start" | "end" - Which side to get the possible radius from.
byRatio boolean false (optional) Wheter the free space is proportional shared with other round edges or not.
useCurrentRadius boolean true (optional) Wheter the possible radius is capped by the current radius or not

Returns: number

The maximal possible radius (as in would be this radius on an edge leaving at 90deg) under the given constraints.


getRadius

getRadius(startOrEnd: "start" | "end"): number

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:86

Parameters:

Name Type
startOrEnd "start" | "end"

Returns: number


increaseRadius

increaseRadius(): void

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:299

Returns: void


scale

scale(scale: number): void

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

Scale both radii by the scale parameter

Parameters:

Name Type Description
scale number -

Returns: void


setAnchor

setAnchor(newAnchor: MeshEdgeAnchor): void

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:165

Parameters:

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

Returns: void


setAssembly

setAssembly(assembly: Assembly): void

Implementation of IModelElement

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:195

Parameters:

Name Type
assembly Assembly

Returns: void


setRadius

setRadius(startOrEnd: "start" | "end", radius: number): void

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

Sets the radius in mm.

Parameters:

Name Type
startOrEnd "start" | "end"
radius number

Returns: void


Static Private _isEdgeConcave

_isEdgeConcave(edge: MeshHalfEdge): boolean

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:65

Parameters:

Name Type
edge MeshHalfEdge

Returns: boolean


Static canEdgeBeBent

canEdgeBeBent(edge: MeshHalfEdge, roundEdges: RoundEdgeDescriptor[]): boolean

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:48

Checks wheter there is a rounding or concave corner at an adjacent edge.

Parameters:

Name Type
edge MeshHalfEdge
roundEdges RoundEdgeDescriptor[]

Returns: boolean


Static wouldCreateLivingHinge

wouldCreateLivingHinge(edge: MeshHalfEdge, mesh: Mesh, existingRoundEdges: RoundEdgeDescriptor[]): any

Defined in src/model/data/Concepts/RoundEdgeDescriptor.ts:34

Checks whether the two surfaces at edge are already connected through existingRoundEdges.

Parameters:

Name Type
edge MeshHalfEdge
mesh Mesh
existingRoundEdges RoundEdgeDescriptor[]

Returns: any