Skip to content

editorGlobalsCellExporter

Class: CellExporter

Prepares the export to svg of multiple cells. It has three steps:

  1. Cleanup Joints from Plate Merging (Remove Tee-Joints, replace Cross-Joints with [IntersectionAvoidanceCrossJoint](intersectionavoidancecrossjoint.md)s
  2. Split plates along cell membranes and applies [CellMembraneJoint](cellmembranejoint.md)s
  3. Add Tee-Joints back

see CellMembrane

Hierarchy

  • CellExporter

Index

Constructors

Properties

Methods

Constructors

constructor

+ new CellExporter(cellDescriptor: CellDescriptor, assembly: Assembly): CellExporter

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:62

Parameters:

Name Type
cellDescriptor CellDescriptor
assembly Assembly

Returns: CellExporter

Properties

Private assembly

assembly: Assembly

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


Private cellDescriptor

cellDescriptor: CellDescriptor

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

Methods

Private _enrichJointsWithMiddle

_enrichJointsWithMiddle(surfaceToPlates: Map‹MeshSurface, Plate[]›, surfaceToSections: Map‹MeshSurface, OutlineSection[]›): void

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:169

find and add section from membrane to CellMembraneJoints

Parameters:

Name Type
surfaceToPlates Map‹MeshSurface, Plate[]›
surfaceToSections Map‹MeshSurface, OutlineSection[]›

Returns: void


Private _fixCrossingCells

_fixCrossingCells(): Plate[]

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:118

Membranes that are crossing will be given CrossJoints by the Plate Merger. Since the membranes will be longer than material size, they need to be split at this position. So each membrane will be split at that position and the split plates connected by IntersectionAvoidanceCrossJoints.

Returns: Plate[]


Private _getPlateForMiddleSurface

_getPlateForMiddleSurface(surface: SingleSurfaceDescriptor): Plate

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:217

Parameters:

Name Type
surface SingleSurfaceDescriptor

Returns: Plate


Private _removeTeeJoints

_removeTeeJoints(middlePlates: Plate[]): Map‹MeshSurface, OutlineSection[]›

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:187

Removes all tee joints between middle and neighbors from all cells

Parameters:

Name Type
middlePlates Plate[]

Returns: Map‹MeshSurface, OutlineSection[]›


prepareExport

prepareExport(): Promise‹void›

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:69

Executes all steps for preparing the export (See Class description)

Returns: Promise‹void›


Static Private _cutCellSurface

_cutCellSurface(cell: CellMembrane, plates: Plate[]): Promise‹object›

Defined in src/modules/kyub.core.cell/src/CellExporter.ts:38

Splits the given plates along the Cutting plane of the given cell. Split plates are connected by CellMembraneJoints.

Parameters:

Name Type Description
cell CellMembrane needed for the cutting plane
plates Plate[] Plates to split

Returns: Promise‹object›

added Plates which were created by the split and removed Plates which were destroyed by the split