The 3D ACIS® Modeler (ACIS) is Spatial’s prominent 3D solid modeling engine. 3D InterOp is a CAD data translation framework (Interoperability)
Option:Cell granularity
From DocR19
Contents |
Action
Determines how connected double sided faces are grouped.
Name String
cell_granularity
Scheme
| Type | Values | Default |
|---|---|---|
| string | "manifold","face","connected" | "manifold" |
C++
| Type | Values | Default |
|---|---|---|
| char* | "manifold","face","connected" | "manifold" |
Description
This option determines how non-regularized Boolean unite groups all connected double sided faces into cells (CELL2Ds).
The argument to this option is a string. Possible values determine how double sided faces group into CELL2D units:
| "manifold" | All double sided faces on the same manifold combine into one CELL2D. |
| "face" | All double sided faces yield individual CELL2Ds (smallest grouping). |
| "connected" | All double sided faces that are connected combine into one CELL2D (biggest grouping). |
Example
; cell_granularity ; Demonstrate differences in possible groupings ; Example Manifold vs. FACE ; Manifold (option:set "cell_granularity" "manifold") (part:clear) (define s1 (sheetface(face:planar-disk (position 0 0 0) (gvector 0 0 1)10)))) (define s2 (sheetface(face:planar-disk (position 5 0 0) (gvector 0 0 1)10)))) (define s (bool:nonreg-unite s1 s2)) (define c_list (cell:attach s)) ; Determine how many items in c_list (length c_list) ;; 1 ; Face (option:set "cell_granularity" "face") (part:clear) (define s1 (sheetface(face:planar-disk (position 0 0 0) (gvector 0 0 1)10)))) (define s2 (sheetface(face:planar-disk (position 5 0 0) (gvector 0 0 1)10)))) (define s (bool:nonreg-unite s1 s2)) (define c_list (cell:attach s)) ; Determine how many items in c_list (length c_list) ;; 3 ; Example Connected vs. Manifold ; Connected (option:set "cell_granularity" "connected") (part:clear) (define s1 (sheetface(face:planar-disk (position 0 0 0) (gvector 0 0 1)10)))) (define s2 (sheetface(face:planar-disk (position 0 0 10) (gvector 0 0 1)10)))) (define s3 (solid:block (position 0 0 0) (position 10 10 10))) (define s4 (sheetface (face:planar-disk (position -5 -5 5) (gvector 1 1 0)10)))) (define s (bool:nonreg-unite s1 s2 s3 s4)) (define c_list (cell:attach s)) ; Determine how many items in c_list (length c_list) ;; 2 ; Manifold (option:set "cell_granularity" "manifold") (part:clear) (define s1 (sheetface(face:planar-disk (position 0 0 0) (gvector 0 0 1)10)))) (define s2 (sheetface(face:planar-disk (position 0 0 10) (gvector 0 0 1)10)))) (define s3 (solid:block (position 0 0 0) (position 10 10 10))) (define s4 (sheetface(face:planar-disk (position -5 -5 5) (gvector 1 1 0)10)))) (define s (bool:nonreg-unite s1 s2 s3 s4)) (define c_list (cell:attach s)) ; Determine how many items in c_list (length c_list) ;; 6
