Hi,
we did a laserscan (and sonar multibeam) of a keywall in a harbour area. I want to colorize the wall against a vertical surface. This is to see if there are any bendings in the keywall. The vertical surface cannot be a simple plane but must be following a given polyline. So i generated two polylines with the same horizontal coordinates but different z values.
Now i use the tool [Edit]->[Mesh]->[Surface between 2 polylines] to generate the surface. Within the following promt i decided to use the best fit plane. The surface is generated.
The result of the surface is fine on the wider areas biut there are several small notches in the polyline where the surface is not generated in the way I was expecting it.
The two polylines are attached.
So is there a way to change the behavior of the gerneration of the surface so that i will follow the line?
(Using 2.14 alpha Dec 1 2024)
Kind regards, Olli
result of [Edit]->[Mesh]->[Surface between 2 polylines]
result of [Edit]->[Mesh]->[Surface between 2 polylines]
- Attachments
-
- Asset_Keywall_Kronprinzenkai.zip
- (3.48 KiB) Downloaded 74 times
Re: result of [Edit]->[Mesh]->[Surface between 2 polylines]
Sadly this tool relies on 2.5D triangulation, so it's not able to properly manage these small corners (which are 'overlapping' the wall when projected in the global orientation chosen by the tool).
What you are looking for is more an 'extrusion' tool. That's very easy to code, but sadly that's not present in CloudCompare!
You could create an OFF mesh file easily though: see https://segeval.cs.princeton.edu/public/off_format.html
It would start with:
OFF
352 350 0
Then you list all the points from the 2 polylines (you can simply concatenate the content of the 2 .poly files).
And the last part is the trickiest, but you can probably generate it with Excel. You have to create 2 triangles for a set of 4 vertices (2 consecutive vertices that face each other in each poyline):
- 1st triangle will be described as "3 i i+1 N+i"
- 2nd triangle will be described as "3 i+1 N+i+1 N+i"
(where 'i' is the vertex index between 0 and 174, and N=176, the number of points in each polyline)
What you are looking for is more an 'extrusion' tool. That's very easy to code, but sadly that's not present in CloudCompare!
You could create an OFF mesh file easily though: see https://segeval.cs.princeton.edu/public/off_format.html
It would start with:
OFF
352 350 0
Then you list all the points from the 2 polylines (you can simply concatenate the content of the 2 .poly files).
And the last part is the trickiest, but you can probably generate it with Excel. You have to create 2 triangles for a set of 4 vertices (2 consecutive vertices that face each other in each poyline):
- 1st triangle will be described as "3 i i+1 N+i"
- 2nd triangle will be described as "3 i+1 N+i+1 N+i"
(where 'i' is the vertex index between 0 and 174, and N=176, the number of points in each polyline)
Daniel, CloudCompare admin
Re: result of [Edit]->[Mesh]->[Surface between 2 polylines]
Hi Daniel,
thank you for the hint with the OFF mesh file format. That works perfectly.
With your formula as a beginning I was able to to create it by myself. Instead of creating triangles I ended up created squares. With triangles the front and backsite of the faces were not consistent and flipped. (https://people.sc.fsu.edu/~jburkardt/data/off/off.html)
Just for further reference that was my result where i could compute the distance between pointcloud and the created mesh.
If anybody is interested in doing this programmatically with just a bunch of given coordinates (polyline) feel free to add a comment.
thank you for the hint with the OFF mesh file format. That works perfectly.
With your formula as a beginning I was able to to create it by myself. Instead of creating triangles I ended up created squares. With triangles the front and backsite of the faces were not consistent and flipped. (https://people.sc.fsu.edu/~jburkardt/data/off/off.html)
Just for further reference that was my result where i could compute the distance between pointcloud and the created mesh.
If anybody is interested in doing this programmatically with just a bunch of given coordinates (polyline) feel free to add a comment.
- Attachments
-
- Asset_Keywall_Kronprinzenkai.zip
- (38.82 KiB) Downloaded 16 times