Options

 

 

Technical Article


Options may be set to modify the behavior of ACIS. An option's value may be a flag (indicating an on/off state), a number (integer or real number), or a string. Options may be set in a Scheme application (such as Scheme AIDE) using the Scheme extension option:set; or in a C++ application using one of several API functions.

adaptive_grid

Action
Removes redundant facet edges after grid mode faceting.

Name String
adaptive_grid

Scheme
Type Values Default
boolean #f, #t #f

C++
Type Values Default
logical FALSE, TRUE FALSE

Description
Removes redundant facet edges after grid mode faceting. This works only with AF_GRID_TO_EDGES grid mode. It produces more than four sided polygons unless AF_TRIANG_ALL is used for triang mode in the refinement. The redundant facet edges are those that are not necessary to satisfy the refinements but are generated in the grid mode.

; adaptive_grid
; Turn on adaptive_grid
(option:set "adaptive_grid" #t)
;; #f

[Top]


adaptive_triangles

Action
Controls whether triangles are further sub-divided by refinements.

Name String
adaptive_triangles

Scheme
Type Values Default
boolean #f, #t #f

C++
Type Values Default
logical FALSE, TRUE FALSE

Description
In general, the faceter does not check refinements for the hypotenuse created by triangulating the grid, in order to save processing time. This option allows the strict exercise of the refinements on faceting. When it is on, triangles are divided further by the refinements. It is preferable to use this option with AF_TRIANG_ALL and AF_ADJUST_ALL for triang mode and adjust mode in the refinements respectively.

When this option is turned on, faceting may take much longer, so it must be used selectively.

; adaptive_triangles
; Create a wiggle, then facet without and then with
; the option turned on
(option:set "adaptive_triangles" #f)
;; #f
(define w (solid:wiggle 50 50 30 2 -2 -2 2))
;; w
(entity:facet w)
;; 419
(entity:display-facets w)
;; ()
; Turn on adaptive_triangles and re-facet
(option:set "adaptive_triangles" #t)
;; #f
(entity:facet w)
;; 567
(entity:display-facets w)
;; ()

[Top]


approx_eval

Action
Evaluates spline approximation instead of procedural surfaces.

Name String
approx_eval

Scheme
Type Values Default
boolean #f, #t #t

C++
Type Values Default
logical FALSE, TRUE TRUE

Description
This allows the faceter to evaluate spline approximations instead of procedural surfaces. It saves time in procedural like blending and law surface faceting.

; approx_eval
; Turn off approx_eval
(option:set "approx_eval" #f)
;; #t

[Top]


dup_seam_nodes

Action
Controls whether or not duplicate indexed nodes are created on the surface seams.

Name String
dup_seam_nodes

Scheme
Type Values Default
boolean #f, #t #f

C++
Type Values Default
logical FALSE, TRUE FALSE

Description
When this option is turned on, it creates duplicate indexed nodes on the surface seams. For example on cylinders and spheres, there are points with the same position but different uv parameter values. The uv texture mapping mode requires this option.

; dup_seam_nodes
; Turn on dup_seam_nodes
(option:set "dup_seam_nodes" #t)
;; #f

[Top]


test_centroid

Action
Controls whether the centroid of the triangles is checked with the surface tolerance refinement.

Name String
test_centroid

Scheme
Type Values Default
boolean #f, #t #f

C++
Type Values Default
logical FALSE, TRUE FALSE

Description
This option allows for stricter exercise of the refinement, where the centroid of the triangle is checked to see if it is within the surface tolerance refinement. This option is dependent on the adaptive_triangles option; adaptive_triangles must be turned on for test_centroid to have any effect.

Because this check is time consuming, faceting may take much longer when this option is turned on.

; test_centroid
; Create a wiggle, then facet without and then with
; the option turned on
(define w (solid:wiggle 50 50 30 2 -2 -2 2))
;; w
(entity:facet w)
;; 419
(entity:display-facets w)
;; ()
; Option adaptive_triangles must be turned on
(option:set "adaptive_triangles" #t)
;; #f
; Turn on test_centroid and then re-facet
(option:set "test_centroid" #t)
;; #f
(entity:facet w)
;; 587
(entity:display-facets w)
;; ()

[Top]