9. Scalar Fields

9.1. ccScalarField

All the inherited members are given here for convenience. Most of the time, this class is used rather than the bases classes.

class cloudComPy.ccScalarField

Bases: ScalarField

A scalar field associated to display-related parameters. Extends the CCCoreLib::ScalarField object.

__init__(self: _cloudComPy.ccScalarField, name: str = None) None

Default constructor

Parameters

name (string,optional) – scalarField name

addElement(self: _cloudComPy.ScalarField, arg0: float) None

Add a value at the end of the vector.

Parameters

value (float) – the value to add

computeMeanAndVariance(self: _cloudComPy.ScalarField) tuple

Returns a tuple (mean, variance).

Returns

(mean, variance)

Return type

tuple

computeMinAndMax(self: _cloudComPy.ScalarField) None

Should be called before getMin or getMax, for instance after modifying the scalar field with Numpy.

No return!

currentSize(self: _cloudComPy.ScalarField) int

Returns the vector size.

Returns

the vector size

Return type

int

fill(self: _cloudComPy.ScalarField, arg0: float) None

Fills the array with a particular value.

Parameters

value (float) – the value to use to fill the array

flagValueAsInvalid(self: _cloudComPy.ScalarField, arg0: int) None

Sets the value as ‘invalid’ (i.e. CCCoreLib::NAN_VALUE).

No check on index validity!

Parameters

index (int) – the index in the ScalarField to set as ‘invalid’

fromNpArrayCopy(self: _cloudComPy.ScalarField, arg0: numpy.ndarray[numpy.float32]) None

Copy data from numpy array into an existing ScalarField.

Checks if the numpy array is of PyScalarType, one dimension, same size as the ScalarField, before overwriting ScalarField data.

Parameters

nparray (ndarray) – the data source to use to overwrite the ScalarField

getGlobalShift(self: _cloudComPy.ccScalarField) float

Returns Global Shift if any. Used for instance for LAS GPS time shift

Returns

global shift

Return type

float

getMax(self: _cloudComPy.ScalarField) float

Returns maximal value of the ScalarField.

You should call computeMinAndMax before, after a modification of the ScalarField with Numpy!

Returns

max value

Return type

float

getMin(self: _cloudComPy.ScalarField) float

Returns minimal value of the ScalarField.

You should call call computeMinAndMax before, after a modification of the ScalarField with Numpy!

Returns

min value

Return type

float

getName(self: _cloudComPy.ScalarField) str

Returns the name of the ScalarField.

Returns

ScalarField name

Return type

str

getValue(*args, **kwargs)

Overloaded function.

  1. getValue(self: _cloudComPy.ScalarField, arg0: int) -> float

Returns the ScalarField value at a given index.

No check on index validity!

Parameters

index (int) – the index

Returns

value at index

Return type

float

  1. getValue(self: _cloudComPy.ScalarField, arg0: int) -> float

Returns the ScalarField value at a given index.

No check on index validity!

Parameters

index (int) – the index

Returns

value at index

Return type

float

isSerializable(self: _cloudComPy.ccScalarField) bool
reserveSafe(self: _cloudComPy.ScalarField, arg0: int) bool

Reserves memory (no exception thrown).

Parameters

count (int) – number of elements to reserve in the ScalarField

Returns

success

Return type

bool

resizeSafe(self: _cloudComPy.ScalarField, arg0: int, arg1: bool, arg2: float) bool

Resizes memory (no exception thrown).

Parameters
  • count (int) – number of elements to keep/reserve in the ScalarField

  • init (bool) – whether to initialize new elements

  • value (float) – value for new elements

Returns

success

Return type

bool

setColorScale(self: _cloudComPy.ccScalarField, arg0: _cloudComPy.ccColorScale) None

Sets associated color scale

Parameters

scale (ccColorScale) – the color scale

setName(self: _cloudComPy.ScalarField, arg0: str) None

Sets the name of the ScalarField. No control is done on the uniqueness of the name. It is your responsability to ensure this uniqueness.

Parameters

name (str) – new name for the ScalarField

setValue(self: _cloudComPy.ScalarField, arg0: int, arg1: float) None

Set the value at the given index.

No check on index validity!

Parameters
  • index (int) – index in the ScalarField

  • value (float) – value to set at index

swap(self: _cloudComPy.ScalarField, arg0: int, arg1: int) None

Swap values between two indices.

No check on indices validity!

Parameters
  • index1 (int) – first index

  • index2 (int) – second index

toNpArray(self: _cloudComPy.ScalarField) numpy.ndarray

Wrap the ScalarField data into a numpy Array.

Returns a numpy array: a one dimension array of (number of Points). Data is not copied, the numpy array object does not own the data.

WARNING No automatic action on the Python side on the variables referencing the C++ object in case of destruction!

Returns

numpy Array pointing to the ScalarField data

Return type

ndarray

toNpArrayCopy(self: _cloudComPy.ScalarField) numpy.ndarray

Wrap the ScalarField data into a numpy Array.

