Skip to content

editorGlobals

editor

Index

Enumerations

Classes

Interfaces

Type aliases

Variables

Functions

Object literals

Type aliases

AggregatedPrimitive

Ƭ AggregatedPrimitive: Primitive | Primitive[] | object

Defined in src/model/data/CompositeModel.ts:20


AggregatedSerializableProperty

Ƭ AggregatedSerializableProperty: SerializableProperty | SerializableProperty[] | object

Defined in src/util/RemoteLogger.ts:9


AssemblyChangeEvent

Ƭ AssemblyChangeEvent: object | CompositeModelChangeEvent | ModelElementChangeEvent | JointAddEvent | JointRemoveEvent | AssemblyMergeEvent | AssemblyEmptyEvent | AssemblySplitEvent

Defined in src/model/data/Assembly.ts:44

available events are - 'assemblyMerge' (mergedAssembly, oldAndEmptySecondAssembly) - 'assemblySplit' (oldAssembly, newlyCreatedSecondAssembly) - 'assemblyEmpty' (emptyAssembly) - 'assemblyChange' (changedAssembly) - when an object is added or removed - 'modelElementChange' (newCompositeModel) - when a new CompositeModel is set on the assembly


AssemblyEmptyEvent

Ƭ AssemblyEmptyEvent: object

Defined in src/model/data/Assembly.ts:81

Type declaration:

  • emptyAssembly: Assembly

  • type: "assemblyEmpty"


AssemblyMergeEvent

Ƭ AssemblyMergeEvent: object

Defined in src/model/data/Assembly.ts:75

Type declaration:

  • mergedAssembly: Assembly

  • oldAndEmptySecondAssembly: Assembly

  • type: "assemblyMerge"


AssemblySplitEvent

Ƭ AssemblySplitEvent: object

Defined in src/model/data/Assembly.ts:86

Type declaration:

  • newlyCreatedSecondAssembly: Assembly

  • oldAssembly: Assembly

  • type: "assemblySplit"


Asset

Ƭ Asset: any

Defined in src/assets/FileContainer.ts:4

Defined in src/assets/AssetCache.ts:6

Defined in src/assets/IAssetApi.ts:10

Defined in src/assets/UrlFilesApi.ts:5

Defined in src/assets/AssetLoader.ts:15

Defined in src/history/ModelStorage.ts:1


BaseEngravingMaterialParameters

Ƭ BaseEngravingMaterialParameters: MeshPhongMaterialParameters & MeshPhysicalMaterialParameters & IEngravingMaterialParameters

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:139


BendSection

Ƭ BendSection: object & OutlineLine

Defined in src/model/data/Concepts/Realization/RoundEdgeDescriptorRealizer.ts:32


CANNONMaterial

Ƭ CANNONMaterial: any

Defined in src/model/data/PhysicalObject/ExternalObject.ts:28


CanHandleInteractionResult

Ƭ CanHandleInteractionResult: ICanHandleInteractionResult | object | null

Defined in src/tools/Tool.ts:38


CanvasReplayInputDevice

Ƭ CanvasReplayInputDevice: any

Defined in src/scripting/ScriptInterface.ts:57


ColorInput

Ƭ ColorInput: Color | number | string

Defined in src/util/DebugRenderingHelper.ts:17


CompositeModelChangeEvent

Ƭ CompositeModelChangeEvent: object

Defined in src/model/data/Assembly.ts:56

Type declaration:


ConfigKey

Ƭ ConfigKey: string

Defined in src/util/config/Config.ts:39


ConfigValue

Ƭ ConfigValue: string | boolean | number | string[] | number[] | boolean[]

Defined in src/util/config/Config.ts:40


CutoutSpec

Ƭ CutoutSpec: Array‹object›

Defined in src/model/visualization/Joints/Renderer/FingerRendering/FingerSpecs.ts:7


EdgeJointPossibility

Ƭ EdgeJointPossibility: any

Defined in src/model/data/Joints/Joints/TeeJoint.ts:16

Defined in src/model/data/PhysicalObject/Outline/OutlineSection.ts:14

Defined in src/model/data/Joints/Joints/FingerJoint.ts:12


EventType

Ƭ EventType: typeof EventType[keyof typeof EventType]

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:62


FingerJointProperties

Ƭ FingerJointProperties: object

Defined in src/model/data/Joints/Joints/FingerJoint.ts:21

Properties of a finger joint at one of the two ends masterPlate - the plate, that should get two fingers at the corner cutoutPriorityPlate - the plate, that gets the cutout at the corner safetyMargin - the margin, where there should only be cutouts/additions (no alternation) strictlyEnforceMargin - if true, there shall be no addition within the safetyMargin

Type declaration:

  • cutoutPriorityPlate: Plate | null

  • masterPlate: Plate | null

  • safetyMargin: number

  • strictlyEnforceMargin: boolean


FlexCutoutSpec

Ƭ FlexCutoutSpec: Array‹object›

Defined in src/model/visualization/Joints/Renderer/FingerRendering/FingerSpecs.ts:10

This is for fit-independent cutplan export


FlexPolygon

Ƭ FlexPolygon: IVectorExpression[]

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:26


FoundModelElements

Ƭ FoundModelElements: Array‹object›

Defined in src/model/data/Concepts/Realization/IModelElementRealizer.ts:125


IArrayFace

Ƭ IArrayFace: [number, number, number] | [number, number, number, number]

Defined in src/util/PlateRenderSurfaceTriangulator.ts:26

A face (triangle or quad) that is defined by storing the three/four point indices it is made of.


IArrayPoint

Ƭ IArrayPoint: ArrayPoint2 | ArrayPoint3

Defined in src/util/PlateRenderSurfaceTriangulator.ts:23


IExpression

Ƭ IExpression: number | INegationExpression | IBinaryExpression | IKerf | IFit | IThickness | ISanding | ISandingSwitch

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:11


IPlateWithPolygon

Ƭ IPlateWithPolygon: [Plate, MultiPolygon, Array‹Polygon | MultiPolygon›]

Defined in src/util/csg/PlateCSG.ts:22


ISerializedParameters

Ƭ ISerializedParameters: ISingleOrnamentParameters | IPatternOrnamentParameters & object

Defined in src/history/serialization/LocalOrnamentDescriptorSerializer.ts:9


InternalToolName

Ƭ InternalToolName: string

Defined in src/tools/Tool.ts:57


JSClipperPolygon

Ƭ JSClipperPolygon: Array‹object›

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGnest/util/PlacementWorker.worker.ts:17


Job

Ƭ Job: object

Defined in src/worker/WorkerPool.ts:17


JointAddEvent

Ƭ JointAddEvent: object

Defined in src/model/data/Assembly.ts:65

Type declaration:

  • joint: Joint

  • type: "jointAdd"


JointPossibility

Ƭ JointPossibility: any

Defined in src/model/data/Joints/Joints/Joint.ts:8

Defined in src/model/data/PhysicalObject/PhysicalObject.ts:20

Defined in src/model/data/PhysicalObject/ExternalObject.ts:27


JointRemoveEvent

Ƭ JointRemoveEvent: object

Defined in src/model/data/Assembly.ts:70

Type declaration:

  • joint: Joint

  • type: "jointRemove"


JointShapeChangeMap

Ƭ JointShapeChangeMap: Map‹Joint, ShapeChanges

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


KyubWorker

Ƭ KyubWorker: Worker & object

Defined in src/worker/WorkerPool.ts:19


LightConfig

Ƭ LightConfig: IAmbientLightConfig | IDirectionalLightConfig

Defined in src/renderContext/BackgroundParts.ts:27


MeshAndImplementation

Ƭ MeshAndImplementation: object

Defined in src/model/data/Concepts/Mesh/MeshOperation.ts:6

Type declaration:


MeshElement

Ƭ MeshElement: Mesh | MeshSurface | MeshHalfEdge | MeshPoint

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

The type MeshElement can be any of the elements that (conceptually) make up a Mesh


Model

Ƭ Model: any

Defined in src/history/ModelStorage.ts:2


ModelElementChangeEvent

Ƭ ModelElementChangeEvent: object

Defined in src/model/data/Assembly.ts:61

Type declaration:

  • type: "modelElementChange"

NestingAttachmentData

Ƭ NestingAttachmentData: Omit‹[Nesting, Plate], "reverse"›

Defined in src/modules/kyub.core.svgObjExporter/src/manualNesting/ManualNestingComponent.ts:42


OnFailureType

Ƭ OnFailureType: "DELETE_CANDIDATES" | "SPLIT_UP"

Defined in src/history/serialization/BoxelQueueSerializer.ts:8


Options

Ƭ Options: object

Defined in src/model/visualization/Joints/Renderer/CellMembraneJointRenderer.ts:23

Type declaration:


OrnamentParameters

Ƭ OrnamentParameters: ISingleOrnamentParameters | IPatternOrnamentParameters | IParametricHoleParameters & object

Defined in src/model/visualization/textures/OrnamentLoader.ts:13


PhysicsObject

Ƭ PhysicsObject: IBox | ICylinder & object

Defined in src/renderContext/BackgroundParts.ts:58


PhysicsRepresentationWrapper

Ƭ PhysicsRepresentationWrapper: Array‹object›

Defined in src/model/physics/representations/AssemblyPhysicsRepresentation.ts:13


Placement

Ƭ Placement: object

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGnest/util/PlacementWorker.worker.ts:13

Type declaration:

  • id: number

  • rotation: number

  • x: number

  • y: number


PlateOption

Ƭ PlateOption: object

Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:45

points: in assembly coordinates score: gets calculated in _sortOptions()

Type declaration:

  • points: ReadonlyVector3[]

  • score: number


PlateSide

Ƭ PlateSide: typeof PlateSide[keyof typeof PlateSide]

Defined in src/model/data/PhysicalObject/Plate.ts:54


PlateSides

Ƭ PlateSides: typeof PlateSides[keyof typeof PlateSides]

Defined in src/model/data/PhysicalObject/Plate.ts:55


Point

Ƭ Point: "A" | "B" | "C"

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:4


PointCode

Ƭ PointCode: "A" | "B" | "C"

