Point cloud in rhino to list of points in Grasshopper?

Hi -

That seems to work fine here:

-wim

Nevermind, it actually works. The main issue is it doesn’t interact with other point cloud tools like Volvox or Cockroach. Any way to classify the type to e57 that can interact?

Alternatively, the main requests would be filtering the point cloud by the attribute assigned to it like elevation, color etc.

Second request would be mesh/nurbs intersections.

It likely doesn’t interact with other plugins because the PointCloud data type was only added to native Grasshopper in the past 6 months or so. The authors of Volvox and/or Cockroach would have to rebuild their plugin or modify it to use this datatype instead of their own construct for a point cloud.

As far as filtering based on different attributes… It’s fairly easy I think using the Point Cloud attributes which gives you access to all of the raw data of the point cloud. For example, let’s say you want to create a mask of the point cloud so that only the points that were inside of a brep boundary show up in the point cloud.

To do this, you could extract the point locations of the point cloud and test if that point is inside of the brep. You could then use this boolean value to assign a new value to the Hidden attribute of a second point cloud object. You can right-click on the Hidden param and invert whether you want to keep the points inside or outside of the brep. You can invent similar logic if you wanted to filter for colors, etc.


MaskPointCloud.gh (11.0 KB)

These are very helpful, thank you. Last question, is there a way to change the point size to have a smoother finish to the cloud structure? Looks a little too voxelized with the current size.

Also, the cooridnates are way off for some reason, compared to the original coordinates. Any thoughts on why that would be? CC coordinates are unitless but are very close to the origin and measure just 250X200X150 approximately. The Rhino version is 3.4 million mm from the origin!

At the moment, there aren’t any controls as to the size of the point cloud visualization. I’ll make a YouTrack issue for this.
Secondly, I’m not really sure why the points aren’t coming in with the correct locations… however, this is a Rhino issue (not a Grasshopper one). If you simply import the .e57 file directly in Rhino and then find the center of the bounding box, you’ll see it’s very far from center. Perhaps @tim has some input?

Hi @gy2106,

The unit system for E57 files is meters. Make sure to take that into account if importing E57 files into an existing model.

– Dale

1 Like

Thanks @dale usually the e57 imports correctly from the source we have the meta for but doesn’t seem to recognize that in Rhino point clouds version, which is not a big deal. How can I convert the cloud points to mm before processing? The convert function doesn’t seem to work with point clouds.

Maybe this?

TestPointCloud.gh (9.1 KB)

– Dale

@gy2106 - try modifying the display mode:

– Dale

You can also use the Convert Units component to scale any input data according to a new unit system like this. I think this will get you closer to what you’re looking for.

1 Like

Thank you @AndyPayne and @dale . These are very helpful.