The typical laser scan-based point cloud can be in the hundred of millions of 3D points, sometimes even going into the billions of points. Because of this it is important to understand how Revit accesses that huge amount of data, and what you can do to maximize performance.
At its core, Revit utilizes the PCG point cloud engine to rapidly access the Point Cloud and retrieve points to be displayed in the current Revit View. This operation is relies heavily on the data access from the local Hard Disk. Thus, the Hard Drive is the limiting factor for point cloud performance, rather than system Memory, CPU, or GPU.
The following principles will provide the foundation for understanding and optimizing Point Cloud performance:
- Point Cloud Engine
The point cloud engine is the software component that rapidly accesses point cloud data stores, determines the points that are visibile in the current View Extents, and communicates these points to the Revit graphics system. During model manipulation commands, the Point Cloud Engine is also accessed to provide planar snapping.
- View Extents
View Extents are the geometric limits to a given Revit View. They can be controlled using a number of different Revit mechanisms, such as View Range, Section Box, and Cropping.
- Disk Drive Types
The Hard Drive is the hardware on the computer that stores and accesses data to be used by applications and the Operating System. There are two primary types that are found today: spinning platter and solid-state drives.
- Spinning Platter drives are the traditional Hard Drive technology, and are found in most computers today.
- Solid-state drives (SSDs) are relatively new technology, contain no moving parts, and are generally much faster at reading and writing data than typical spinning platter drives.
The following practices are recommended for optimal point cloud performance in a Revit project:
- Store Point Cloud Data Locally
Because Point Cloud operations are extremely data intensive, it is ideal to store the Point Cloud data locally, rather than by accessing it over a network.
- Control View Extents to limit Point Clouds in the View
Because Revit understands the spatial location of points within each Point Cloud, it will not try and access data from a point cloud that is not within a View's Extents. So, modifying the View Extents with the Section Box or Crop tool can help to limit the Point Clouds that are accessed by the Point Cloud Engine.
- Control Point Cloud Visibility Based Upon Need
If multiple point clouds are visible within a given View Extent, but only certain point clouds are required for modeling or visualization tasks, use the Visibility/Grapics dialog to only display the Point Clouds that are needed for the task. This reduces the amount of data that needs to be accessed when generating the View.
- Utilize a Solid-State Drive if Possible
If performance issues persist, explore the purchase of an SSD for accessing point cloud data. In the ideal case, both the Point Cloud data and Operating System are contained on the SSD. If not possible, move the Operating System's TEMP and Pagefile locations to the SSD, along with the point cloud data. This can make a significant improvement in overall View performance.