Skip to content

editorGlobalsCellMembrane

Class: CellMembrane

A Cell Membrane is used if a plate is too big for the Laser Cutter. The Plate will be split into two plates, joined by a CellMembraneJoint and connected with alternating TeeJoints to a orthogonal plate (cell membrane). The Membrane gives support to both plates and prevents them from separating.
Realization For the visualization Ornaments are placed by the CellOrnamentFactory. The membrane plate will be added by the CellDescriptorRealizer when the cell is placed.
Export The actual shape of the joints is calculated by the CellShapeGenerator and applied for the TeeJoints and Membrane by the CellExporter and for the CellMembraneJoints by the CellMembraneJointRenderer.
Generation Cell Membranes will be applied automatically when needed by the {@link CellModule} and build by the CellFactory. The {@link AddCellTool} allows placing cell membranes by hand.
Storage All cell membranes for an assembly are stored in a CellDescriptor and serialized by a CellDescriptorSerializer

Hierarchy

  • CellMembrane

Index

Constructors

Properties

Methods

Constructors

constructor

+ new CellMembrane(cuttingPlane: Plane, position: PointOnEdgeAnchor, assembly: Assembly): CellMembrane

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:73

Parameters:

Name Type
cuttingPlane Plane
position PointOnEdgeAnchor
assembly Assembly

Returns: CellMembrane

Properties

Private anchor

anchor: IPositioningAnchor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:49


Private Readonly assembly

assembly: Assembly

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:73


Private Readonly cuttingPlane

cuttingPlane: Plane

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:64

Where to place the membrane and split the Plates. This property alone does not sufficiently describe the cell, because a cutting plane can create multiple cells. So the position describes which cut (cycle) to take Example: ------- ------- | | | | X~~~~~~~~~~~~~~~~~~~ <- cutting plane creates two cell membranes, X = position | | | | | ------ | | |



Private middleSurfaceDescriptor

middleSurfaceDescriptor: SingleSurfaceDescriptor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:42

Describes the membrane. Is set by the CellFactory, but actual plate will be realizes only after {@link CellDescriptorRealizer#realize}


Private Readonly position

position: PointOnEdgeAnchor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:71

Since multiple outline cycles can be in the cuttingPlane we need a point to reference one of the cycles (the one closest to the point)

see cuttingPlane


Private surfaces

surfaces: MeshSurfaceAnchor[]

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:47

The surfaces touching the membrane

Methods

destroy

destroy(): void

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:137

Returns: void


getAnchor

getAnchor(): IPositioningAnchor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:105

Returns: IPositioningAnchor


getAssembly

getAssembly(): Assembly

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:93

Returns: Assembly


getAxis

getAxis(): Axis

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:130

Returns: Axis


getCuttingPlane

getCuttingPlane(): Plane

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:81

Returns: Plane


getMiddleSurfaceDescriptor

getMiddleSurfaceDescriptor(): SingleSurfaceDescriptor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:97

Returns: SingleSurfaceDescriptor


getPlates

getPlates(): Plate[]

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:121

Returns: Plate[]


getPosition

getPosition(): PointOnEdgeAnchor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:85

Returns: PointOnEdgeAnchor


getPosition3D

getPosition3D(): Vector3

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:89

Returns: Vector3


getRealizer

getRealizer(): IModelElementRealizerSingleSurfaceDescriptor

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:126

Returns: IModelElementRealizerSingleSurfaceDescriptor


getSurfaces

getSurfaces(): MeshSurfaceAnchor[]

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:113

Returns: MeshSurfaceAnchor[]


setAnchor

setAnchor(anchor: IPositioningAnchor): void

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:109

Parameters:

Name Type
anchor IPositioningAnchor

Returns: void


setMiddleSurfaceDescriptor

setMiddleSurfaceDescriptor(middleSurfaceDescriptor: SingleSurfaceDescriptor): void

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:101

Parameters:

Name Type
middleSurfaceDescriptor SingleSurfaceDescriptor

Returns: void


setSurfaces

setSurfaces(surfaces: MeshSurfaceAnchor[]): void

Defined in src/modules/kyub.core.cell/src/CellMembrane.ts:117

Parameters:

Name Type
surfaces MeshSurfaceAnchor[]

Returns: void