Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
Poly_ArrayOfNodes Class Reference

Defines an array of 3D nodes of single/double precision configurable at construction time. More...

#include <Poly_ArrayOfNodes.hxx>

Inheritance diagram for Poly_ArrayOfNodes:
Inheritance graph
[legend]

Public Member Functions

 Poly_ArrayOfNodes ()
 Empty constructor of double-precision array.
 
 Poly_ArrayOfNodes (int theLength)
 Constructor of double-precision array.
 
 Poly_ArrayOfNodes (const Poly_ArrayOfNodes &theOther)
 Copy constructor.
 
 Poly_ArrayOfNodes (const gp_Pnt &theBegin, int theLength)
 Constructor wrapping pre-allocated C-array of values without copying them.
 
 Poly_ArrayOfNodes (const NCollection_Vec3< float > &theBegin, int theLength)
 Constructor wrapping pre-allocated C-array of values without copying them.
 
 ~Poly_ArrayOfNodes ()
 Destructor.
 
bool IsDoublePrecision () const
 Returns TRUE if array defines nodes with double precision.
 
void SetDoublePrecision (bool theIsDouble)
 Sets if array should define nodes with double or single precision. Raises exception if array was already allocated.
 
Poly_ArrayOfNodesAssign (const Poly_ArrayOfNodes &theOther)
 Copies data of theOther array to this. The arrays should have the same length, but may have different precision / number of components (data conversion will be applied in the latter case).
 
Poly_ArrayOfNodesMove (Poly_ArrayOfNodes &theOther)
 Move assignment.
 
Poly_ArrayOfNodesoperator= (const Poly_ArrayOfNodes &theOther)
 Assignment operator;.
 
 Poly_ArrayOfNodes (Poly_ArrayOfNodes &&theOther) noexcept
 Move constructor.
 
Poly_ArrayOfNodesoperator= (Poly_ArrayOfNodes &&theOther) noexcept
 Move assignment operator;.
 
gp_Pnt Value (int theIndex) const
 A generalized accessor to point.
 
void SetValue (int theIndex, const gp_Pnt &theValue)
 A generalized setter for point.
 
gp_Pnt operator[] (int theIndex) const
 operator[] - alias to Value
 
- Public Member Functions inherited from NCollection_AliasedArray< MyAlignSize >
 NCollection_AliasedArray (int theStride)
 Empty constructor.
 
 NCollection_AliasedArray (int theStride, int theLength)
 Constructor.
 
 NCollection_AliasedArray (const NCollection_AliasedArray &theOther)
 Copy constructor.
 
 NCollection_AliasedArray (NCollection_AliasedArray &&theOther) noexcept
 Move constructor.
 
template<typename Type_t >
 NCollection_AliasedArray (const Type_t &theBegin, int theLength)
 Constructor wrapping pre-allocated C-array of values without copying them.
 
int Stride () const
 Returns an element size in bytes.
 
int Size () const
 Size query.
 
int Length () const
 Length query (the same as Size())
 
bool IsEmpty () const
 Return TRUE if array has zero length.
 
int Lower () const
 Lower bound.
 
int Upper () const
 Upper bound.
 
bool IsDeletable () const
 myDeletable flag
 
bool IsAllocated () const
 IsAllocated flag - for naming compatibility.
 
size_t SizeBytes () const
 Return buffer size in bytes.
 
NCollection_AliasedArrayAssign (const NCollection_AliasedArray &theOther)
 Copies data of theOther array to this. This array should be pre-allocated and have the same length as theOther; otherwise exception Standard_DimensionMismatch is thrown.
 
NCollection_AliasedArrayMove (NCollection_AliasedArray &theOther)
 Move assignment. This array will borrow all the data from theOther. The moved object will keep pointer to the memory buffer and range, but it will not free the buffer on destruction.
 
NCollection_AliasedArrayoperator= (const NCollection_AliasedArray &theOther)
 Assignment operator;.
 
NCollection_AliasedArrayoperator= (NCollection_AliasedArray &&theOther)
 Move assignment operator;.
 
void Resize (int theLength, bool theToCopyData)
 Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.
 
 ~NCollection_AliasedArray ()
 Destructor - releases the memory.
 
const uint8_tvalue (int theIndex) const
 Access raw bytes of specified element.
 
uint8_tchangeValue (int theIndex)
 Access raw bytes of specified element.
 
template<typename Type_t >
void Init (const Type_t &theValue)
 Initialize the items with theValue.
 
template<typename Type_t >
const Type_tValue (int theIndex) const
 Access element with specified position and type. This method requires size of a type matching stride value.
 
template<typename Type_t >
void Value (int theIndex, Type_t &theValue) const
 Access element with specified position and type. This method requires size of a type matching stride value.
 