Defined in src/util/polygon/triangulatingClipper/Triangle.ts:14


PointJointPossibility

Ƭ PointJointPossibility: any

Defined in src/model/data/Joints/Joints/EmbedJoint.ts:17


PointerEvent

Ƭ PointerEvent: any

Defined in src/renderContext/RenderContext.ts:35


Pool

Ƭ Pool: object

Defined in src/worker/WorkerPool.ts:20

Type declaration:


Primitive

Ƭ Primitive: string | boolean | number | null

Defined in src/model/data/CompositeModel.ts:19


RasterizedOutlinePoint

Ƭ RasterizedOutlinePoint: Vector3 & object

Defined in src/model/data/PhysicalObject/Outline/RasterizedOutline.ts:13


RasterizedOutlineWithHoles

Ƭ RasterizedOutlineWithHoles: Omit‹[RasterizedOutline, RasterizedOutline[]], "reverse"›

Defined in src/modules/kyub.core.svgObjExporter/src/export/SvgCreator.ts:96


RealizedList

Ƭ RealizedList: Array‹object›

Defined in src/model/data/Concepts/Realization/IModelElementRealizer.ts:12

Defines the data structure for a combination of model element and realizer that were realized before this realizer and where this realizer's element depends on.


Renderer

Ƭ Renderer: WebGLRenderer

Defined in src/renderContext/RenderContext.ts:39


ResponseType

Ƭ ResponseType: "" | "arraybuffer" | "blob" | "document" | "json" | "text"

Defined in src/assets/ResourceLoader.ts:17


RollbackCallback

Ƭ RollbackCallback: function | null

Defined in src/history/SerializationHistory.ts:5


SandingString

Ƭ SandingString: "sanded" | "unsanded" | "sandable"

Defined in src/model/visualization/Joints/Renderer/FingerRendering/verticalConfigCalculationHandlers/types.ts:25


SerializableProperty

Ƭ SerializableProperty: string | boolean | number | Vector3 | ReadonlyVector3 | null

Defined in src/util/RemoteLogger.ts:8


ShapeChanges

Ƭ ShapeChanges: IShapeChanges & IFlexShapeChanges

Defined in src/model/visualization/Joints/Renderer/JointRenderer.ts:20


SideCode

Ƭ SideCode: "AB" | "BC" | "CA"

Defined in src/util/polygon/triangulatingClipper/Triangle.ts:13


StartEndOption

Ƭ StartEndOption: object

Defined in src/modules/kyub.core.plate/src/AddPlateTool.ts:36

Type declaration:

  • end: ReadonlyVector3

  • start: ReadonlyVector3


Subtype

Ƭ Subtype: "contained" | "shifted" | "sharedPoint"

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:5


SupportedObject3D

Ƭ SupportedObject3D: Mesh | Line

Defined in src/util/MeshMerger.ts:15


SurfaceJointPossibility

Ƭ SurfaceJointPossibility: any

Defined in src/model/data/Joints/Joints/TeeJoint.ts:17

Defined in src/model/data/Joints/Joints/CrossJoint.ts:12

Defined in src/model/data/Joints/Joints/EmbedJoint.ts:18


SvgNest

Ƭ SvgNest: any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SvgNester.ts:18


ToolSubclass

Ƭ ToolSubclass: typeof Tool & object

Defined in src/tools/Tool.ts:438


TypedSerializerConstructor

Ƭ TypedSerializerConstructor: object

Defined in src/history/serialization/SerializerRegistry.ts:3

Type declaration:


Unit

Ƭ Unit: LengthUnit

Defined in src/util/UnitConverter.ts:16


UnjoinedSection

Ƭ UnjoinedSection: object & OutlineLine

Defined in src/model/data/Concepts/Realization/RoundEdgeDescriptorRealizer.ts:33


VisualisationWrapper

Ƭ VisualisationWrapper: object

Defined in src/model/visualization/AssemblyVisualization.ts:28

Type declaration:


WorkerBuilder

Ƭ WorkerBuilder: function

Defined in src/worker/WorkerPool.ts:18

Type declaration:

▸ (): KyubWorker

Variables

Const CUTOUT_ID

CUTOUT_ID: "cutout" = "cutout"

Defined in src/modules/kyub.core.plateOrnaments/src/MosaicElementOrnaments/MosaicElementContainer.ts:10


Const DebugLevelPhysics

DebugLevelPhysics: DebugLevel‹› = getDebugLevel("physics")

Defined in src/renderContext/BackgroundParts.ts:25


Const DebugWorldPoints

DebugWorldPoints: DebugLevel‹› = getDebugLevel("worldPoints")

Defined in src/model/data/PhysicalObject/PhysicalObject.ts:17


Const InverseEventType

InverseEventType: object

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:68

Type declaration:


Const MAX_TEXTURE_COUNT

MAX_TEXTURE_COUNT: 4 | 8 = isSafari ? 4 : 8

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:30


Const MAX_USES_PER_TEXTURE

MAX_USES_PER_TEXTURE: number = Math.max( 1, Math.min(isSafari ? 8 : 64, Math.floor(maxLookupTransformUniforms / MAX_TEXTURE_COUNT)), )

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:54


Const PointerControls

PointerControls: any = PointerControlsFn({ Quaternion, Vector2, Vector3 })

Defined in src/renderContext/RenderContext.ts:33


Const RoadkillDebugLevel

RoadkillDebugLevel: DebugLevel‹› = getDebugLevel("roadkill")

Defined in src/modules/kyub.core.svgObjExporter/src/export/Roadkill/RoadkillNester.ts:17


SymbolicLinkFont

SymbolicLinkFont: any

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGStyles/AbstractSvgStylizer.ts:10


Const _arrayPoint3

_arrayPoint3: ArrayPoint3 = [0, 0, 0]

Defined in src/modules/kyub.core.tessellate/src/AutoTessellationGenerator.ts:21


Const _line1

_line1: Line3‹› = new Line3()

Defined in src/util/GeometryUtils.ts:29


Const _materialCache

_materialCache: Map‹string, MixMapEngravingMaterial = new Map()

Defined in src/model/visualization/materials/Materials.ts:35


Const _materialClasses

_materialClasses: Map‹string, typeof MaterialDefinition› = new Map([ ["acrylic", Acrylic], ["acrylic_opaque", OpaqueAcrylic], ["background", Background], ["brushedMetal", BrushedMetal], ["gold", Gold], ["plywood", Poplar], ["poplar", Poplar], ["beech", Beech], ["birch", Birch], ["okoume", Okoume], ["assetPlaceholderPlywood", AssetPlaceholderPlywood], ["plywood_semitransparent", PlywoodSemitransparent], ["previewPlywood", PreviewPlywood], ["steel", Steel], ["deletion_overlay", DeletionMaterial], ["mdf", MDF], ["foamcore", Foamcore], ])

Defined in src/model/visualization/materials/Materials.ts:37


Const _materials

_materials: Map‹string, MaterialDefinition = new Map()

Defined in src/model/visualization/materials/Materials.ts:36


Const _matrix3

_matrix3: Matrix3‹› = new Matrix3()

Defined in src/util/GeometryUtils.ts:25


Const _quaternion1

_quaternion1: Quaternion‹› = new Quaternion()

Defined in src/util/Transforms.ts:59


Const _tempInverseRotation

_tempInverseRotation: Quaternion‹› = new Quaternion()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/ObbGrid.ts:5


Const _tempMeshPointObbSpace

_tempMeshPointObbSpace: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/ObbGrid.ts:7


Const _tempOffset

_tempOffset: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/RightAngledTriangleGrid.ts:7


Const _tempOffsetMesh

_tempOffsetMesh: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/EquilateralTriangleGrid.ts:8


Const _tempOffsetObbLocal

_tempOffsetObbLocal: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/EquilateralTriangleGrid.ts:9


Const _tempRelativeCellPosition

_tempRelativeCellPosition: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/EquilateralTriangleGrid.ts:7

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/RightAngledTriangleGrid.ts:6


Const _tempTransformedObbPosition

_tempTransformedObbPosition: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/grids/ObbGrid.ts:6


Const _tempVector1

_tempVector1: Vector3‹› = new Vector3()

Defined in src/util/QuaternionUtils.ts:5


Const _tempVector2

_tempVector2: Vector3‹› = new Vector3()

Defined in src/util/QuaternionUtils.ts:6


Const _tempVector3

_tempVector3: Vector3‹› = new Vector3()

Defined in src/util/QuaternionUtils.ts:7


Const _vector1

_vector1: Vector3‹› = new Vector3()

Defined in src/util/Transforms.ts:58

Defined in src/model/data/Concepts/Mesh/MeshHalfEdge.ts:11

Defined in src/model/data/PhysicalObject/Plate2DHelpers.ts:38

Defined in src/renderContext/RenderContext.ts:42

Defined in src/model/data/PhysicalObject/Plate3DHelpers.ts:26

Defined in src/util/GeometryUtils.ts:26


Const _vector2

_vector2: Vector3‹› = new Vector3()

Defined in src/renderContext/RenderContext.ts:43

Defined in src/model/data/PhysicalObject/Plate3DHelpers.ts:27

Defined in src/util/GeometryUtils.ts:27


Const _vector3

_vector3: Vector3‹› = new Vector3()

Defined in src/renderContext/RenderContext.ts:44

Defined in src/util/GeometryUtils.ts:28


Const add

add: (Anonymous function) = binaryExpression(BinaryOperator.ADD)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:130


Const addVectors

addVectors: (Anonymous function) = vectorVectorExpression(BinaryOperator.ADD)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:151


Const allowedEventTypes

allowedEventTypes: EventType[] = Object.values(EventType)

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:64


Let angular

angular: any

Defined in src/modules/kyub.core.loadSave/src/LoadSaveModule.ts:22


Let animationSpeed

animationSpeed: number

Defined in src/renderContext/animations/KyubAnimation.ts:6


Const apiInstances

apiInstances: IAssetApi[] = []

Defined in src/assets/AssetLoader.ts:27


Const areaScale

areaScale: any = new humanFormat.Scale({ "mm²": 1, "cm²": 100, "m²": 1000000, })

