CSGBuilder
Creates Constructive Solid Geometry (CSG) from pairs of solid geometry features which are input through the A and B ports.
CSG is useful for representing complex solids by specifying the Boolean operations between simpler solids. For example, a wall with a window can be represented by taking the difference of the solid wall against the window. The CSGBuilder can be used to create a CSG solid that is comprised of relationships (order of Boolean operations or a hierarchy of Boolean operations) between the simpler solids.
Input Ports
- A and B: Pairs of solid geometry features.
Output Ports
Each Boolean operator is output via its corresponding port:
Merges two objects into one.
Subtracts one object from another.
The portion common to both objects.
Any features that do not have solid geometry, or extra features that come after the first feature with solid geometry in each group, are output through the <Rejected> port.
Parameters
If any Group By attributes are given, then each group will be treated independently. This allows a single transformer to operate on multiple pairs of input features.
Note: How parallel processing works with FME: see About Parallel Processing for detailed information.
This parameter determines whether or not the transformer should perform the work across parallel processes. If it is enabled, a process will be launched for each group specified by the Group By parameter.
Parallel Processing Levels
For example, on a quad-core machine, minimal parallelism will result in two simultaneous FME processes. Extreme parallelism on an 8-core machine would result in 16 simultaneous processes.
You can experiment with this feature and view the information in the Windows Task Manager and the Workbench Log window.
Yes: This transformer will process input groups in order. Changes on the value of the Group By parameter on the input stream will trigger batch processing on the currently accumulating group. This will improve overall speed if groups are large/complex, but could cause undesired behavior if input groups are not truly ordered.
No: This is the default behavior. Processing will only occur in this transformer once all input is present.
Related Transformers
CSG is the unevaluated model. The CSGEvaluator can be used to compute the equivalent boundary representation of the CSG solid.
Editing Transformer Parameters
Using a set of menu options, transformer parameters can be assigned by referencing other elements in the workspace. More advanced functions, such as an advanced editor and an arithmetic editor, are also available in some transformers. To access a menu of these options, click beside the applicable parameter. For more information, see Transformer Parameter Menu Options.
Transformer Categories
FME Licensing Level
FME Professional edition and above
Resources
See the definition of CSG at http://en.wikipedia.org/wiki/Constructive_solid_geometry.
Search FME Knowledge Center
Search for samples and information about this transformer on the FME Knowledge Center.