template<typename Type_t >
Type_tChangeValue (int theIndex)
 Access element with specified position and type. This method requires size of a type matching stride value.
 
template<typename Type_t >
const Type_tValue2 (int theIndex) const
 Access element with specified position and type. This method allows wrapping element into smaller type (e.g. to alias 2-components within 3-component vector).
 
template<typename Type_t >
void Value2 (int theIndex, Type_t &theValue) const
 Access element with specified position and type. This method allows wrapping element into smaller type (e.g. to alias 2-components within 3-component vector).
 
template<typename Type_t >
Type_tChangeValue2 (int theIndex)
 Access element with specified position and type. This method allows wrapping element into smaller type (e.g. to alias 2-components within 3-component vector).
 
template<typename Type_t >
const Type_tFirst () const
 Return first element.
 
template<typename Type_t >
Type_tChangeFirst ()
 Return first element.
 
template<typename Type_t >
const Type_tLast () const
 Return last element.
 
template<typename Type_t >
Type_tChangeLast ()
 Return last element.
 

Additional Inherited Members

- Protected Attributes inherited from NCollection_AliasedArray< MyAlignSize >
uint8_tmyData
 data pointer
 
int myStride
 element size
 
int mySize
 number of elements
 
bool myDeletable
 flag showing who allocated the array
 

Detailed Description

Defines an array of 3D nodes of single/double precision configurable at construction time.

Constructor & Destructor Documentation

◆ Poly_ArrayOfNodes() [1/6]

Poly_ArrayOfNodes::Poly_ArrayOfNodes ( )
inline

Empty constructor of double-precision array.

◆ Poly_ArrayOfNodes() [2/6]

Poly_ArrayOfNodes::Poly_ArrayOfNodes ( int theLength)
inline

Constructor of double-precision array.

◆ Poly_ArrayOfNodes() [3/6]

Poly_ArrayOfNodes::Poly_ArrayOfNodes ( const Poly_ArrayOfNodes & theOther)

Copy constructor.

◆ Poly_ArrayOfNodes() [4/6]

Poly_ArrayOfNodes::Poly_ArrayOfNodes ( const gp_Pnt & theBegin,
int theLength )
inline

Constructor wrapping pre-allocated C-array of values without copying them.

◆ Poly_ArrayOfNodes() [5/6]

Poly_ArrayOfNodes::Poly_ArrayOfNodes ( const NCollection_Vec3< float > & theBegin,
int theLength )
inline

Constructor wrapping pre-allocated C-array of values without copying them.

◆ ~Poly_ArrayOfNodes()

Poly_ArrayOfNodes::~Poly_ArrayOfNodes ( )

Destructor.

◆ Poly_ArrayOfNodes() [6/6]

Poly_ArrayOfNodes::Poly_ArrayOfNodes ( Poly_ArrayOfNodes && theOther)
inlinenoexcept

Move constructor.

Member Function Documentation

◆ Assign()

Poly_ArrayOfNodes & Poly_ArrayOfNodes::Assign ( const Poly_ArrayOfNodes & theOther)

Copies data of theOther array to this. The arrays should have the same length, but may have different precision / number of components (data conversion will be applied in the latter case).

◆ IsDoublePrecision()

bool Poly_ArrayOfNodes::IsDoublePrecision ( ) const
inline

Returns TRUE if array defines nodes with double precision.

◆ Move()

Poly_ArrayOfNodes & Poly_ArrayOfNodes::Move ( Poly_ArrayOfNodes & theOther)
inline

Move assignment.

◆ operator=() [1/2]

Poly_ArrayOfNodes & Poly_ArrayOfNodes::operator= ( const Poly_ArrayOfNodes & theOther)
inline

Assignment operator;.

See also
Assign()

◆ operator=() [2/2]

Poly_ArrayOfNodes & Poly_ArrayOfNodes::operator= ( Poly_ArrayOfNodes && theOther)
inlinenoexcept

Move assignment operator;.

See also
Move()

◆ operator[]()

gp_Pnt Poly_ArrayOfNodes::operator[] ( int theIndex) const
inline

operator[] - alias to Value

◆ SetDoublePrecision()

void Poly_ArrayOfNodes::SetDoublePrecision ( bool theIsDouble)
inline

Sets if array should define nodes with double or single precision. Raises exception if array was already allocated.

◆ SetValue()

void Poly_ArrayOfNodes::SetValue ( int theIndex,
const gp_Pnt & theValue )
inline

A generalized setter for point.

◆ Value()

gp_Pnt Poly_ArrayOfNodes::Value ( int theIndex) const
inline

A generalized accessor to point.


The documentation for this class was generated from the following file: