cyclecad 2.0.1 → 2.1.0
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/IMPLEMENTATION_GUIDE.md +502 -0
- package/INTEGRATION-GUIDE.md +377 -0
- package/MODULES_PHASES_6_7.md +780 -0
- package/app/index.html +106 -2
- package/app/js/brep-kernel.js +1353 -455
- package/app/js/help-module.js +1437 -0
- package/app/js/kernel.js +364 -40
- package/app/js/modules/animation-module.js +967 -0
- package/app/js/modules/assembly-module.js +47 -3
- package/app/js/modules/cam-module.js +1067 -0
- package/app/js/modules/collaboration-module.js +1102 -0
- package/app/js/modules/data-module.js +1656 -0
- package/app/js/modules/drawing-module.js +54 -8
- package/app/js/modules/formats-module.js +1173 -0
- package/app/js/modules/inspection-module.js +937 -0
- package/app/js/modules/mesh-module.js +968 -0
- package/app/js/modules/operations-module.js +40 -7
- package/app/js/modules/plugin-module.js +957 -0
- package/app/js/modules/rendering-module.js +1306 -0
- package/app/js/modules/scripting-module.js +955 -0
- package/app/js/modules/simulation-module.js +60 -3
- package/app/js/modules/sketch-module.js +1032 -90
- package/app/js/modules/step-module.js +47 -6
- package/app/js/modules/surface-module.js +728 -0
- package/app/js/modules/version-module.js +1410 -0
- package/app/js/modules/viewport-module.js +95 -8
- package/app/test-agent-v2.html +881 -1316
- package/docs/ARCHITECTURE.html +838 -1408
- package/docs/DEVELOPER-GUIDE.md +1504 -0
- package/docs/TUTORIAL.md +740 -0
- package/package.json +1 -1
- package/.github/scripts/cad-diff.js +0 -590
- package/.github/workflows/cad-diff.yml +0 -117
|
@@ -1,7 +1,51 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* @file assembly-module.js
|
|
3
|
+
* @description AssemblyModule — Multi-body Assembly Management
|
|
4
|
+
* Manages component placement, joint definitions, constraints, motion studies,
|
|
5
|
+
* assembly explosions, and bill of materials generation. Supports 7 joint types
|
|
6
|
+
* with configurable limits and real-time animation.
|
|
7
|
+
*
|
|
8
|
+
* @version 1.0.0
|
|
9
|
+
* @author cycleCAD Team
|
|
10
|
+
* @license MIT
|
|
11
|
+
* @see {@link https://github.com/vvlars-cmd/cyclecad}
|
|
12
|
+
*
|
|
13
|
+
* @module assembly-module
|
|
14
|
+
* @requires viewport (3D scene + camera + controls)
|
|
15
|
+
* @requires operations (for component geometry)
|
|
16
|
+
*
|
|
17
|
+
* Features:
|
|
18
|
+
* - Component insertion and management
|
|
19
|
+
* - 7 joint types: Rigid, Revolute, Slider, Cylindrical, Pin-Slot, Planar, Ball
|
|
20
|
+
* - Joint limits (min/max values) with automatic clamping
|
|
21
|
+
* - Real-time joint animation with easing
|
|
22
|
+
* - Interference detection (BBox-based)
|
|
23
|
+
* - Exploded view generation with configurable distance
|
|
24
|
+
* - Bill of Materials (BOM) generation with quantity aggregation
|
|
25
|
+
* - Component patterns (linear and circular arrays)
|
|
26
|
+
* - Motion studies (animate joint through range with configurable steps)
|
|
27
|
+
* - Assembly validation and statistics
|
|
28
|
+
*
|
|
29
|
+
* Joint Types & DOF:
|
|
30
|
+
* - RIGID: 0 DOF (fixed position/orientation)
|
|
31
|
+
* - REVOLUTE: 1 DOF (rotation around axis)
|
|
32
|
+
* - SLIDER: 1 DOF (translation along axis)
|
|
33
|
+
* - CYLINDRICAL: 2 DOF (rotation + translation on axis)
|
|
34
|
+
* - PIN_SLOT: 2 DOF (rotation + perpendicular translation)
|
|
35
|
+
* - PLANAR: 3 DOF (2D translation in plane + rotation around normal)
|
|
36
|
+
* - BALL: 3 DOF (free rotation around origin point)
|
|
37
|
+
*
|
|
38
|
+
* Component Structure:
|
|
39
|
+
* Component = {
|
|
40
|
+
* id, partId, name, position, rotation, visible,
|
|
41
|
+
* group (THREE.Group), matrix
|
|
42
|
+
* }
|
|
43
|
+
*
|
|
44
|
+
* Motion Study:
|
|
45
|
+
* - Animates a single joint through range
|
|
46
|
+
* - Generates N steps from start to end value
|
|
47
|
+
* - Smooth easing for natural motion
|
|
48
|
+
* - Can play forward/backward
|
|
5
49
|
*/
|
|
6
50
|
|
|
7
51
|
const AssemblyModule = {
|