Add geometry sandbox test files
This commit is contained in:
@@ -18,15 +18,15 @@ A semi-automated tool that takes a plate with holes, generates an optimally ligh
|
|||||||
|
|
||||||
After extensive brainstorming, the following decisions are locked:
|
After extensive brainstorming, the following decisions are locked:
|
||||||
|
|
||||||
| Decision | Choice | Rationale |
|
| Decision | Choice | Rationale |
|
||||||
|---|---|---|
|
| ------------------- | ------------------------------------------------------- | ------------------------------------------------------------------------- |
|
||||||
| Geometry generation | External Python (Constrained Delaunay) | Full access to scipy/triangle/gmsh, debuggable, fast |
|
| Geometry generation | External Python (Constrained Delaunay) | Full access to scipy/triangle/gmsh, debuggable, fast |
|
||||||
| FEA strategy | Reserved-region monolithic remesh | Keep load/BC topology stable while allowing local rib updates |
|
| FEA strategy | Reserved-region monolithic remesh | Keep load/BC topology stable while allowing local rib updates |
|
||||||
| FEA solver | NX Simcenter + Nastran (2D shell) | Existing expertise, handles complex BCs, extensible to modal/buckling |
|
| FEA solver | NX Simcenter + Nastran (2D shell) | Existing expertise, handles complex BCs, extensible to modal/buckling |
|
||||||
| NX role | Extract sandbox faces, reimport profile, remesh + solve | Reserved regions preserve associations; no assembly merge pipeline needed |
|
| NX role | Extract sandbox faces, reimport profile, remesh + solve | Reserved regions preserve associations; no assembly merge pipeline needed |
|
||||||
| Optimization | Atomizer (Optuna TPE), pure parametric v1 | One FEA per trial, ~2 min/iteration, stress feedback deferred to v2 |
|
| Optimization | Atomizer (Optuna TPE), pure parametric v1 | One FEA per trial, ~2 min/iteration, stress feedback deferred to v2 |
|
||||||
| Geometry transfer | JSON-only round trip | Deterministic, scriptable, no DXF/STEP conversion drift |
|
| Geometry transfer | JSON-only round trip | Deterministic, scriptable, no DXF/STEP conversion drift |
|
||||||
| Plate type | Flat, 200–600 mm scale, 6–15 mm thick, 16–30 holes | Shell elements appropriate, fast solves |
|
| Plate type | Flat, 200–600 mm scale, 6–15 mm thick, 16–30 holes | Shell elements appropriate, fast solves |
|
||||||
|
|
||||||
### System Diagram
|
### System Diagram
|
||||||
|
|
||||||
|
|||||||
795
tools/adaptive-isogrid/tests/geometry_sandbox_1.json
Normal file
795
tools/adaptive-isogrid/tests/geometry_sandbox_1.json
Normal file
@@ -0,0 +1,795 @@
|
|||||||
|
{
|
||||||
|
"schema_version": "2.0",
|
||||||
|
"units": "mm",
|
||||||
|
"sandbox_id": "sandbox_1",
|
||||||
|
"outer_boundary": [
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
381.787159,
|
||||||
|
14.92177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
132.687159,
|
||||||
|
14.92177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
132.687159,
|
||||||
|
14.92177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
132.687159,
|
||||||
|
-13.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
132.687159,
|
||||||
|
-13.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
88.687159,
|
||||||
|
-13.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
88.687159,
|
||||||
|
-13.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
88.687159,
|
||||||
|
14.92177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
88.687159,
|
||||||
|
14.92177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-13.412841,
|
||||||
|
14.92177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
-13.412841,
|
||||||
|
14.92177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-13.412841,
|
||||||
|
0.02177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
-13.412841,
|
||||||
|
0.02177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-30.812841,
|
||||||
|
0.02177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
-30.812841,
|
||||||
|
0.02177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-30.812841,
|
||||||
|
-254.17823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
-30.812841,
|
||||||
|
-254.17823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
169.435852,
|
||||||
|
-254.17823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
169.435852,
|
||||||
|
-254.17823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
169.435852,
|
||||||
|
-417.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
169.435852,
|
||||||
|
-417.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
197.121675,
|
||||||
|
-417.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
197.121675,
|
||||||
|
-417.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
197.121675,
|
||||||
|
-401.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
197.121675,
|
||||||
|
-401.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
212.121675,
|
||||||
|
-401.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
212.121675,
|
||||||
|
-401.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
212.121675,
|
||||||
|
-417.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
212.121675,
|
||||||
|
-417.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
289.687159,
|
||||||
|
-417.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
289.687159,
|
||||||
|
-417.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
304.687159,
|
||||||
|
-406.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
304.687159,
|
||||||
|
-406.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
317.687159,
|
||||||
|
-406.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
317.687159,
|
||||||
|
-406.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
332.687159,
|
||||||
|
-417.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
332.687159,
|
||||||
|
-417.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
381.787159,
|
||||||
|
-417.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
381.787159,
|
||||||
|
-417.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
381.787159,
|
||||||
|
-395.17823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
381.787159,
|
||||||
|
-395.17823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
404.187159,
|
||||||
|
-395.17823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
404.187159,
|
||||||
|
-395.17823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
404.187159,
|
||||||
|
-322.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
404.187159,
|
||||||
|
-322.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
352.787159,
|
||||||
|
-322.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
352.787159,
|
||||||
|
-322.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
352.787159,
|
||||||
|
-304.17823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
352.787159,
|
||||||
|
-304.17823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
361.187159,
|
||||||
|
-304.17823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
361.187159,
|
||||||
|
-304.17823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
361.187159,
|
||||||
|
-24.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
361.187159,
|
||||||
|
-24.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
404.187159,
|
||||||
|
-24.57823
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
404.187159,
|
||||||
|
-24.57823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
404.187159,
|
||||||
|
0.02177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
404.187159,
|
||||||
|
0.02177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
381.787159,
|
||||||
|
0.02177
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
381.787159,
|
||||||
|
0.02177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
381.787159,
|
||||||
|
14.92177
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"inner_boundaries": [
|
||||||
|
{
|
||||||
|
"index": 0,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
0.0,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
0.0,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
0.0,
|
||||||
|
-3.07823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
0.0,
|
||||||
|
-6.15646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 1,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
366.187159,
|
||||||
|
1.02177
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
366.187159,
|
||||||
|
1.02177
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
366.187159,
|
||||||
|
-3.07823
|
||||||
|
],
|
||||||
|
"radius": 4.1,
|
||||||
|
"mid": [
|
||||||
|
366.187159,
|
||||||
|
-7.17823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 2,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
44.987159,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
44.987159,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
44.987159,
|
||||||
|
-3.07823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
44.987159,
|
||||||
|
-6.15646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 3,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
250.707159,
|
||||||
|
-272.32823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
250.707159,
|
||||||
|
-272.32823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
250.707159,
|
||||||
|
-275.57823
|
||||||
|
],
|
||||||
|
"radius": 3.25,
|
||||||
|
"mid": [
|
||||||
|
250.707159,
|
||||||
|
-278.82823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 4,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
44.987159,
|
||||||
|
-155.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
44.987159,
|
||||||
|
-155.5
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
44.987159,
|
||||||
|
-158.57823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
44.987159,
|
||||||
|
-161.65646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 5,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
125.187159,
|
||||||
|
-232.47823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
125.187159,
|
||||||
|
-232.47823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
125.187159,
|
||||||
|
-236.57823
|
||||||
|
],
|
||||||
|
"radius": 4.1,
|
||||||
|
"mid": [
|
||||||
|
125.187159,
|
||||||
|
-240.67823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 6,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
-9.812841,
|
||||||
|
-67.82823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-9.812841,
|
||||||
|
-67.82823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
-9.812841,
|
||||||
|
-71.07823
|
||||||
|
],
|
||||||
|
"radius": 3.25,
|
||||||
|
"mid": [
|
||||||
|
-9.812841,
|
||||||
|
-74.32823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 7,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
362.787159,
|
||||||
|
-372.9
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
362.787159,
|
||||||
|
-372.9
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
362.787159,
|
||||||
|
-375.97823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
362.787159,
|
||||||
|
-379.05646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 8,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
250.707159,
|
||||||
|
-372.72823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
250.707159,
|
||||||
|
-372.72823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
250.707159,
|
||||||
|
-375.97823
|
||||||
|
],
|
||||||
|
"radius": 3.25,
|
||||||
|
"mid": [
|
||||||
|
250.707159,
|
||||||
|
-379.22823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 9,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
291.457159,
|
||||||
|
-311.1
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
291.457159,
|
||||||
|
-311.1
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
291.457159,
|
||||||
|
-314.17823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
291.457159,
|
||||||
|
-317.25646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 10,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
44.987159,
|
||||||
|
-68.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
44.987159,
|
||||||
|
-68.0
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
44.987159,
|
||||||
|
-71.07823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
44.987159,
|
||||||
|
-74.15646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 11,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
194.447159,
|
||||||
|
-372.72823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
194.447159,
|
||||||
|
-372.72823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
194.447159,
|
||||||
|
-375.97823
|
||||||
|
],
|
||||||
|
"radius": 3.25,
|
||||||
|
"mid": [
|
||||||
|
194.447159,
|
||||||
|
-379.22823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 12,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
291.457159,
|
||||||
|
-372.9
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
291.457159,
|
||||||
|
-372.9
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
291.457159,
|
||||||
|
-375.97823
|
||||||
|
],
|
||||||
|
"radius": 3.07823,
|
||||||
|
"mid": [
|
||||||
|
291.457159,
|
||||||
|
-379.05646
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 13,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
125.187159,
|
||||||
|
-154.47823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
125.187159,
|
||||||
|
-154.47823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
125.187159,
|
||||||
|
-158.57823
|
||||||
|
],
|
||||||
|
"radius": 4.1,
|
||||||
|
"mid": [
|
||||||
|
125.187159,
|
||||||
|
-162.67823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 14,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
125.187159,
|
||||||
|
-66.97823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
125.187159,
|
||||||
|
-66.97823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
125.187159,
|
||||||
|
-71.07823
|
||||||
|
],
|
||||||
|
"radius": 4.1,
|
||||||
|
"mid": [
|
||||||
|
125.187159,
|
||||||
|
-75.17823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"index": 15,
|
||||||
|
"segments": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
194.447159,
|
||||||
|
-272.32823
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
194.447159,
|
||||||
|
-272.32823
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
194.447159,
|
||||||
|
-275.57823
|
||||||
|
],
|
||||||
|
"radius": 3.25,
|
||||||
|
"mid": [
|
||||||
|
194.447159,
|
||||||
|
-278.82823
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_segments": 1
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"num_inner_boundaries": 16,
|
||||||
|
"thickness": null,
|
||||||
|
"transform": {
|
||||||
|
"origin": [
|
||||||
|
197.57823,
|
||||||
|
184.187159,
|
||||||
|
6.35
|
||||||
|
],
|
||||||
|
"x_axis": [
|
||||||
|
0.0,
|
||||||
|
-1.0,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"y_axis": [
|
||||||
|
1.0,
|
||||||
|
0.0,
|
||||||
|
-0.0
|
||||||
|
],
|
||||||
|
"normal": [
|
||||||
|
0.0,
|
||||||
|
0.0,
|
||||||
|
1.0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
314
tools/adaptive-isogrid/tests/geometry_sandbox_2.json
Normal file
314
tools/adaptive-isogrid/tests/geometry_sandbox_2.json
Normal file
@@ -0,0 +1,314 @@
|
|||||||
|
{
|
||||||
|
"schema_version": "2.0",
|
||||||
|
"units": "mm",
|
||||||
|
"sandbox_id": "sandbox_2",
|
||||||
|
"outer_boundary": [
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
0.0,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
7.5,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
0.0,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"radius": 7.5,
|
||||||
|
"mid": [
|
||||||
|
5.303301,
|
||||||
|
-2.196699
|
||||||
|
],
|
||||||
|
"clockwise": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
7.5,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
7.5,
|
||||||
|
-22.6
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
7.5,
|
||||||
|
-22.6
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
22.5,
|
||||||
|
-22.6
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
22.5,
|
||||||
|
-22.6
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
22.5,
|
||||||
|
-13.496098
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
22.5,
|
||||||
|
-13.496098
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
74.5,
|
||||||
|
-13.496098
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
74.5,
|
||||||
|
-13.496098
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
74.5,
|
||||||
|
-22.6
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
74.5,
|
||||||
|
-22.6
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
102.5,
|
||||||
|
-22.6
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
102.5,
|
||||||
|
-22.6
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
102.5,
|
||||||
|
-7.5
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
102.5,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
117.5,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
110.0,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"radius": 7.5,
|
||||||
|
"mid": [
|
||||||
|
110.0,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"clockwise": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
117.5,
|
||||||
|
-7.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
117.5,
|
||||||
|
-22.6
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
117.5,
|
||||||
|
-22.6
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
140.748693,
|
||||||
|
-22.6
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
140.748693,
|
||||||
|
-22.6
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
140.748693,
|
||||||
|
124.4
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
140.748693,
|
||||||
|
124.4
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
117.5,
|
||||||
|
124.4
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
117.5,
|
||||||
|
124.4
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
117.5,
|
||||||
|
102.5
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
117.5,
|
||||||
|
102.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
102.5,
|
||||||
|
102.5
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
110.0,
|
||||||
|
102.5
|
||||||
|
],
|
||||||
|
"radius": 7.5,
|
||||||
|
"mid": [
|
||||||
|
110.0,
|
||||||
|
95.0
|
||||||
|
],
|
||||||
|
"clockwise": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
102.5,
|
||||||
|
102.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
102.5,
|
||||||
|
124.4
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
102.5,
|
||||||
|
124.4
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
7.5,
|
||||||
|
124.4
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
7.5,
|
||||||
|
124.4
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
7.5,
|
||||||
|
102.5
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "arc",
|
||||||
|
"start": [
|
||||||
|
7.5,
|
||||||
|
102.5
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
0.0,
|
||||||
|
95.0
|
||||||
|
],
|
||||||
|
"center": [
|
||||||
|
0.0,
|
||||||
|
102.5
|
||||||
|
],
|
||||||
|
"radius": 7.5,
|
||||||
|
"mid": [
|
||||||
|
5.303301,
|
||||||
|
97.196699
|
||||||
|
],
|
||||||
|
"clockwise": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
0.0,
|
||||||
|
95.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-13.5,
|
||||||
|
95.0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
-13.5,
|
||||||
|
95.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
-13.5,
|
||||||
|
0.0
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "line",
|
||||||
|
"start": [
|
||||||
|
-13.5,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"end": [
|
||||||
|
0.0,
|
||||||
|
0.0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"inner_boundaries": [],
|
||||||
|
"num_inner_boundaries": 0,
|
||||||
|
"thickness": null,
|
||||||
|
"transform": {
|
||||||
|
"origin": [
|
||||||
|
-196.0,
|
||||||
|
175.5,
|
||||||
|
4.35
|
||||||
|
],
|
||||||
|
"x_axis": [
|
||||||
|
0.0,
|
||||||
|
-1.0,
|
||||||
|
0.0
|
||||||
|
],
|
||||||
|
"y_axis": [
|
||||||
|
1.0,
|
||||||
|
0.0,
|
||||||
|
-0.0
|
||||||
|
],
|
||||||
|
"normal": [
|
||||||
|
0.0,
|
||||||
|
0.0,
|
||||||
|
1.0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user