cyclecad 2.0.0 → 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.
Files changed (33) hide show
  1. package/IMPLEMENTATION_GUIDE.md +502 -0
  2. package/INTEGRATION-GUIDE.md +377 -0
  3. package/MODULES_PHASES_6_7.md +780 -0
  4. package/app/index.html +106 -2
  5. package/app/js/brep-kernel.js +1353 -455
  6. package/app/js/help-module.js +1437 -0
  7. package/app/js/kernel.js +364 -40
  8. package/app/js/modules/animation-module.js +967 -0
  9. package/app/js/modules/assembly-module.js +47 -3
  10. package/app/js/modules/cam-module.js +1067 -0
  11. package/app/js/modules/collaboration-module.js +1102 -0
  12. package/app/js/modules/data-module.js +1656 -0
  13. package/app/js/modules/drawing-module.js +54 -8
  14. package/app/js/modules/formats-module.js +1173 -0
  15. package/app/js/modules/inspection-module.js +937 -0
  16. package/app/js/modules/mesh-module.js +968 -0
  17. package/app/js/modules/operations-module.js +40 -7
  18. package/app/js/modules/plugin-module.js +957 -0
  19. package/app/js/modules/rendering-module.js +1306 -0
  20. package/app/js/modules/scripting-module.js +955 -0
  21. package/app/js/modules/simulation-module.js +60 -3
  22. package/app/js/modules/sketch-module.js +1032 -90
  23. package/app/js/modules/step-module.js +47 -6
  24. package/app/js/modules/surface-module.js +728 -0
  25. package/app/js/modules/version-module.js +1410 -0
  26. package/app/js/modules/viewport-module.js +95 -8
  27. package/app/test-agent-v2.html +881 -1316
  28. package/docs/ARCHITECTURE.html +838 -1408
  29. package/docs/DEVELOPER-GUIDE.md +1504 -0
  30. package/docs/TUTORIAL.md +740 -0
  31. package/package.json +1 -1
  32. package/.github/scripts/cad-diff.js +0 -590
  33. package/.github/workflows/cad-diff.yml +0 -117
@@ -1,7 +1,64 @@
1
1
  /**
2
- * Simulation Module for cycleCAD
3
- * FEA-based analysis: Static Stress, Thermal, Modal, Buckling
4
- * Version 1.0.0
2
+ * @file simulation-module.js
3
+ * @description SimulationModule FEA (Finite Element Analysis) Simulator
4
+ * Provides static structural, thermal, modal (vibration), and buckling analysis
5
+ * with automated meshing, loading, constraints, and visualization.
6
+ *
7
+ * @version 1.0.0
8
+ * @author cycleCAD Team
9
+ * @license MIT
10
+ * @see {@link https://github.com/vvlars-cmd/cyclecad}
11
+ *
12
+ * @module simulation-module
13
+ * @requires viewport (3D scene + camera)
14
+ * @requires operations (geometry data)
15
+ *
16
+ * Analysis Types:
17
+ * - STATIC: Linear static structural analysis (stress, displacement, safety factor)
18
+ * - THERMAL: Steady-state heat transfer analysis
19
+ * - MODAL: Eigenvalue analysis for natural frequencies and mode shapes
20
+ * - BUCKLING: Buckling analysis (instability under load)
21
+ *
22
+ * Load Types (6):
23
+ * - FORCE: Point or distributed force (N)
24
+ * - MOMENT: Torque or moment (N·mm)
25
+ * - PRESSURE: Surface pressure (N/mm²)
26
+ * - GRAVITY: Gravitational acceleration (g)
27
+ * - TEMPERATURE: Thermal load (°C)
28
+ * - REMOTE_FORCE: Force at distance (moment arm)
29
+ *
30
+ * Boundary Conditions (5):
31
+ * - FIXED: Fully constrained (no DOF)
32
+ * - PIN: Point support (XY translation free)
33
+ * - ROLLER: Unidirectional constraint
34
+ * - SYMMETRY: Symmetric boundary condition
35
+ * - PRESCRIBED_DISPLACEMENT: Applied displacement
36
+ *
37
+ * Materials Library (6):
38
+ * - Steel (1045): E=205 GPa, ν=0.3, ρ=7.85 g/cm³, σ_y=380 MPa
39
+ * - Aluminum (6061-T6): E=69 GPa, ν=0.33, ρ=2.7 g/cm³, σ_y=275 MPa
40
+ * - ABS Plastic: E=2.3 GPa, ν=0.36, ρ=1.04 g/cm³, σ_y=40 MPa
41
+ * - Brass (C360): E=110 GPa, ν=0.34, ρ=8.53 g/cm³, σ_y=380 MPa
42
+ * - Titanium (Ti-6Al-4V): E=110 GPa, ν=0.31, ρ=4.42 g/cm³, σ_y=1160 MPa
43
+ * - Nylon 6: E=2.8 GPa, ν=0.4, ρ=1.14 g/cm³, σ_y=75 MPa
44
+ *
45
+ * Workflow:
46
+ * 1. User selects analysis type (static, thermal, modal, buckling)
47
+ * 2. User selects material from library
48
+ * 3. User applies loads (forces, moments, pressure, etc.)
49
+ * 4. User applies boundary conditions (fixed, pin, symmetry, etc.)
50
+ * 5. User generates mesh (tetrahedral, configurable element size)
51
+ * 6. User runs solver
52
+ * 7. Results visualized as color map (stress, displacement, temperature, etc.)
53
+ * 8. User probes results or exports report
54
+ *
55
+ * Results:
56
+ * - Von Mises stress distribution
57
+ * - Nodal displacement field
58
+ * - Safety factor (yield / stress)
59
+ * - Temperature distribution (thermal analysis)
60
+ * - Natural frequencies (modal analysis)
61
+ * - Buckling loads (buckling analysis)
5
62
  */
6
63
 
7
64
  const SimulationModule = {