abstract-3d 2.7.29 → 2.7.32
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/CHANGELOG.md +4 -0
- package/lib/abstract-3d.d.ts +1 -1
- package/lib/abstract-3d.d.ts.map +1 -1
- package/lib/abstract-3d.js +20 -12
- package/lib/abstract-3d.js.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-3dface.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-dimension.d.ts +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-dimension.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-dimension.js +3 -3
- package/lib/renderers/dxf/dxf-encoding/dxf-dimension.js.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-footer.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-header.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-header.js.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-lwpolyline.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-lwpolyline.js.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-mtext.js.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-solid.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-encoding/dxf-triangle.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-geometries/dxf-image.d.ts +1 -1
- package/lib/renderers/dxf/dxf-geometries/dxf-image.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf-geometries/dxf-image.js +1 -1
- package/lib/renderers/dxf/dxf-geometries/dxf-image.js.map +1 -1
- package/lib/renderers/dxf/dxf-geometries/dxf-polygon.js.map +1 -1
- package/lib/renderers/dxf/dxf-geometries/dxf-shape.js.map +1 -1
- package/lib/renderers/dxf/dxf.d.ts.map +1 -1
- package/lib/renderers/dxf/dxf.js +9 -5
- package/lib/renderers/dxf/dxf.js.map +1 -1
- package/lib/renderers/react/react-camera.d.ts +2 -2
- package/lib/renderers/react/react-camera.d.ts.map +1 -1
- package/lib/renderers/react/react-camera.js +3 -5
- package/lib/renderers/react/react-camera.js.map +1 -1
- package/lib/renderers/react/react-dimension.d.ts +2 -2
- package/lib/renderers/react/react-dimension.d.ts.map +1 -1
- package/lib/renderers/react/react-dimension.js +3 -3
- package/lib/renderers/react/react-dimension.js.map +1 -1
- package/lib/renderers/react/react-group.d.ts +4 -4
- package/lib/renderers/react/react-group.d.ts.map +1 -1
- package/lib/renderers/react/react-group.js.map +1 -1
- package/lib/renderers/react/react-hotspot.d.ts +2 -2
- package/lib/renderers/react/react-hotspot.d.ts.map +1 -1
- package/lib/renderers/react/react-hotspot.js +1 -1
- package/lib/renderers/react/react-hotspot.js.map +1 -1
- package/lib/renderers/react/react-image-material.d.ts +2 -2
- package/lib/renderers/react/react-image-material.d.ts.map +1 -1
- package/lib/renderers/react/react-image-material.js +1 -0
- package/lib/renderers/react/react-image-material.js.map +1 -1
- package/lib/renderers/react/react-material.d.ts +1 -1
- package/lib/renderers/react/react-material.d.ts.map +1 -1
- package/lib/renderers/react/react-material.js +1 -0
- package/lib/renderers/react/react-material.js.map +1 -1
- package/lib/renderers/react/react-mesh.d.ts +1 -1
- package/lib/renderers/react/react-mesh.d.ts.map +1 -1
- package/lib/renderers/react/react-mesh.js +4 -12
- package/lib/renderers/react/react-mesh.js.map +1 -1
- package/lib/renderers/react/react-scene.d.ts +5 -5
- package/lib/renderers/react/react-scene.d.ts.map +1 -1
- package/lib/renderers/react/react-scene.js +1 -0
- package/lib/renderers/react/react-scene.js.map +1 -1
- package/lib/renderers/react/react-types.d.ts +1 -1
- package/lib/renderers/react/react-types.d.ts.map +1 -1
- package/lib/renderers/react/react.d.ts +5 -5
- package/lib/renderers/react/react.d.ts.map +1 -1
- package/lib/renderers/react/react.js +1 -1
- package/lib/renderers/react/react.js.map +1 -1
- package/lib/renderers/step/step-encoding.d.ts +1 -1
- package/lib/renderers/step/step-encoding.d.ts.map +1 -1
- package/lib/renderers/step/step-encoding.js.map +1 -1
- package/lib/renderers/step/step-geometries/step-box.d.ts +2 -2
- package/lib/renderers/step/step-geometries/step-box.d.ts.map +1 -1
- package/lib/renderers/step/step-geometries/step-box.js.map +1 -1
- package/lib/renderers/step/step-geometries/step-cone.d.ts +2 -2
- package/lib/renderers/step/step-geometries/step-cone.d.ts.map +1 -1
- package/lib/renderers/step/step-geometries/step-cone.js +0 -1
- package/lib/renderers/step/step-geometries/step-cone.js.map +1 -1
- package/lib/renderers/step/step-geometries/step-cylinder.d.ts +2 -2
- package/lib/renderers/step/step-geometries/step-cylinder.d.ts.map +1 -1
- package/lib/renderers/step/step-geometries/step-cylinder.js +8 -23
- package/lib/renderers/step/step-geometries/step-cylinder.js.map +1 -1
- package/lib/renderers/step/step-geometries/step-plane.d.ts +2 -2
- package/lib/renderers/step/step-geometries/step-plane.d.ts.map +1 -1
- package/lib/renderers/step/step-geometries/step-plane.js +1 -1
- package/lib/renderers/step/step-geometries/step-plane.js.map +1 -1
- package/lib/renderers/step/step.d.ts +1 -1
- package/lib/renderers/step/step.d.ts.map +1 -1
- package/lib/renderers/step/step.js +1 -1
- package/lib/renderers/step/step.js.map +1 -1
- package/lib/renderers/stl/stl-encoding.d.ts +1 -1
- package/lib/renderers/stl/stl-encoding.d.ts.map +1 -1
- package/lib/renderers/stl/stl-encoding.js.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-box.d.ts +1 -1
- package/lib/renderers/stl/stl-geometries/stl-box.d.ts.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-box.js.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cone.d.ts +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cone.d.ts.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cone.js.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cylinder.d.ts +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cylinder.d.ts.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cylinder.js +1 -1
- package/lib/renderers/stl/stl-geometries/stl-cylinder.js.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-plane.d.ts +1 -1
- package/lib/renderers/stl/stl-geometries/stl-plane.d.ts.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-plane.js +1 -1
- package/lib/renderers/stl/stl-geometries/stl-plane.js.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-polygon.d.ts +1 -1
- package/lib/renderers/stl/stl-geometries/stl-polygon.d.ts.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-polygon.js.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-shape.d.ts +1 -1
- package/lib/renderers/stl/stl-geometries/stl-shape.d.ts.map +1 -1
- package/lib/renderers/stl/stl-geometries/stl-shape.js.map +1 -1
- package/lib/renderers/stl/stl.d.ts +1 -1
- package/lib/renderers/stl/stl.d.ts.map +1 -1
- package/lib/renderers/stl/stl.js.map +1 -1
- package/lib/renderers/svg/index.js +1 -0
- package/lib/renderers/svg/index.js.map +1 -1
- package/lib/renderers/svg/svg-encoding.d.ts +3 -3
- package/lib/renderers/svg/svg-encoding.d.ts.map +1 -1
- package/lib/renderers/svg/svg-encoding.js +6 -15
- package/lib/renderers/svg/svg-encoding.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/shared.d.ts +1 -1
- package/lib/renderers/svg/svg-geometries/shared.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/shared.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-box.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-box.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-box.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-box.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-cone.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-cone.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-cone.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-cone.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-cylinder.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-cylinder.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-cylinder.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-cylinder.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-image.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-image.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-image.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-image.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-line.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-line.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-line.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-plane.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-plane.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-plane.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-plane.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-polygon.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-polygon.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-polygon.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-polygon.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-shape.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-shape.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-shape.js +1 -1
- package/lib/renderers/svg/svg-geometries/svg-shape.js.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-text.d.ts +2 -2
- package/lib/renderers/svg/svg-geometries/svg-text.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-text.js.map +1 -1
- package/lib/renderers/svg/svg.d.ts +3 -3
- package/lib/renderers/svg/svg.d.ts.map +1 -1
- package/lib/renderers/svg/svg.js.map +1 -1
- package/lib/utils.d.ts +1 -1
- package/lib/utils.d.ts.map +1 -1
- package/lib/utils.js +0 -1
- package/lib/utils.js.map +1 -1
- package/package.json +3 -3
- package/src/abstract-3d.ts +91 -91
- package/src/custom_typings/react-three-fiber.d.ts +1 -1
- package/src/renderers/dxf/dxf-encoding/dxf-dimension.ts +57 -13
- package/src/renderers/dxf/dxf-encoding/dxf-lwpolyline.ts +1 -1
- package/src/renderers/dxf/dxf-geometries/dxf-image.ts +9 -9
- package/src/renderers/dxf/dxf.ts +67 -16
- package/src/renderers/react/react-camera.tsx +3 -4
- package/src/renderers/react/react-dimension.tsx +5 -5
- package/src/renderers/react/react-group.tsx +6 -4
- package/src/renderers/react/react-hotspot.tsx +3 -2
- package/src/renderers/react/react-image-material.tsx +3 -2
- package/src/renderers/react/react-material.tsx +1 -1
- package/src/renderers/react/react-mesh.tsx +28 -39
- package/src/renderers/react/react-scene.tsx +6 -5
- package/src/renderers/react/react-types.ts +1 -1
- package/src/renderers/react/react.tsx +7 -6
- package/src/renderers/step/step-encoding.ts +43 -44
- package/src/renderers/step/step-geometries/step-box.ts +3 -8
- package/src/renderers/step/step-geometries/step-cone.ts +3 -14
- package/src/renderers/step/step-geometries/step-cylinder.ts +49 -251
- package/src/renderers/step/step-geometries/step-plane.ts +4 -11
- package/src/renderers/step/step.ts +3 -19
- package/src/renderers/stl/stl-encoding.ts +2 -1
- package/src/renderers/stl/stl-geometries/stl-box.ts +2 -1
- package/src/renderers/stl/stl-geometries/stl-cone.ts +2 -1
- package/src/renderers/stl/stl-geometries/stl-cylinder.ts +3 -2
- package/src/renderers/stl/stl-geometries/stl-plane.ts +2 -10
- package/src/renderers/stl/stl-geometries/stl-polygon.ts +2 -1
- package/src/renderers/stl/stl-geometries/stl-shape.ts +2 -1
- package/src/renderers/stl/stl.ts +2 -1
- package/src/renderers/svg/svg-encoding.ts +7 -31
- package/src/renderers/svg/svg-geometries/shared.ts +2 -1
- package/src/renderers/svg/svg-geometries/svg-box.ts +4 -13
- package/src/renderers/svg/svg-geometries/svg-cone.ts +4 -13
- package/src/renderers/svg/svg-geometries/svg-cylinder.ts +4 -13
- package/src/renderers/svg/svg-geometries/svg-image.ts +6 -12
- package/src/renderers/svg/svg-geometries/svg-line.ts +4 -2
- package/src/renderers/svg/svg-geometries/svg-plane.ts +4 -14
- package/src/renderers/svg/svg-geometries/svg-polygon.ts +4 -11
- package/src/renderers/svg/svg-geometries/svg-shape.ts +4 -12
- package/src/renderers/svg/svg-geometries/svg-text.ts +6 -8
- package/src/renderers/svg/svg.ts +13 -17
- package/src/utils.ts +22 -27
- package/src/.DS_Store +0 -0
- package/src/renderers/.DS_Store +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Vec2, Vec3 } from "../../abstract-3d.js";
|
|
1
|
+
import type { Vec2, Vec3 } from "../../abstract-3d.js";
|
|
2
2
|
|
|
3
|
-
export type MutableStep = { refs: Map<string, number>; step: string; geoContext3d: number
|
|
3
|
+
export type MutableStep = { refs: Map<string, number>; step: string; geoContext3d: number };
|
|
4
4
|
|
|
5
5
|
export const STEP_NUMBER_EPSILON: number = 1e-5;
|
|
6
6
|
|
|
@@ -19,17 +19,17 @@ const mutate = (step: string, m: MutableStep): number => {
|
|
|
19
19
|
|
|
20
20
|
const stepNumber = (num: number): number => {
|
|
21
21
|
const absNum = Math.abs(num);
|
|
22
|
-
if(absNum < STEP_NUMBER_EPSILON) {
|
|
22
|
+
if (absNum < STEP_NUMBER_EPSILON) {
|
|
23
23
|
return 0.0;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
const roundNum = Math.round(num);
|
|
27
|
-
if(Math.abs(absNum - Math.abs(roundNum)) < STEP_NUMBER_EPSILON) {
|
|
27
|
+
if (Math.abs(absNum - Math.abs(roundNum)) < STEP_NUMBER_EPSILON) {
|
|
28
28
|
return roundNum;
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
return num;
|
|
32
|
-
}
|
|
32
|
+
};
|
|
33
33
|
|
|
34
34
|
export const HEADER = (date: string): string =>
|
|
35
35
|
`ISO-10303-21;
|
|
@@ -114,8 +114,12 @@ export const PCURVE = (
|
|
|
114
114
|
export const CYLINDRICAL_SURFACE = (AXIS2_PLACEMENT_3D: number, radius: number, m: MutableStep): number =>
|
|
115
115
|
mutate(`CYLINDRICAL_SURFACE('',#${AXIS2_PLACEMENT_3D},${stepNumber(radius)})`, m);
|
|
116
116
|
|
|
117
|
-
export const CONICAL_SURFACE = (
|
|
118
|
-
|
|
117
|
+
export const CONICAL_SURFACE = (
|
|
118
|
+
AXIS2_PLACEMENT_3D: number,
|
|
119
|
+
radius: number,
|
|
120
|
+
semiAngle: number,
|
|
121
|
+
m: MutableStep
|
|
122
|
+
): number => mutate(`CONICAL_SURFACE('',#${AXIS2_PLACEMENT_3D},${stepNumber(radius)},${stepNumber(semiAngle)})`, m);
|
|
119
123
|
|
|
120
124
|
export const DEFINITIONAL_REPRESENTATION = (LINEorCircle: number, m: MutableStep): number =>
|
|
121
125
|
mutate(`DEFINITIONAL_REPRESENTATION('',(#${LINEorCircle}),#7)`, m);
|
|
@@ -126,16 +130,21 @@ export const SHELL_BASED_SURFACE_MODEL = (OPEN_SHELL: number, m: MutableStep): n
|
|
|
126
130
|
export const MANIFOLD_SURFACE_SHAPE_REPRESENTATION = (
|
|
127
131
|
AXIS2_PLACEMENT_3D: number,
|
|
128
132
|
CLOSED_SHELL: number,
|
|
129
|
-
GEOMETRY_CONTEXT: number,
|
|
133
|
+
GEOMETRY_CONTEXT: number,
|
|
130
134
|
m: MutableStep
|
|
131
|
-
): number =>
|
|
135
|
+
): number =>
|
|
136
|
+
mutate(`MANIFOLD_SURFACE_SHAPE_REPRESENTATION('',(#${AXIS2_PLACEMENT_3D},#${CLOSED_SHELL}),#${GEOMETRY_CONTEXT})`, m);
|
|
132
137
|
|
|
133
138
|
export const ADVANCED_BREP_SHAPE_REPRESENTATION = (
|
|
134
139
|
AXIS2_PLACEMENT_3D: number,
|
|
135
140
|
MANIFOLD_SOLID_BREP: number,
|
|
136
141
|
GEOMETRY_CONTEXT: number,
|
|
137
142
|
m: MutableStep
|
|
138
|
-
): number =>
|
|
143
|
+
): number =>
|
|
144
|
+
mutate(
|
|
145
|
+
`ADVANCED_BREP_SHAPE_REPRESENTATION('',(#${AXIS2_PLACEMENT_3D},#${MANIFOLD_SOLID_BREP}),#${GEOMETRY_CONTEXT})`,
|
|
146
|
+
m
|
|
147
|
+
);
|
|
139
148
|
|
|
140
149
|
export const CLOSED_SHELL = (ADVANCED_FACE: ReadonlyArray<number>, m: MutableStep): number =>
|
|
141
150
|
mutate(`CLOSED_SHELL('',(${ADVANCED_FACE.map((af) => `#${af}`).join(",")}))`, m);
|
|
@@ -153,7 +162,11 @@ export const AXIS2_PLACEMENT_3D = (
|
|
|
153
162
|
m: MutableStep
|
|
154
163
|
): number => mutate(`AXIS2_PLACEMENT_3D('',#${CARTESIAN_POINT},#${DIRECTION_NORMAL},#${DIRECTION_PLANE_DIRECITON})`, m);
|
|
155
164
|
|
|
156
|
-
export const MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION = (
|
|
165
|
+
export const MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION = (
|
|
166
|
+
STYLED_ITEM: number,
|
|
167
|
+
GEOMETRY_CONTEXT: number,
|
|
168
|
+
m: MutableStep
|
|
169
|
+
): number =>
|
|
157
170
|
mutate(`MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION('',(#${STYLED_ITEM}),#${GEOMETRY_CONTEXT})`, m);
|
|
158
171
|
|
|
159
172
|
export const STYLED_ITEM = (
|
|
@@ -231,51 +244,37 @@ export const UNCERTAINTY_MEASURE_WITH_UNIT = (LENGTH_UNIT: number, m: MutableSte
|
|
|
231
244
|
);
|
|
232
245
|
|
|
233
246
|
export const APPLICATION_PROTOCOL_DEFINITION = (APPLICATION_CONTEXT: number, m: MutableStep): number =>
|
|
234
|
-
mutate(
|
|
247
|
+
mutate(
|
|
248
|
+
`APPLICATION_PROTOCOL_DEFINITION('international standard','automotive_design',2000,#${APPLICATION_CONTEXT})`,
|
|
249
|
+
m
|
|
250
|
+
);
|
|
235
251
|
|
|
236
252
|
export const APPLICATION_CONTEXT = (m: MutableStep): number =>
|
|
237
253
|
mutate(`APPLICATION_CONTEXT('core data for automotive mechanical design processes')`, m);
|
|
238
254
|
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
);
|
|
255
|
+
export const SHAPE_DEFINITION_REPRESENTATION = (
|
|
256
|
+
productDefinitionShape: number,
|
|
257
|
+
manifoldSurfaceShapeRepr: number,
|
|
258
|
+
m: MutableStep
|
|
259
|
+
): number => mutate(`SHAPE_DEFINITION_REPRESENTATION(#${productDefinitionShape},#${manifoldSurfaceShapeRepr})`, m);
|
|
245
260
|
|
|
246
261
|
export const PRODUCT_DEFINITION_SHAPE = (productDefinition: number, m: MutableStep): number =>
|
|
247
|
-
mutate(
|
|
248
|
-
`PRODUCT_DEFINITION_SHAPE('','',#${productDefinition})`,
|
|
249
|
-
m
|
|
250
|
-
)
|
|
262
|
+
mutate(`PRODUCT_DEFINITION_SHAPE('','',#${productDefinition})`, m);
|
|
251
263
|
|
|
252
|
-
export const PRODUCT_DEFINITION = (
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
264
|
+
export const PRODUCT_DEFINITION = (
|
|
265
|
+
productDefinitionFormation: number,
|
|
266
|
+
productDefinitionContext: number,
|
|
267
|
+
m: MutableStep
|
|
268
|
+
): number => mutate(`PRODUCT_DEFINITION('design',#${productDefinitionFormation},#${productDefinitionContext})`, m);
|
|
257
269
|
|
|
258
270
|
export const PRODUCT_DEFINITION_FORMATION = (product: number, m: MutableStep): number =>
|
|
259
|
-
mutate(
|
|
260
|
-
`PRODUCT_DEFINITION_FORMATION('','',#${product})`,
|
|
261
|
-
m
|
|
262
|
-
)
|
|
271
|
+
mutate(`PRODUCT_DEFINITION_FORMATION('','',#${product})`, m);
|
|
263
272
|
|
|
264
273
|
export const PRODUCT = (productContext: number, name: string, m: MutableStep): number =>
|
|
265
|
-
mutate(
|
|
266
|
-
`PRODUCT('${name}','${name}','',(#${productContext}))`,
|
|
267
|
-
m
|
|
268
|
-
)
|
|
274
|
+
mutate(`PRODUCT('${name}','${name}','',(#${productContext}))`, m);
|
|
269
275
|
|
|
270
276
|
export const PRODUCT_CONTEXT = (applicationContext: number, m: MutableStep): number =>
|
|
271
|
-
mutate(
|
|
272
|
-
`PRODUCT_CONTEXT('',#${applicationContext},'mechanical')`,
|
|
273
|
-
m
|
|
274
|
-
)
|
|
277
|
+
mutate(`PRODUCT_CONTEXT('',#${applicationContext},'mechanical')`, m);
|
|
275
278
|
|
|
276
279
|
export const PRODUCT_DEFINITION_CONTEXT = (applicationContext: number, m: MutableStep): number =>
|
|
277
|
-
mutate(
|
|
278
|
-
`PRODUCT_DEFINITION_CONTEXT('part definition',#${applicationContext},'design')`,
|
|
279
|
-
m
|
|
280
|
-
)
|
|
281
|
-
|
|
280
|
+
mutate(`PRODUCT_DEFINITION_CONTEXT('part definition',#${applicationContext},'design')`, m);
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
+
import type { Box, Material, Vec3 } from "../../../abstract-3d.js";
|
|
1
2
|
import {
|
|
2
|
-
Box,
|
|
3
|
-
Material,
|
|
4
|
-
Vec3,
|
|
5
3
|
vec3Scale,
|
|
6
4
|
vec3TransRot,
|
|
7
5
|
vec3RotCombine,
|
|
@@ -11,14 +9,13 @@ import {
|
|
|
11
9
|
vec3Sub,
|
|
12
10
|
vec3Add,
|
|
13
11
|
vec3Rot,
|
|
14
|
-
vec3Length,
|
|
15
12
|
} from "../../../abstract-3d.js";
|
|
16
13
|
import { parseRgb } from "../../../utils.js";
|
|
14
|
+
import type { MutableStep } from "../step-encoding.js";
|
|
17
15
|
import {
|
|
18
16
|
ADVANCED_BREP_SHAPE_REPRESENTATION,
|
|
19
17
|
ADVANCED_FACE,
|
|
20
18
|
APPLICATION_CONTEXT,
|
|
21
|
-
APPLICATION_PROTOCOL_DEFINITION,
|
|
22
19
|
AXIS2_PLACEMENT_3D,
|
|
23
20
|
CARTESIAN_POINT,
|
|
24
21
|
CLOSED_SHELL,
|
|
@@ -34,7 +31,6 @@ import {
|
|
|
34
31
|
LINE,
|
|
35
32
|
MANIFOLD_SOLID_BREP,
|
|
36
33
|
MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION,
|
|
37
|
-
MutableStep,
|
|
38
34
|
ORIENTED_EDGE,
|
|
39
35
|
PLANE,
|
|
40
36
|
PRESENTATION_STYLE_ASSIGNMENT,
|
|
@@ -45,7 +41,6 @@ import {
|
|
|
45
41
|
PRODUCT_DEFINITION_FORMATION,
|
|
46
42
|
PRODUCT_DEFINITION_SHAPE,
|
|
47
43
|
SHAPE_DEFINITION_REPRESENTATION,
|
|
48
|
-
STEP_NUMBER_EPSILON,
|
|
49
44
|
STYLED_ITEM,
|
|
50
45
|
SURFACE_SIDE_STYLE,
|
|
51
46
|
SURFACE_STYLE_FILL_AREA,
|
|
@@ -62,7 +57,7 @@ export function stepBox(b: Box, mat: Material, parentPos: Vec3, parentRot: Vec3,
|
|
|
62
57
|
const color = parseRgb(mat.normal);
|
|
63
58
|
const rotate = (v: Vec3): Vec3 => vec3Rot(v, vec3Zero, rotation);
|
|
64
59
|
|
|
65
|
-
if(size.x === 0.0 || size.y === 0.0 || size.z === 0.0) {
|
|
60
|
+
if (size.x === 0.0 || size.y === 0.0 || size.z === 0.0) {
|
|
66
61
|
return;
|
|
67
62
|
}
|
|
68
63
|
|
|
@@ -1,18 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
Vec3,
|
|
4
|
-
vec3,
|
|
5
|
-
Cone,
|
|
6
|
-
Cylinder,
|
|
7
|
-
} from "../../../abstract-3d.js";
|
|
8
|
-
import {
|
|
9
|
-
MutableStep,
|
|
10
|
-
} from "../step-encoding.js";
|
|
11
|
-
import { stepBox } from "./step-box.js";
|
|
1
|
+
import type { Material, Vec3, Cone, Cylinder } from "../../../abstract-3d.js";
|
|
2
|
+
import type { MutableStep } from "../step-encoding.js";
|
|
12
3
|
import { stepCylinder } from "./step-cylinder.js";
|
|
13
4
|
|
|
14
|
-
const PLANE_THICKNESS = 1e-4;
|
|
15
|
-
|
|
16
5
|
export function stepCone(c: Cone, mat: Material, parentPos: Vec3, parentRot: Vec3, m: MutableStep): void {
|
|
17
6
|
//convert it into a box
|
|
18
7
|
const cylinder: Cylinder = {
|
|
@@ -23,4 +12,4 @@ export function stepCone(c: Cone, mat: Material, parentPos: Vec3, parentRot: Vec
|
|
|
23
12
|
radius: c.radius,
|
|
24
13
|
};
|
|
25
14
|
stepCylinder(cylinder, mat, parentPos, parentRot, m, 0.0);
|
|
26
|
-
}
|
|
15
|
+
}
|
|
@@ -1,15 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
Vec3,
|
|
4
|
-
vec3TransRot,
|
|
5
|
-
vec3RotCombine,
|
|
6
|
-
vec3Zero,
|
|
7
|
-
vec3,
|
|
8
|
-
Cylinder,
|
|
9
|
-
vec3Add,
|
|
10
|
-
vec3Rot,
|
|
11
|
-
} from "../../../abstract-3d.js";
|
|
1
|
+
import type { Material, Vec3, Cylinder } from "../../../abstract-3d.js";
|
|
2
|
+
import { vec3TransRot, vec3RotCombine, vec3Zero, vec3, vec3Add, vec3Rot } from "../../../abstract-3d.js";
|
|
12
3
|
import { parseRgb } from "../../../utils.js";
|
|
4
|
+
import type { MutableStep } from "../step-encoding.js";
|
|
13
5
|
import {
|
|
14
6
|
ADVANCED_BREP_SHAPE_REPRESENTATION,
|
|
15
7
|
ADVANCED_FACE,
|
|
@@ -32,7 +24,6 @@ import {
|
|
|
32
24
|
LINE,
|
|
33
25
|
MANIFOLD_SOLID_BREP,
|
|
34
26
|
MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION,
|
|
35
|
-
MutableStep,
|
|
36
27
|
ORIENTED_EDGE,
|
|
37
28
|
PLANE,
|
|
38
29
|
PRESENTATION_STYLE_ASSIGNMENT,
|
|
@@ -69,53 +60,29 @@ export function stepCylinder(
|
|
|
69
60
|
}
|
|
70
61
|
|
|
71
62
|
const bottomRadius = Math.max(c.radius, SMALLEST_RADIUS);
|
|
72
|
-
const requestedTopRadius = Math.max(
|
|
73
|
-
rSmall ?? c.radius,
|
|
74
|
-
SMALLEST_RADIUS
|
|
75
|
-
);
|
|
63
|
+
const requestedTopRadius = Math.max(rSmall ?? c.radius, SMALLEST_RADIUS);
|
|
76
64
|
|
|
77
|
-
const radiusTolerance =
|
|
78
|
-
GEOMETRY_EPSILON *
|
|
79
|
-
Math.max(1, bottomRadius, requestedTopRadius);
|
|
65
|
+
const radiusTolerance = GEOMETRY_EPSILON * Math.max(1, bottomRadius, requestedTopRadius);
|
|
80
66
|
|
|
81
|
-
const isCylinder =
|
|
82
|
-
Math.abs(requestedTopRadius - bottomRadius) <= radiusTolerance;
|
|
67
|
+
const isCylinder = Math.abs(requestedTopRadius - bottomRadius) <= radiusTolerance;
|
|
83
68
|
|
|
84
|
-
const topRadius = isCylinder
|
|
85
|
-
? bottomRadius
|
|
86
|
-
: requestedTopRadius;
|
|
69
|
+
const topRadius = isCylinder ? bottomRadius : requestedTopRadius;
|
|
87
70
|
|
|
88
71
|
const pos = vec3TransRot(c.pos, parentPos, parentRot);
|
|
89
|
-
const rotation = vec3RotCombine(
|
|
90
|
-
parentRot,
|
|
91
|
-
c.rot ?? vec3Zero
|
|
92
|
-
);
|
|
72
|
+
const rotation = vec3RotCombine(parentRot, c.rot ?? vec3Zero);
|
|
93
73
|
|
|
94
|
-
const rot = (v: Vec3): Vec3 =>
|
|
95
|
-
vec3Rot(v, vec3Zero, rotation);
|
|
74
|
+
const rot = (v: Vec3): Vec3 => vec3Rot(v, vec3Zero, rotation);
|
|
96
75
|
|
|
97
76
|
const axis = rot(vec3(0, 1, 0));
|
|
98
77
|
const radial = rot(vec3(1, 0, 0));
|
|
99
78
|
|
|
100
|
-
const bottomCenter = vec3Add(
|
|
101
|
-
pos,
|
|
102
|
-
rot(vec3(0, -h / 2, 0))
|
|
103
|
-
);
|
|
79
|
+
const bottomCenter = vec3Add(pos, rot(vec3(0, -h / 2, 0)));
|
|
104
80
|
|
|
105
|
-
const topCenter = vec3Add(
|
|
106
|
-
pos,
|
|
107
|
-
rot(vec3(0, h / 2, 0))
|
|
108
|
-
);
|
|
81
|
+
const topCenter = vec3Add(pos, rot(vec3(0, h / 2, 0)));
|
|
109
82
|
|
|
110
|
-
const bottomSeamPoint = vec3Add(
|
|
111
|
-
pos,
|
|
112
|
-
rot(vec3(bottomRadius, -h / 2, 0))
|
|
113
|
-
);
|
|
83
|
+
const bottomSeamPoint = vec3Add(pos, rot(vec3(bottomRadius, -h / 2, 0)));
|
|
114
84
|
|
|
115
|
-
const topSeamPoint = vec3Add(
|
|
116
|
-
pos,
|
|
117
|
-
rot(vec3(topRadius, h / 2, 0))
|
|
118
|
-
);
|
|
85
|
+
const topSeamPoint = vec3Add(pos, rot(vec3(topRadius, h / 2, 0)));
|
|
119
86
|
|
|
120
87
|
const seamDelta = vec3(
|
|
121
88
|
topSeamPoint.x - bottomSeamPoint.x,
|
|
@@ -123,154 +90,63 @@ export function stepCylinder(
|
|
|
123
90
|
topSeamPoint.z - bottomSeamPoint.z
|
|
124
91
|
);
|
|
125
92
|
|
|
126
|
-
const seamLength = Math.hypot(
|
|
127
|
-
seamDelta.x,
|
|
128
|
-
seamDelta.y,
|
|
129
|
-
seamDelta.z
|
|
130
|
-
);
|
|
93
|
+
const seamLength = Math.hypot(seamDelta.x, seamDelta.y, seamDelta.z);
|
|
131
94
|
|
|
132
95
|
if (seamLength <= GEOMETRY_EPSILON) {
|
|
133
96
|
return;
|
|
134
97
|
}
|
|
135
98
|
|
|
136
|
-
const seamDirection = vec3(
|
|
137
|
-
seamDelta.x / seamLength,
|
|
138
|
-
seamDelta.y / seamLength,
|
|
139
|
-
seamDelta.z / seamLength
|
|
140
|
-
);
|
|
99
|
+
const seamDirection = vec3(seamDelta.x / seamLength, seamDelta.y / seamLength, seamDelta.z / seamLength);
|
|
141
100
|
|
|
142
101
|
const applicationContext = APPLICATION_CONTEXT(m);
|
|
143
|
-
APPLICATION_PROTOCOL_DEFINITION(
|
|
144
|
-
applicationContext,
|
|
145
|
-
m
|
|
146
|
-
);
|
|
102
|
+
APPLICATION_PROTOCOL_DEFINITION(applicationContext, m);
|
|
147
103
|
|
|
148
104
|
const axisDirection = DIRECTION(axis, m);
|
|
149
105
|
const radialDirection = DIRECTION(radial, m);
|
|
150
106
|
|
|
151
|
-
const bottomCenterPoint = CARTESIAN_POINT(
|
|
152
|
-
bottomCenter,
|
|
153
|
-
m
|
|
154
|
-
);
|
|
107
|
+
const bottomCenterPoint = CARTESIAN_POINT(bottomCenter, m);
|
|
155
108
|
|
|
156
|
-
const topCenterPoint = CARTESIAN_POINT(
|
|
157
|
-
topCenter,
|
|
158
|
-
m
|
|
159
|
-
);
|
|
109
|
+
const topCenterPoint = CARTESIAN_POINT(topCenter, m);
|
|
160
110
|
|
|
161
|
-
const bottomSeamCartesianPoint = CARTESIAN_POINT(
|
|
162
|
-
bottomSeamPoint,
|
|
163
|
-
m
|
|
164
|
-
);
|
|
111
|
+
const bottomSeamCartesianPoint = CARTESIAN_POINT(bottomSeamPoint, m);
|
|
165
112
|
|
|
166
|
-
const topSeamCartesianPoint = CARTESIAN_POINT(
|
|
167
|
-
topSeamPoint,
|
|
168
|
-
m
|
|
169
|
-
);
|
|
113
|
+
const topSeamCartesianPoint = CARTESIAN_POINT(topSeamPoint, m);
|
|
170
114
|
|
|
171
|
-
const bottomVertex = VERTEX_POINT(
|
|
172
|
-
bottomSeamCartesianPoint,
|
|
173
|
-
m
|
|
174
|
-
);
|
|
115
|
+
const bottomVertex = VERTEX_POINT(bottomSeamCartesianPoint, m);
|
|
175
116
|
|
|
176
|
-
const topVertex = VERTEX_POINT(
|
|
177
|
-
topSeamCartesianPoint,
|
|
178
|
-
m
|
|
179
|
-
);
|
|
117
|
+
const topVertex = VERTEX_POINT(topSeamCartesianPoint, m);
|
|
180
118
|
|
|
181
|
-
const bottomPlacement = AXIS2_PLACEMENT_3D(
|
|
182
|
-
bottomCenterPoint,
|
|
183
|
-
axisDirection,
|
|
184
|
-
radialDirection,
|
|
185
|
-
m
|
|
186
|
-
);
|
|
119
|
+
const bottomPlacement = AXIS2_PLACEMENT_3D(bottomCenterPoint, axisDirection, radialDirection, m);
|
|
187
120
|
|
|
188
|
-
const topPlacement = AXIS2_PLACEMENT_3D(
|
|
189
|
-
topCenterPoint,
|
|
190
|
-
axisDirection,
|
|
191
|
-
radialDirection,
|
|
192
|
-
m
|
|
193
|
-
);
|
|
121
|
+
const topPlacement = AXIS2_PLACEMENT_3D(topCenterPoint, axisDirection, radialDirection, m);
|
|
194
122
|
|
|
195
123
|
const seamEdge = EDGE_CURVE(
|
|
196
124
|
bottomVertex,
|
|
197
125
|
topVertex,
|
|
198
|
-
LINE(
|
|
199
|
-
bottomSeamCartesianPoint,
|
|
200
|
-
VECTOR(
|
|
201
|
-
DIRECTION(seamDirection, m),
|
|
202
|
-
m
|
|
203
|
-
),
|
|
204
|
-
m
|
|
205
|
-
),
|
|
126
|
+
LINE(bottomSeamCartesianPoint, VECTOR(DIRECTION(seamDirection, m), m), m),
|
|
206
127
|
m,
|
|
207
128
|
"T"
|
|
208
129
|
);
|
|
209
130
|
|
|
210
|
-
const bottomCircleEdge = EDGE_CURVE(
|
|
211
|
-
bottomVertex,
|
|
212
|
-
bottomVertex,
|
|
213
|
-
CIRCLE(
|
|
214
|
-
bottomPlacement,
|
|
215
|
-
bottomRadius,
|
|
216
|
-
m
|
|
217
|
-
),
|
|
218
|
-
m,
|
|
219
|
-
"T"
|
|
220
|
-
);
|
|
131
|
+
const bottomCircleEdge = EDGE_CURVE(bottomVertex, bottomVertex, CIRCLE(bottomPlacement, bottomRadius, m), m, "T");
|
|
221
132
|
|
|
222
|
-
const topCircleEdge = EDGE_CURVE(
|
|
223
|
-
topVertex,
|
|
224
|
-
topVertex,
|
|
225
|
-
CIRCLE(
|
|
226
|
-
topPlacement,
|
|
227
|
-
topRadius,
|
|
228
|
-
m
|
|
229
|
-
),
|
|
230
|
-
m,
|
|
231
|
-
"T"
|
|
232
|
-
);
|
|
133
|
+
const topCircleEdge = EDGE_CURVE(topVertex, topVertex, CIRCLE(topPlacement, topRadius, m), m, "T");
|
|
233
134
|
|
|
234
|
-
const growsTowardTop =
|
|
235
|
-
topRadius >= bottomRadius;
|
|
135
|
+
const growsTowardTop = topRadius >= bottomRadius;
|
|
236
136
|
|
|
237
|
-
const coneAxis = growsTowardTop
|
|
238
|
-
? axis
|
|
239
|
-
: vec3(-axis.x, -axis.y, -axis.z);
|
|
137
|
+
const coneAxis = growsTowardTop ? axis : vec3(-axis.x, -axis.y, -axis.z);
|
|
240
138
|
|
|
241
|
-
const coneLocation = growsTowardTop
|
|
242
|
-
? bottomCenterPoint
|
|
243
|
-
: topCenterPoint;
|
|
139
|
+
const coneLocation = growsTowardTop ? bottomCenterPoint : topCenterPoint;
|
|
244
140
|
|
|
245
|
-
const coneStartRadius = Math.min(
|
|
246
|
-
bottomRadius,
|
|
247
|
-
topRadius
|
|
248
|
-
);
|
|
141
|
+
const coneStartRadius = Math.min(bottomRadius, topRadius);
|
|
249
142
|
|
|
250
|
-
const semiAngle = Math.atan2(
|
|
251
|
-
Math.abs(topRadius - bottomRadius),
|
|
252
|
-
h
|
|
253
|
-
);
|
|
143
|
+
const semiAngle = Math.atan2(Math.abs(topRadius - bottomRadius), h);
|
|
254
144
|
|
|
255
|
-
const conePlacement = AXIS2_PLACEMENT_3D(
|
|
256
|
-
coneLocation,
|
|
257
|
-
DIRECTION(coneAxis, m),
|
|
258
|
-
radialDirection,
|
|
259
|
-
m
|
|
260
|
-
);
|
|
145
|
+
const conePlacement = AXIS2_PLACEMENT_3D(coneLocation, DIRECTION(coneAxis, m), radialDirection, m);
|
|
261
146
|
|
|
262
147
|
const sideSurface = isCylinder
|
|
263
|
-
? CYLINDRICAL_SURFACE(
|
|
264
|
-
|
|
265
|
-
bottomRadius,
|
|
266
|
-
m
|
|
267
|
-
)
|
|
268
|
-
: CONICAL_SURFACE(
|
|
269
|
-
conePlacement,
|
|
270
|
-
coneStartRadius,
|
|
271
|
-
semiAngle,
|
|
272
|
-
m
|
|
273
|
-
);
|
|
148
|
+
? CYLINDRICAL_SURFACE(bottomPlacement, bottomRadius, m)
|
|
149
|
+
: CONICAL_SURFACE(conePlacement, coneStartRadius, semiAngle, m);
|
|
274
150
|
|
|
275
151
|
const sideFace = ADVANCED_FACE(
|
|
276
152
|
FACE_BOUND(
|
|
@@ -292,124 +168,46 @@ export function stepCylinder(
|
|
|
292
168
|
);
|
|
293
169
|
|
|
294
170
|
const bottomFace = ADVANCED_FACE(
|
|
295
|
-
FACE_BOUND(
|
|
296
|
-
EDGE_LOOP(
|
|
297
|
-
[
|
|
298
|
-
ORIENTED_EDGE(
|
|
299
|
-
bottomCircleEdge,
|
|
300
|
-
m,
|
|
301
|
-
"F"
|
|
302
|
-
),
|
|
303
|
-
],
|
|
304
|
-
m
|
|
305
|
-
),
|
|
306
|
-
"T",
|
|
307
|
-
m
|
|
308
|
-
),
|
|
171
|
+
FACE_BOUND(EDGE_LOOP([ORIENTED_EDGE(bottomCircleEdge, m, "F")], m), "T", m),
|
|
309
172
|
PLANE(bottomPlacement, m),
|
|
310
173
|
m,
|
|
311
174
|
"F"
|
|
312
175
|
);
|
|
313
176
|
|
|
314
177
|
const topFace = ADVANCED_FACE(
|
|
315
|
-
FACE_BOUND(
|
|
316
|
-
EDGE_LOOP(
|
|
317
|
-
[
|
|
318
|
-
ORIENTED_EDGE(
|
|
319
|
-
topCircleEdge,
|
|
320
|
-
m,
|
|
321
|
-
"F"
|
|
322
|
-
),
|
|
323
|
-
],
|
|
324
|
-
m
|
|
325
|
-
),
|
|
326
|
-
"F",
|
|
327
|
-
m
|
|
328
|
-
),
|
|
178
|
+
FACE_BOUND(EDGE_LOOP([ORIENTED_EDGE(topCircleEdge, m, "F")], m), "F", m),
|
|
329
179
|
PLANE(topPlacement, m),
|
|
330
180
|
m,
|
|
331
181
|
"T"
|
|
332
182
|
);
|
|
333
183
|
|
|
334
|
-
const msb = MANIFOLD_SOLID_BREP(
|
|
335
|
-
CLOSED_SHELL(
|
|
336
|
-
[
|
|
337
|
-
sideFace,
|
|
338
|
-
bottomFace,
|
|
339
|
-
topFace,
|
|
340
|
-
],
|
|
341
|
-
m
|
|
342
|
-
),
|
|
343
|
-
m
|
|
344
|
-
);
|
|
345
|
-
|
|
346
|
-
const absp =
|
|
347
|
-
ADVANCED_BREP_SHAPE_REPRESENTATION(
|
|
348
|
-
AXIS2_PLACEMENT_3D(
|
|
349
|
-
CARTESIAN_POINT(vec3Zero, m),
|
|
350
|
-
DIRECTION(vec3(0, 0, 1), m),
|
|
351
|
-
DIRECTION(vec3(1, 0, 0), m),
|
|
352
|
-
m
|
|
353
|
-
),
|
|
354
|
-
msb,
|
|
355
|
-
m.geoContext3d,
|
|
356
|
-
m
|
|
357
|
-
);
|
|
184
|
+
const msb = MANIFOLD_SOLID_BREP(CLOSED_SHELL([sideFace, bottomFace, topFace], m), m);
|
|
358
185
|
|
|
359
|
-
const
|
|
360
|
-
|
|
361
|
-
|
|
186
|
+
const absp = ADVANCED_BREP_SHAPE_REPRESENTATION(
|
|
187
|
+
AXIS2_PLACEMENT_3D(CARTESIAN_POINT(vec3Zero, m), DIRECTION(vec3(0, 0, 1), m), DIRECTION(vec3(1, 0, 0), m), m),
|
|
188
|
+
msb,
|
|
189
|
+
m.geoContext3d,
|
|
362
190
|
m
|
|
363
191
|
);
|
|
364
192
|
|
|
193
|
+
const prod = PRODUCT(PRODUCT_CONTEXT(applicationContext, m), isCylinder ? "Cylinder" : "Cone", m);
|
|
194
|
+
|
|
365
195
|
SHAPE_DEFINITION_REPRESENTATION(
|
|
366
196
|
PRODUCT_DEFINITION_SHAPE(
|
|
367
|
-
PRODUCT_DEFINITION(
|
|
368
|
-
PRODUCT_DEFINITION_FORMATION(
|
|
369
|
-
prod,
|
|
370
|
-
m
|
|
371
|
-
),
|
|
372
|
-
PRODUCT_DEFINITION_CONTEXT(
|
|
373
|
-
applicationContext,
|
|
374
|
-
m
|
|
375
|
-
),
|
|
376
|
-
m
|
|
377
|
-
),
|
|
197
|
+
PRODUCT_DEFINITION(PRODUCT_DEFINITION_FORMATION(prod, m), PRODUCT_DEFINITION_CONTEXT(applicationContext, m), m),
|
|
378
198
|
m
|
|
379
199
|
),
|
|
380
200
|
absp,
|
|
381
201
|
m
|
|
382
202
|
);
|
|
383
203
|
|
|
384
|
-
const color = COLOUR_RGB(
|
|
385
|
-
parseRgb(mat.normal),
|
|
386
|
-
m
|
|
387
|
-
);
|
|
204
|
+
const color = COLOUR_RGB(parseRgb(mat.normal), m);
|
|
388
205
|
|
|
389
206
|
MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION(
|
|
390
207
|
STYLED_ITEM(
|
|
391
208
|
PRESENTATION_STYLE_ASSIGNMENT(
|
|
392
|
-
SURFACE_STYLE_USAGE(
|
|
393
|
-
|
|
394
|
-
SURFACE_STYLE_FILL_AREA(
|
|
395
|
-
FILL_AREA_STYLE_COLOUR(
|
|
396
|
-
color,
|
|
397
|
-
m
|
|
398
|
-
),
|
|
399
|
-
m
|
|
400
|
-
),
|
|
401
|
-
m
|
|
402
|
-
),
|
|
403
|
-
m
|
|
404
|
-
),
|
|
405
|
-
CURVE_STYLE(
|
|
406
|
-
DRAUGHTING_PRE_DEFINED_CURVE_FONT(
|
|
407
|
-
"continuous",
|
|
408
|
-
m
|
|
409
|
-
),
|
|
410
|
-
color,
|
|
411
|
-
m
|
|
412
|
-
),
|
|
209
|
+
SURFACE_STYLE_USAGE(SURFACE_SIDE_STYLE(SURFACE_STYLE_FILL_AREA(FILL_AREA_STYLE_COLOUR(color, m), m), m), m),
|
|
210
|
+
CURVE_STYLE(DRAUGHTING_PRE_DEFINED_CURVE_FONT("continuous", m), color, m),
|
|
413
211
|
m
|
|
414
212
|
),
|
|
415
213
|
msb,
|
|
@@ -418,4 +216,4 @@ export function stepCylinder(
|
|
|
418
216
|
m.geoContext3d,
|
|
419
217
|
m
|
|
420
218
|
);
|
|
421
|
-
}
|
|
219
|
+
}
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
Vec3,
|
|
5
|
-
vec3,
|
|
6
|
-
Box,
|
|
7
|
-
} from "../../../abstract-3d.js";
|
|
8
|
-
import {
|
|
9
|
-
MutableStep,
|
|
10
|
-
} from "../step-encoding.js";
|
|
1
|
+
import type { Plane, Material, Vec3, Box } from "../../../abstract-3d.js";
|
|
2
|
+
import { vec3 } from "../../../abstract-3d.js";
|
|
3
|
+
import type { MutableStep } from "../step-encoding.js";
|
|
11
4
|
import { stepBox } from "./step-box.js";
|
|
12
5
|
|
|
13
6
|
const PLANE_THICKNESS = 1e-4;
|
|
@@ -22,4 +15,4 @@ export function stepPlane(p: Plane, mat: Material, parentPos: Vec3, parentRot: V
|
|
|
22
15
|
size: vec3(p.size.x, p.size.y, PLANE_THICKNESS),
|
|
23
16
|
};
|
|
24
17
|
stepBox(box, mat, parentPos, parentRot, m);
|
|
25
|
-
}
|
|
18
|
+
}
|
|
@@ -1,23 +1,7 @@
|
|
|
1
|
+
import type { Scene, Group, Vec3 } from "../../abstract-3d.js";
|
|
2
|
+
import { vec3Zero, vec3TransRot, vec3RotCombine } from "../../abstract-3d.js";
|
|
3
|
+
import type { MutableStep } from "./step-encoding.js";
|
|
1
4
|
import {
|
|
2
|
-
Scene,
|
|
3
|
-
vec3Zero,
|
|
4
|
-
Group,
|
|
5
|
-
Vec3,
|
|
6
|
-
vec3TransRot,
|
|
7
|
-
vec3RotCombine,
|
|
8
|
-
Cylinder,
|
|
9
|
-
Material,
|
|
10
|
-
Plane,
|
|
11
|
-
Box,
|
|
12
|
-
Vec2,
|
|
13
|
-
vec3,
|
|
14
|
-
vec3Scale,
|
|
15
|
-
vec3Add,
|
|
16
|
-
vec3Sub,
|
|
17
|
-
vec3Rot,
|
|
18
|
-
} from "../../abstract-3d.js";
|
|
19
|
-
import {
|
|
20
|
-
MutableStep,
|
|
21
5
|
GEOMETRIC_REPRESENTATION_CONTEXT_3D,
|
|
22
6
|
LENGTH_UNIT,
|
|
23
7
|
NAMED_UNIT,
|