Defined in src/util/unit.ts:20


Const arrowHeadGeometry

arrowHeadGeometry: ShapeBufferGeometry‹› = new ShapeBufferGeometry(arrowHeadShape, 1)

Defined in src/renderContext/hints/HintLine.ts:10


Const arrowHeadShape

arrowHeadShape: Shape‹› = new Shape()

Defined in src/renderContext/hints/HintLine.ts:7


Const automaticallyDetermineRoot

automaticallyDetermineRoot: any = Config.get("general.automaticallyDetermineFileRoot", true)

Defined in src/assets/ResourceLoader.ts:28


Let availableConfigFiles

availableConfigFiles: object

Defined in src/util/config/Config.ts:46

Type declaration:


Let baseConfig

baseConfig: readonly string[] = null

Defined in src/util/config/Config.ts:52


Const bendPointsCacheVector

bendPointsCacheVector: Vector3‹› = new Vector3()

Defined in src/model/visualization/Plates/BendRenderer.ts:65


Const cache

cache: QuickLRU‹unknown, unknown› = new QuickLru({ maxSize: 1000 })

Defined in src/util/polygon/RemotePolygonClipper.ts:27


Const cacheVector

cacheVector: Vector3‹› = new Vector3()

Defined in src/util/CanvasHelper.ts:5

Defined in src/model/visualization/textures/CutlineTextureDrawer.ts:12


Const cacheVector0

cacheVector0: Vector3‹› = new Vector3()

Defined in src/model/data/Concepts/Realization/HullPlateRealizer.ts:44

Defined in src/model/visualization/Plates/BendRenderer.ts:51

Vectors to reuse and reduce amount of garbage.


Const cacheVector1

cacheVector1: Vector3‹› = new Vector3()

Defined in src/model/data/Concepts/Realization/HullPlateRealizer.ts:45

Defined in src/model/visualization/Plates/BendRenderer.ts:52

Defined in src/model/visualization/Plates/PlatePipeline/ExtrudeStep.ts:11

Defined in src/model/visualization/PlateVisualization.ts:66


Const cacheVector2

cacheVector2: Vector3‹› = new Vector3()

Defined in src/model/data/Concepts/Realization/HullPlateRealizer.ts:46

Defined in src/model/visualization/Plates/PlatePipeline/ExtrudeStep.ts:12

Defined in src/model/visualization/PlateVisualization.ts:67


Let cameraMoveDurationMs

cameraMoveDurationMs: number

Defined in src/renderContext/SceneBackground.ts:16


Const collisionEdgeErosion

collisionEdgeErosion: any = Config.get("autoAssembly.collisionEdgeErosion")

Defined in src/modules/kyub.core.plateImport/src/autoAssembly/AssemblingScoreEvaluator.ts:18


Const collisionNormalErosion

collisionNormalErosion: any = Config.get("autoAssembly.collisionNormalErosion")

Defined in src/modules/kyub.core.plateImport/src/autoAssembly/AssemblingScoreEvaluator.ts:19


Const colorizeFragment

colorizeFragment: "#include if (colorizeStrength > 0.0) { // color is "burned away" in engraved areas float colorVisibility = max(0.0, 1.0 - (engravingAlpha * colorizeEngravingFalloff)) * colorizeStrength; diffuseColor.rgb = mix(diffuseColor.rgb, colorizeColor, colorVisibility); } if (highlightStrength > 0.0) { diffuseColor.rgb = mix(diffuseColor.rgb, highlightColor, highlightStrength); } " = `\

include

if (colorizeStrength > 0.0) { // color is "burned away" in engraved areas float colorVisibility = max(0.0, 1.0 - (engravingAlpha * colorizeEngravingFalloff)) * colorizeStrength; diffuseColor.rgb = mix(diffuseColor.rgb, colorizeColor, colorVisibility); } if (highlightStrength > 0.0) { diffuseColor.rgb = mix(diffuseColor.rgb, highlightColor, highlightStrength); } `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:107


Const colorizeParsFragment

colorizeParsFragment: "#include uniform vec3 colorizeColor; uniform float colorizeStrength; uniform float colorizeEngravingFalloff; uniform vec3 highlightColor; uniform float highlightStrength; " = `\

include

uniform vec3 colorizeColor; uniform float colorizeStrength; uniform float colorizeEngravingFalloff; uniform vec3 highlightColor; uniform float highlightStrength; `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:99


Const compositeModelResourceType

compositeModelResourceType: "serializedCompositeModel" = "serializedCompositeModel"

Defined in src/history/ModelAssetizer.ts:16


Let currentConfig

currentConfig: any = null

Defined in src/util/config/Config.ts:49


Const currentlyLoadingAssets

currentlyLoadingAssets: Map‹string, Promise‹any›› = new Map>()

Defined in src/assets/AssetLoader.ts:17


Const currentlyLoadingResources

currentlyLoadingResources: Map‹string, Promise‹string | ArrayBuffer | Record‹string, any› | Texture‹› | Object3D‹››› = new Map< string, Promise>

()

Defined in src/assets/ResourceLoader.ts:20

Defined in src/assets/AssetLoader.ts:20


Const cutoutFragment

cutoutFragment: "#include diffuseColor.a = texture2D( cutoutTexture, vUv2 ).g + (1.0 - cutoutStrength); "* = `\

include

diffuseColor.a *= texture2D( cutoutTexture, vUv2 ).g + (1.0 - cutoutStrength); `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:88


Const cutoutParsFragment

cutoutParsFragment: "#include uniform sampler2D cutoutTexture; uniform float cutoutStrength; " = `\

include

uniform sampler2D cutoutTexture; uniform float cutoutStrength; `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:83


Let decimalPlaces

decimalPlaces: number

Defined in src/util/unit.ts:11


Let deepmerge

deepmerge: any = require("deepmerge")

Defined in src/util/config/Config.ts:33


Let defaultActionTimeoutSeconds

defaultActionTimeoutSeconds: number

Defined in src/scripting/ScriptInterface.ts:59


Const defaultBaseConfig

defaultBaseConfig: readonly string[] = ["default", "moduleConfig", "menuItems", ...ADDITIONAL_CONFIGS, ...mobile]

Defined in src/util/config/Config.ts:65


defaultConfig

defaultConfig: any

Defined in src/util/config/Config.ts:6


Let defaultEqualityDistance

defaultEqualityDistance: number

Defined in src/util/Equality.ts:8


Const defaultSafetyDistance

defaultSafetyDistance: 3 = 3

Defined in src/model/visualization/textures/OrnamentSanitizer.ts:26


Const defaultScopeName

defaultScopeName: "defaultScope" = "defaultScope"

Defined in src/util/DebugLevel.ts:80


Const div

div: (Anonymous function) = binaryExpression(BinaryOperator.DIV)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:133


Const divVector

divVector: (Anonymous function) = vectorScalarExpression(BinaryOperator.DIV)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:154


Let dynamicConfig

dynamicConfig: Array‹IConfigObject | string› = []

Defined in src/util/config/Config.ts:53


Const earcut

earcut: any = require("earcut")

Defined in src/util/polygon/triangulatingClipper/Triangulator/EarcutPolygonTriangulator.ts:2


Const editorModule

editorModule: IModule = angular.module("editorModule", [ "ngFileSaver", "ngTouch", "notificationSwipe", "ngAnimate", "ngMaterial", ])

Defined in src/angular/editorModule.ts:3


Const emptyList

emptyList: any[] = []

Defined in src/model/visualization/Texturizer.ts:16


Const emptyTexture

emptyTexture: Texture‹› = new Texture()

Defined in src/model/visualization/textures/CutlineTextureDrawer.ts:8


Const engravingFragment

engravingFragment: "#include // alpha blending equation vec4 color = texture2D(engravingTexture, vUv2); float gray = dot(color.rgb, vec3(0.2126, 0.7152, 0.0722)); float engravingAlpha = color.a * (1.0 - gray); diffuseColor.rgb = mix(diffuseColor.rgb, engravingColor, engravingAlpha * engravingStrength); // engraving increases opacity on transparent materials diffuseColor.a = mix(diffuseColor.a, 1.0, engravingAlpha * engravingStrength); " = `\

include

// alpha blending equation vec4 color = texture2D(engravingTexture, vUv2); float gray = dot(color.rgb, vec3(0.2126, 0.7152, 0.0722)); float engravingAlpha = color.a * (1.0 - gray); diffuseColor.rgb = mix(diffuseColor.rgb, engravingColor, engravingAlpha * engravingStrength); // engraving increases opacity on transparent materials diffuseColor.a = mix(diffuseColor.a, 1.0, engravingAlpha * engravingStrength); `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:72


Const engravingParsFragment

engravingParsFragment: *"#extension GL_OES_standard_derivatives : enable

include

uniform vec3 engravingColor; uniform float engravingStrength; uniform sampler2D engravingTexture; "* = `\

extension GL_OES_standard_derivatives : enable

include

uniform vec3 engravingColor; uniform float engravingStrength; uniform sampler2D engravingTexture; `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:65


Let equalityDistance

equalityDistance: number

Defined in src/model/data/Concepts/Realization/RoundEdgeDescriptorRealizer.ts:29


Const fakeBurntEdgeBorderColor

fakeBurntEdgeBorderColor: Color‹› = new Color(Config.get("rendering.fakeBurntEdgeBorderColor", 0x0000ff))

Defined in src/model/visualization/Texturizer.ts:13


Const fakeBurntEdgeCenterColor

fakeBurntEdgeCenterColor: Color‹› = new Color(Config.get("rendering.fakeBurntEdgeCenterColor", 0x00ff00))

Defined in src/model/visualization/Texturizer.ts:14


Let fileRoot

fileRoot: string

Defined in src/assets/ResourceLoader.ts:24


Let fileSaver

fileSaver: typeof FileSaver

Defined in src/modules/kyub.core.loadSave/src/LoadSaveModule.ts:28


Let fileSystemAssetRoot

fileSystemAssetRoot: any

Defined in src/assets/ResourceLoader.ts:34


Const fragmentDeclarations

fragmentDeclarations: "varying vec2 vUv2; varying vec2 vPlateUv; " = \ varying vec2 vUv2; varying vec2 vPlateUv;

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:31


Let fragmentShader

fragmentShader: string = ` varying vec2 vPlateUv;

