Pointcloud wishes

Pointclouds from laser scans has become a standard when dealing with complex architectural projects and I wish Rhino can handle them better. So here are my biggest painpoints:

When working with large pointclouds it can take very long time to select a bunch of points to delete them. I often need to do this to clean out people and cars and other artifacts that has been scanned.

Can you see if you can speed that up? Other programs like CloudCompare etc. handles this in near real time.

Rhino also discards all colordata if one or more points are deleted, that too is a pain when dealing with pointclouds in Rhino.

Scanned data can be really massive and I usualy use CloudCompare to desimate it down to 20mm density, it would be great if this could be done within Rhino too.

5 Likes

Generally, support for point clouds was added for third-party developers that have expertise in working with them, like Rhino Reverse, Rhino Terrain, etc.
Since our programming and development skills don’t fit general reverse engineering, I really doubt there will be much desire for us to complete with our successful third-party developers that already make these tools.

As far as speed goes, I know we continue to make improvements in Rhino for these developers but most would be completely hidden to Rhino users that did not have the plug-ins that use point cloud data.

Does that make sense?

@John_Brock,

i think if Rhino is able to import a colored pointcloud it should be able to deal with it. Deleting points and not loosing the color information seems only be possible by removing points from the cloud first using

! _PointCloud _Remove

which extracts them as point objects and is pretty slow on larger clouds. It requires to delete the point objects which is an unecessary step. Deleting points by subselecting them first using CTRL+SHIFT purges color data which is clearly a bug and should not be disposed as an unachievable feature request.

Apart from this i agree with @Holo that working with digitzed data and meshes for printing is getting common in various fields like ID as well. This is the core of Rhino`s userbase. Before beeing able to use one of the plugins mentioned (btw. RhinoReverse has nothing to do with pointclouds and, Rhino Terrain has nothing to do with classical reverse engineering) it is getting more important for Rhino users to prepare the data, so that the plugins to do reverse engineering can actually be used at all.

I´m dealing with this expectation every day, trying to explain students why they never should try to use Rhino to fix meshes coming from various 3D scanners because the tools provided to check and repair simply are not compareable to even freeware like MeshMixer. It is time for Rhino to catch up in this regard i think.

At least being able to use existing selection tools like _SelBrush should be hooked up to work on mesh faces and pointcloud points. It concerns me that Rhino seems to limit possibilities in some areas, eg. trying to select and delete naked mesh edge points to open up overlaps in meshes is impossible if more than 1000 naked points are found. Why is that ?

c.

5 Likes

Dear Holo

If you want to use large pointclouds in Rhino, you need to get a suitable plugin. I use the Arena4D plugin from Veesus Ltd for dealing with the sort of point clouds I suspect you are trying to use - I also undertake architectural work (3D models and 2D drawings) from pointclouds. As far as I know, there are no other plugins that will do what you (and I) need (since Pointols is no longer available).

The native Rhino pointcloud support would have been implemented to deal with small point clouds, eg of small scanned objects for reverse engineering, which it does fine.

With a suitable plugin like Arena4D, you can deal with much larger pointclouds than Rhino can natively, slice them to help draw plans, elevations, etc. These are things that you cannot do with the native Rhino pointcloud support.

If you regularly need to cut up parts of a pointcloud, there is another product from Veesus that I also use (Arena4D Data Studio), and you can do other stuff with it as well, like make flythroughs of the data. If the data isnt too large, there is also a bit of free software called CloudCompare that you can do slicing up in. The other alternative is to ask whoever is giving you the pointclouds to cut them up into smaller chunks that you can deal with.

Hope that is helpful,

Jonnie

Hi Jonnie, thanks, yeah CloudCompare is my go-to tool for trimming and reduction, and I optimized a point data script to read in colored PTS files. We will definitely look into Arena for the next project, even though I would prefer this to be handled within Rhino as pointdata is common for both industrial designers and architects these days.

Hello Holo

Glad that was helpful. Using something like Arena4D will make your life so much easier. Having used Arena4D for the past six months, and Pointools before it for 6 or 7 years now, you won’t believe how much easier and quicker thing will become. The controls are just another docker, so it all works pretty seamlessly within Rhino.

Jonnie

1 Like

Jonnie - how would you say Arena4D compares to Pointools? Dealing with point cloud data isn’t something I get involved with, but it is very important to one of my clients. They are heavy Pointools users (and only have seats of Rhino because of it) and were dismayed when it was withdrawn. I mentioned Veesus to them sometime ago but they seemed sceptical for some (undefined) reason. Your views would be of interest to them. They don’t frequent this forum, so I’ll pass any info on.

Hello Matt,

I would say it compares very well to Pointools - they are not identical, but do much the same stuff, just slightly differently. I would recommend it, and will talk through my experiences below. There are no other alternatives so far as I know, but it’s a great plugin in its own right, not just because there is nothing else.

I too was dismayed by the stopping of development with Pointools, as I had not long bought the Pointools Suite when it was sold and development petered out (significantly it was before they released the 64 bit version of the Rhino plugin that I had been told was being worked on).

With Pointools no longer being developed, and only running on 32 bit Rhino, and really only successfully in Rhino 4, I was very excited to hear that the Arena4D plugin was going to be available in April. It’s only £500 plus VAT, so I bought a license.

Veesus have put a lot of work into developing the Arena4D plugin since releasing it around April 2015 - it is now on v 1.9, and they have all been significant releases.

I carried on using Pointools for a few months until the Arena4D plugin had as much functionality as I needed (ie very similar to Pointools), and have been using it exclusively, except for old projects, since September.

The Arena4D .VPC files are larger than Pointools .POD files, but are a comparable in size to other bespoke pointcloud files, and still significantly smaller than the .PTS equivalents. The speed is a bit slower, but nothing significant, but then nothing else, as far as I am aware, has really come close to the speed of Pointools. The downside with Pointools was sometimes that the data was not refreshed, which has never been a problem with Arena4D. I also have the main Pointools desktop program, to slice up the data, and this also suffered, fairly frequently, from data loss when exporting chunks, which you might not notice until later, or not at all and just think you had some inadequate scanning on your hands. The Arena4D equivalent has not had that problem.

I also had fairly frequent crashes with Pointools - it seemed to be something to do with the OpenGL viewport getting out of sync between Rhino and the Pointools engine, and freezing, and requiring a restart. This happened every couple of hours on a bad day, but sometimes not for a few days. Pointools never got to the bottom of the problem for me, I just had to live with it and save frequently. I’ve not had any similar problems with Arena4D, but I had a problem around August where Rhino would slow down after using it with Arena4D for a couple of hours - Veesus had already fixed this by the time I reported it, and they let me have a beta until the fix was released as a main version. I can’t say I ever got anything near that level of support from Pointools.

I’m very happy with the Arena4D plugin, it works with Rhino 5 64 bit, and you’'l get great support.

If you want to try it, they have recently increased the trial time to 20 minutes (this is reset every time you restart Rhino, so you can have multiple goes with it, albeit in 20 minute chunks). The main desktop program, Data Studio, can also be used to import data after your trial of that expires. Otherwise, it has similar functionality to the Pointools equivalent, but with much more GIS integration.

Hope this is helpful, let me know if you have any queries and I’ll try to help,

Jonnie

1 Like

Many thanks for taking the time to give such a detailed review :grinning: I’ll pass your comments on…

I recently used used Volvox for grasshopper with some success on creating section planes and comparing point cloud offsets to mesh planes. The nice thing about it being in grasshopper is then I was able to draw interpolated line through the section planes to get an average of the point cloud for wall sections.

http://www.food4rhino.com/project/volvox?ufh

Rhino needs great pointcloud support even if you provide an easy and wide dev avenue… why?

  1. bc though I an arena for rhino user myself… Arena will not be around forever (just like pointtools) and its not perfectly integrated with rhino and probably never will be completely… in fact they provide an operation to convert to rhino pointcloud when you really need the rhino tools. Arena is amazing but its still 3rd party and wouldn’t say no to big $.

  2. it’s basically going to be the input method for all pro users soon bc of cheap input devices so why not be the tool of choice?

  3. Rhino is the only viable avenue for truly great open-sourceish 3D R&D… everything think else is locked up by expensive, bad IU bloatware. And may I add has never been EVIL. CloudCompare is the only other example.

Things that need to happen:

  1. integrate .e57 plugin in the install program
  2. create some sort of out of core or static vertex component to the engine (large mesh are on their way too Modo did a better job even without out of core code)
  3. csv input mapping dialog box to help assign columns to the correct values.
  4. strengthing of DRAPE command for pseudo-meshing work.
  5. EDL lighting to shade non-colored clouds

Things that are already awesome about Rhino with pointclouds:

  1. reasonable load sizes
  2. e57 support
  3. printable results (PDFable)
  4. one of the few software products that lets you create point render with white centers and black borders (almost like a early version of EDL lighting.
  5. great work not segregating in the UI/UX (i.e. you can save them, slice them, reference, etc)
1 Like

There is some issues with unlit pointclouds in rendered mode now, so I have to add a light for the colors to show, but then the mesh is over exposed. The point cloud also looks washed out compared to shaded mode.

It would be nice to have the ability to choose to light pointclouds or not.
And I just remind you of the wish for minimum point size.

Did you try the unlit circle point style?

On their page it says it costs 400 pounds. But:
"All Veesus Ltd Software products are provided as a 12 month subscription only."
So I guess that is 400 pounds each year, so that is not an option

I think point cloud support is the main thing Rhino needs in V6. export e57, choose segments to view etc.
And if possible, some breakline extraction from clouds. But mainly the ability to view any type of cloud, and to change the viewing properties (RGB, intensity, elevation etc) And to hide any part of the cloud if needed, and to set viewing depth, so you can view only one floor etc.

1 Like

I am agreeing to this post - the ability to export e57 seems like a no brainer since we can import them easily, and it is a platform agnostic format. I want to process some data, so need to export the point cloud, process it, then bring it back. I am using PLY as an export, but lose a bunch of information in the process (multiple scan structure).