By Karthick Chilaka, Engineering Manager
A Point Cloud is a collection of 3D positions in space. These positions are sometimes associated with a 3D model. The data in a Point Cloud can be used to represent, among other things, large amounts of measurement data generated by 3D scanning devices. Point clouds are used for purposes such as metrology/inspection and reverse engineering of CAD data from manufactured models.
Point Clouds in ACIS
In ACIS, Point Clouds are created and manipulated using the SPApoint_cloud class. This class is designed to store and manipulate large amounts of point data very efficiently. The memory footprint of a SPApoint_cloud class is configurable. An application can configure the SPApoint_cloud class to primarily use the disk for data storage. Additionally, the SPApoint_cloud class has been designed with an index based storage mechanism keeping data sharing in mind. That is, multiple SPApoint_cloud objects can reference the same set of points. This aspect of the SPApoint_cloud’s design also enhances the performance of common operations on Point Clouds. The SPApoint_cloud class supports the Undo and Redo of operations. The SPApoint_cloud class has been designed to be user extensible so an application can add custom data to the Point Cloud.
ACIS also supplies high-performance visualization of Point Cloud data using the HOOPS/ACIS bridge.
The SPApoint_cloud class supports common operations such as:
- Adding and removing points from a Point Cloud
- Multiple ways to access points in the Point Cloud
- Querying of properties of the Point Cloud
- Boolean operations on the Point Cloud such as Unite, Subtract and Intersect
- Copying of a Point Cloud
- Subsetting of a Point Cloud
- Support for Undo-Redo of operations
- Modifying existing Point data
- Compaction of Point Clouds
Sample implementation using the SPApoint_cloud class
The Point Cloud specific scheme extensions in ACIS provide sample code showing how an application can extend the SPApoint_cloud class. Please refer to the scheme source code folders in your ACIS installation. The examples show, among other things, how an application can implement save-restore, use the undo-redo functionality and add custom data to the SPApoint_cloud object by deriving from it.
Register for Point Cloud Webinar