Difference between revisions of "Unroll"

From CloudCompareWiki
Jump to navigation Jump to search
 
(2 intermediate revisions by the same user not shown)
Line 10: Line 10:
 
[[Image:Cc_unroll_result.jpg|frame|center|Cylindrical shape unrolled]]
 
[[Image:Cc_unroll_result.jpg|frame|center|Cylindrical shape unrolled]]
 
[[Image:Cc_unroll_cone_example.jpg|frame|center|Unrolled cone]]
 
[[Image:Cc_unroll_cone_example.jpg|frame|center|Unrolled cone]]
 
Since version 2.13, it is now possible to:
 
* define a custom 3D axis
 
* init the unrolling parameters with an existing cylinder or cone entity present in the database
 
* output the unrolled cloud in an arbitrary coordinate system
 
  
 
== Procedure ==
 
== Procedure ==
Line 24: Line 19:
 
[[Image:Cc_unroll_cylinder_dialog.jpg|frame|center|'Unroll cylinder' dialog]]
 
[[Image:Cc_unroll_cylinder_dialog.jpg|frame|center|'Unroll cylinder' dialog]]
  
To unroll a cylindrical shape, the parameters are:
+
Main parameters are:
* axis of revolution (X, Y or Z)
+
* axis of revolution (X, Y, Z, or a custom 3D axis)
 
* cylinder radius
 
* cylinder radius
 
* optionally a point on the axis (''otherwise CloudCompare can try to guess it by computing the gravity center of the point cloud'')
 
* optionally a point on the axis (''otherwise CloudCompare can try to guess it by computing the gravity center of the point cloud'')
 
* since version 2.11, it is also possible to specify the angular range. By default it's [0-360], but you can input any angular value, and even multiple revolutions.
 
* since version 2.11, it is also possible to specify the angular range. By default it's [0-360], but you can input any angular value, and even multiple revolutions.
 +
 +
Most of these parameters can be populated by choosing an existing cylinder primitive already loaded in the database.
  
 
[[Image:Unroll_angles.JPG|frame|center|'Unroll angular zero and sign' dialog]]
 
[[Image:Unroll_angles.JPG|frame|center|'Unroll angular zero and sign' dialog]]
Line 38: Line 35:
 
* Conical
 
* Conical
 
* Cylindrical (fixed radius)
 
* Cylindrical (fixed radius)
 +
** this mode corresponds to the old 'Cone' unrolling mode in version 2.8 and prior. It unrolls a cone-shaped cloud as if it was a cylinder, by first 'straightening' the cone walls.
 
* Cylindrical (adaptive radius)
 
* Cylindrical (adaptive radius)
  
Line 51: Line 49:
 
Most of these parameters can be populated by choosing an existing cone primitive already loaded in the database.
 
Most of these parameters can be populated by choosing an existing cone primitive already loaded in the database.
  
=== Straightened cone ===
+
== Export deviation scalar field ==
  
This mode was corresponding to the 'Cone' unrolling mode in version 2.8 and prior.
+
A checkbox named 'Export deviation scalar field' allows to compute for each point its radial distance to the theoretical unrolling shape (cylinder or cone). A new scalar field will be added to the output cloud.
 
 
This method unrolls a cone-shaped cloud as if it was a cylinder, by first 'straightening' the cone walls.
 
  
[[Image:Cc_unroll_straightened_cone_dialog.jpg|frame|center|'Unroll straightened cone' dialog]]
+
== Output unrolled cloud in an arbitrary coordinate system ==
  
To unroll a straightened conical shape, the parameters are:
+
Since version 2.13, it is now possible to output the unrolled cloud in an arbitrary coordinate system:
* axis of revolution (X, Y or Z)
+
* X: unroll angle
* half angle (this is the ''aperture'' angle at the cone apex - in degrees)
+
* Y: distance to primitive
* the cone apex position
+
* Z: longitude
* the base radius of the 'straightened' cone (= cylinder)
 
 
 
== Export deviation scalar field ==
 
 
 
A checkbox named 'Export deviation scalar field' allows to compute for each point its radial distance to the theoretical unrolling shape (cylinder or cone). A new scalar field will be added to the output cloud.
 

Latest revision as of 08:47, 6 February 2025

Menu

This tool is accessible via the 'Tools > Projection > Unroll' menu.

Description

This method 'unrolls' a point cloud from a cylindrical (or conical) shape onto a plane:

Cylindrical shape to unroll
Cylindrical shape unrolled
Unrolled cone

Procedure

Select a single cloud then start this tool.

Cylinder

'Unroll cylinder' dialog

Main parameters are:

  • axis of revolution (X, Y, Z, or a custom 3D axis)
  • cylinder radius
  • optionally a point on the axis (otherwise CloudCompare can try to guess it by computing the gravity center of the point cloud)
  • since version 2.11, it is also possible to specify the angular range. By default it's [0-360], but you can input any angular value, and even multiple revolutions.

Most of these parameters can be populated by choosing an existing cylinder primitive already loaded in the database.

'Unroll angular zero and sign' dialog

Cone

Since version 2.9, this method unrolls a cone in a way that preserves surfaces (as if the cone was 'rolling' on a planar surface). And since version 2.13, a sub-option 'Projection' allows to choose the type of conical projection among:

  • Conical
  • Cylindrical (fixed radius)
    • this mode corresponds to the old 'Cone' unrolling mode in version 2.8 and prior. It unrolls a cone-shaped cloud as if it was a cylinder, by first 'straightening' the cone walls.
  • Cylindrical (adaptive radius)
'Unroll cone' dialog

Main parameters are:

  • axis of revolution (X, Y, Z or a custom 3D axis)
  • half angle (this is the aperture angle at the cone apex) in degrees
  • the cone apex position in 3D
  • span ratio
  • start and stop angles

Most of these parameters can be populated by choosing an existing cone primitive already loaded in the database.

Export deviation scalar field

A checkbox named 'Export deviation scalar field' allows to compute for each point its radial distance to the theoretical unrolling shape (cylinder or cone). A new scalar field will be added to the output cloud.

Output unrolled cloud in an arbitrary coordinate system

Since version 2.13, it is now possible to output the unrolled cloud in an arbitrary coordinate system:

  • X: unroll angle
  • Y: distance to primitive
  • Z: longitude