@code3d/core 0.0.1-alpha.4 → 0.0.1-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -3
- package/bld/chunks/{chunk-OQLJDJIF.js → chunk-3RIMOCPP.js} +2 -2
- package/bld/chunks/{chunk-PAIFBNU4.js → chunk-KYW4AWKO.js} +2 -2
- package/bld/chunks/{chunk-J77FMYFY.js → chunk-T3RAUNSF.js} +941 -514
- package/bld/chunks/chunk-T3RAUNSF.js.map +7 -0
- package/bld/chunks/{chunk-ZMT6EFHL.js → chunk-T6COR2SG.js} +3 -3
- package/bld/library/bound-solver.d.ts +29 -5
- package/bld/library/bound-solver.d.ts.map +1 -1
- package/bld/library/index.d.ts +2 -2
- package/bld/library/index.d.ts.map +1 -1
- package/bld/library/index.js +15 -1
- package/bld/library/kernel-cache.d.ts +2 -1
- package/bld/library/kernel-cache.d.ts.map +1 -1
- package/bld/library/relation-solver.d.ts +12 -7
- package/bld/library/relation-solver.d.ts.map +1 -1
- package/bld/library/replicad.js +2 -2
- package/bld/library/runtime.d.ts +214 -78
- package/bld/library/runtime.d.ts.map +1 -1
- package/bld/library/sketch.d.ts +2 -2
- package/bld/library/sketch.d.ts.map +1 -1
- package/bld/library/topology.d.ts +2 -0
- package/bld/library/topology.d.ts.map +1 -1
- package/bld/node/index.js +17 -3
- package/bld/node/replicad.js +4 -4
- package/bld/tooling/index.d.ts +3 -3
- package/bld/tooling/index.d.ts.map +1 -1
- package/bld/tooling/index.js +16 -10
- package/package.json +1 -1
- package/src/library/bound-solver.ts +103 -73
- package/src/library/index.ts +13 -2
- package/src/library/kernel-cache.ts +8 -0
- package/src/library/relation-solver.ts +194 -110
- package/src/library/runtime.ts +1029 -436
- package/src/library/sketch.ts +3 -3
- package/src/library/topology.ts +13 -2
- package/src/tooling/index.ts +14 -7
- package/bld/chunks/chunk-J77FMYFY.js.map +0 -7
- /package/bld/chunks/{chunk-OQLJDJIF.js.map → chunk-3RIMOCPP.js.map} +0 -0
- /package/bld/chunks/{chunk-PAIFBNU4.js.map → chunk-KYW4AWKO.js.map} +0 -0
- /package/bld/chunks/{chunk-ZMT6EFHL.js.map → chunk-T6COR2SG.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sketch.d.ts","sourceRoot":"","sources":["../../src/library/sketch.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,WAAW,EAGX,KAAK,
|
|
1
|
+
{"version":3,"file":"sketch.d.ts","sourceRoot":"","sources":["../../src/library/sketch.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,6 +61,7 @@ type StableEdgeGroup = Readonly<{
|
|
|
61
61
|
start: number;
|
|
62
62
|
count: number;
|
|
63
63
|
edgeId: EdgeId;
|
|
64
|
+
linear: boolean;
|
|
64
65
|
}>;
|
|
65
66
|
type StableSurfaceGroup = Readonly<{
|
|
66
67
|
start: number;
|
|
@@ -81,6 +82,7 @@ export declare function resolveTopologySelection(kind: TopologyKind, topology: S
|
|
|
81
82
|
export declare function topologyVertexPoints(shape: AnyShape, topology: VertexTopology, vertexIds: readonly VertexId[]): readonly TopologyPointData[];
|
|
82
83
|
export declare function topologyEdgeDirections(shape: AnyShape, topology: EdgeTopology, edgeIds: readonly EdgeId[]): readonly TopologyDirectionData[];
|
|
83
84
|
export declare function topologySurfaceDirections(shape: AnyShape, topology: SurfaceTopology, surfaceIds: readonly SurfaceId[]): readonly TopologyDirectionData[];
|
|
85
|
+
export declare function assertTopologyId(kind: TopologyKind, id: TopologyId): void;
|
|
84
86
|
export type TopologyInput = Readonly<{
|
|
85
87
|
shape: AnyShape;
|
|
86
88
|
topology: ShapeTopology;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"topology.d.ts","sourceRoot":"","sources":["../../src/library/topology.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"topology.d.ts","sourceRoot":"","sources":["../../src/library/topology.ts"],"names":[],"mappings":"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"}
|
package/bld/node/index.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import "../chunks/chunk-
|
|
1
|
+
import "../chunks/chunk-T6COR2SG.js";
|
|
2
2
|
import "../chunks/chunk-TJIN6S4R.js";
|
|
3
|
-
import "../chunks/chunk-
|
|
3
|
+
import "../chunks/chunk-3RIMOCPP.js";
|
|
4
4
|
import {
|
|
5
5
|
arc,
|
|
6
|
+
axisEdge,
|
|
7
|
+
axisLine,
|
|
6
8
|
bezier,
|
|
7
9
|
box,
|
|
8
10
|
cached,
|
|
@@ -19,19 +21,26 @@ import {
|
|
|
19
21
|
intersect,
|
|
20
22
|
line,
|
|
21
23
|
loft,
|
|
24
|
+
offset,
|
|
25
|
+
pivot,
|
|
26
|
+
pivotPoint,
|
|
27
|
+
pivotVertex,
|
|
22
28
|
point,
|
|
23
29
|
rectangle,
|
|
24
30
|
regularPolygon,
|
|
25
31
|
regularPrism,
|
|
32
|
+
rotate,
|
|
26
33
|
sketch,
|
|
27
34
|
sphere,
|
|
28
35
|
spline,
|
|
29
36
|
text,
|
|
30
37
|
tube,
|
|
31
38
|
union
|
|
32
|
-
} from "../chunks/chunk-
|
|
39
|
+
} from "../chunks/chunk-T3RAUNSF.js";
|
|
33
40
|
export {
|
|
34
41
|
arc,
|
|
42
|
+
axisEdge,
|
|
43
|
+
axisLine,
|
|
35
44
|
bezier,
|
|
36
45
|
box,
|
|
37
46
|
cached,
|
|
@@ -48,10 +57,15 @@ export {
|
|
|
48
57
|
intersect,
|
|
49
58
|
line,
|
|
50
59
|
loft,
|
|
60
|
+
offset,
|
|
61
|
+
pivot,
|
|
62
|
+
pivotPoint,
|
|
63
|
+
pivotVertex,
|
|
51
64
|
point,
|
|
52
65
|
rectangle,
|
|
53
66
|
regularPolygon,
|
|
54
67
|
regularPrism,
|
|
68
|
+
rotate,
|
|
55
69
|
sketch,
|
|
56
70
|
sphere,
|
|
57
71
|
spline,
|
package/bld/node/replicad.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import "../chunks/chunk-
|
|
1
|
+
import "../chunks/chunk-T6COR2SG.js";
|
|
2
2
|
import "../chunks/chunk-TJIN6S4R.js";
|
|
3
3
|
import {
|
|
4
4
|
definePrimitive,
|
|
5
5
|
replicad
|
|
6
|
-
} from "../chunks/chunk-
|
|
7
|
-
import "../chunks/chunk-
|
|
8
|
-
import "../chunks/chunk-
|
|
6
|
+
} from "../chunks/chunk-KYW4AWKO.js";
|
|
7
|
+
import "../chunks/chunk-3RIMOCPP.js";
|
|
8
|
+
import "../chunks/chunk-T3RAUNSF.js";
|
|
9
9
|
export {
|
|
10
10
|
definePrimitive,
|
|
11
11
|
replicad
|
package/bld/tooling/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { identifyCachedFunction } from '../library/cached.js';
|
|
|
2
2
|
export { installFontEngine, installModelResourceReader, } from '../library/font.js';
|
|
3
3
|
export { googleFontSources, googleFontUrl } from '../library/google-font.js';
|
|
4
4
|
export { installOpenCascade } from '../library/open-cascade.js';
|
|
5
|
-
export { clearKernelOperationCache, kernelOperationCacheStats, setKernelArtifactStore, setKernelExternalBytes, } from '../library/kernel-cache.js';
|
|
5
|
+
export { clearKernelOperationCache, kernelOperationCacheStats, setKernelCacheBudget, setKernelArtifactStore, setKernelExternalBytes, } from '../library/kernel-cache.js';
|
|
6
6
|
export type { KernelArtifactStore } from '../library/kernel-cache.js';
|
|
7
7
|
export { SketchConstraintError, installSketchSolver, } from '../library/sketch-solver.js';
|
|
8
8
|
export { assertSketchDragConnections, isSketch, sketchDefinition, sketchDragRequiresSolver, sketchEntityParameters, sketchFrame, sketchPointResolver, sketchSource, snapshotSketch, solveSketchSnapshot, withSketchEntityParameters, } from '../library/sketch.js';
|
|
@@ -14,8 +14,8 @@ export type { SketchCurve } from '../library/sketch-curves.js';
|
|
|
14
14
|
export { sketchRegions } from '../library/sketch-regions.js';
|
|
15
15
|
export type { SketchRegion } from '../library/sketch-regions.js';
|
|
16
16
|
export { describeOpenCascadeException } from '../library/open-cascade-error.js';
|
|
17
|
-
export { authoringApi, beginModelEvaluation,
|
|
18
|
-
export type { Constraint, ConstraintAnchorSnapshot,
|
|
17
|
+
export { authoringApi, beginModelEvaluation, relationPreview, currentRelationSelf, relationSelectionPreview, relationTraceReference, createModelSnapshotter, disposeModelObjects, executeSnapshotQueryBatch, instrumentRelation, instrumentModelOperation, isConstraint, isRelationExpression, isModelObject, modelElementReference, modelObjectRuntimeInfo, modelTopologyIds, modelTopologyReference, planModelSnapshotQueries, relatedModelObjects, retainModelGeometry, } from '../library/runtime.js';
|
|
18
|
+
export type { Constraint, ConstraintAnchorSnapshot, RelationExpression, RelationPreview, ConstraintSnapshot, TransformationSnapshot, RelationStageSnapshot, RelationSpatialReference, ConstraintTraceReference, RelationTraceReference, ElementKind, ElementSnapshot, ModelElementReference, ModelGeometryKind, ModelGeometrySnapshot, ModelKind, ModelObject, ModelObjectRuntimeInfo, ModelOperationInputRole, ModelOperationInstrumentation, ModelOperationKind, ModelOperationRegionSnapshot, ModelOperationSelectionSnapshot, ModelOperationSnapshot, ModelParameterDimension, ModelSnapshotObject, ModelSpatialOperation, RotationReferenceSnapshot, ModelTopologyReference, ParameterKind, ParameterTarget, ParameterUsage, RelationObject, RenderMesh, SnapshotQuery, SnapshotQueryBatch, SnapshotQueryResult, SourceRef, Transform, } from '../library/runtime.js';
|
|
19
19
|
export { composeTransforms, identityRigidTransform, invertTransform, quaternionAxisAngle, relativeTransform, rotateVector, rotationAround, transformsAreEquivalent, xyzRotation, } from '../library/spatial.js';
|
|
20
20
|
export type { Quaternion, RigidTransform, Vec3 } from '../library/spatial.js';
|
|
21
21
|
export type { TopologyGeometry, TopologyInspection, TopologyInspectionItem, TopologyInspectionOptions, } from '../library/topology-inspection.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tooling/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,sBAAsB,EAAC,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,iBAAiB,EAAE,aAAa,EAAC,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAE9D,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAC,mBAAmB,EAAC,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EACL,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,2BAA2B,EAC3B,QAAQ,EACR,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,MAAM,EACN,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAC,wBAAwB,EAAC,MAAM,0CAA0C,CAAC;AAClF,YAAY,EAAC,uBAAuB,EAAC,MAAM,0CAA0C,CAAC;AACtF,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAC,WAAW,EAAC,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC;AAC3D,YAAY,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAE/D,OAAO,EAAC,4BAA4B,EAAC,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tooling/index.ts"],"names":[],"mappings":"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"}
|
package/bld/tooling/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
installOpenCascade
|
|
3
|
-
} from "../chunks/chunk-
|
|
3
|
+
} from "../chunks/chunk-3RIMOCPP.js";
|
|
4
4
|
import {
|
|
5
5
|
SketchConstraintError,
|
|
6
6
|
TopologyIdSet,
|
|
@@ -11,9 +11,8 @@ import {
|
|
|
11
11
|
clearKernelOperationCache,
|
|
12
12
|
compareTopologyIds,
|
|
13
13
|
composeTransforms,
|
|
14
|
-
constraintPreview,
|
|
15
|
-
constraintTraceReference,
|
|
16
14
|
createModelSnapshotter,
|
|
15
|
+
currentRelationSelf,
|
|
17
16
|
describeOpenCascadeException,
|
|
18
17
|
disposeModelObjects,
|
|
19
18
|
executeSnapshotQueryBatch,
|
|
@@ -25,12 +24,12 @@ import {
|
|
|
25
24
|
installFontEngine,
|
|
26
25
|
installModelResourceReader,
|
|
27
26
|
installSketchSolver,
|
|
28
|
-
instrumentConstraint,
|
|
29
27
|
instrumentModelOperation,
|
|
28
|
+
instrumentRelation,
|
|
30
29
|
invertTransform,
|
|
31
30
|
isConstraint,
|
|
32
|
-
isConstraintExpression,
|
|
33
31
|
isModelObject,
|
|
32
|
+
isRelationExpression,
|
|
34
33
|
isSketch,
|
|
35
34
|
isTopologyId,
|
|
36
35
|
kernelOperationCacheStats,
|
|
@@ -43,12 +42,16 @@ import {
|
|
|
43
42
|
planModelSnapshotQueries,
|
|
44
43
|
quaternionAxisAngle,
|
|
45
44
|
relatedModelObjects,
|
|
45
|
+
relationPreview,
|
|
46
|
+
relationSelectionPreview,
|
|
47
|
+
relationTraceReference,
|
|
46
48
|
relativeTransform,
|
|
47
49
|
retainModelGeometry,
|
|
48
50
|
rotateVector,
|
|
49
51
|
rotationAround,
|
|
50
52
|
sameTopologyId,
|
|
51
53
|
setKernelArtifactStore,
|
|
54
|
+
setKernelCacheBudget,
|
|
52
55
|
setKernelExternalBytes,
|
|
53
56
|
sketchArcGeometry,
|
|
54
57
|
sketchCurveBounds,
|
|
@@ -71,7 +74,7 @@ import {
|
|
|
71
74
|
transformsAreEquivalent,
|
|
72
75
|
withSketchEntityParameters,
|
|
73
76
|
xyzRotation
|
|
74
|
-
} from "../chunks/chunk-
|
|
77
|
+
} from "../chunks/chunk-T3RAUNSF.js";
|
|
75
78
|
export {
|
|
76
79
|
SketchConstraintError,
|
|
77
80
|
TopologyIdSet,
|
|
@@ -82,9 +85,8 @@ export {
|
|
|
82
85
|
clearKernelOperationCache,
|
|
83
86
|
compareTopologyIds,
|
|
84
87
|
composeTransforms,
|
|
85
|
-
constraintPreview,
|
|
86
|
-
constraintTraceReference,
|
|
87
88
|
createModelSnapshotter,
|
|
89
|
+
currentRelationSelf,
|
|
88
90
|
describeOpenCascadeException,
|
|
89
91
|
disposeModelObjects,
|
|
90
92
|
executeSnapshotQueryBatch,
|
|
@@ -97,12 +99,12 @@ export {
|
|
|
97
99
|
installModelResourceReader,
|
|
98
100
|
installOpenCascade,
|
|
99
101
|
installSketchSolver,
|
|
100
|
-
instrumentConstraint,
|
|
101
102
|
instrumentModelOperation,
|
|
103
|
+
instrumentRelation,
|
|
102
104
|
invertTransform,
|
|
103
105
|
isConstraint,
|
|
104
|
-
isConstraintExpression,
|
|
105
106
|
isModelObject,
|
|
107
|
+
isRelationExpression,
|
|
106
108
|
isSketch,
|
|
107
109
|
isTopologyId,
|
|
108
110
|
kernelOperationCacheStats,
|
|
@@ -115,12 +117,16 @@ export {
|
|
|
115
117
|
planModelSnapshotQueries,
|
|
116
118
|
quaternionAxisAngle,
|
|
117
119
|
relatedModelObjects,
|
|
120
|
+
relationPreview,
|
|
121
|
+
relationSelectionPreview,
|
|
122
|
+
relationTraceReference,
|
|
118
123
|
relativeTransform,
|
|
119
124
|
retainModelGeometry,
|
|
120
125
|
rotateVector,
|
|
121
126
|
rotationAround,
|
|
122
127
|
sameTopologyId,
|
|
123
128
|
setKernelArtifactStore,
|
|
129
|
+
setKernelCacheBudget,
|
|
124
130
|
setKernelExternalBytes,
|
|
125
131
|
sketchArcGeometry,
|
|
126
132
|
sketchCurveBounds,
|
package/package.json
CHANGED
|
@@ -7,17 +7,56 @@ import {
|
|
|
7
7
|
origin,
|
|
8
8
|
rotateVector,
|
|
9
9
|
rotation,
|
|
10
|
-
transformsAreEquivalent,
|
|
11
10
|
type Quaternion,
|
|
12
11
|
type RigidTransform,
|
|
13
12
|
type Vec3,
|
|
14
13
|
} from './spatial.js';
|
|
15
14
|
|
|
16
15
|
export type Bounds = readonly [minimum: Vec3, maximum: Vec3];
|
|
17
|
-
export type
|
|
18
|
-
| Readonly<{
|
|
19
|
-
| Readonly<{
|
|
16
|
+
export type ExternalRotation =
|
|
17
|
+
| Readonly<{axis: RigidTransform; body: number; angle: number}>
|
|
18
|
+
| Readonly<{
|
|
19
|
+
point: Vec3;
|
|
20
|
+
body: number;
|
|
21
|
+
rotation: Quaternion;
|
|
22
|
+
displacement: Vec3;
|
|
23
|
+
}>;
|
|
24
|
+
export type BodyRotation = Readonly<{local: RigidTransform}> | ExternalRotation;
|
|
20
25
|
|
|
26
|
+
/** External center relative to its owning body; point references retain self's axes. */
|
|
27
|
+
export function externalRotationFrame(
|
|
28
|
+
action: ExternalRotation,
|
|
29
|
+
self: Quaternion,
|
|
30
|
+
reference: Quaternion,
|
|
31
|
+
inverse = false,
|
|
32
|
+
): {center: Vec3; quaternion: Quaternion} {
|
|
33
|
+
if ('axis' in action) {
|
|
34
|
+
const axis = composeTransforms(rotation(reference), action.axis);
|
|
35
|
+
return {
|
|
36
|
+
center: axis.position,
|
|
37
|
+
quaternion: axisRotation(axis, inverse ? -action.angle : action.angle)
|
|
38
|
+
.quaternion,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
const local = inverse
|
|
42
|
+
? invertTransform(rotation(action.rotation))
|
|
43
|
+
: rotation(action.rotation);
|
|
44
|
+
const before = inverse
|
|
45
|
+
? composeTransforms(rotation(self), local)
|
|
46
|
+
: rotation(self);
|
|
47
|
+
return {
|
|
48
|
+
center: addVectors(
|
|
49
|
+
rotateVector(action.point, reference),
|
|
50
|
+
rotateVector(action.displacement, before.quaternion),
|
|
51
|
+
),
|
|
52
|
+
quaternion: composeTransforms(
|
|
53
|
+
composeTransforms(before, local),
|
|
54
|
+
invertTransform(before),
|
|
55
|
+
).quaternion,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export type BodyAction = BodyRotation | Readonly<{offset: Vec3}>;
|
|
21
60
|
export type BodyRelation = Readonly<{
|
|
22
61
|
id: string;
|
|
23
62
|
source: Readonly<{
|
|
@@ -26,11 +65,16 @@ export type BodyRelation = Readonly<{
|
|
|
26
65
|
bounds: (orientation: Quaternion) => Bounds;
|
|
27
66
|
}>;
|
|
28
67
|
target: Readonly<{body: number; transform: RigidTransform; facing: 1 | -1}>;
|
|
29
|
-
offset: Vec3 | undefined;
|
|
30
|
-
rotations: readonly BodyRotation[];
|
|
31
68
|
}>;
|
|
32
69
|
|
|
33
|
-
export type Body = Readonly<{
|
|
70
|
+
export type Body = Readonly<{
|
|
71
|
+
name: string;
|
|
72
|
+
relations: readonly BodyRelation[];
|
|
73
|
+
/** Pose inherited from the preceding placement segment. */
|
|
74
|
+
initial?: RigidTransform;
|
|
75
|
+
/** Independent actions apply after the joint constraint solution. */
|
|
76
|
+
transformations?: readonly BodyAction[];
|
|
77
|
+
}>;
|
|
34
78
|
type AffinePoint = {constant: Vec3; columns: Vec3[]};
|
|
35
79
|
type AffinePose = {position: AffinePoint; quaternion: Quaternion};
|
|
36
80
|
type Equation = {id: string; coefficients: number[]; value: number};
|
|
@@ -74,37 +118,21 @@ export function solveBodies(
|
|
|
74
118
|
'Cyclic external rotation axes cannot determine an authored orientation.',
|
|
75
119
|
);
|
|
76
120
|
visiting.add(index);
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
pose
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
return pose;
|
|
94
|
-
});
|
|
95
|
-
const pose = candidates[0] ?? identityRigidTransform;
|
|
96
|
-
if (
|
|
97
|
-
candidates.some(
|
|
98
|
-
candidate =>
|
|
99
|
-
!transformsAreEquivalent(
|
|
100
|
-
rotation(candidate.quaternion),
|
|
101
|
-
rotation(pose.quaternion),
|
|
102
|
-
),
|
|
103
|
-
)
|
|
104
|
-
) {
|
|
105
|
-
throw new Error(
|
|
106
|
-
`Conflicting explicit rotations for ${bodies[index].name}.`,
|
|
107
|
-
);
|
|
121
|
+
let pose = bodies[index].initial ?? identityRigidTransform;
|
|
122
|
+
for (const action of bodies[index].transformations ?? []) {
|
|
123
|
+
if ('offset' in action) continue;
|
|
124
|
+
pose =
|
|
125
|
+
'local' in action
|
|
126
|
+
? composeTransforms(pose, action.local)
|
|
127
|
+
: 'point' in action
|
|
128
|
+
? composeTransforms(pose, rotation(action.rotation))
|
|
129
|
+
: composeTransforms(
|
|
130
|
+
axisRotation(
|
|
131
|
+
composeTransforms(seed(action.body), action.axis),
|
|
132
|
+
action.angle,
|
|
133
|
+
),
|
|
134
|
+
pose,
|
|
135
|
+
);
|
|
108
136
|
}
|
|
109
137
|
visiting.delete(index);
|
|
110
138
|
seeds.set(index, pose);
|
|
@@ -120,19 +148,18 @@ export function solveBodies(
|
|
|
120
148
|
const known = positioned.get(index);
|
|
121
149
|
if (known) return known;
|
|
122
150
|
let pose: AffinePose = {
|
|
123
|
-
quaternion: identityRigidTransform.quaternion,
|
|
151
|
+
quaternion: (bodies[index].initial ?? identityRigidTransform).quaternion,
|
|
124
152
|
position: {
|
|
125
|
-
constant:
|
|
153
|
+
constant: (bodies[index].initial ?? identityRigidTransform).position,
|
|
126
154
|
columns: variables.flatMap(body =>
|
|
127
155
|
axes.map(axis => (body === index ? axis : origin)),
|
|
128
156
|
),
|
|
129
157
|
},
|
|
130
158
|
};
|
|
131
|
-
const
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
if ('local' in action) {
|
|
159
|
+
for (const action of bodies[index].transformations ?? []) {
|
|
160
|
+
if ('offset' in action) {
|
|
161
|
+
pose = {...pose, position: shiftPoint(pose.position, action.offset)};
|
|
162
|
+
} else if ('local' in action) {
|
|
136
163
|
pose = {
|
|
137
164
|
position: shiftPoint(
|
|
138
165
|
pose.position,
|
|
@@ -145,12 +172,12 @@ export function solveBodies(
|
|
|
145
172
|
};
|
|
146
173
|
} else {
|
|
147
174
|
const axisPose = positionBody(action.body);
|
|
148
|
-
const
|
|
149
|
-
|
|
150
|
-
|
|
175
|
+
const {center, quaternion: q} = externalRotationFrame(
|
|
176
|
+
action,
|
|
177
|
+
pose.quaternion,
|
|
178
|
+
axisPose.quaternion,
|
|
151
179
|
);
|
|
152
|
-
const
|
|
153
|
-
const axisPoint = shiftPoint(axisPose.position, axis.position);
|
|
180
|
+
const axisPoint = shiftPoint(axisPose.position, center);
|
|
154
181
|
const rotatedAxis = rotatePoint(axisPoint, q);
|
|
155
182
|
pose = {
|
|
156
183
|
position: addPoints(
|
|
@@ -173,16 +200,19 @@ export function solveBodies(
|
|
|
173
200
|
const preferences = new Map<string, Equation>();
|
|
174
201
|
bodies.forEach((body, owner) =>
|
|
175
202
|
body.relations.forEach(relation => {
|
|
176
|
-
//
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
203
|
+
// Every contact constrains the joint result before independent transforms.
|
|
204
|
+
const baseline = undoActions(
|
|
205
|
+
poses[owner],
|
|
206
|
+
body.transformations ?? [],
|
|
207
|
+
poses,
|
|
208
|
+
);
|
|
181
209
|
for (let axis = 0; axis < 3; axis++) {
|
|
182
210
|
const preference = {
|
|
183
211
|
id: relation.id,
|
|
184
212
|
coefficients: baseline.position.columns.map(column => column[axis]),
|
|
185
|
-
value:
|
|
213
|
+
value:
|
|
214
|
+
(body.initial?.position[axis] ?? 0) -
|
|
215
|
+
baseline.position.constant[axis],
|
|
186
216
|
};
|
|
187
217
|
preferences.set(
|
|
188
218
|
JSON.stringify([preference.coefficients, preference.value]),
|
|
@@ -212,14 +242,8 @@ export function solveBodies(
|
|
|
212
242
|
source.position,
|
|
213
243
|
rotateVector(center, targetFrame.quaternion),
|
|
214
244
|
);
|
|
215
|
-
const targetPoint = shiftPoint(
|
|
216
|
-
|
|
217
|
-
addVectors(
|
|
218
|
-
targetFrame.position,
|
|
219
|
-
rotateVector(relation.offset ?? origin, targetFrame.quaternion),
|
|
220
|
-
),
|
|
221
|
-
);
|
|
222
|
-
for (const localAxis of relation.offset ? axes : [axes[1]]) {
|
|
245
|
+
const targetPoint = shiftPoint(target.position, targetFrame.position);
|
|
246
|
+
for (const localAxis of [axes[1]]) {
|
|
223
247
|
const normal = rotateVector(localAxis, targetFrame.quaternion);
|
|
224
248
|
equations.push({
|
|
225
249
|
id: relation.id,
|
|
@@ -272,13 +296,18 @@ function addPoints(left: AffinePoint, right: AffinePoint): AffinePoint {
|
|
|
272
296
|
};
|
|
273
297
|
}
|
|
274
298
|
|
|
275
|
-
function
|
|
299
|
+
function undoActions(
|
|
276
300
|
pose: AffinePose,
|
|
277
|
-
actions: readonly
|
|
301
|
+
actions: readonly BodyAction[],
|
|
278
302
|
poses: readonly AffinePose[],
|
|
279
303
|
): AffinePose {
|
|
280
304
|
for (const action of [...actions].reverse()) {
|
|
281
|
-
if ('
|
|
305
|
+
if ('offset' in action) {
|
|
306
|
+
pose = {
|
|
307
|
+
...pose,
|
|
308
|
+
position: shiftPoint(pose.position, negateVector(action.offset)),
|
|
309
|
+
};
|
|
310
|
+
} else if ('local' in action) {
|
|
282
311
|
const inverse = invertTransform(action.local);
|
|
283
312
|
pose = {
|
|
284
313
|
position: shiftPoint(
|
|
@@ -292,12 +321,13 @@ function undoRotations(
|
|
|
292
321
|
};
|
|
293
322
|
} else {
|
|
294
323
|
const axisPose = poses[action.body];
|
|
295
|
-
const
|
|
296
|
-
|
|
297
|
-
|
|
324
|
+
const {center, quaternion: q} = externalRotationFrame(
|
|
325
|
+
action,
|
|
326
|
+
pose.quaternion,
|
|
327
|
+
axisPose.quaternion,
|
|
328
|
+
true,
|
|
298
329
|
);
|
|
299
|
-
const
|
|
300
|
-
const axisPoint = shiftPoint(axisPose.position, axis.position);
|
|
330
|
+
const axisPoint = shiftPoint(axisPose.position, center);
|
|
301
331
|
const rotatedAxis = rotatePoint(axisPoint, q);
|
|
302
332
|
pose = {
|
|
303
333
|
position: addPoints(
|
|
@@ -316,7 +346,7 @@ function undoRotations(
|
|
|
316
346
|
}
|
|
317
347
|
|
|
318
348
|
/** Solve Ax=b, then minimize contact-stage displacement in its nullspace. */
|
|
319
|
-
function solveTranslations(
|
|
349
|
+
export function solveTranslations(
|
|
320
350
|
equations: readonly Equation[],
|
|
321
351
|
preferences: readonly Equation[],
|
|
322
352
|
dimension: number,
|
package/src/library/index.ts
CHANGED
|
@@ -16,6 +16,13 @@ export type {
|
|
|
16
16
|
} from './sketch.js';
|
|
17
17
|
|
|
18
18
|
export {
|
|
19
|
+
offset,
|
|
20
|
+
rotate,
|
|
21
|
+
pivot,
|
|
22
|
+
pivotVertex,
|
|
23
|
+
pivotPoint,
|
|
24
|
+
axisEdge,
|
|
25
|
+
axisLine,
|
|
19
26
|
arc,
|
|
20
27
|
bezier,
|
|
21
28
|
box,
|
|
@@ -45,8 +52,12 @@ export type {
|
|
|
45
52
|
Anchor,
|
|
46
53
|
Bound,
|
|
47
54
|
DirectionalBounds,
|
|
48
|
-
|
|
49
|
-
|
|
55
|
+
PivotChain,
|
|
56
|
+
PivotRotation,
|
|
57
|
+
AxisRotation,
|
|
58
|
+
AxisChain,
|
|
59
|
+
Transformation,
|
|
60
|
+
Relation,
|
|
50
61
|
CanonicalElements,
|
|
51
62
|
Constraint,
|
|
52
63
|
CurveElements,
|
|
@@ -71,6 +71,12 @@ export function createComputationCache({
|
|
|
71
71
|
const pendingPersistence = new Map<string, () => Uint8Array>();
|
|
72
72
|
let externalBytes = 0;
|
|
73
73
|
|
|
74
|
+
/** Adjust historical retention without invalidating the current model. */
|
|
75
|
+
function setKernelCacheBudget(bytes: number): void {
|
|
76
|
+
maximumBytes = bytes;
|
|
77
|
+
evictHistoricalEntries();
|
|
78
|
+
}
|
|
79
|
+
|
|
74
80
|
/** The host accounts for in-flight inputs and all auxiliary native heaps. */
|
|
75
81
|
function setKernelExternalBytes(bytes: number): void {
|
|
76
82
|
externalBytes = bytes;
|
|
@@ -368,6 +374,7 @@ export function createComputationCache({
|
|
|
368
374
|
beginKernelOperationEvaluation,
|
|
369
375
|
clearKernelOperationCache,
|
|
370
376
|
kernelOperationCacheStats,
|
|
377
|
+
setKernelCacheBudget,
|
|
371
378
|
setKernelArtifactStore,
|
|
372
379
|
findKernelOperation,
|
|
373
380
|
findKernelOperations,
|
|
@@ -388,6 +395,7 @@ export const {
|
|
|
388
395
|
beginKernelOperationEvaluation,
|
|
389
396
|
clearKernelOperationCache,
|
|
390
397
|
kernelOperationCacheStats,
|
|
398
|
+
setKernelCacheBudget,
|
|
391
399
|
setKernelArtifactStore,
|
|
392
400
|
findKernelOperation,
|
|
393
401
|
findKernelOperations,
|