next up previous
Next: User interface Up: Preliminaries Previous: Problem statement

CSG kernel

For complex parametric surfaces there are no analytical solutions for surface intersections. When deciding what kind of resolution is appropriate, efficiency plays the main role. One approach is to have low resolution for display purpose and when accurate geometry for machining is needed, resolution is increased to meet high accuracy needs. Another approach is to have some heuristics with variable accuracy for display. In this case only important part of CSG tree is rendered with higher accuracy. Simplification of this method can be to change level of detail on the basis of current zoom factor. Such simplification leads to well known regen command when whole or only part of CSG tree is recalculated for display.

Type of intersection calculation also depends on the type of object representation. Two types are commonly used: wireframe and faceted display. This basic display approaches can be combined or extended to suit the user needs with algorithms such as hide-line, Gouraud shading, etc.

Type of intersection generally leads to selection of intersection algorithm for CSG engine. Tracing method[Hoffmann, 1989] for calculating intersections can be used for wireframe representation where only isolines, paths, and intersections are displayed.

Performance in solid modelers plays significant role. Thus why a lot of display capability is often based on hardware graphics accelerators capable of 3D manipulation. To use such builtin graphics capabilities, CSG engine must be capable to prepare display data in proper format for transfer in graphics accelerator.



Leon Kos
Wed May 27 11:00:46 CEST 1998