Point clouds in GroIMP are composed of a PointCloud, a Cloud and Point. They are defined as follow:
These three Objects implements CloudContext, meaning when any of the three is selected, you can access the Cloud structure handled. Most of the tools from the package de.grogra.pointcloud.tools are applied on Cloud, and produce Cloud objects. The GUI commands however can works with any CloudContext object.
The PointCloud objects can be modified with a set of available tools, shape fitting, and clustering
The simplest format for storing the cloud data. The size of the cloud is not modifiable (as arrays are non mutable objects). Each points coordinates are stored in the cloud array such as: [x1,y1,z1, x2,y2,z2, …].
Each point is stored in a list as Point3d. Points can be added, deleted from the cloud.
Cloud object can be represented as graph in GroIMP, where both the PointCloud and each Point objects are GroIMP Nodes. This structure enables to leverage the power of XL queries onto the point cloud data both for querying and rewriting.
The main objects of a PointCloud as graph are:
Every tools presented here are available both from GUI or from RGG code. The projects used to create the images are available from the example explorer embedded in GroIMP. The tools consider the local transformation of the point cloud. The coordinate of the Point are local in relatively to the Point cloud Node.