uniform float cutout_strength; uniform vec3 front_color; uniform vec3 back_color;

uniform sampler2D textures[${MAX_TEXTURE_COUNT}]; uniform bool texture_used[${MAX_TEXTURE_COUNT}]; uniform bool texture_repeat[${MAX_TEXTURE_COUNT}]; uniform mat3 texture_lookup_transforms[${MAX_TEXTURE_COUNT * MAX_USES_PER_TEXTURE}];

void main() { float maxCutoutStrength = 0.0; `

Defined in src/model/visualization/materials/shaderMaterials/FakeBurntEdgesMaterial.ts:21


Const getSubdivisionsCacheLine0

getSubdivisionsCacheLine0: Line3‹› = new Line3()

Defined in src/model/visualization/Plates/BendRenderer.ts:67


Const getSubdivisionsCacheLine1

getSubdivisionsCacheLine1: Line3‹› = new Line3()

Defined in src/model/visualization/Plates/BendRenderer.ts:68


Const gl

gl: WebGLRenderingContext = typeof document !== "undefined" ? document.createElement("canvas").getContext("webgl") : null

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:49

Fragment shader uniforms in all parts of the shader that are not defined here (assuming all #ifdef'ed code is used, scene has a spotlight (currently highest uniform use)):

float: 23 int: 2 vec2: 3 vec3: 11 vec4: 1 mat3: 1 mat4: 1 sampler2D: 12

=> we can assume a bound of 64 used uniforms so far (some are defined by the base class and should be removed there once this is stable enough)


Const groundDirection

groundDirection: Vector3‹› = new Vector3(0, 0, -1)

Defined in src/modules/kyub.core.boxel/src/GridInferring/OrientationTowardsGroundCriterion.ts:5


Const handlers

handlers: (ConcaveAcute | ConcaveObtuse | ConvexAcute | ConvexObtuse)[] = [ ExternalExternalConcaveAcute, ExternalExternalConcaveObtuse, ExternalExternalConvexAcute, ExternalExternalConvexObtuse, ]

Defined in src/model/visualization/Joints/Renderer/FingerRendering/FlexVerticalCalculation.ts:10


Let hashConfig

hashConfig: IConfigObject = null

Defined in src/util/config/Config.ts:54


Let hashReader

hashReader: HashReader = HashReader

Defined in src/util/config/Config.ts:71


Let idCounter

idCounter: number = 0

Defined in src/model/data/Concepts/Mesh/MeshOperation.ts:8


Const innerAngleTolerance

innerAngleTolerance: number = ThreeMath.degToRad(10)

Defined in src/model/data/Joints/Joints/CrossJoint.ts:14


Let instance

instance: WebsiteContext

Defined in src/WebsiteContext.ts:26


Const instances

instances: Map‹string, DebugLevel‹›› = new Map()

Defined in src/util/DebugLevel.ts:38

This class serves as an abstraction from the console and different verbosity levels of logging.

In order to get instances of this class call getDebugLevel('scopeName') (see DebugLevel.getDebugLevel).

For convenience a default instance ('defaultScope') is exported by this module.

example Use the default scope: import DebugLevel from "./DebugLevel"; DebugLevel.debug "This will be printed if level of the default scope is debug or lower." DebugLevel.scopeName === "defaultScope"

example Use a custom scope: import {getDebugLevel} from "./DebugLevel"; DebugLevel = getDebugLevel("myScope"); DebugLevel.warn("This will be printed if level of the myScope is warn or lower.") DebugLevel.scopeName === "myScope"

example For convenience a DebugLevel instance also has a getDebugLevel method: import DebugLevel from "./DebugLevel"; DebugLevelMyScope = DebugLevel.getDebugLevel("myScope");

Instances of this class provide the methods 'trace', 'debug', 'info', 'warn', 'error' to be used instead of the console.* equivalents. Only the current level and above will be logged. Additionally instances provide 'runTrace', 'runDebug', 'runInfo', 'runWarn', 'runError' which take two functions as arguments. Only at the current level and above the first function will be run. Otherwise only the second function will be run.

The level can be configured by calling see {@link DebugLevel#setLevel} or by setting the value debug.scopeName in the Config. see Config.parseConfigFromWindowHash on how to set values in the Config via the window hash.


Const interactionAreaExpansion

interactionAreaExpansion: 10 = 10

Defined in src/renderContext/SuggestionVisualizer.ts:14

Dilate suggestion outlines by this constant for easier interaction.


Const inverseDirection

inverseDirection: Vector3‹› = new Vector3()

Defined in src/util/BoundingVolumeHierarchy.ts:12


Const isSafari

isSafari: boolean = typeof window !== "undefined" && // https://stackoverflow.com/questions/9847580 (/constructor/i.test(String(window?.HTMLElement)) || // eslint-disable-next-line dot-notation String(window?.top["safari"]?.pushNotification) === "[object SafariRemoteNotification]" || (!window?.navigator.userAgent.includes("Chrome") && window?.navigator.userAgent.includes("Safari")))

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:22

Apple's fantastic metal cannot deal with loops, therefore we unroll them and use less ornaments. https://groups.google.com/g/webgl-dev-list/c/4_mnoDmKYBo https://bugs.webkit.org/show_bug.cgi?id=230749


Let jobHandler

jobHandler: function = null

Defined in src/worker/BaseWorker.ts:8

Workers managed by the WorkerPool should use this module to communicate with the WorkerPool.

Type declaration:

▸ (data: any): any | null

Parameters:

Name Type
data any

Const jsgraphs

jsgraphs: any = require("js-graph-algorithms")

Defined in src/modules/kyub.core.reinforcement/src/ReinforcementComponent.ts:34


Const lengthScale

lengthScale: any = new humanFormat.Scale({ // mm: 1 cm: 10, m: 1000, })

Defined in src/util/unit.ts:14


Const levels

levels: string[] = ["trace", "debug", "info", "warn", "error", "silent"]

Defined in src/util/DebugLevel.ts:69

The names of the available levels. The indices correspond to those of methodBindings. This list may be longer than methodBindings, but they will all lead to no output (i.e. silent).


Const lineGeometry

lineGeometry: BoxBufferGeometry‹› = new BoxBufferGeometry(1, 1, 1)

Defined in src/renderContext/hints/HintLine.ts:4


Const lineThickness

lineThickness: 1 = 1

Defined in src/renderContext/SuggestionVisualizer.ts:24

The thickness of the suggestion outlines.


Const loadedResources

loadedResources: Map‹string, any› = new Map()

Defined in src/assets/ResourceLoader.ts:21


Const localStorageKey

localStorageKey: "Config" = "Config"

Defined in src/util/config/Config.ts:76

The key that will be used to save persistent config values to the local storage.


Const mappedNormalA

mappedNormalA: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/AlignmentEqualityTester.ts:8


Const mappedNormalB

mappedNormalB: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/AlignmentEqualityTester.ts:9


Const mappedPointA

mappedPointA: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/AlignmentEqualityTester.ts:11


Const mappedPointB

mappedPointB: Vector3‹› = new Vector3()

Defined in src/modules/kyub.core.boxel/src/GridInferring/AlignmentEqualityTester.ts:12


Const max

max: (Anonymous function) = binaryExpression(BinaryOperator.MAX)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:135


Const maxCornerShapeSize

maxCornerShapeSize: 50 = 50

Defined in src/model/visualization/Joints/Renderer/FingerRendering/FingerShapeGenerator.ts:23


Let maxDotProductPerpendicularDistance

maxDotProductPerpendicularDistance: number

Defined in src/util/GeometryUtils.ts:46


Const maxJobId

maxJobId: 1000000000 = 1000000000

Defined in src/worker/WorkerPool.ts:35


Const maxLookupTransformUniforms

maxLookupTransformUniforms: number = (maxVec4Uniforms - 3 * MAX_TEXTURE_COUNT - 5 - 64) / 3

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:52


Const maxPoolSize

maxPoolSize: number = (typeof window !== "undefined" && window !== null ? window.navigator.hardwareConcurrency : undefined) || 1

Defined in src/worker/WorkerPool.ts:48


Const maxVec4Uniforms

maxVec4Uniforms: any = gl ? gl.getParameter(gl.MAX_FRAGMENT_UNIFORM_VECTORS) : 0

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:51


Let maximumPositionEqualityDistance

maximumPositionEqualityDistance: number = Config.get("modelLimits.maximumPositionEqualityDistance", 0)

Defined in src/model/data/Concepts/Mesh/MeshSurface.ts:15

Defined in src/model/data/Concepts/Anchors/MeshSurfaceAnchor.ts:41


Let maximumPositionPrecision

maximumPositionPrecision: any = Config.get("modelLimits.maximumPositionPrecision")

Defined in src/model/data/Concepts/Realization/MakerAssetRealizer.ts:51


Let maximumRotationEqualityAngle

maximumRotationEqualityAngle: number

Defined in src/util/GeometryUtils.ts:42


Let maximumRotationEqualityDistance

maximumRotationEqualityDistance: number

Defined in src/util/GeometryUtils.ts:43


Let maximumVectorEqualityDistance

maximumVectorEqualityDistance: number

Defined in src/model/data/Concepts/Mesh/MeshValidation.ts:12

Defined in src/util/GeometryUtils.ts:45


Let mergeDistanceEpsilon

mergeDistanceEpsilon: number

Defined in src/model/data/Concepts/Anchors/MeshSurfaceAnchor.ts:36


Const methodBindings

methodBindings: string[] = ["debug", "debug", "info", "warn", "error"]

Defined in src/util/DebugLevel.ts:78

The functions that the levels are bound to respectively. The function debugLevel[@levels[i]] will be bound to the method named methodBinding[i]. This array must only contain the names given in the loglevel npm module (see https://www.npmjs.com/package/loglevel). This specifically makes the trace method not actually call console.trace which would always print the whole stack.


Const min

min: (Anonymous function) = binaryExpression(BinaryOperator.MIN)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:134


Const minimalFragmentShader

minimalFragmentShader: " void main() { gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0); }" = void main() { gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0); }

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:174


Const mixMapFragment

mixMapFragment: *"#ifdef USE_MAP // Offset the second texture so that possible artifacts in the pattern do not align, // e.g. shadows at the edges of the texture. vec2 offset = vec2(0.5, 0.5); vec4 texelColor1 = mapTexelToLinear(texture2D(maps[0], vUv)); vec4 texelColor2 = mapTexelToLinear(texture2D(maps[1], vUv + offset));

// Use simplex noise to determine which texture to show float noise = snoise(vUv) * 0.5 + 0.5;

vec4 texelColor = mix(texelColor1, texelColor2, noise);

// Uncomment to see the noise used to blend the textures as black and white. // texelColor = vec4(noise, noise, noise, 1);

diffuseColor *= texelColor;

endif

"* = `\

ifdef USE_MAP

// Offset the second texture so that possible artifacts in the pattern do not align, // e.g. shadows at the edges of the texture. vec2 offset = vec2(0.5, 0.5); vec4 texelColor1 = mapTexelToLinear(texture2D(maps[0], vUv)); vec4 texelColor2 = mapTexelToLinear(texture2D(maps[1], vUv + offset));

// Use simplex noise to determine which texture to show float noise = snoise(vUv) * 0.5 + 0.5;

vec4 texelColor = mix(texelColor1, texelColor2, noise);

// Uncomment to see the noise used to blend the textures as black and white. // texelColor = vec4(noise, noise, noise, 1);

diffuseColor *= texelColor;

endif

`

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:44


Const mixMapParsFragment

mixMapParsFragment: "uniform sampler2D maps[2]; " = \ uniform sampler2D maps[2];

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:36


Const mmToPixelAt72Dpi

mmToPixelAt72Dpi: number = 72 * (1 / 25.4)

Defined in src/modules/kyub.core.plateOrnaments/src/OrnamentGenerator/OrnamentSvgCreator.ts:7


Const mobile

mobile: string[] = typeof window !== "undefined" && window?.matchMedia("only screen and (max-height: 800px)").matches ? ["mobileMenu"] : []

Defined in src/util/config/Config.ts:59


Const mul

mul: (Anonymous function) = binaryExpression(BinaryOperator.MUL)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:132


Let nextCanvasId

nextCanvasId: number = 0

Defined in src/model/visualization/textures/TextureDrawer.ts:16

This counter is used to generate unique id for canvases (in this context 'unique' means unique for this editor instance).


Let nextJobId

nextJobId: number = 0

Defined in src/worker/WorkerPool.ts:28


Let nonPlanarityTolerance

nonPlanarityTolerance: any = Config.get("plates.nonPlanarityTolerance", 0)

Defined in src/model/data/Concepts/Mesh/MeshSurface.ts:18


Const nullVector

nullVector: Vector3 = new Vector3()

Defined in src/model/visualization/textures/CutlineTextureDrawer.ts:11

Defined in src/model/visualization/textures/Ornament.ts:16


Let oldConfig

oldConfig: Set‹string› = null

Defined in src/util/config/Config.ts:55


Let overlayTexturesFragment

overlayTexturesFragment: string = `\

include

float maxEngravingAlpha = 0.0; float maxCutoutStrength = 0.0; `

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:82


Const overlayTexturesParsFragment

overlayTexturesParsFragment: string = `

include

uniform float engraving_strength; uniform vec3 engraving_color; uniform vec3 backside_color;

uniform float cutout_strength; uniform bool render_backfaces;

uniform sampler2D textures[${MAX_TEXTURE_COUNT}]; uniform int texture_types[${MAX_TEXTURE_COUNT}]; uniform bool texture_x_repeat[${MAX_TEXTURE_COUNT}]; uniform bool texture_y_repeat[${MAX_TEXTURE_COUNT}]; uniform mat3 texture_lookup_transforms[${MAX_TEXTURE_COUNT * MAX_USES_PER_TEXTURE}]; `

Defined in src/model/visualization/materials/shaderMaterials/MixMapShadedEngravingMaterial.ts:66


Let paper

paper: any = null

Defined in src/util/PaperPathUtils.ts:5


Const pendingAsyncDraws

pendingAsyncDraws: Map‹any, any› = new Map()

Defined in src/model/visualization/textures/TextureDrawer.ts:24

canvasId -> [cancelFn] This map holds an array of functions that can be used to cancel asynchronous draw calls for that canvas. It is used to solve concurrency problems with Drawables (e.g. a plate is texturized multiple times until the drawable is loaded. In this case, all asynchronous draw calls would execute and cause unwanted overdraw).


Let persistedConfig

persistedConfig: IConfigObject[] = []

Defined in src/util/config/Config.ts:56


Const pointsPerRequest

pointsPerRequest: 1000 = 1000

Defined in src/model/visualization/textures/OrnamentSanitizer.ts:33

Because we can clamp multiple cutouts to the outline at once, we group them to improve polygon clipping efficiency (especially when the clipping is done on the server). The requests will be grouped to contain roughly the same number of (summed up) points


polygonArea

polygonArea: any

Defined in src/util/GeometryUtils.ts:3


Const positionEpsilon

positionEpsilon: number = Config.get("modelLimits.maximumPositionEqualityDistance", 0.001)

Defined in src/model/data/PhysicalObject/PlateMerger.ts:28


Let positionPrecision

positionPrecision: number

Defined in src/model/data/PhysicalObject/Outline/Vertex.ts:14


Const promiseMap

promiseMap: Map‹number, object› = new Map< number, { resolve: (value?: any) => void; reject: (reason?: any) => void; cancelled: boolean }

()

Defined in src/worker/WorkerPool.ts:39


quadtree

quadtree: any

Defined in src/util/polygon/triangulatingClipper/Triangulator/DelaunayPolygonTriangulator.ts:7


Const quaternion

quaternion: Quaternion‹› = new Quaternion()

Defined in src/util/Transforms.ts:11


Const ray

ray: Ray‹› = new Ray(new Vector3(), new Vector3(1, 0, 0).normalize())

Defined in src/model/data/Concepts/Mesh/MeshAnalyzer/MeshVolumeAnalyzer.ts:12

This ray is used to test for intersections with the surfaces of a mesh in order to find out whether a point is inside or outside the mesh.


Const raycaster

raycaster: Raycaster‹› = new ThreeRaycaster()

Defined in src/input/processing/Raycaster.ts:7

A THREE.Raycaster instance that will be reused for all raycasts.


Const registeredHandlers

registeredHandlers: Map‹any, any› = new Map()

Defined in src/model/visualization/Joints/Renderer/FingerRendering/VerticalConfigCalculator.ts:58


Const request

request: ThrottledHttpRequest‹› = new ThrottledHttpRequest()

Defined in src/util/polygon/RemotePolygonClipper.ts:21

Defined in src/modules/kyub.core.editInBlender/src/MeshImportWSClient.ts:12

Defined in src/modules/kyub.core.svgObjExporter/src/manualNesting/RemotePackaideNester.ts:10


Const roughnessMapFragment

roughnessMapFragment: "#include // engravings increase roughness roughnessFactor = mix(roughnessFactor, 1.0, engravingAlpha); " = `\

include

// engravings increase roughness roughnessFactor = mix(roughnessFactor, 1.0, engravingAlpha); `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:93


Const runningJobs

runningJobs: Map‹number, KyubWorker = new Map()

Defined in src/worker/WorkerPool.ts:45


Let safetyMarginWidth

safetyMarginWidth: number

Defined in src/model/visualization/Plates/PlatePipeline/SafetyMarginGeometryStep.ts:11


sanitize

sanitize: sanitize

Defined in src/modules/kyub.core.svgObjExporter/src/ExportResultSaver.ts:5


Let scaleMakerAssetsWithMesh

scaleMakerAssetsWithMesh: boolean = Config.get("interaction.scaleMakerAssetsWithMesh", true)

Defined in src/model/data/Concepts/MakerAsset/MakerAsset.ts:41


Const scaleVector

scaleVector: (Anonymous function) = vectorScalarExpression(BinaryOperator.MUL)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:153


Const seededRandom

seededRandom: any = SR("pv")

Defined in src/model/visualization/textures/KyubTexture.ts:7

Defined in src/model/visualization/PlateVisualization.ts:63


Const serializedFileName

serializedFileName: "serialized" = "serialized"

Defined in src/history/ModelAssetizer.ts:17


Const simplificationEpsilon

simplificationEpsilon: 1e-7 = 1e-7

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:7


Const simplificationInfinity

simplificationInfinity: number = 1 / simplificationEpsilon

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:9


Const spacerMosaicElementId

spacerMosaicElementId: "spacer" = "spacer"

Defined in src/modules/kyub.core.plateOrnaments/src/MosaicElementOrnaments/MosaicElementCutout.ts:13


Let squaredEqualityTolerance

squaredEqualityTolerance: number

Defined in src/model/data/PhysicalObject/Outline/Vertex.ts:12


Let squaredUpdateTolerance

squaredUpdateTolerance: number

Defined in src/model/data/Concepts/Realization/HullPlateRealizer.ts:48

Defined in src/model/data/PhysicalObject/Outline/Vertex.ts:10


Const sub

sub: (Anonymous function) = binaryExpression(BinaryOperator.SUB)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:131


Const subVectors

subVectors: (Anonymous function) = vectorVectorExpression(BinaryOperator.SUB)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:152


Const subdivideLinestripCacheList

subdivideLinestripCacheList: any[] = [] as ArrayLine2[]

Defined in src/model/visualization/Plates/BendRenderer.ts:63


Const suggestionColor

suggestionColor: 7584844 = 7584844

Defined in src/renderContext/SuggestionVisualizer.ts:19

The color to render the suggestion outlines in.


Const surfaceJointMinimalDistance

surfaceJointMinimalDistance: 10 = 10

Defined in src/model/data/PhysicalObject/Outline/Outline.ts:36

To allow OutlineSections to be considered for joining at all, outline surfaces have a minimum distance (in mm)


Const tabexChannel

tabexChannel: "kyub.config" = "kyub.config"

Defined in src/util/config/Config.ts:23


Let tabexClient

tabexClient: any = null

Defined in src/util/config/Config.ts:24


Const targetPoint

targetPoint: Vector2‹› = new Vector2()

Defined in src/renderContext/animations/CubicBezierInterpolation.ts:15


Const tempQuaternion

tempQuaternion: Quaternion‹› = new Quaternion()

Defined in src/modules/kyub.core.boxel/src/GridInferring/AlignmentContext.ts:20


Const tempVector

tempVector: Vector3‹› = new Vector3()

Defined in src/model/data/Concepts/Mesh/MeshAnalyzer/MeshVolumeAnalyzer.ts:14

Defined in src/modules/kyub.core.boxel/src/GridInferring/AlignmentContext.ts:19

Defined in src/model/visualization/Joints/Renderer/FingerRendering/ShapeHelper.ts:5


Const tempVector0

tempVector0: Vector3‹› = new Vector3()

Defined in src/input/processing/SceneEventCollider.ts:8


Const tempVector1

tempVector1: Vector3‹› = new Vector3()

Defined in src/model/data/Concepts/Mesh/MeshAnalyzer/MeshSurfaceAnalyzer.ts:15

Defined in src/input/processing/SceneEventCollider.ts:9

Defined in src/util/AssemblyAnimationHelper.ts:6


Const tempVector2

tempVector2: Vector3‹› = new Vector3()

Defined in src/util/AssemblyAnimationHelper.ts:7


Const textStyle

textStyle: "font-size: 30px; font-family: Arial, Helvetica, sans-serif; fill: black;" = font-size: 30px; font-family: Arial, Helvetica, sans-serif; fill: black;

Defined in src/modules/kyub.core.svgObjExporter/src/SandingJigTool.ts:16


Const textureEnlargementVector

textureEnlargementVector: Vector3‹› = new Vector3(2, 2, 0)

Defined in src/model/visualization/textures/CutlineTextureDrawer.ts:10


Const textureName

textureName: "resources/sprites/circularHintSprite.png" = "resources/sprites/circularHintSprite.png"

Defined in src/renderContext/hints/HintPoint.ts:7


Const unitScaleVector

unitScaleVector: Vector3‹› = new Vector3(1, 1, 1)

Defined in src/util/Transforms.ts:5


Const uv2Transfer

uv2Transfer: "vUv2 = uv2; vPlateUv = plateUv; " = \ vUv2 = uv2; vPlateUv = plateUv;

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:26


Const vector1

vector1: Vector3‹› = new Vector3()

Defined in src/util/CurveHelper.ts:12

Defined in src/util/TransformsHelper.ts:3


Const vector2

vector2: Vector3‹› = new Vector3()

Defined in src/util/CurveHelper.ts:13


Const vertexDeclarations

vertexDeclarations: *"attribute vec2 uv2; varying vec2 vUv2;

attribute vec2 plateUv; varying vec2 vPlateUv; "* = `\ attribute vec2 uv2; varying vec2 vUv2;

attribute vec2 plateUv; varying vec2 vPlateUv; `

Defined in src/model/visualization/materials/shaderMaterials/MixMapEngravingMaterial.ts:17


Const vertexShader

vertexShader: *" attribute vec2 plateUv; varying vec2 vPlateUv;

void main() { vPlateUv = plateUv;

gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); } "* = ` attribute vec2 plateUv; varying vec2 vPlateUv;

void main() { vPlateUv = plateUv;

gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); } `

Defined in src/model/visualization/materials/shaderMaterials/FakeBurntEdgesMaterial.ts:10


Const watchers

watchers: object

Defined in src/util/config/Config.ts:68

Type declaration:


Const zeroQuaternion

zeroQuaternion: Quaternion‹› = new Quaternion()

Defined in src/util/Transforms.ts:9


Const zeroVector

zeroVector: Vector3‹› = new Vector3()

Defined in src/util/Transforms.ts:7

Functions

Const abcFormula

abcFormula(a: number, b: number, c: number, extremum: boolean): number[]

Defined in src/util/MathUtils.ts:457

Parameters:

Name Type Default Description
a number - -
b number - -
c number - -
extremum boolean false Whether to return NaN or the extremum when there's no zero

Returns: number[]


Const angle

angle(number: any): string

Defined in src/util/unit.ts:63

Parameters:

Name Type
number any

Returns: string


Const applyStrategy

applyStrategy(candidates: FoundModelElements‹any›, strategy: FindModelElementReturnStrategy, elements: FoundModelElements‹any›): boolean

Defined in src/model/data/Concepts/Realization/IModelElementRealizer.ts:144

Adds found candidates to elements according to strategy and returns whether strategy is fullfilled or not.

Parameters:

Name Type Description
candidates FoundModelElements‹any› -
strategy FindModelElementReturnStrategy -
elements FoundModelElements‹any› -

Returns: boolean


Const area

area(number: any): string

Defined in src/util/unit.ts:57

Parameters:

Name Type
number any

Returns: string


Const arrayMinMax

arrayMinMax(array: number[]): object

Defined in src/util/MathUtils.ts:328

Finds the min and max values in an

Parameters:

Name Type Description
array number[] -

Returns: object

  • max: number

  • min: number


Const binaryExpression

binaryExpression(operator: BinaryOperator): (Anonymous function)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:97

Parameters:

Name Type
operator BinaryOperator

Returns: (Anonymous function)


Const destroyDebugLevel

destroyDebugLevel(scopeName: string): void

Defined in src/util/DebugLevel.ts:58

Destroys the DebugLevel instance with the supplied scopeName. If no such instance exists, nothing happens.

Parameters:

Name Type Description
scopeName string -

Returns: void


Const editorController

editorController($scope: any, $element: any): void

Defined in src/angular/editorController.ts:7

Parameters:

Name Type
$scope any
$element any

Returns: void


Const equalsApprox

equalsApprox(e: IExpression, n: number): e is number

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:177

Parameters:

Name Type
e IExpression
n number

Returns: e is number

If the expression is approximately equal to the given number n.


Const evaluate

evaluate(expression: IExpression, variables: IExpressionVariables): number

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:320

Parameters:

Name Type
expression IExpression
variables IExpressionVariables

Returns: number


Const evaluateBinaryOperator

evaluateBinaryOperator(operator: BinaryOperator, left: number, right: number): number

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:157

Parameters:

Name Type
operator BinaryOperator
left number
right number

Returns: number


Const evaluateVector

evaluateVector(expression: IVectorExpression, variables: IExpressionVariables): object

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:349

Parameters:

Name Type
expression IVectorExpression
variables IExpressionVariables

Returns: object

  • x: number

  • y: number


Const filterByType

filterByTypeT›(values: Iterable‹any› | ArrayLike‹any›, type: Constructor‹T›): T[]

Defined in src/util/ArrayUtils.ts:11

Returns all values of the given array for that value instanceof type is true

Type parameters:

T

Parameters:

Name Type Description
values Iterable‹any› | ArrayLike‹any› The Array to filter
type Constructor‹T› The type to filter by

Returns: T[]

filtered values of same type as given type


Const findByType

findByTypeT›(values: Iterable‹any› | ArrayLike‹any›, type: Constructor‹T›, predicate: function): T | undefined

Defined in src/util/ArrayUtils.ts:36

Returns the first found value of the given list for that value instanceof type is true

Type parameters:

T

Parameters:

values: Iterable‹any› | ArrayLike‹any›

The list to search in

type: Constructor‹T›

The type to search for

Default value predicate: function= () => true

Additional condition the element has to fulfill

▸ (value?: any, index?: any, array?: any): boolean

Parameters:

Name Type
value? any
index? any
array? any

Returns: T | undefined

found value as given type or undefined


Const fit

fit(force: number): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:138

Parameters:

Name Type
force number

Returns: IExpression


Const gcd

gcd(a: number, b: number): number

Defined in src/util/MathUtils.ts:320

Parameters:

Name Type
a number
b number

Returns: number


Const getDebugLevel

getDebugLevel(scopeName: string): DebugLevel‹›

Defined in src/util/DebugLevel.ts:45

Returns the DebugLevel instance with the supplied scopeName. If no such instance exists, a new one is created and returned.

Parameters:

Name Type Description
scopeName string -

Returns: DebugLevel‹›


Const getFlexVerticalCalculationHandler

getFlexVerticalCalculationHandler(context: JoinedPlatesContext, thisPlate: Plate, otherPlate: Plate): FlexVerticalCalculationHandler

Defined in src/model/visualization/Joints/Renderer/FingerRendering/FlexVerticalCalculation.ts:22

Parameters:

Name Type Description
context JoinedPlatesContext The JoinedPlatesContext of the joint between the two plates.
thisPlate Plate The plate of the joint relative to which the intersection points are calculated.
otherPlate Plate The other plate of the joint.

Returns: FlexVerticalCalculationHandler


Const getPaper

getPaper(): any

Defined in src/util/PaperPathUtils.ts:8

Returns: any


Const greaterThan

greaterThan(numberA: number, numberB: number, epsilon: number): boolean

Defined in src/util/MathUtils.ts:228

Checks whether numberA is greater than and not equal numberB. Wrapper for greaterThanOrEqual.

Parameters:

Name Type Default Description
numberA number - First number
numberB number - Second number
epsilon number 0.001 (optional) Tolerance, defaults to 0.001

Returns: boolean

True, if both numberA is greater than and not equal to numberB within tolerance, false, if not


Const greaterThanOrEqual

greaterThanOrEqual(numberA: number, numberB: number, epsilon: number): boolean

Defined in src/util/MathUtils.ts:217

Checks whether numberA is greater than or equal to numberB.

Parameters:

Name Type Default Description
numberA number - First number
numberB number - Second number
epsilon number 0.001 (optional) Tolerance, defaults to 0.001

Returns: boolean

True, if both numberA is greater than or equal to numberB within tolerance, false, if not


Const ifSandingElse

ifSandingElse(ifSanding: IExpression, ifNoSanding: IExpression, assembly: Assembly, doSimplify: boolean): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:143

Parameters:

Name Type Default
ifSanding IExpression -
ifNoSanding IExpression -
assembly Assembly -
doSimplify boolean true

Returns: IExpression


Const incrementToNextMultiple

incrementToNextMultiple(number: number, multiple: number): number

Defined in src/util/MathUtils.ts:265

Increases number to the next multiple

Parameters:

Name Type Description
number number Number to increase
multiple number Multiple to increase to

Returns: number


Const intersectionOverUnion

intersectionOverUnionT›(a: T[], b: T[]): number

Defined in src/util/MathUtils.ts:432

Given two ordered multi-sets, calculate to which ratio they overlap.

Type parameters:

T

Parameters:

Name Type
a T[]
b T[]

Returns: number

a value between 0 and 1, both inclusive


Const isCanHandleInteractionResult

isCanHandleInteractionResult(res: CanHandleInteractionResult): res is ICanHandleInteractionResult

Defined in src/tools/Tool.ts:48

Parameters:

Name Type
res CanHandleInteractionResult

Returns: res is ICanHandleInteractionResult


Const isIMeshAnchorChangeEvent

isIMeshAnchorChangeEvent(anchorChangeEvent: any): anchorChangeEvent is IMeshAnchorChangeEvent

Defined in src/model/data/Concepts/Anchors/IMeshAnchorChangeEvent.ts:69

Used for typechecking IAnchorChangeEvents implementing this interface.

Parameters:

Name Type Description
anchorChangeEvent any -

Returns: anchorChangeEvent is IMeshAnchorChangeEvent


Const isIPointInputEvent

isIPointInputEvent(inputEvent: IInputEvent): inputEvent is IPointInputEvent

Defined in src/input/events/InputEvent.ts:47

Parameters:

Name Type
inputEvent IInputEvent

Returns: inputEvent is IPointInputEvent


Const isIPositionalElement

isIPositionalElement(modelElement: any): modelElement is IPositionableElement

Defined in src/model/data/Concepts/IPositionableElement.ts:21

Used for typechecking ModelElements implementing this interface.

Parameters:

Name Type Description
modelElement any -

Returns: modelElement is IPositionableElement


Const isIRayInputEvent

isIRayInputEvent(inputEvent: IInputEvent): inputEvent is IRayInputEvent

Defined in src/input/events/InputEvent.ts:43

Parameters:

Name Type
inputEvent IInputEvent

Returns: inputEvent is IRayInputEvent


Const isMeshFeature

isMeshFeature(feature: object): boolean

Defined in src/modules/kyub.core.symmetry/src/SymmetryExtractor.ts:92

Parameters:

feature: object

Name Type
description string

Returns: boolean


Const isMultiPolygon

isMultiPolygon(polygon: Polygon | MultiPolygon): polygon is MultiPolygon

Defined in src/util/polygon/MultiPolygon.ts:352

Parameters:

Name Type
polygon Polygon | MultiPolygon

Returns: polygon is MultiPolygon


Const isNegation

isNegation(e: IExpression): e is number | INegationExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:182

Parameters:

Name Type
e IExpression

Returns: e is number | INegationExpression

If the given expression is a negation that could be "removed"


Const isNegative

isNegative(e: IExpression): boolean

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:220

Parameters:

Name Type
e IExpression

Returns: boolean

If the given expression is definitely negative (including 0)


Const isOrientedPositioningAnchor

isOrientedPositioningAnchor(anchor: IPositionableElementTransformsDefiner): anchor is IOrientedPositioningAnchor

Defined in src/model/data/Concepts/Anchors/IPositioningAnchor.ts:88

Parameters:

Name Type
anchor IPositionableElementTransformsDefiner

Returns: anchor is IOrientedPositioningAnchor


Const isPositive

isPositive(e: IExpression): boolean

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:187

Parameters:

Name Type
e IExpression

Returns: boolean

If the given expression is definitely positive (including 0)


Const isRoundingFeature

isRoundingFeature(feature: object): boolean

Defined in src/modules/kyub.core.symmetry/src/SymmetryExtractor.ts:88

Parameters:

feature: object

Name Type
description string

Returns: boolean


Const length

length(number: number, delta: number): string

Defined in src/util/unit.ts:35

Parameters:

Name Type Default
number number -
delta number 0

Returns: string


Const lerp

lerp(v1: number, v2: number, alpha: number): number

Defined in src/util/MathUtils.ts:128

Linear extrapolate between v1 and v2

Parameters:

Name Type Description
v1 number Start
v2 number End
alpha number extrapolation value. Values smaller than 0 are before start, values greater than 1 are after end.

Returns: number


Const mapInPairs

mapInPairsT, U›(array: ArrayLike‹T›, callback: function, offset: number): U[]

Defined in src/util/ArrayUtils.ts:46

Type parameters:

T

U

Parameters:

array: ArrayLike‹T›

callback: function

▸ (a: T, b: T): U

Parameters:

Name Type
a T
b T

Default value offset: number= 1

Returns: U[]


Const mapInterval

mapInterval(value: number, originMin: number, originMax: number, targetMin: number, targetMax: number, clamp: boolean): number

Defined in src/util/MathUtils.ts:142

Transform values from origin interval into target interval (e.g. value in [0,1] to [-1024,1024])

Parameters:

Name Type Default Description
value number - -
originMin number - Value interval start
originMax number - Value interval end
targetMin number - Mapping interval start
targetMax number - Mapping interval end
clamp boolean false If the target interval should be strictly enforced (no values outside of it are returned)

Returns: number

Mapped value in target interval


Const menuItemController

menuItemController($scope: any, $timeout: any, $mdDialog: any, $element: any): void

Defined in src/angular/floatingMenu/menuItemController.ts:12

Parameters:

Name Type
$scope any
$timeout any
$mdDialog any
$element any

Returns: void


Const modulo

modulo(a: number, b: number): number

Defined in src/util/MathUtils.ts:316

Computes the intuitive (positive) modulo. Ihis does the same as the %% operator in coffeescript.

Parameters:

Name Type Description
a number -
b number -

Returns: number


Const neg

neg(expression: IExpression, doSimplify: boolean): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:141

Parameters:

Name Type Default
expression IExpression -
doSimplify boolean true

Returns: IExpression


Const negVector

negVector(vector: IVectorExpression): IVectorExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:155

Parameters:

Name Type
vector IVectorExpression

Returns: IVectorExpression


Const normalizeAngle

normalizeAngle(angle: number): number

Defined in src/util/MathUtils.ts:256

Normalize an angle between -pi and pi

Parameters:

Name Type Description
angle number Angle in radians

Returns: number

Normalized angle in radians


Const normalizeNumbers

normalizeNumbers(numbers: number[], targetArray: any[], negate: boolean): number[]

Defined in src/util/MathUtils.ts:284

Normalizes an array of numbers to [0, 1].

Parameters:

Name Type Default Description
numbers number[] - The numbers to normalize.
targetArray any[] [] Where to store the normalized numbers. You may pass numbers as the targetArray to compute in-place.
negate boolean false If true, the lowest number in the array will be normalized to 1 and the highest number to 0.

Returns: number[]


Const numberOfDecimalPlaces

numberOfDecimalPlaces(number: number): number

Defined in src/util/MathUtils.ts:359

Returns the number of floating point digits of a number, ignoring trailing zeroes Taken from https://stackoverflow.com/a/9539746

example _numberOfDecimalPlaces(5555.0); //: 0 _numberOfDecimalPlaces(5555); //: 0 _numberOfDecimalPlaces(555.5); //: 1 _numberOfDecimalPlaces(555.50); //: 1 _numberOfDecimalPlaces(0.0000005); //: 7 _numberOfDecimalPlaces(5e-7); //: 7 _numberOfDecimalPlaces(0.00000055); //: 8 _numberOfDecimalPlaces(5.5e-7); //: 8

Parameters:

Name Type Description
number number -

Returns: number


Const numbersEqual

numbersEqual(numberA: number, numberB: number, epsilon: number): boolean

Defined in src/util/MathUtils.ts:168

Checks whether two float numbers are equal.

Parameters:

Name Type Default Description
numberA number - First number
numberB number - Second number
epsilon number 0.001 (optional) Tolerance, defaults to 0.001

Returns: boolean

True, if both numbers are equal within tolerance, false, if not


Const optionalSimplify

optionalSimplify(expression: IExpression, doSimplify: boolean): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:92

Simplifies one level of the given expression if doSimplify is true

Parameters:

Name Type
expression IExpression
doSimplify boolean

Returns: IExpression


Const placePaths

placePaths(paths: Tree[], workerData: object): object

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGnest/util/PlacementWorker.worker.ts:45

return a placement for the paths/rotations given

Parameters:

paths: Tree[]

workerData: object

Name Type
binPolygon Polygon
config ISVGNestConfig
ids number[]
nfpCache object
paths Tree
rotations number[]

Returns: object

  • area: number

  • fitness: number

  • paths: Tree[]

  • placements: any[]


Const primeFactorsOf

primeFactorsOf(num: number): number[]

Defined in src/util/MathUtils.ts:414

Returns the list of prime factors of the given number, in ascending order (without any "1")

Parameters:

Name Type
num number

Returns: number[]


Const registerJobHandler

registerJobHandler(handler: function): void

Defined in src/worker/BaseWorker.ts:41

This function is called, whenever a new job comes in. The handler is called with the job and may either return the result of the job, or, if Transferables shall be use, it may return an object with the result and the transferList { result, transferList }. https://developer.mozilla.org/en-US/docs/Web/API/Worker/postMessage#Parameters

Parameters:

handler: function

-

▸ (data: any): any

Parameters:

Name Type
data any

Returns: void


Const rotate

rotateT›(values: T[], numberOfShifts: number, shiftRight: boolean): T[]

Defined in src/util/ArrayUtils.ts:22

Repositions the elements of the given array by rotating it. Changes the original array.

example ArrayUtils.shift([1, 2, 3, 4], 1, true) => [4, 1, 2, 3]

Type parameters:

T

Parameters:

Name Type Default Description
values T[] - The array to shift
numberOfShifts number 1 How many shifts should occur
shiftRight boolean true If it should shift by moving right (->) or left (<-)

Returns: T[]


Const rotatePolygon

rotatePolygon(polygon: Tree, degrees: number): Tree

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGnest/util/PlacementWorker.worker.ts:19

Parameters:

Name Type
polygon Tree
degrees number

Returns: Tree


Const roundToClosestEven

roundToClosestEven(float: number, precision?: number): number

Defined in src/util/MathUtils.ts:57

Rounds the given number to the closest even number.

Parameters:

Name Type Description
float number Number to round
precision? number Precision the precision to round to

Returns: number

Rounded number, guaranteed to be even


Const roundToClosestEvenOrOdd

roundToClosestEvenOrOdd(float: number, roundToEven: boolean, precision?: number): number

Defined in src/util/MathUtils.ts:22

Rounds the given number to the closest even or odd number.

Parameters:

Name Type Description
float number Number to round
roundToEven boolean Round to even (true) or odd number (false)
precision? number Precision the precision to round to

Returns: number

Rounded number


Const roundToClosestOdd

roundToClosestOdd(float: number, precision?: number): number

Defined in src/util/MathUtils.ts:47

Rounds the given number to the closest odd number.

Parameters:

Name Type Description
float number Number to round
precision? number Precision the precision to round to

Returns: number

Rounded number, guaranteed to be odd


Const roundToDigits

roundToDigits(number: number, digits: number): string

Defined in src/util/MathUtils.ts:67

Rounds the given number to have a certain number of digits after the decimal point.

Parameters:

Name Type Description
number number Number to round
digits number Number of digits the number should have at most after the decimal point

Returns: string

The string representing the rounded number


Const roundToPrecision

roundToPrecision(number: number, precision: number): number

Defined in src/util/MathUtils.ts:11

Rounds the given number to the closest multiple of precision.

Parameters:

Name Type Description
number number Number to round
precision number Precision to round to

Returns: number

Rounded number


Const roundToPrecisionString

roundToPrecisionString(number: number, precision: number): string

Defined in src/util/MathUtils.ts:94

Rounds the given number to the specified precision, outputs a string with a correctly rounded result and at most (if necessary) the precision specified.

Parameters:

Name Type
number number
precision number

Returns: string


Const roundVector3

roundVector3(vector: ReadonlyVector3, epsilon: number): Vector3

Defined in src/util/MathUtils.ts:202

Rounds a vector by rounding every dimension value to the given epsilon

Parameters:

Name Type Default
vector ReadonlyVector3 -
epsilon number 0.001

Returns: Vector3

a new rounded vector


Const sanding

sanding(assembly: Assembly): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:140

Parameters:

Name Type
assembly Assembly

Returns: IExpression


Const signsEqual

signsEqual(numberA: number, numberB: number): boolean

Defined in src/util/MathUtils.ts:178

Checks whether two numbers have the same sign (+, -, 0).

Parameters:

Name Type Description
numberA number First number
numberB number Second number

Returns: boolean

True, if both numbers have the same sign, false, if not


Const simplify

simplify(e: IExpression, deep: boolean): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:246

Parameters:

Name Type Default
e IExpression -
deep boolean false

Returns: IExpression


Const thickness

thickness(plate: Plate): IExpression

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:139

Parameters:

Name Type
plate Plate

Returns: IExpression


Const tieBreak

tieBreak(numbersA: number[], numbersB: number[], compare: greaterThanOrEqual, epsilon: number): boolean

Defined in src/util/MathUtils.ts:236

Call compare on the first different pair of numbers in zip(numbersA, numbersB). Might call compare with undefined.

Parameters:

Name Type Default
numbersA number[] -
numbersB number[] -
compare greaterThanOrEqual greaterThanOrEqual
epsilon number 0.001

Returns: boolean


Const timestamp

timestamp(): string

Defined in src/util/unit.ts:26

Returns: string


Const toClipperCoordinates

toClipperCoordinates(polygon: Tree): JSClipperPolygon

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGnest/util/PlacementWorker.worker.ts:37

Parameters:

Name Type
polygon Tree

Returns: JSClipperPolygon


Const toNestCoordinates

toNestCoordinates(polygon: JSClipperPolygon, scale: number): Array‹object›

Defined in src/modules/kyub.core.svgObjExporter/src/export/SVGnest/util/PlacementWorker.worker.ts:39

Parameters:

Name Type
polygon JSClipperPolygon
scale number

Returns: Array‹object›


Const toShapeChange

toShapeChange(flexShape: IFlexShapeChanges, variables: IExpressionVariables): IShapeChanges

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

Parameters:

Name Type Default
flexShape IFlexShapeChanges -
variables IExpressionVariables defaultVariables

Returns: IShapeChanges


Const vectorScalarExpression

vectorScalarExpression(operator: BinaryOperator): (Anonymous function)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:121

Parameters:

Name Type
operator BinaryOperator

Returns: (Anonymous function)


Const vectorSignsEqual

vectorSignsEqual(vectorA: Vector3, vectorB: Vector3): boolean

Defined in src/util/MathUtils.ts:192

Checks whether two vectors have the same signs regarding each dimension (x, y, z)

example MathUtils.vectorSignsEqual(new Vector3(0, 1, -2), new Vector(-0, -1, 2) // false MathUtils.vectorSignsEqual(new Vector3(0, 1, -2), new Vector(-0, 1, -2) // true

Parameters:

Name Type Description
vectorA Vector3 First vector
vectorB Vector3 Second vector

Returns: boolean

True, if each dimension in both vectors has the same sign


Const vectorVectorExpression

vectorVectorExpression(operator: BinaryOperator): (Anonymous function)

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:112

Parameters:

Name Type
operator BinaryOperator

Returns: (Anonymous function)


Const weightedMean

weightedMean(array: Array‹[number, number]›, defaultValue: number): number

Defined in src/util/MathUtils.ts:399

Calculates the weighted mean on a list of [element, weight] pairs. The weights must not be negative. Eg: weightedMean([[2, 3], [1, 1]]) = (23+11)/(3+1) = 7/4

Parameters:

Name Type Default Description
array Array‹[number, number]› - a list of [element, weight] pairs
defaultValue number 0 the value to return if the given list is empty or all weights are zero

Returns: number

Object literals

Const EventType

EventType: object

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:25

equalSide

equalSide: 10 = 10

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:42

fullyContainedBase

fullyContainedBase: 1000000000 = 1000000000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:57

fullyContainedCandidate

fullyContainedCandidate: 100000000 = 100000000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:55

identical

identical: 10000000000 = 10000000000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:58

partialOverlapContained

partialOverlapContained: 100 = 100

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:43

partialOverlapSharedPoint

partialOverlapSharedPoint: 1000 = 1000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:44

partialOverlapShifted

partialOverlapShifted: 10000 = 10000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:45

pointOnPoint

pointOnPoint: 100000 = 100000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:46

pointOnSideBase

pointOnSideBase: 1000000 = 1000000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:49

pointOnSideCandidate

pointOnSideCandidate: 10000000 = 10000000

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:52

sideIntersection

sideIntersection: 1 = 1

Defined in src/util/polygon/triangulatingClipper/IntersectionEvent.ts:39


Const PlateSide

PlateSide: object

Defined in src/model/data/PhysicalObject/Plate.ts:43

Hacky workaround as typescript does not support enums extending other enums

BACK

BACK: "back" = "back" as const

Defined in src/model/data/PhysicalObject/Plate.ts:44

FRONT

FRONT: "front" = "front" as const

Defined in src/model/data/PhysicalObject/Plate.ts:45


Const PlateSides

PlateSides: object

Defined in src/model/data/PhysicalObject/Plate.ts:48

BOTH

BOTH: "both" = "both" as const

Defined in src/model/data/PhysicalObject/Plate.ts:50


Const defaultVariables

defaultVariables: object

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

kerf

kerf: number = 0

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

fit

fit(force: number): number

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

Parameters:

Name Type
force number

Returns: number

sanding

sanding(assembly: Assembly‹›): any

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

Parameters:

Name Type
assembly Assembly‹›

Returns: any

thickness

thickness(plate: Plate‹›): number

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

Parameters:

Name Type
plate Plate‹›

Returns: number


Const kerf

kerf: object

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:137

type

type: KERF = ExpressionType.KERF

Defined in src/model/visualization/Joints/Renderer/FingerRendering/Expression.ts:137


Const namedParameters

namedParameters: object

Defined in src/renderContext/animations/CubicBezierInterpolation.ts:17

ease

ease: [number, number, number, number] = [0.25, 0.1, 0.25, 1]

Defined in src/renderContext/animations/CubicBezierInterpolation.ts:18

ease-in

ease-in: [number, number, number, number] = [0.42, 0, 1, 1]

Defined in src/renderContext/animations/CubicBezierInterpolation.ts:20

ease-in-out

ease-in-out: [number, number, number, number] = [0.42, 0, 0.58, 1]

Defined in src/renderContext/animations/CubicBezierInterpolation.ts:22

ease-out

ease-out: [number, number, number, number] = [0, 0, 0.58, 1]

Defined in src/renderContext/animations/CubicBezierInterpolation.ts:24


Const subdividedLinesInstanceCache

subdividedLinesInstanceCache: object

Defined in src/model/visualization/Plates/BendRenderer.ts:54

endPoint

endPoint: Vector3‹› = new Vector3()

Defined in src/model/visualization/Plates/BendRenderer.ts:55

intersectionPointParameters

intersectionPointParameters: number[] = [] as number[]

Defined in src/model/visualization/Plates/BendRenderer.ts:56

lastPoint

lastPoint: Vector3‹› = new Vector3()

Defined in src/model/visualization/Plates/BendRenderer.ts:57

subEnd

subEnd: Vector3‹› = new Vector3()

Defined in src/model/visualization/Plates/BendRenderer.ts:58

subStart

subStart: Vector3‹› = new Vector3()

Defined in src/model/visualization/Plates/BendRenderer.ts:59

tempLine

tempLine: Line3‹› = new Line3()

Defined in src/model/visualization/Plates/BendRenderer.ts:60