1. cloudComPy module, functions
cloudComPy is the Python module interfacing cloudCompare library. Python3 access to cloudCompare objects is done like this:
import cloudComPy as cc
cc.initCC() # to do once before using plugins
cloud = cc.loadPointCloud("/home/paul/CloudComPy/Data/boule.bin")
- cloudComPy.computeApproxLocalDensity(arg0: _cloudComPy.Density, arg1: float, arg2: list[_cloudComPy.ccHObject]) bool
Computes the local density (approximate) on a list of points clouds (create a scalarField).
Old method (based only on the distance to the nearest neighbor).
Warning As only one neighbor is extracted, the DENSITY_KNN type corresponds in fact to the (inverse) distance to the nearest neighbor.
The density output can be:
the number of neighbors N (only available in ‘Precise’ mode)
a surface density: number of neighbors divided by the neighborhood surface = N / (Pi.R2)
a volume density: number of neighbors divided by the neighborhood volume = N / (4/3.Pi.R3)
- Parameters:
density (Density) – from Density enum
radius (float) – try value obtained by
GetPointCloudRadius()
.clouds (list of
ccHObject
) – list of clouds
- Returns:
True if OK, else False
- Return type:
bool
- cloudComPy.computeCurvature(arg0: _cloudComPy.CurvatureType, arg1: float, arg2: list[_cloudComPy.ccHObject]) bool
Compute the curvature on a list of point clouds (create a scalarField).
The curvature at each point is estimated by best fitting a quadric around it. If there’s not enough neighbors to compute a quadric (i.e. less than 6) an invalid scalar value (NaN) is set for this point. This point will appear in grey (or not at all if you uncheck the ‘display NaN values in grey’ option of the scalar field parameters).
- Parameters:
cvt (CurvatureType) – from CurvatureType.GAUSSIAN_CURV, CurvatureType.MEAN_CURV, CurvatureType.NORMAL_CHANGE_RATE.
radius (float) – try value obtained by
GetPointCloudRadius()
.clouds (list of
ccHObject
) – list of clouds
- Returns:
True if OK, else False
- Return type:
bool
- cloudComPy.computeFeature(arg0: _cloudComPy.GeomFeature, arg1: float, arg2: list[_cloudComPy.ccHObject]) bool
Compute a geometric characteristic on a list of points clouds (create a scalarField).
Geometric feature computed from eigen values/vectors. Most of them are defined in “Contour detection in unstructured 3D point clouds”, Hackel et al, 2016. PCA1 and PCA2 are defined in “3D terrestrial lidar data classification of complex natural scenes using a multi-scale dimensionality criterion: Applications in geomorphology”, Brodu and Lague, 2012.
- Parameters:
feature (GeomFeature) – from GeomFeature enum
radius (float) – try value obtained by
GetPointCloudRadius()
.clouds (list of
ccHObject
) – list of clouds
- Returns:
True if OK, else False
- Return type:
bool
- cloudComPy.computeLocalDensity(arg0: _cloudComPy.Density, arg1: float, arg2: list[_cloudComPy.ccHObject]) bool
Computes the local density on a list of points clouds (create a scalarField).
The density output can be:
the number of neighbors N (only available in ‘Precise’ mode)
a surface density: number of neighbors divided by the neighborhood surface = N / (Pi.R2)
a volume density: number of neighbors divided by the neighborhood volume = N / (4/3.Pi.R3)
- Parameters:
density (Density) – from Density enum
radius (float) – try value obtained by
GetPointCloudRadius()
.clouds (list of
ccHObject
) – list of clouds
- Returns:
True if OK, else False
- Return type:
bool
- cloudComPy.computeMomentOrder1(arg0: float, arg1: list[_cloudComPy.ccHObject]) bool
Computes the first order moment on a list of points clouds (create a scalarField).
- Parameters:
radius (float) – try value obtained by
GetPointCloudRadius()
.clouds (list of
ccHObject
) – list of clouds
- Returns:
True if OK, else False
- Return type:
bool
- cloudComPy.computeNormals(selectedEntities: list[_cloudComPy.ccHObject], model: _cloudComPy.LOCAL_MODEL_TYPES = <LOCAL_MODEL_TYPES.LS: 1>, useScanGridsForComputation: bool = True, defaultRadius: float = 0.0, minGridAngle_deg: float = 1.0, orientNormals: bool = True, useScanGridsForOrientation: bool = True, useSensorsForOrientation: bool = True, preferredOrientation: _cloudComPy.Orientation = <Orientation.UNDEFINED: 255>, orientNormalsMST: bool = True, mstNeighbors: int = 6, computePerVertexNormals: bool = True) bool
Compute normals on a list of clouds and meshes.
- Parameters:
selectedEntities (list of
ccHObject
) – list of entities (clouds, meshes)model (LOCAL_MODEL_TYPES,optional) – default = LOCAL_MODEL_TYPES.LS (Least Square best fitting plane)
useScanGridsForComputation (bool,optional) – default True, whether to use ScanGrids when available
defaultRadius (float,optional) – default 0.0
minGridAngle_deg (float,optional) – default 1.0
orientNormals (bool,optional) – default True
useScanGridsForOrientation (bool,optional) – default True, when ScanGrids available
useSensorsForOrientation (bool,optional) – default True, when Sensors available
preferredOrientation (Orientation,optional) – default Orientation.UNDEFINED
orientNormalsMST (bool,optional) – default True, use Minimum Spanning Tree
mstNeighbors (int,optional) – default 6, for Minimum Spanning Tree
computePerVertexNormals (bool,optional) – default True, apply on mesh, if True, compute on vertices, if False, compute on triangles
- Returns:
success
- Return type:
bool
- cloudComPy.computeRoughness(radius: float, clouds: list[_cloudComPy.ccHObject], roughnessUpDir: Vector3Tpl<T> = (0.0, 0.0, 0.0)) bool
Computes the roughness on a list of points clouds (create a scalarField).
Roughness estimation is very… simple: for each point, the ‘roughness’ value is equal to the distance between this point and the best fitting plane computed on its nearest neighbors. If there’s not enough neighbors to compute a LS plane (i.e. less than 3) an invalid scalar value (NaN) is set for this point. This point will appear in grey (or not at all if you uncheck the ‘display NaN values in grey’ option in the scalar field properties).
- Parameters:
radius (float) – try value obtained by
GetPointCloudRadius()
.clouds (list of
ccHObject
) – list of cloudsroughnessUpDir (vector,optional) – when defined, up direction allows a signed value of the roughness (up: positive, down: negative)
- Returns:
True if OK, else False
- Return type:
bool
- cloudComPy.ComputeVolume25D(reportInfo: _cloudComPy.ReportInfoVol, ground: _cloudComPy.ccGenericPointCloud, ceil: _cloudComPy.ccGenericPointCloud, vertDim: int, gridStep: float, groundHeight: float, ceilHeight: float, projectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, groundEmptyCellFillStrategy: _cloudComPy.EmptyCellFillOption = <EmptyCellFillOption.LEAVE_EMPTY: 0>, groundMaxEdgeLength: float = 0.0, ceilEmptyCellFillStrategy: _cloudComPy.EmptyCellFillOption = <EmptyCellFillOption.LEAVE_EMPTY: 0>, ceilMaxEdgeLength: float = 0) bool
Compute a 2.5D volume between a cloud and a ground plane,or two clouds,following a given direction (X, Y or Z).
If only one cloud is given, the direction (X, Y or Z) defines the normal to the plane used for calculation.
- Parameters:
reportInfo (ReportInfoVol) – the object instance to be completed with results
ground (ccPointCloud) – either a point cloud or None
ceil (ccPointCloud) – either a point cloud or None
vertDim (int) – direction from (0,1,2): 0: X, 1: Y, 2: Z
gridStep (float) – size of the grid step
groundHeight (float) – altitude of the ground plane along the direction, if ground is None
ceilHeight (float) – altitude of the ceil plane along the direction, if ceil is None
projectionType (ProjectionType,optional) – default PROJ_AVERAGE_VALUE
groundEmptyCellFillStrategy (EmptyCellFillOption,optional) – default LEAVE_EMPTY
groundMaxEdgeLength (float,optional) – default 0
ceilEmptyCellFillStrategy (EmptyCellFillOption,optional) – default LEAVE_EMPTY
ceilMaxEdgeLength (float,optional) – default 0
- Returns:
True if success, False if problem detected in parameters
- Return type:
bool
- cloudComPy.deleteEntity(arg0: _cloudComPy.ccHObject) None
Delete an entity and its children (mesh, cloud…)
Warning No automatic action on the Python side on the variables referencing the C++ object!
cc.deleteEntity(anEntity) anEntity = None
- Parameters:
entity (ccHObject) – the entity to remove
- cloudComPy.ExtractConnectedComponents(clouds: list[_cloudComPy.ccHObject], octreeLevel: int = 8, minComponentSize: int = 100, maxNumberComponents: int = 100, randomColors: bool = False) tuple
Extracts connected components from a set of clouds.
There are 2 tools relative to connected components: ExtractConnectedComponents and LabelConnectedComponents. ExtractConnectedComponents Creates separate clouds and LabelConnectedComponents creates a scalar field. ExtractConnectedComponents segments the clouds in smaller parts separated by a minimum distance. Each part is a connected component (i.e. a set of ‘connected’ points). CloudCompare uses a 3D grid to extract the connected components. This grid is deduced from the octree structure. By selecting on octree level you define how small is the minimum gap between two components. If n is the octree level and d the dimension of the clouds (Bounding box side), the gap is roughly d/2**n.
- Parameters:
clouds (list[ccPointCloud]) – the set of clouds
octreeLevel (int,optional) – the octree level used to define the connection between nodes, default 8.
minComponentSize (int,optional) – the minimum number of nodes to constitute a component, default 100. The residual nodes are regrouped in a “residual component” (one per input cloud).
maxNumberComponents (int,optional) – maximum number of components accepted (default 100): The process stops when this number is reached. The return gives the number of clouds already processed. Check this number to see if some clouds have not been processed.
randomColors (bool optional) – whether to color randomly the components or not, default False.
- Returns:
a tuple (number of clouds processed, list of components, list of residual components)
- Return type:
tuple
- cloudComPy.extractPointsAlongSections(clouds: list[_cloudComPy.ccGenericPointCloud], sections: list[_cloudComPy.ccPolyline], defaultSectionThickness: float = -1.0, envelopeMaxEdgeLength: float = 0, extractSectionsAsClouds: bool = False, extractSectionsAsEnvelopes: bool = True, multipass: bool = False, splitEnvelope: bool = False, s_extractSectionsType: _cloudComPy.EnvelopeType = <EnvelopeType.ENV_LOWER: 0>, vertDim: int = 2) list[_cloudComPy.ccHObject]
Extract clouds slices along sections or generate vertical profiles.
Either the points are kept where they are (result are clouds slices), or the points are projected on a plane formed by section and the vertical direction (result are polylines).
- Parameters:
clouds (list[ccPointCloud]) – list of clouds
sections (list[ccPolyline]) – list of sections
defaultSectionThickness (double,optional) – point are kept if distance from section < defaultSectionThickness/2 default -1, meaning clouds bounding box / 500
envelopeMaxEdgeLength (double,optional) – maximum edge length for split edges operation default 0 meaning clouds bounding box / 500
extractSectionsAsClouds (bool,optional) – get the result as clouds, default False
extractSectionsAsEnvelopes (bool,optional) – get the result as polylines, default True
multipass (bool,optional) – default False
splitEnvelope (bool,optional) – default false, split envelope following clouds
EnvelopeType (int,optional) – from fCloudComPy.EnvelopeType, default ENV_LOWER
vertDim (int,optional) – vertical direction, value in O (oX), 1 (oY), 2 (oZ), default 2
- Returns:
list of entities (cloud or polyline)
- Return type:
list of ccPointClouds or ccPolylines
- cloudComPy.ExtractSlicesAndContours(entities: list[_cloudComPy.ccHObject], bbox: _cloudComPy.ccBBox, bboxTrans: _cloudComPy.ccGLMatrix = <_cloudComPy.ccGLMatrix object at 0x14a619ff0>, singleSliceMode: bool = True, processRepeatX: bool = False, processRepeatY: bool = False, processRepeatZ: bool = True, extractEnvelopes: bool = False, maxEdgeLength: float = 0, envelopeType: int = 0, extractLevelSet: bool = False, levelSetGridStep: float = 0, levelSetMinVertCount: int = 0, gap: float = 0, multiPass: bool = False, splitEnvelopes: bool = False, projectOnBestFitPlane: bool = False, generateRandomColors: bool = False) tuple
Extract slices, envelopes and contours from a set of clouds and meshes (Cross section).
Slices are the part of cloud or mesh contained in the bounding box used as a tool to cut. Slicing can be repeated selectively along the 3 directions X, Y, Z, with optional gaps between slices. Optional envelopes are closed polylines defining a concave external boundary of the slices. Optional contours are closed polylines defining boundaries (external and internal) of the slices. The contours are built via a rasterisation process.
- Parameters:
entities (list[ccHObjects]) – the list of point clouds and meshes to slice.
bbox (ccBBox) – the bounding box used as a slice tool.
bboxTrans (ccGLMatrix,optional) – optional transformation (rotation translation) of the bounding box, default identity.
singleSliceMode (boolean,optional) – whether to cut just one slice or repeat the process, default True, i.e. only one slice.
processRepeatX (boolean,optional) – whether to repeat along the X direction (if singleSliceMode False), default False.
processRepeatY (boolean,optional) – whether to repeat along the Y direction (if singleSliceMode False), default False.
processRepeatZ (boolean,optional) – whether to repeat along the Z direction (if singleSliceMode False), default True.
extractEnvelopes (boolean,optional) – whether to extract the envelopes or not, default False.
maxEdgeLength (double,optional) – maximum edge length for the envelope, default 0=convex envelope.
envelopeType (int,optional) – type of envelope, default 0. 0: envelope built on the lower part of the slice, 1: upper part, 2: all the slice.
extractLevelSet (boolean,optional) – whether to extract contours or not, default False.
levelSetGridStep (double,optional) – grid step to use for the rasterisation needed to build the contours
levelSetMinVertCount (int,optional) – number of points required to define a contour, default 0 (change it!).
gap (double,optional) – gap between slices, default 0.
multiPass (boolean,optional) – Multi-pass process where longer edges may be temporarily created to obtain a better fit… or a worst one! Default False.
splitEnvelopes (boolean,optional) – split the generated contour(s) in smaller parts to avoid creating edges longer than the specified max edge length. Default False.
projectOnBestFitPlane (boolean,optional) – Before extracting the contour, points can be projected along the repeat dimension (if only one is defined) or on the best fit plane. Default False.
boolean,optionalgenerateRandomColors – whether to define random colors per slice (will overwrite existing colors!) or not. Default False.
- Returns:
a tuple of 3 lists ([slices], [envelopes], [contours])
- Return type:
tuple
- cloudComPy.filterBySFValue(*args, **kwargs)
Overloaded function.
filterBySFValue(arg0: float, arg1: float, arg2: _cloudComPy.ccPointCloud) -> _cloudComPy.ccPointCloud
Create a new point cloud by filtering points using the current out ScalarField (see cloud.setCurrentOutScalarField). Keep the points whose ScalarField value is between the min and max parameters.
- Parameters:
min (float) – minimum value to keep
max (float) – maximum value to keep
cloud (ccPointCloud) – the input cloud
- Returns:
a ccPointCloud object.
- Return type:
filterBySFValue(arg0: float, arg1: float, arg2: _cloudComPy.ccMesh) -> _cloudComPy.ccMesh
Create a new mesh by filtering points using the current out ScalarField (see getAssociatedCloud().setCurrentOutScalarField). Keep the points whose ScalarField value is between the min and max parameters.
- cloudComPy.GetPointCloudRadius(clouds: list[_cloudComPy.ccHObject], nodes: int = 12) float
Compute an estimate radius to use in computeCurvature.
- Parameters:
clouds (list) – list of clouds(list of
ccHObject
)nodes (int,optional) – number of nodes wanted within the radius, default 12
- Returns:
estimated radius
- Return type:
float
- cloudComPy.getScalarType() str
Get the scalar type used in cloudCompare under the form defined in Numpy: ‘float32’ or ‘float64’
- Returns:
scalar type
- Return type:
str
- cloudComPy.ICP(data: _cloudComPy.ccHObject, model: _cloudComPy.ccHObject, minRMSDecrease: float = 1e-05, maxIterationCount: int = 20, randomSamplingLimit: int = 50000, removeFarthestPoints: bool = False, method: _cloudComPy.CONVERGENCE_TYPE = <CONVERGENCE_TYPE.MAX_ITER_CONVERGENCE: 1>, adjustScale: bool = False, finalOverlapRatio: float = 1.0, useDataSFAsWeights: bool = False, useModelSFAsWeights: bool = False, transformationFilters: int = <TRANSFORMATION_FILTERS.SKIP_NONE: 0>, maxThreadCount: int = 0, useC2MSignedDistances: bool = False, robustC2MSignedDistances: bool = True, normalMatching: _cloudComPy.normalMatching = <normalMatching.NO_NORMAL: 0>) _cloudComPy.ICPres
Applies ICP registration on two entities.
- Parameters:
data (ccHObject) – cloud to align.
model (ccHObject) – reference cloud.
minRMSDecrease (float,optional) – The minimum error (RMS) reduction between two consecutive steps to continue process, if CONVERGENCE_TYPE == MAX_ERROR_CONVERGENCE. Default 1.E-5.
maxIterationCount (int,optional) – Stop after this number of iterations, if CONVERGENCE_TYPE == MAX_ITER_CONVERGENCE. Default 20.
randomSamplingLimit (int,optional) – Limit above which clouds should be randomly resampled. Default 50000.
removeFarthestPoints (bool,optional) – If True, the algorithm will automatically ignore farthest points from the reference. This is a trick to improve registration for slightly different clouds. Default False.
method (CONVERGENCE_TYPE,optional) – Mode of convergence, CONVERGENCE_TYPE.MAX_ITER_CONVERGENCE or CONVERGENCE_TYPE.MAX_ERROR_CONVERGENCE. Default CONVERGENCE_TYPE.MAX_ITER_CONVERGENCE
adjustScale (bool) – Whether to release the scale parameter during the registration procedure or not. Default False.
finalOverlapRatio (float,optional) – Theoretical overlap ratio (at each iteration, only this percentage (between 0 and 1). Will be used for registration (default 1.0).
useDataSFAsWeights (bool,optional) – Weights for data points (default False). The scalar field must be the current SF in data (see setCurrentScalarField)
useModelSFAsWeights (bool,optional) – Weights for model points (default False). The scalar field must be the current SF in model (see setCurrentScalarField)
transformationFilters (TRANSFORMATION_FILTERS,optional) –
Filters to be applied on the resulting transformation at each step (default 0).
SKIP_NONE = 0
SKIP_RXY = 1
SKIP_RYZ = 2
SKIP_RXZ = 4
SKIP_ROTATION = 7
SKIP_TX = 8
SKIP_TY = 16
SKIP_TZ = 32
SKIP_TRANSLATION = 56
maxThreadCount (int,optional) – Maximum number of threads to use (default 0 = max)
useC2MSignedDistances (bool,optional) – use signed distances (default False)
robustC2MSignedDistances (bool,optional) – use robust signed distances (default True)
normalMatching (normalMatching,optional) – type of normal matching, default NO_NORMAL values from (NO_NORMAL, OPPOSITE_NORMALS, SAME_SIDE_NORMALS, DOUBLE_SIDED_NORMALS)
- Returns:
ICPres structure
ICPres
- cloudComPy.importFile(filename: str, mode: _cloudComPy.CC_SHIFT_MODE = <CC_SHIFT_MODE.AUTO: 0>, x: float = 0, y: float = 0, z: float = 0, extraData: QString = '') tuple
Load the entities (cloud or mesh) from a file containing several entities, and get file structure (some files as
.E57
provide structured information on content, given here as a list of strings).WARNING Shift parameters are not always taken into account, depending on the type of file, shift values, following the internal rules of CloudCompare: when using the CloudCompare GUI, shift dialog at import is not always available. When the shift dialog is not proposed in the GUI, shift parameters are likely not taken into account in CloudCompare.
Optional string extraData can be used in ply file, for instance, to select extra fields for import as scalarFields (by default, all extra fields are imported as scalar fields). Here, the filter is a regular expression that works on the field name in uppercase.
Optional string extraData can also be used to filter (regular expression) the scans to import in a
.E57
file (without the parameter, all the scans are imported).- Parameters:
filename (str) – file Name
mode (CC_SHIFT_MODE,optional) – default AUTO, value from AUTO, XYZ, FIRST_GLOBAL_SHIFT, NO_GLOBAL_SHIFT
x (float,optional) – default 0
y (float,optional) – default 0
z (float,optional) – default 0
extraData (string,optional) – default empty string
- Returns:
a tuple (list of meshes, list of clouds, file structure)
- Return type:
tuple
- cloudComPy.initCC() None
Done at module init, should be done once before using plugins!
- cloudComPy.initCloudCompare() None
Done at module init, should be done once after initCC before using plugins!
- cloudComPy.interpolateScalarFieldsFrom(destCloud: _cloudComPy.ccPointCloud, srcCloud: _cloudComPy.ccPointCloud, sfIndexes: list[int], params: _cloudComPy.interpolatorParameters, octreeLevel: int = 0) bool
Interpolate scalar fields from a source cloud to a destination cloud.
- Parameters:
destCloud (ccPointCloud) – the cloud receiving the interpolatated scalar fields.
srcCloud (ccPointCloud) – the source cloud containing the scalar fields to interpolate.
sfIndexes (list) – the list of indexes of scalar fields in the source cloud, to interpolate.
params (interpolatorParameters) – interpolation parameter structure
octreeLevel (int,optional) – octree level, default 0
- Returns:
success
- Return type:
bool
- cloudComPy.invertNormals(arg0: list[_cloudComPy.ccHObject]) bool
Invert normals on a list of clouds and meshes.
- Returns:
success
- Return type:
bool
- cloudComPy.isPluginCanupo() bool
returns True if CloudComPy is built with the CANUPO plugin.
- Returns:
True if CloudComPy is built with the CANUPO plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginCSF() bool
returns True if CloudComPy is built with the CSF plugin.
- Returns:
True if CloudComPy is built with the CSF plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginCork() bool
returns True if CloudComPy is built with the Cork plugin.
- Returns:
True if CloudComPy is built with the Cork plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginDraco() bool
returns True if CloudComPy is built with the Draco plugin.
- Returns:
True if CloudComPy is built with the Draco plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginFbx() bool
returns True if CloudComPy is built with the Fbx plugin.
- Returns:
True if CloudComPy is built with the Fbx plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginHPR() bool
returns True if CloudComPy is built with the HPR plugin.
- Returns:
True if CloudComPy is built with the HPR plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginM3C2() bool
returns True if CloudComPy is built with the M3C2 plugin.
- Returns:
True if CloudComPy is built with the M3C2 plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginMeshBoolean() bool
returns True if CloudComPy is built with the MeshBoolean plugin.
- Returns:
True if CloudComPy is built with the MeshBoolean plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginPCL() bool
returns True if CloudComPy is built with the PCL plugin.
- Returns:
True if CloudComPy is built with the PCL plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginPCV() bool
returns True if CloudComPy is built with the PCV plugin.
- Returns:
True if CloudComPy is built with the PCV plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginPoissonRecon() bool
returns True if CloudComPy is built with the PoisssonRecon plugin.
- Returns:
True if CloudComPy is built with the PoissonRecon plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginRANSAC_SD() bool
returns True if CloudComPy is built with the RANSAC_SD plugin.
- Returns:
True if CloudComPy is built with the RANSAC_SD plugin, False otherwise.
- Return type:
bool
- cloudComPy.isPluginSRA() bool
returns True if CloudComPy is built with the SRA plugin.
- Returns:
True if CloudComPy is built with the SRA plugin, False otherwise.
- Return type:
bool
- cloudComPy.LabelConnectedComponents(clouds: list[_cloudComPy.ccHObject], octreeLevel: int = 8) int
Label connected components in a set of clouds.
There are 2 tools relative to connected components: ExtractConnectedComponents and LabelConnectedComponents. ExtractConnectedComponents Creates separate clouds and LabelConnectedComponents creates a scalar field in each cloud examined, assigning an integer value to each node. Nodes sharing the same value are connected and form a component. The function returns the number of components. The clouds are segmented in smaller parts separated by a minimum distance. Each part is a connected component (i.e. a set of ‘connected’ points). CloudCompare uses a 3D grid to extract the connected components. This grid is deduced from the octree structure. By selecting on octree level you define how small is the minimum gap between two components. If n is the octree level and d the dimension of the clouds (Bounding box side), the gap is roughly d/2**n.
- Parameters:
clouds (list[ccPointCloud]) – the set of clouds
octreeLevel (int,optional) – the octree level used to define the connection between nodes, default 8.
- Returns:
number of found connected components
- Return type:
int
- cloudComPy.loadMesh(filename: str, mode: _cloudComPy.CC_SHIFT_MODE = <CC_SHIFT_MODE.AUTO: 0>, skip: int = 0, x: float = 0, y: float = 0, z: float = 0, extraData: QString = '') _cloudComPy.ccMesh
Load a Mesh from a file.
WARNING Shift parameters are not always taken into account, depending on the type of file, shift values, following the internal rules of CloudCompare: when using the CloudCompare GUI, shift dialog at import is not always available. When the shift dialog is not proposed in the GUI, shift parameters are likely not taken into account in CloudCompare.
Optional string extraData can be used in ply file, for instance, to select extra fields for import as scalarFields (by default, all extra fields are imported as scalar fields). Here, the filter is a regular expression that works on the field name in uppercase.
- Parameters:
filename (str) – file name
shiftMode (CC_SHIFT_MODE,optional) –
shift mode from CC_SHIFT_MODE enum, default AUTO.
CC_SHIFT_MODE.AUTO: automatic shift of coordinates
CC_SHIFT_MODE.XYZ: coordinates shift given by x, y, z parameters
CC_SHIFT_MODE.FIRST_GLOBAL_SHIFT: use the first encountered global shift value (if any)
CC_SHIFT_MODE.NO_GLOBAL_SHIFT: no shift at all
skip (int,optional) – parameter not used yet! default 0
x (float,optional) – shift value for coordinates (mode XYZ), default 0
y (float,optional) – shift value for coordinates (mode XYZ), default 0
z (float,optional) – shift value for coordinates (mode XYZ), default 0
extraData (string,optional) – default empty string
- Returns:
a ccMesh object. Usage: see ccMesh doc.
- Return type:
- cloudComPy.loadPointCloud(filename: str, mode: _cloudComPy.CC_SHIFT_MODE = <CC_SHIFT_MODE.AUTO: 0>, skip: int = 0, x: float = 0, y: float = 0, z: float = 0, extraData: QString = '') _cloudComPy.ccPointCloud
Load a 3D cloud from a file.
WARNING Shift parameters are not always taken into account, depending on the type of file, shift values, following the internal rules of CloudCompare: when using the CloudCompare GUI, shift dialog at import is not always available. When the shift dialog is not proposed in the GUI, shift parameters are likely not taken into account in CloudCompare.
Optional string extraData can be used in ply file, for instance, to select extra fields for import as scalarFields (by default, all extra fields are imported as scalar fields). Here, the filter is a regular expression that works on the field name in uppercase.
- Parameters:
filename (str) – file name
shiftMode (CC_SHIFT_MODE,optional) –
shift mode from CC_SHIFT_MODE enum, default AUTO.
CC_SHIFT_MODE.AUTO: automatic shift of coordinates
CC_SHIFT_MODE.XYZ: coordinates shift given by x, y, z parameters
CC_SHIFT_MODE.FIRST_GLOBAL_SHIFT: use the first encountered global shift value (if any)
CC_SHIFT_MODE.NO_GLOBAL_SHIFT: no shift at all
skip (int,optional) – parameter not used yet! default 0
x (float,optional) – shift value for coordinates (mode XYZ), default 0
y (float,optional) – shift value for coordinates (mode XYZ), default 0
z (float,optional) – shift value for coordinates (mode XYZ), default 0
extraData (string,optional) – default empty string
- Returns:
a ccPointCloud object. Usage: see ccPointCloud doc.
- Return type:
- cloudComPy.loadPolyline(filename: str, mode: _cloudComPy.CC_SHIFT_MODE = <CC_SHIFT_MODE.AUTO: 0>, skip: int = 0, x: float = 0, y: float = 0, z: float = 0) _cloudComPy.ccPolyline
Load a polyline from a file.
- Parameters:
filename (str) – The polyline file.
mode (CC_SHIFT_MODE,optional) –
from (AUTO, XYZ), optional, default AUTO.
AUTO: automatic shift of coordinates
XYZ: coordinates shift given by x, y, z parameters
skip (int,optional) – not used yet! default 0.
x (float,optional) – optional shift value for coordinates (mode XYZ), default 0
y (float,optional) – optional shift value for coordinates (mode XYZ), default 0
z (float,optional) – optional shift value for coordinates (mode XYZ), default 0
- Returns:
a ccPolyline object.
- Return type:
Usage: see ccPolyline doc.
- cloudComPy.MergeEntities(entities: list[_cloudComPy.ccHObject], deleteOriginalClouds: bool = False, createSFcloudIndex: bool = False, createSubMeshes: bool = False) _cloudComPy.ccHObject
Merge a list of point clouds, or a list of meshes.
- Parameters:
entities (tuple) – list of clouds or list of meshes (not mixed)
deleteOriginalClouds (bool,optional) – whether to delete the original clouds or not, default false WARNING No automatic action on the Python side to disable the variables referencing deleted objects! (same behavior as “deleteEntity” function).
createSFcloudIndex (bool,optional) – create a scalar field with the original cloud indexes, default false
createSubMeshes (bool,optional) – create submeshes with original meshes, default false
- Returns:
merged entity
- Return type:
ccHObject (cloud or mesh)
- cloudComPy.RasterizeGeoTiffOnly(cloud: _cloudComPy.ccGenericPointCloud, gridStep: float, vertDir: _cloudComPy.CC_DIRECTION = <CC_DIRECTION.Z: 2>, outputRasterZ: bool = False, outputRasterSFs: bool = False, outputRasterRGB: bool = False, pathToImages: str = '.', resample: bool = False, projectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, sfProjectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, emptyCellFillStrategy: _cloudComPy.EmptyCellFillOption = <EmptyCellFillOption.LEAVE_EMPTY: 0>, DelaunayMaxEdgeLength: float = 1.0, KrigingParamsKNN: int = 8, customHeight: float = nan, gridBBox: _cloudComPy.ccBBox = <_cloudComPy.ccBBox object at 0x14a63a9f0>, percentile: float = 50.0, export_perCellCount: bool = False, export_perCellMinHeight: bool = False, export_perCellMaxHeight: bool = False, export_perCellAvgHeight: bool = False, export_perCellHeightStdDev: bool = False, export_perCellHeightRange: bool = False, export_perCellMedian: bool = False, export_perCellPercentile: bool = False, export_perCellUniqueCount: bool = False) _cloudComPy.ccHObject
Compute a GeoTiff file from a point cloud, given a grid step and a direction.
GeoTiff files are only available with the GDAL plugin.
- Parameters:
cloud (ccGenericPointCloud*) – the original cloud
gridStep (float) – the raster grid step
vertDir (CC_DIRECTION,optional) – default = CC_DIRECTION.Z, direction of projection
outputRasterZ (bool,optional) – default False, create a GeoTiff file (3D tiff with altitude)
outputRasterSFs (bool,optional) – default False, add scalar fields to the GeoTiff file (requires outputRasterZ)
outputRasterRGB (bool,optional) – default False, create a GeoTiff file with GRB values (choose either Z or RGB, not the two)
pathToImages (string,optional) – default “.” for current directory, directory for the GeoTiff file, name basesd on Cloud name plus suffix
resample (bool,optional) – default False, resample the point cloud
projectionType (ProjectionType,optional) – default ProjectionType.PROJ_AVERAGE_VALUE,
sfProjectionType (ProjectionType,optional) – default ProjectionType.PROJ_AVERAGE_VALUE,
emptyCellFillStrategy (EmptyCellFillOption,optional) – default EmptyCellFillOption.LEAVE_EMPTY
DelaunayMaxEdgeLength (double,optional) – used when EmptyCellFillOption is INTERPOLATE_DELAUNAY: maximum edge length, default 1.0
KrigingParamsKNN (int,optional) – used when EmptyCellFillOption is KRIGING: number of neighbour nodes, default 8
customHeight (float,optional) – default float(‘nan’)
gridBBox (ccBBox,optional) – default ccBBox() the bounding box used for the raster is by default the cloud bounding box
percentile (float,optional) – the percentile value to use for export percentile statistics, default 50.
export_perCellCount (bool,optional) – export scalarField, default False
export_perCellMinHeight (bool,optional) – export scalarField, default False
export_perCellMaxHeight (bool,optional) – export scalarField, default False
export_perCellAvgHeight (bool,optional) – export scalarField, default False
export_perCellHeightStdDev (bool,optional) – export scalarField, default False
export_perCellHeightRange (bool,optional) – export scalarField, default False
export_perCellMedian (bool,optional) – export scalarField, default False
export_perCellPercentile (bool,optional) – export scalarField, default False
export_perCellUniqueCount (bool,optional) – export scalarField, default False
- Returns:
None
- Return type:
None
- cloudComPy.RasterizeToCloud(cloud: _cloudComPy.ccGenericPointCloud, gridStep: float, vertDir: _cloudComPy.CC_DIRECTION = <CC_DIRECTION.Z: 2>, outputRasterZ: bool = False, outputRasterSFs: bool = False, outputRasterRGB: bool = False, pathToImages: str = '.', resample: bool = False, projectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, sfProjectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, emptyCellFillStrategy: _cloudComPy.EmptyCellFillOption = <EmptyCellFillOption.LEAVE_EMPTY: 0>, DelaunayMaxEdgeLength: float = 1.0, KrigingParamsKNN: int = 8, customHeight: float = nan, gridBBox: _cloudComPy.ccBBox = <_cloudComPy.ccBBox object at 0x14a63a230>, percentile: float = 50.0, export_perCellCount: bool = False, export_perCellMinHeight: bool = False, export_perCellMaxHeight: bool = False, export_perCellAvgHeight: bool = False, export_perCellHeightStdDev: bool = False, export_perCellHeightRange: bool = False, export_perCellMedian: bool = False, export_perCellPercentile: bool = False, export_perCellUniqueCount: bool = False) _cloudComPy.ccPointCloud
Compute a Raster cloud from a point cloud, given a grid step and a direction, plus an optional GeoTiff file.
GeoTiff files are only available with the GDAL plugin.
- Parameters:
cloud (ccGenericPointCloud*) – the original cloud
gridStep (float) – the raster grid step
vertDir (CC_DIRECTION,optional) – default = CC_DIRECTION.Z, direction of projection
outputRasterZ (bool,optional) – default False, create also a GeoTiff file (3D tiff with altitude)
outputRasterSFs (bool,optional) – default False, add scalar fields to the GeoTiff file (requires outputRasterZ)
outputRasterRGB (bool,optional) – default False, create also a GeoTiff file with GRB values (choose either Z or RGB, not the two)
pathToImages (string,optional) – default “.” for current directory, directory for the GeoTiff file, name basesd on Cloud name plus suffix
resample (bool,optional) – default False, resample the point cloud
projectionType (ProjectionType,optional) – default ProjectionType.PROJ_AVERAGE_VALUE,
sfProjectionType (ProjectionType,optional) – default ProjectionType.PROJ_AVERAGE_VALUE,
emptyCellFillStrategy (EmptyCellFillOption,optional) – default EmptyCellFillOption.LEAVE_EMPTY
DelaunayMaxEdgeLength (double,optional) – used when EmptyCellFillOption is INTERPOLATE_DELAUNAY: maximum edge length, default 1.0
KrigingParamsKNN (int,optional) – used when EmptyCellFillOption is KRIGING: number of neighbour nodes, default 8
customHeight (float,optional) – default float(‘nan’)
gridBBox (ccBBox,optional) – default ccBBox() the bounding box used for the raster is by default the cloud bounding box
percentile (float,optional) – the percentile value to use for export percentile statistics, default 50.
export_perCellCount (bool,optional) – export scalarField, default False
export_perCellMinHeight (bool,optional) – export scalarField, default False
export_perCellMaxHeight (bool,optional) – export scalarField, default False
export_perCellAvgHeight (bool,optional) – export scalarField, default False
export_perCellHeightStdDev (bool,optional) – export scalarField, default False
export_perCellHeightRange (bool,optional) – export scalarField, default False
export_perCellMedian (bool,optional) – export scalarField, default False
export_perCellPercentile (bool,optional) – export scalarField, default False
export_perCellUniqueCount (bool,optional) – export scalarField, default False
- Returns:
the raster cloud
- Return type:
- cloudComPy.RasterizeToMesh(cloud: _cloudComPy.ccGenericPointCloud, gridStep: float, vertDir: _cloudComPy.CC_DIRECTION = <CC_DIRECTION.Z: 2>, outputRasterZ: bool = False, outputRasterSFs: bool = False, outputRasterRGB: bool = False, pathToImages: str = '.', resample: bool = False, projectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, sfProjectionType: _cloudComPy.ProjectionType = <ProjectionType.PROJ_AVERAGE_VALUE: 1>, emptyCellFillStrategy: _cloudComPy.EmptyCellFillOption = <EmptyCellFillOption.LEAVE_EMPTY: 0>, DelaunayMaxEdgeLength: float = 1.0, KrigingParamsKNN: int = 8, customHeight: float = nan, gridBBox: _cloudComPy.ccBBox = <_cloudComPy.ccBBox object at 0x14a63a570>, percentile: float = 50.0, export_perCellCount: bool = False, export_perCellMinHeight: bool = False, export_perCellMaxHeight: bool = False, export_perCellAvgHeight: bool = False, export_perCellHeightStdDev: bool = False, export_perCellHeightRange: bool = False, export_perCellMedian: bool = False, export_perCellPercentile: bool = False, export_perCellUniqueCount: bool = False) _cloudComPy.ccMesh
Compute a Raster mesh from a point cloud, given a grid step and a direction, plus an optional GeoTiff file.
GeoTiff files are only available with the GDAL plugin.
- Parameters:
cloud (ccGenericPointCloud*) – the original cloud
gridStep (float) – the raster grid step
vertDir (CC_DIRECTION,optional) – default = CC_DIRECTION.Z, direction of projection
outputRasterZ (bool,optional) – default False, create also a GeoTiff file (3D tiff with altitude)
outputRasterSFs (bool,optional) – default False, add scalar fields to the GeoTiff file (requires outputRasterZ)
outputRasterRGB (bool,optional) – default False, create also a GeoTiff file with GRB values (choose either Z or RGB, not the two)
pathToImages (string,optional) – default “.” for current directory, directory for the GeoTiff file, name basesd on Cloud name plus suffix
resample (bool,optional) – default False, resample the point cloud
projectionType (ProjectionType,optional) – default ProjectionType.PROJ_AVERAGE_VALUE,
sfProjectionType (ProjectionType,optional) – default ProjectionType.PROJ_AVERAGE_VALUE,
emptyCellFillStrategy (EmptyCellFillOption,optional) – default EmptyCellFillOption.LEAVE_EMPTY
DelaunayMaxEdgeLength (double,optional) – used when EmptyCellFillOption is INTERPOLATE_DELAUNAY: maximum edge length, default 1.0
KrigingParamsKNN (int,optional) – used when EmptyCellFillOption is KRIGING: number of neighbour nodes, default 8
customHeight (float,optional) – default float(‘nan’)
gridBBox (ccBBox,optional) – default ccBBox() the bounding box used for the raster is by default the cloud bounding box
percentile (float,optional) – the percentile value to use for export percentile statistics, default 50.
export_perCellCount (bool,optional) – export scalarField, default False
export_perCellMinHeight (bool,optional) – export scalarField, default False
export_perCellMaxHeight (bool,optional) – export scalarField, default False
export_perCellAvgHeight (bool,optional) – export scalarField, default False
export_perCellHeightStdDev (bool,optional) – export scalarField, default False
export_perCellHeightRange (bool,optional) – export scalarField, default False
export_perCellMedian (bool,optional) – export scalarField, default False
export_perCellPercentile (bool,optional) – export scalarField, default False
export_perCellUniqueCount (bool,optional) – export scalarField, default False
- Returns:
the raster mesh
- Return type:
- cloudComPy.SaveEntities(arg0: list[_cloudComPy.ccHObject], arg1: QString) _cloudComPy.CC_FILE_ERROR
Save a list of entities (cloud, meshes, primitives…) in a file: use bin format!
- Parameters:
entities (list of
ccHObject
) – list of entitiesfilename (str) – The entities file.
- Returns:
0 or I/O error.
- Return type:
- cloudComPy.SaveMesh(arg0: _cloudComPy.ccMesh, arg1: QString) _cloudComPy.CC_FILE_ERROR
Save a 3D mesh in a file.
The file name extension determines the format (.ma .dxf .off .stl .vtk .obj .ply .bin .fbx)
- Parameters:
mesh (ccMesh) – the mesh to save.
filename (str) – The mesh file.
- Returns:
0 or I/O error.
- Return type:
- cloudComPy.SavePointCloud(cloud: _cloudComPy.ccPointCloud, filename: QString, version: QString = '', pointFormat: int = -1, isAscii: bool = True) _cloudComPy.CC_FILE_ERROR
Save a 3D cloud in a file.
The file name extension determines the format (.asc .las .E57 .sbf .ply .vtk .dxf .pcd .pn .pv .bin).
Optional values can be used to specify version and format, with the LAS plugin, for .las or .laz files:
version=”1.2” or “1.3” or “1.4” (without version, las or laz file are either saved in the version of the original file or in version 1.2)
pointFormat=N with N integer between 0 and 10
Optional ASCII file format, for ply plugin
- Parameters:
cloud (ccPointCloud) – the cloud to save.
filename (str) – The cloud file.
version (string,optional) – optional string, default “”, used to specify a particular version. (for las plugin only)
pointFormat (int,optional) – optional point format valid values 0 to 10), default -1 (automatically set)(for las plugin only)
isAscii (bool,optional) – optional file format, ASCII or BINARY, default False = BINARY (for ply plugin)
- Returns:
0 or I/O error.
- Return type:
- cloudComPy.setTraces(arg0: bool) None
Activate or deactivate trace system.
- Parameters:
isActive (bool) – whether to activate or deactivate the trace system.
- cloudComPy.unfoldPointsAlongPolylines(clouds: list[_cloudComPy.ccGenericPointCloud], polylines: list[_cloudComPy.ccPolyline], thickness: float, vertDim: int = 2) list[_cloudComPy.ccPointCloud]
Unfold the polylines and the clouds along the polylines, with a given thickness.
- Parameters:
clouds (list[ccPointCloud]) – list of clouds
polylines (list[ccPolyline]) – list of polylines
thickness (double) – only points within the given distance to the polyline are kept
vertDim (int,optional) – vertical direction, value in O (oX), 1 (oY), 2 (oZ), default 2
- Returns:
list of clouds
- Return type:
list of ccPointClouds
- cloudComPy.addToRenderScene(obj: _cloudComPy.ccHObject, showScalar: bool = True) None
RenderViewToFile: add an entity to the scene view.
- Parameters:
entity (ccHObject) – the entity to display
- cloudComPy.removeFromRenderScene(arg0: _cloudComPy.ccHObject) None
RenderViewToFile: remove an entity from the scene view.
WARNING: the entity is deleted! The Python variable is no more usable (set it to None)
- Parameters:
entity (ccHObject) – the entity to remove
- cloudComPy.render(filename: QString, width: int = 1500, height: int = 1000, isInteractive: bool = False) None
RenderViewToFile: write the image file from the 3D scene.
- Parameters:
filename (string) – the filename with it’s path and extension. The extension defines the image format (.png, .jpg, …)
width (int,optional) – the width of the image (pixels), default 1500
height (int,optional) – the height of the image (pixels), default 1000
isInteractive (bool,optional) – default False, whether to keep the IHM viewer active (and suspend Python script).
- cloudComPy.setOrthoView() None
RenderViewToFile: set the type of view to ortho (no perspective)
- cloudComPy.setCenteredPerspectiveView() None
RenderViewToFile: set the type of perspective to object centered
- cloudComPy.setViewerPerspectiveView() None
RenderViewToFile: set the type of perspective to viewer centered
- cloudComPy.setGlobalZoom() None
RenderViewToFile: zoom to the whole scene
- cloudComPy.zoomOnSelectedEntity() None
RenderViewToFile: zoom on the selected entity
- cloudComPy.setFrontView() None
RenderViewToFile: set front view
- cloudComPy.setBottomView() None
RenderViewToFile: set bottom view
- cloudComPy.setTopView() None
RenderViewToFile: set top view
- cloudComPy.setBackView() None
RenderViewToFile: set back view
- cloudComPy.setLeftView() None
RenderViewToFile: set left view
- cloudComPy.setRightView() None
RenderViewToFile: set right view
- cloudComPy.setIsoView1() None
RenderViewToFile: set iso view, first type
- cloudComPy.setIsoView2() None
RenderViewToFile: set iso view, second type
- cloudComPy.setCustomView(arg0: Vector3Tpl<T>, arg1: Vector3Tpl<T>) None
RenderViewToFile: set a custom view, defining a look vector and an up direction
- Parameters:
forward (CCVector3d) – direction of view
up (CCVector3d) – up direction (to define “up” in the image
- cloudComPy.setCameraPos(arg0: Vector3Tpl<T>) None
RenderViewToFile: define a camera position.
- Parameters:
P (CCVector3d) – camera position
- cloudComPy.setBackgroundColor(gradient: bool = False, r: int = 255, g: int = 255, b: int = 255) None
RenderViewToFile: define a background color.
- Parameters:
gradient (bool,optional) – default false, draw a background gradient (between rgb and the opposite of foreground color)
r (int,optional) – red value (0..255), default 255
g (int,optional) – green value (0..255), default 255
b (int,optional) – blue value (0..255), default 255
- cloudComPy.setTextDefaultCol(r: int = 0, g: int = 0, b: int = 0, a: int = 255) None
RenderViewToFile: define a text default (foreground) color.
- Parameters:
r (int,optional) – red value (0..255), default 0
g (int,optional) – green value (0..255), default 0
b (int,optional) – blue value (0..255), default 0
a (int,optional) – alpha value (0..255), default 255
- cloudComPy.setColorScaleShowHistogram(showHist: bool = True) None
RenderViewToFile: show the color scale histogram, when the color scale itself is shown (see ‘showSFColorsScale’ method of ‘ccPointCloud’).
- Parameters:
showHist (bool,optional) – default true, whether to add the histogram to the color scale.
- class cloudComPy.ccBBox
BoundingBox object.
Can be initialized with tuples of coordinates and a boolean (minCorner, maxCorner, True)
- __init__(self: _cloudComPy.ccBBox, arg0: Vector3Tpl<T>, arg1: Vector3Tpl<T>, arg2: bool) None
BoundingBox constructor, with tuples of coordinates and a boolean (minCorner, maxCorner, True)
- Parameters:
minCorner (tuple) – min corner of the box
maxCorner (tuple) – max corner of the box
valid (bool) – use True
- maxCorner(self: _cloudComPy.ccBBox) Vector3Tpl<T>
Get the max corner of the bounding box
- Returns:
max corner (tuple of coordinates)
- Return type:
tuple
- minCorner(self: _cloudComPy.ccBBox) Vector3Tpl<T>
Get the min corner of the bounding box
- Returns:
min corner (tuple of coordinates)
- Return type:
tuple
- class cloudComPy.CC_DIRECTION
Members:
X
Y
Z
- X = <CC_DIRECTION.X: 0>
- Y = <CC_DIRECTION.Y: 1>
- Z = <CC_DIRECTION.Z: 2>
- __init__(self: _cloudComPy.CC_DIRECTION, value: int) None
- property name
- property value
- class cloudComPy.CC_FILE_ERROR
Members:
CC_FERR_NO_ERROR
CC_FERR_BAD_ARGUMENT
CC_FERR_UNKNOWN_FILE
CC_FERR_WRONG_FILE_TYPE
CC_FERR_WRITING
CC_FERR_READING
CC_FERR_NO_SAVE
CC_FERR_NO_LOAD
CC_FERR_BAD_ENTITY_TYPE
CC_FERR_CANCELED_BY_USER
CC_FERR_NOT_ENOUGH_MEMORY
CC_FERR_MALFORMED_FILE
CC_FERR_CONSOLE_ERROR
CC_FERR_BROKEN_DEPENDENCY_ERROR
CC_FERR_FILE_WAS_WRITTEN_BY_UNKNOWN_PLUGIN
CC_FERR_THIRD_PARTY_LIB_FAILURE
CC_FERR_THIRD_PARTY_LIB_EXCEPTION
CC_FERR_NOT_IMPLEMENTED
- CC_FERR_BAD_ARGUMENT = <CC_FILE_ERROR.CC_FERR_BAD_ARGUMENT: 1>
- CC_FERR_BAD_ENTITY_TYPE = <CC_FILE_ERROR.CC_FERR_BAD_ENTITY_TYPE: 8>
- CC_FERR_BROKEN_DEPENDENCY_ERROR = <CC_FILE_ERROR.CC_FERR_BROKEN_DEPENDENCY_ERROR: 13>
- CC_FERR_CANCELED_BY_USER = <CC_FILE_ERROR.CC_FERR_CANCELED_BY_USER: 9>
- CC_FERR_CONSOLE_ERROR = <CC_FILE_ERROR.CC_FERR_CONSOLE_ERROR: 12>
- CC_FERR_FILE_WAS_WRITTEN_BY_UNKNOWN_PLUGIN = <CC_FILE_ERROR.CC_FERR_FILE_WAS_WRITTEN_BY_UNKNOWN_PLUGIN: 14>
- CC_FERR_MALFORMED_FILE = <CC_FILE_ERROR.CC_FERR_MALFORMED_FILE: 11>
- CC_FERR_NOT_ENOUGH_MEMORY = <CC_FILE_ERROR.CC_FERR_NOT_ENOUGH_MEMORY: 10>
- CC_FERR_NOT_IMPLEMENTED = <CC_FILE_ERROR.CC_FERR_NOT_IMPLEMENTED: 17>
- CC_FERR_NO_ERROR = <CC_FILE_ERROR.CC_FERR_NO_ERROR: 0>
- CC_FERR_NO_LOAD = <CC_FILE_ERROR.CC_FERR_NO_LOAD: 7>
- CC_FERR_NO_SAVE = <CC_FILE_ERROR.CC_FERR_NO_SAVE: 6>
- CC_FERR_READING = <CC_FILE_ERROR.CC_FERR_READING: 5>
- CC_FERR_THIRD_PARTY_LIB_EXCEPTION = <CC_FILE_ERROR.CC_FERR_THIRD_PARTY_LIB_EXCEPTION: 16>
- CC_FERR_THIRD_PARTY_LIB_FAILURE = <CC_FILE_ERROR.CC_FERR_THIRD_PARTY_LIB_FAILURE: 15>
- CC_FERR_UNKNOWN_FILE = <CC_FILE_ERROR.CC_FERR_UNKNOWN_FILE: 2>
- CC_FERR_WRITING = <CC_FILE_ERROR.CC_FERR_WRITING: 4>
- CC_FERR_WRONG_FILE_TYPE = <CC_FILE_ERROR.CC_FERR_WRONG_FILE_TYPE: 3>
- __init__(self: _cloudComPy.CC_FILE_ERROR, value: int) None
- property name
- property value
- class cloudComPy.CC_SHIFT_MODE
Members:
AUTO
XYZ
FIRST_GLOBAL_SHIFT
NO_GLOBAL_SHIFT
- AUTO = <CC_SHIFT_MODE.AUTO: 0>
- FIRST_GLOBAL_SHIFT = <CC_SHIFT_MODE.FIRST_GLOBAL_SHIFT: 2>
- NO_GLOBAL_SHIFT = <CC_SHIFT_MODE.NO_GLOBAL_SHIFT: 3>
- XYZ = <CC_SHIFT_MODE.XYZ: 1>
- __init__(self: _cloudComPy.CC_SHIFT_MODE, value: int) None
- property name
- property value
- class cloudComPy.CurvatureType
Members:
GAUSSIAN_CURV
MEAN_CURV
NORMAL_CHANGE_RATE
- GAUSSIAN_CURV = <CurvatureType.GAUSSIAN_CURV: 1>
- MEAN_CURV = <CurvatureType.MEAN_CURV: 2>
- NORMAL_CHANGE_RATE = <CurvatureType.NORMAL_CHANGE_RATE: 3>
- __init__(self: _cloudComPy.CurvatureType, value: int) None
- property name
- property value
- class cloudComPy.EmptyCellFillOption
Members:
LEAVE_EMPTY
FILL_MINIMUM_HEIGHT
FILL_MAXIMUM_HEIGHT
FILL_CUSTOM_HEIGHT
FILL_AVERAGE_HEIGHT
INTERPOLATE_DELAUNAY
KRIGING
- FILL_AVERAGE_HEIGHT = <EmptyCellFillOption.FILL_AVERAGE_HEIGHT: 4>
- FILL_CUSTOM_HEIGHT = <EmptyCellFillOption.FILL_CUSTOM_HEIGHT: 3>
- FILL_MAXIMUM_HEIGHT = <EmptyCellFillOption.FILL_MAXIMUM_HEIGHT: 2>
- FILL_MINIMUM_HEIGHT = <EmptyCellFillOption.FILL_MINIMUM_HEIGHT: 1>
- INTERPOLATE_DELAUNAY = <EmptyCellFillOption.INTERPOLATE_DELAUNAY: 5>
- KRIGING = <EmptyCellFillOption.KRIGING: 6>
- LEAVE_EMPTY = <EmptyCellFillOption.LEAVE_EMPTY: 0>
- __init__(self: _cloudComPy.EmptyCellFillOption, value: int) None
- property name
- property value
- class cloudComPy.ExportableFields
Members:
PER_CELL_HEIGHT
PER_CELL_COUNT
PER_CELL_MIN_HEIGHT
PER_CELL_MAX_HEIGHT
PER_CELL_AVG_HEIGHT
PER_CELL_HEIGHT_STD_DEV
PER_CELL_HEIGHT_RANGE
PER_CELL_INVALID
- PER_CELL_AVG_HEIGHT = <ExportableFields.PER_CELL_AVG_HEIGHT: 4>
- PER_CELL_COUNT = <ExportableFields.PER_CELL_COUNT: 1>
- PER_CELL_HEIGHT = <ExportableFields.PER_CELL_HEIGHT: 0>
- PER_CELL_HEIGHT_RANGE = <ExportableFields.PER_CELL_HEIGHT_RANGE: 6>
- PER_CELL_HEIGHT_STD_DEV = <ExportableFields.PER_CELL_HEIGHT_STD_DEV: 5>
- PER_CELL_INVALID = <ExportableFields.PER_CELL_INVALID: 10>
- PER_CELL_MAX_HEIGHT = <ExportableFields.PER_CELL_MAX_HEIGHT: 3>
- PER_CELL_MIN_HEIGHT = <ExportableFields.PER_CELL_MIN_HEIGHT: 2>
- __init__(self: _cloudComPy.ExportableFields, value: int) None
- property name
- property value
- class cloudComPy.ICPres
Result values on ICP registration.
- Variables:
aligned (ccPointCloud) – the point cloud on which the transformation must be applied
transMat (ccGLMatrix) – the resulting transformation to apply
finalScale (float) – calculated scale if rescale required
finalRMS (float) – final error (RMS)
finalPointCount (int) – number of points used to compute the final RMS
- __init__(self: _cloudComPy.ICPres) None
Default constructor
- property aligned
- property finalPointCount
Result values on ICP registration.
- Variables:
aligned (ccPointCloud) – the point cloud on which the transformation must be applied
transMat (ccGLMatrix) – the resulting transformation to apply
finalScale (float) – calculated scale if rescale required
finalRMS (float) – final error (RMS)
finalPointCount (int) – number of points used to compute the final RMS
- property finalRMS
Result values on ICP registration.
- Variables:
aligned (ccPointCloud) – the point cloud on which the transformation must be applied
transMat (ccGLMatrix) – the resulting transformation to apply
finalScale (float) – calculated scale if rescale required
finalRMS (float) – final error (RMS)
finalPointCount (int) – number of points used to compute the final RMS
- property finalScale
Result values on ICP registration.
- Variables:
aligned (ccPointCloud) – the point cloud on which the transformation must be applied
transMat (ccGLMatrix) – the resulting transformation to apply
finalScale (float) – calculated scale if rescale required
finalRMS (float) – final error (RMS)
finalPointCount (int) – number of points used to compute the final RMS
- property transMat
Result values on ICP registration.
- Variables:
aligned (ccPointCloud) – the point cloud on which the transformation must be applied
transMat (ccGLMatrix) – the resulting transformation to apply
finalScale (float) – calculated scale if rescale required
finalRMS (float) – final error (RMS)
finalPointCount (int) – number of points used to compute the final RMS
- class cloudComPy.interpolatorParameters
Parameters for scalar fields interpolation from a source cloud to a destination cloud.
- Variables:
method (int) – from INTERPOL_METHOD: NEAREST_NEIGHBOR, K_NEAREST_NEIGHBORS, RADIUS, default NEAREST_NEIGHBOR
algos (int) – from INTERPOL_ALGO: AVERAGE, MEDIAN, NORMAL_DIST, default AVERAGE
knn (int) – number of neighbors, default 0
radius (float) – default 0
sigma (float) – default 0
- __init__(self: _cloudComPy.interpolatorParameters) None
Default constructor
- property algos
Parameters for scalar fields interpolation from a source cloud to a destination cloud.
- Variables:
method (int) – from INTERPOL_METHOD: NEAREST_NEIGHBOR, K_NEAREST_NEIGHBORS, RADIUS, default NEAREST_NEIGHBOR
algos (int) – from INTERPOL_ALGO: AVERAGE, MEDIAN, NORMAL_DIST, default AVERAGE
knn (int) – number of neighbors, default 0
radius (float) – default 0
sigma (float) – default 0
- property knn
Parameters for scalar fields interpolation from a source cloud to a destination cloud.
- Variables:
method (int) – from INTERPOL_METHOD: NEAREST_NEIGHBOR, K_NEAREST_NEIGHBORS, RADIUS, default NEAREST_NEIGHBOR
algos (int) – from INTERPOL_ALGO: AVERAGE, MEDIAN, NORMAL_DIST, default AVERAGE
knn (int) – number of neighbors, default 0
radius (float) – default 0
sigma (float) – default 0
- property method
Parameters for scalar fields interpolation from a source cloud to a destination cloud.
- Variables:
method (int) – from INTERPOL_METHOD: NEAREST_NEIGHBOR, K_NEAREST_NEIGHBORS, RADIUS, default NEAREST_NEIGHBOR
algos (int) – from INTERPOL_ALGO: AVERAGE, MEDIAN, NORMAL_DIST, default AVERAGE
knn (int) – number of neighbors, default 0
radius (float) – default 0
sigma (float) – default 0
- property radius
Parameters for scalar fields interpolation from a source cloud to a destination cloud.
- Variables:
method (int) – from INTERPOL_METHOD: NEAREST_NEIGHBOR, K_NEAREST_NEIGHBORS, RADIUS, default NEAREST_NEIGHBOR
algos (int) – from INTERPOL_ALGO: AVERAGE, MEDIAN, NORMAL_DIST, default AVERAGE
knn (int) – number of neighbors, default 0
radius (float) – default 0
sigma (float) – default 0
- property sigma
Parameters for scalar fields interpolation from a source cloud to a destination cloud.
- Variables:
method (int) – from INTERPOL_METHOD: NEAREST_NEIGHBOR, K_NEAREST_NEIGHBORS, RADIUS, default NEAREST_NEIGHBOR
algos (int) – from INTERPOL_ALGO: AVERAGE, MEDIAN, NORMAL_DIST, default AVERAGE
knn (int) – number of neighbors, default 0
radius (float) – default 0
sigma (float) – default 0
- class cloudComPy.LOCAL_MODEL_TYPES
Members:
NO_MODEL
LS
TRI
QUADRIC
- LS = <LOCAL_MODEL_TYPES.LS: 1>
- NO_MODEL = <LOCAL_MODEL_TYPES.NO_MODEL: 0>
- QUADRIC = <LOCAL_MODEL_TYPES.QUADRIC: 3>
- TRI = <LOCAL_MODEL_TYPES.TRI: 2>
- __init__(self: _cloudComPy.LOCAL_MODEL_TYPES, value: int) None
- property name
- property value
- class cloudComPy.Orientation
Members:
PLUS_X
MINUS_X
PLUS_Y
MINUS_Y
PLUS_Z
MINUS_Z
PLUS_BARYCENTER
MINUS_BARYCENTER
PLUS_ORIGIN
MINUS_ORIGIN
PREVIOUS
PLUS_SENSOR_ORIGIN
MINUS_SENSOR_ORIGIN
UNDEFINED
- MINUS_BARYCENTER = <Orientation.MINUS_BARYCENTER: 7>
- MINUS_ORIGIN = <Orientation.MINUS_ORIGIN: 9>
- MINUS_SENSOR_ORIGIN = <Orientation.MINUS_SENSOR_ORIGIN: 12>
- MINUS_X = <Orientation.MINUS_X: 1>
- MINUS_Y = <Orientation.MINUS_Y: 3>
- MINUS_Z = <Orientation.MINUS_Z: 5>
- PLUS_BARYCENTER = <Orientation.PLUS_BARYCENTER: 6>
- PLUS_ORIGIN = <Orientation.PLUS_ORIGIN: 8>
- PLUS_SENSOR_ORIGIN = <Orientation.PLUS_SENSOR_ORIGIN: 11>
- PLUS_X = <Orientation.PLUS_X: 0>
- PLUS_Y = <Orientation.PLUS_Y: 2>
- PLUS_Z = <Orientation.PLUS_Z: 4>
- PREVIOUS = <Orientation.PREVIOUS: 10>
- UNDEFINED = <Orientation.UNDEFINED: 255>
- __init__(self: _cloudComPy.Orientation, value: int) None
- property name
- property value
- class cloudComPy.ProjectionType
Members:
PROJ_MINIMUM_VALUE
PROJ_AVERAGE_VALUE
PROJ_MAXIMUM_VALUE
PROJ_MEDIAN_VALUE
PROJ_INVERSE_VAR_VALUE
INVALID_PROJECTION_TYPE
- INVALID_PROJECTION_TYPE = <ProjectionType.INVALID_PROJECTION_TYPE: 255>
- PROJ_AVERAGE_VALUE = <ProjectionType.PROJ_AVERAGE_VALUE: 1>
- PROJ_INVERSE_VAR_VALUE = <ProjectionType.PROJ_INVERSE_VAR_VALUE: 4>
- PROJ_MAXIMUM_VALUE = <ProjectionType.PROJ_MAXIMUM_VALUE: 2>
- PROJ_MEDIAN_VALUE = <ProjectionType.PROJ_MEDIAN_VALUE: 3>
- PROJ_MINIMUM_VALUE = <ProjectionType.PROJ_MINIMUM_VALUE: 0>
- __init__(self: _cloudComPy.ProjectionType, value: int) None
- property name
- property value
- class cloudComPy.ReportInfoVol
Result values on 2.5D volume calculation. See
ComputeVolume25D
The volume is considered between a point cloud and a ground plane following a given direction (X, Y or Z), or between two point clouds.
- Variables:
volume (float) – the resulting volume
addedVolume (float) – the positive part of the volume (ceil > floor)
removedVolume (float) – the negative part of the volume (ceil < floor)
surface (float) – the section of the point cloud along in the given direction
matchingPercent (float) – percentage of the section matching ceil and floor
ceilNonMatchingPercent (float) – percentage of the ceil section non matching floor
groundNonMatchingPercent (float) – percentage of the floor section non matching ceil
averageNeighborsPerCell (int) – average Neighbor number per cell (see ‘gridStep’ in :py:meth`ComputeVolume25D`)
- __init__(self: _cloudComPy.ReportInfoVol) None
Default constructor
- property addedVolume
- property averageNeighborsPerCell
- property ceilNonMatchingPercent
- property groundNonMatchingPercent
- property matchingPercent
- property removedVolume
- property surface
- property volume
- class cloudComPy.TRANSFORMATION_FILTERS
Members:
SKIP_NONE
SKIP_RXY
SKIP_RYZ
SKIP_RXZ
SKIP_ROTATION
SKIP_TX
SKIP_TY
SKIP_TZ
SKIP_TRANSLATION
- SKIP_NONE = <TRANSFORMATION_FILTERS.SKIP_NONE: 0>
- SKIP_ROTATION = <TRANSFORMATION_FILTERS.SKIP_ROTATION: 7>
- SKIP_RXY = <TRANSFORMATION_FILTERS.SKIP_RXY: 1>
- SKIP_RXZ = <TRANSFORMATION_FILTERS.SKIP_RXZ: 4>
- SKIP_RYZ = <TRANSFORMATION_FILTERS.SKIP_RYZ: 2>
- SKIP_TRANSLATION = <TRANSFORMATION_FILTERS.SKIP_TRANSLATION: 56>
- SKIP_TX = <TRANSFORMATION_FILTERS.SKIP_TX: 8>
- SKIP_TY = <TRANSFORMATION_FILTERS.SKIP_TY: 16>
- SKIP_TZ = <TRANSFORMATION_FILTERS.SKIP_TZ: 32>
- __init__(self: _cloudComPy.TRANSFORMATION_FILTERS, value: int) None
- property name
- property value
- class cloudComPy.CONVERGENCE_TYPE
Members:
MAX_ERROR_CONVERGENCE
MAX_ITER_CONVERGENCE
- MAX_ERROR_CONVERGENCE = <CONVERGENCE_TYPE.MAX_ERROR_CONVERGENCE: 0>
- MAX_ITER_CONVERGENCE = <CONVERGENCE_TYPE.MAX_ITER_CONVERGENCE: 1>
- __init__(self: _cloudComPy.CONVERGENCE_TYPE, value: int) None
- property name
- property value