Returns a numpy array: a one dimension array of (number of Points). Data is copied, the numpy array object owns its data. Ownership is transfered to Python: the numpy array object and its data will be handled by the Python Garbage Collector.

Returns

numpy Array with data copied from the ScalarField data

Return type

ndarray

9.2. bases classes for ccScalarField

class cloudComPy.ScalarField

Bases: pybind11_object

A simple scalar field (to be associated to a point cloud).

A monodimensional array of scalar values. Invalid values can be represented by CCCoreLib::NAN_VALUE.

__init__(self: _cloudComPy.ScalarField, name: str = None) None

Default constructor

Parameters

name (string,optional) – scalarField name

addElement(self: _cloudComPy.ScalarField, arg0: float) None

Add a value at the end of the vector.

Parameters

value (float) – the value to add

computeMeanAndVariance(self: _cloudComPy.ScalarField) tuple

Returns a tuple (mean, variance).

Returns

(mean, variance)

Return type

tuple

computeMinAndMax(self: _cloudComPy.ScalarField) None

Should be called before getMin or getMax, for instance after modifying the scalar field with Numpy.

No return!

currentSize(self: _cloudComPy.ScalarField) int

Returns the vector size.

Returns

the vector size

Return type

int

fill(self: _cloudComPy.ScalarField, arg0: float) None

Fills the array with a particular value.

Parameters

value (float) – the value to use to fill the array

flagValueAsInvalid(self: _cloudComPy.ScalarField, arg0: int) None

Sets the value as ‘invalid’ (i.e. CCCoreLib::NAN_VALUE).

No check on index validity!

Parameters

index (int) – the index in the ScalarField to set as ‘invalid’

fromNpArrayCopy(self: _cloudComPy.ScalarField, arg0: numpy.ndarray[numpy.float32]) None

Copy data from numpy array into an existing ScalarField.

Checks if the numpy array is of PyScalarType, one dimension, same size as the ScalarField, before overwriting ScalarField data.

Parameters

nparray (ndarray) – the data source to use to overwrite the ScalarField

getMax(self: _cloudComPy.ScalarField) float

Returns maximal value of the ScalarField.

You should call computeMinAndMax before, after a modification of the ScalarField with Numpy!

Returns

max value

Return type

float

getMin(self: _cloudComPy.ScalarField) float

Returns minimal value of the ScalarField.

You should call call computeMinAndMax before, after a modification of the ScalarField with Numpy!

Returns

min value

Return type

float

getName(self: _cloudComPy.ScalarField) str

Returns the name of the ScalarField.

Returns

ScalarField name

Return type

str

getValue(*args, **kwargs)

Overloaded function.

  1. getValue(self: _cloudComPy.ScalarField, arg0: int) -> float

Returns the ScalarField value at a given index.

No check on index validity!

Parameters

index (int) – the index

Returns

value at index

Return type

float

  1. getValue(self: _cloudComPy.ScalarField, arg0: int) -> float

Returns the ScalarField value at a given index.

No check on index validity!

Parameters

index (int) – the index

Returns

value at index

Return type

float

reserveSafe(self: _cloudComPy.ScalarField, arg0: int) bool

Reserves memory (no exception thrown).

Parameters

count (int) – number of elements to reserve in the ScalarField

Returns

success

Return type

bool

resizeSafe(self: _cloudComPy.ScalarField, arg0: int, arg1: bool, arg2: float) bool

Resizes memory (no exception thrown).

Parameters
  • count (int) – number of elements to keep/reserve in the ScalarField

  • init (bool) – whether to initialize new elements

  • value (float) – value for new elements

Returns

success

Return type

bool

setName(self: _cloudComPy.ScalarField, arg0: str) None

Sets the name of the ScalarField. No control is done on the uniqueness of the name. It is your responsability to ensure this uniqueness.

Parameters

name (str) – new name for the ScalarField

setValue(self: _cloudComPy.ScalarField, arg0: int, arg1: float) None

Set the value at the given index.

No check on index validity!

Parameters
  • index (int) – index in the ScalarField

  • value (float) – value to set at index

swap(self: _cloudComPy.ScalarField, arg0: int, arg1: int) None

Swap values between two indices.

No check on indices validity!

Parameters
  • index1 (int) – first index

  • index2 (int) – second index

toNpArray(self: _cloudComPy.ScalarField) numpy.ndarray

Wrap the ScalarField data into a numpy Array.

Returns a numpy array: a one dimension array of (number of Points). Data is not copied, the numpy array object does not own the data.

WARNING No automatic action on the Python side on the variables referencing the C++ object in case of destruction!

Returns

numpy Array pointing to the ScalarField data

Return type

ndarray

toNpArrayCopy(self: _cloudComPy.ScalarField) numpy.ndarray

Wrap the ScalarField data into a numpy Array.

Returns a numpy array: a one dimension array of (number of Points). Data is copied, the numpy array object owns its data. Ownership is transfered to Python: the numpy array object and its data will be handled by the Python Garbage Collector.

