feat: integrate SimpleCADAPI 2.0.2 CAD workflows
This commit is contained in:
@@ -3,7 +3,21 @@
|
||||
## API Definition
|
||||
|
||||
```python
|
||||
def make_box_rsolid(width: ScalarLike, height: ScalarLike, depth: ScalarLike, bottom_face_center: Tuple[float, float, float] = (0, 0, 0)) -> Solid
|
||||
def make_box_rsolid(
|
||||
width: ScalarLike,
|
||||
height: ScalarLike,
|
||||
depth: ScalarLike,
|
||||
bottom_face_center: Tuple[float, float, float] = (0, 0, 0),
|
||||
*,
|
||||
tag_prefix: Optional[str] = None,
|
||||
result_tag: Optional[str] = None,
|
||||
bottom_face_tag: Optional[str] = None,
|
||||
top_face_tag: Optional[str] = None,
|
||||
front_face_tag: Optional[str] = None,
|
||||
back_face_tag: Optional[str] = None,
|
||||
left_face_tag: Optional[str] = None,
|
||||
right_face_tag: Optional[str] = None,
|
||||
) -> Solid
|
||||
```
|
||||
|
||||
*Source: operations.py*
|
||||
@@ -14,4 +28,19 @@ def make_box_rsolid(width: ScalarLike, height: ScalarLike, depth: ScalarLike, bo
|
||||
|
||||
## Description
|
||||
|
||||
Create a box solid.
|
||||
Create a native box solid. The exact kernel-backed Face roles are `box.bottom`,
|
||||
`box.top`, `box.front`, `box.back`, `box.left`, and `box.right`. Each role has
|
||||
exactly one Face.
|
||||
|
||||
The face tag arguments attach tags to those roles. `result_tag` targets the
|
||||
result Solid. `tag_prefix="housing"` creates the topology tags
|
||||
`housing.solid`, `housing.face.bottom`,
|
||||
`housing.face.top`, `housing.face.front`, `housing.face.back`,
|
||||
`housing.face.left`, and `housing.face.right`.
|
||||
|
||||
The roles and topology tags come directly from OCC Box Face witnesses, not Face
|
||||
enumeration or geometric classification. The current OCP Box builder does not
|
||||
expose equivalent direct Edge witnesses, so Box Edge output roles are
|
||||
unsupported. Select an exact Edge from two tagged incident Faces with
|
||||
`Q.edges().incident_to(face_a, face_b, distinct=True)` or
|
||||
`face_a.shared_boundary(face_b)`.
|
||||
|
||||
Reference in New Issue
Block a user