editor › Globals › CombineOperation
Class: CombineOperation
This class describes how two SVG plates are combined with each other. originMesh and destinationMesh are the Meshes of the plates. Configuration contains information about the point where the plates are connected (center of the joints) and the rotation between the plates at the joint. Type is the type of joint connection (FingerJoint, CrossJoint or TeeJoint).
Hierarchy
- CombineOperation
Index
Constructors
Properties
- coalignmentResult
- configuration
- destinationMeshes
- match
- originMeshes
- referenceDestinationMeshIndex
- referenceOriginMeshIndex
- rotation
- score
- translation
Methods
- assemble
- getCombinedProbability
- getDestinationAssembly
- getOriginAssembly
- getReferenceDestinationMesh
- getReferenceOriginMesh
- isSameAfterCoalignmentAs
- isSensible
- markConnectedJoints
- unmarkConnectedJoints
- virtualizeMeshes
Constructors
constructor
+ new CombineOperation(match: JointMatch, originMeshes: IAssemblingSvgSurface[], referenceOriginMeshIndex: number, destinationMeshes: IAssemblingSvgSurface[], referenceDestinationMeshIndex: number, configuration: IMatchConfiguration): CombineOperation
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:33
Parameters:
| Name | Type |
|---|---|
match |
JointMatch |
originMeshes |
IAssemblingSvgSurface[] |
referenceOriginMeshIndex |
number |
destinationMeshes |
IAssemblingSvgSurface[] |
referenceDestinationMeshIndex |
number |
configuration |
IMatchConfiguration |
Returns: CombineOperation
Properties
coalignmentResult
• coalignmentResult: ICoalignmentResult
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:28
configuration
• configuration: IMatchConfiguration
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:26
destinationMeshes
• destinationMeshes: IAssemblingSvgSurface[]
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:24
match
• match: JointMatch
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:21
originMeshes
• originMeshes: IAssemblingSvgSurface[]
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:22
referenceDestinationMeshIndex
• referenceDestinationMeshIndex: number
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:25
referenceOriginMeshIndex
• referenceOriginMeshIndex: number
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:23
Optional rotation
• rotation? : Quaternion
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:31
Private score
• score: number = null
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:33
Optional translation
• translation? : Vector3
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:32
Methods
assemble
▸ assemble(): void
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:142
Returns: void
getCombinedProbability
▸ getCombinedProbability(): number
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:86
Return the match probability based on the similarity of all combined joints
Returns: number
getDestinationAssembly
▸ getDestinationAssembly(): Assembly
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:68
Returns: Assembly
getOriginAssembly
▸ getOriginAssembly(): Assembly
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:72
Returns: Assembly
getReferenceDestinationMesh
▸ getReferenceDestinationMesh(): IAssemblingSvgSurface
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:64
Returns the destination mesh that holds match.otherJoint
and where the cached rotation / translation of this operation should be applied.
Returns: IAssemblingSvgSurface
getReferenceOriginMesh
▸ getReferenceOriginMesh(): IAssemblingSvgSurface
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:56
Returns the origin mesh that holds match.thisJoint.
Returns: IAssemblingSvgSurface
isSameAfterCoalignmentAs
▸ isSameAfterCoalignmentAs(other: CombineOperation): boolean
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:132
Given that "this" and "other" have coalignment results, check whether they are actually the same thing. (which means, that, once applied, the result of both would look the same) Expects the coalignmentResult.matches to be in a deterministic order.
Parameters:
| Name | Type |
|---|---|
other |
CombineOperation |
Returns: boolean
isSensible
▸ isSensible(): boolean
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:79
Returns if the configuration makes sense, i.e. plates will not be stuck inside each other.
Returns: boolean
markConnectedJoints
▸ markConnectedJoints(): void
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:107
Returns: void
unmarkConnectedJoints
▸ unmarkConnectedJoints(): void
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:118
Returns: void
virtualizeMeshes
▸ virtualizeMeshes(): void
Defined in src/modules/kyub.core.plateImport/src/types/CombineOperation.ts:91
Returns: void