Returns

numpy Array with data copied from the ScalarField data

Return type

ndarray

9.3. color scales for scalar fields

class cloudComPy.ccColorScale

Bases: pybind11_object

A color scale is defined by several ‘steps’ corresponding to given colors. The color between each step is linearly interpolated. A valid color scale must have at least 2 steps, one at relative position 0.0 (scale start) and one at relative position 1.0 (scale end). Steps can’t be defined outside this interval. For faster access, an array of interpolated colors is maintained internally.

static Create(name: QString, Uuid: QString = '') _cloudComPy.ccColorScale

Static method to create a new color scale.

Steps must be defined with the insert method.

Parameters
  • name (string) – the scale name

  • Uuid (string,optional) – a unique Id for the scale. default empty, automatically generated.

Returns

the new scale

Return type

ccColorScale

__init__(*args, **kwargs)
getName(self: _cloudComPy.ccColorScale) QString

Get the scale name.

Returns

the scale name

Return type

string

getUuid(self: _cloudComPy.ccColorScale) QString

Get the scale unique Id.

Returns

the unique Id

Return type

string

insert(self: _cloudComPy.ccColorScale, arg0: float, arg1: _cloudComPy.QColor) int

Insert a color step, with a relative position between 0 and 1, and the associated color.

Parameters
  • relative_position (float) – relative position between 0 and 1

  • color (QColor) – the color associated to the step

setName(self: _cloudComPy.ccColorScale, arg0: QString) None

Set the Scale name.

Parameters

name (string) – the new scale name.

class cloudComPy.ccColorScalesManager

Bases: pybind11_object

ccColorScale container and manager, useful to get the defaults color scales.

GetUniqueInstance() _cloudComPy.ccColorScalesManager

Get the Unique instance of the ccColorScalesManager.

Returns

the Unique instance of the ccColorScalesManager

Return type

ccColorScalesManager

__init__(*args, **kwargs)
addScale(self: _cloudComPy.ccColorScalesManager, arg0: _cloudComPy.ccColorScale) None

Add a new color scale.

This operation is only useful to store the color scale in the container if you want to save it to persistent settings (not yet working properly).

Parameters

scale (ccColorScale) – the color scale to add

getDefaultScale(self: _cloudComPy.ccColorScalesManager, arg0: _cloudComPy.DEFAULT_SCALES) _cloudComPy.ccColorScale

Get one of the default color scales.

Parameters

scale (DEFAULT_SCALES) – the color scale id

Returns

the color scale

Return type

ccColorScale

getScale(self: _cloudComPy.ccColorScalesManager, arg0: QString) _cloudComPy.ccColorScale

Retrieve a color scale with its universal Id.

Parameters

UUID (string) – the universal Id of the color scale to find

Returns

the color scale

Return type

ccColorScale

removeScale(self: _cloudComPy.ccColorScalesManager, arg0: QString) None

Remove a Color scale from the container.

Parameters

UUID (string) – the universal Id of the color scale to remove

toPersistentSettings(self: _cloudComPy.ccColorScalesManager) None

Save custom color scales to persistent settings (not yet working properly).

class cloudComPy.DEFAULT_SCALES

There are 16 predefined color scales

Members:

BGYR

GREY

BWR

RY

RW

ABS_NORM_GREY

HSV_360_DEG

VERTEX_QUALITY

DIP_BRYW

DIP_DIR_REPEAT

VIRIDIS

BROWN_YELLOW

YELLOW_BROWN

TOPO_LANDSERF

HIGH_CONTRAST

CIVIDIS

ABS_NORM_GREY = <DEFAULT_SCALES.ABS_NORM_GREY: 5>
BGYR = <DEFAULT_SCALES.BGYR: 0>
BROWN_YELLOW = <DEFAULT_SCALES.BROWN_YELLOW: 11>
BWR = <DEFAULT_SCALES.BWR: 2>
CIVIDIS = <DEFAULT_SCALES.CIVIDIS: 15>
DIP_BRYW = <DEFAULT_SCALES.DIP_BRYW: 8>
DIP_DIR_REPEAT = <DEFAULT_SCALES.DIP_DIR_REPEAT: 9>
GREY = <DEFAULT_SCALES.GREY: 1>
HIGH_CONTRAST = <DEFAULT_SCALES.HIGH_CONTRAST: 14>
HSV_360_DEG = <DEFAULT_SCALES.HSV_360_DEG: 6>
RW = <DEFAULT_SCALES.RW: 4>
RY = <DEFAULT_SCALES.RY: 3>
TOPO_LANDSERF = <DEFAULT_SCALES.TOPO_LANDSERF: 13>
VERTEX_QUALITY = <DEFAULT_SCALES.VERTEX_QUALITY: 7>
VIRIDIS = <DEFAULT_SCALES.VIRIDIS: 10>
YELLOW_BROWN = <DEFAULT_SCALES.YELLOW_BROWN: 12>
__init__(self: _cloudComPy.DEFAULT_SCALES, value: int) None
property name
property value