Cockroach - PointCloud Processing for Rhino

You need to use the skeleton component from Cockroach plugin.
Also remesh the mesh because skeleton components works by contracting initial mesh.

The implementation comes from here, and it is the most simple method I used:
https://doc.cgal.org/latest/Surface_mesh_skeletonization/index.html

Mesh_Skeleton_Test.gh (360.7 KB)

2 Likes

Thank you! My bad, had only installed the Rhino plugin. I used Triangulate and it worked.
The Triremesh component you are using is v. 7 only?

True. actually this works directly without remeshing:

1 Like

Re: skeletonization algorithm. Did you consider wrapping the VMTK centerline skeletonization method? Is it slower than the CGAL method?

It does seems like CGAl one by contracting mesh by smoothing.
Do you see a source code of the VMTK since the github repo is down?

VMTK Centerline uses inscribed spheres. Here should be the source files.

2 Likes

Thanks I see that there are sources in C++, that I can use. Good stuff, lets see how easy it will be to compile.

Hi Petras, thanks for your great work on Cockroach. I can see on Github that it may be refactored/rewritten at some stage. I don’t know if this is the best place, but I had a few points of feedback;

  • Previews in Display modes other than ‘wireframe’ appear black.
  • There’s no easy way to adjust the point size of Pointcloud previews (I don’t want to adjust colour, but it would be helpful to be able to adjust point size).

Apart from that, I’m really impressed with it’s performance for point clouds in the GB size range.

2 Likes

I rented a BLK 360 G2 for a few days and made some tests -

This is AMAZING !

5 Likes

Hi @Patt,

Thank you for your notice. You can also open on github in the future.

We will add it to our to do list.

Best,
Petras

1 Like

Hi Andreas
Wow, very nice mesh !
What settings did you use in Cockroach ?

I pretty much just followed Petras example above,

Downsample: -1 (none)
Normal Neighbors: 10
Poisson Depth: 12
Iso value: 9

I think I have to do a few more experiments, since I still do not have a clear Idea what each setting is actually doing and how it impacts the quality / calculation time.

Hi Andreas,
Thank you for those figures, I just tried it on some scan data from a FaroS70 and it works beautifully.
Regards,
Mike.

A colleague told me that he faces issues / some edge cases with Cockroach Mesh Boolean operations from time to time.
I found this interesting section in a kind of old part of the documentation of cgal:


Introduction (cgal.org)

My uneducated guess is, that it might be worth trying to a more precise implementation and then check again if these rare issues still occurr.

@Petras_Vestartas
Do you think that using a more exact implementation (if available for the mesh boolean) could help with that?
Would it be possible to expose different implementions for a problem in the grasshopper plugin?

Hi Martin,

Thanks for the notice, I face it too from time to time, specially for coincident edges, vertices, faces…
I am also aware of inexact and exact representations.

The issues most often happens when transferring vertices coordinations from C# rhino to C++. The floating point errors probably occurs there too. I guess one good workaround would be to round all coordinates in order to snap vertices, but this needs to be done on both sides C++ side.

At the current moment I need to work for other things, but at least it would be great if you upload data-sets that fail.

1 Like

Hi again,

thanks for your quick reply.

My colleague sent me this example file.
If you connect the mesh input as described in the screenshot, Rhino crashes.

23-07-18_CockroachBoolean_IntersectingFaces_Crash.gh (19.5 KB)

1 Like

Hi Petras and Andrea,

Does Cochroach still have the Cockroach_RadiusOutlierRemoval tool? I installed the latest release in Rhino 8 and placed all the components on the canvas to see if perhaps I missed it, but I don’t see this tool.

Thanks!

Hello @colorado1876 , indeed (if I am not mistaken) the Rhino command Cockroach_RadiusOutlierRemoval is not integrated as a gh component in the plug-in.

Thank-you for letting me know!

Hello @petras! Cockroach is currently not compatible with MacOS, but I have seen the notice on the gitpage that is being refactored. Is make it compatible with Mac in the plans?