Action:
|
Creates a graph for the first stage of selective Booleans from a tool body and a blank body.
|
|
Filename:
|
sbool/sbool_scm/selective_scm.cxx
|
|
APIs:
|
api_selective_boolean_stage1
|
|
Syntax:
|
(bool:select1 blank-body tool-body [acis-opts])
|
|
Arg Types:
|
blank-body
|
entity
|
|
tool-body
|
entity
|
|
acis-opts
|
acis-options
|
|
Returns:
|
graph
|
|
Description:
|
This Scheme extension creates a graph structure (e.g., graph theory) from the
blank-body entity and the
tool-body entity. Using
Cellular Topology, distinctive cells of the
blank-body and the
tool-body become vertices of the graph. Overlapping portions of the cells become edges in the graph. Once the graph has been created, further graph theory operations can be performed to obtain a more desirable graph. This is then used as input to the second stage of selective Booleans,
bool:select2.
|
|
|
blank-body is an input entity.
|
|
|
tool-body is an input entity.
|
|
|
The optional
acis-opts contains parameters for versioning and journaling.
|
|
Example:
|
; bool:select1
|
|
; Create a blank body
|
|
(define blank (solid:block (position 0 0 0)
|
|
|
(position 25 10 10)))
|
|
;; blank
|
|
; blank => #[entity 2 1]
|
|
(define b2 (solid:block (position 5 0 0)
|
|
|
(position 10 5 10)))
|
|
;; b2
|
|
(define b3 (solid:block (position 15 0 0)
|
|
|
(position 20 5 10)))
|
|
;; b3
|
|
(define subtract (solid:subtract blank b2))
|
|
;; subtract
|
|
(define subtract2 (solid:subtract blank b3))
|
|
;; subtract2
|
|
; Create the tool body
|
|
(define tool (solid:cylinder
|
|
|
(position -5 2.5 5) (position 30 2.5 5)1))
|
|
;; tool
|
|
; Change the color of the tool for viewing.
|
|
(entity:set-color tool 3)
|
|
;; ()
|
|
; OUTPUT Original
|
|
|
(define g (bool:select1 tool blank))
|
|
;; g
|
|
; OUTPUT Result
|
|
|
|
|
Figure 2-1. bool:select1
|