Chemical Data Processing Library Python API - Version 1.4.0
Public Member Functions | Properties | List of all members
CDPL.Math.FHomogenousCoordsAdapter Class Reference

Vector expression that exposes a vector as its homogeneous-coordinate extension by appending an implicit 1 at the end. More...

+ Inheritance diagram for CDPL.Math.FHomogenousCoordsAdapter:

Public Member Functions

None __init__ (FHomogenousCoordsAdapter va)
 Contructs a copy of the FHomogenousCoordsAdapter instance va. More...
 
None __init__ (FVectorExpression v)
 Constructs the adapter wrapping v. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
FHomogenousCoordsAdapter assign (ConstFVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped vector). More...
 
FHomogenousCoordsAdapter assign (ConstDVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped vector). More...
 
FHomogenousCoordsAdapter assign (ConstLVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped vector). More...
 
FHomogenousCoordsAdapter assign (ConstULVectorExpression e)
 Assigns the vector expression e to this view (writing through to the wrapped vector). More...
 
FHomogenousCoordsAdapter assign (FHomogenousCoordsAdapter va)
 Copies the elements of va into this view (writing through to the wrapped vector and to the extension element). More...
 
FHomogenousCoordsAdapter assign (object a)
 Assigns the contents of the numpy.ndarray object a to this view. More...
 
bool isEmpty ()
 Tells whether the view is empty (always False). More...
 
int getSize ()
 Returns the dimensionality of the view (wrapped vector size + 1). More...
 
float getElement (int i)
 Returns the element at index i of the view. More...
 
object toArray ()
 Converts the FHomogenousCoordsAdapter instance into a corresponding numpy.ndarray object. More...
 
None swap (FHomogenousCoordsAdapter va)
 Swaps the contents of this view with those of va. More...
 
None setElement (int i, float v)
 Sets the value of the element at index i of the view to v. More...
 
FVectorExpression getData ()
 Returns the wrapped vector. More...
 
bool __eq__ (FHomogenousCoordsAdapter va)
 Returns the result of the comparison operation self == va. More...
 
bool __eq__ (ConstFVectorExpression e)
 Returns the result of the comparison operation self == e. More...
 
bool __ne__ (FHomogenousCoordsAdapter va)
 Returns the result of the comparison operation self != va. More...
 
bool __ne__ (ConstFVectorExpression e)
 Returns the result of the comparison operation self != e. More...
 
float __call__ (int i)
 Returns the element at index i of the view. More...
 
float __getitem__ (int i)
 Returns the element at index i of the view. More...
 
int __len__ ()
 Returns the dimensionality of the view (wrapped vector size + 1). More...
 
str __str__ ()
 Returns a string representation of the FHomogenousCoordsAdapter instance. More...
 
FHomogenousCoordsAdapter __pos__ ()
 Returns self. More...
 
ConstFVectorExpression __neg__ ()
 Returns the result of the operation self * -1. More...
 
ConstFVectorExpression __add__ (ConstFVectorExpression e)
 Returns the result of the addition operation self + e. More...
 
ConstFVectorExpression __sub__ (ConstFVectorExpression e)
 Returns the result of the subtraction operation self - e. More...
 
ConstFVectorExpression __mul__ (float t)
 Returns the result of the multiplication operation self * t. More...
 
ConstFVectorExpression __mul__ (ConstFMatrixExpression e)
 Returns the result of the multiplication operation self * e. More...
 
ConstFVectorExpression __div__ (float t)
 Returns the result of the division operation self // t. More...
 
ConstFVectorExpression __truediv__ (float t)
 Returns the result of the true division operation self / t. More...
 
ConstFVectorExpression __rmul__ (float t)
 Returns the result of the multiplication operation t * self. More...
 
None __setitem__ (int i, float v)
 Sets the value of the element at index i of the view to v. More...
 
FHomogenousCoordsAdapter __iadd__ (FHomogenousCoordsAdapter va)
 Adds the vector adapter va componentwise to this view. More...
 
FHomogenousCoordsAdapter __iadd__ (ConstFVectorExpression e)
 Adds the vector expression e componentwise to this view. More...
 
FHomogenousCoordsAdapter __isub__ (FHomogenousCoordsAdapter va)
 Subtracts the vector adapter va componentwise from this view. More...
 
FHomogenousCoordsAdapter __isub__ (ConstFVectorExpression e)
 Subtracts the vector expression e componentwise from this view. More...
 
FHomogenousCoordsAdapter __imul__ (float t)
 Multiplies every element of this view by the scalar t. More...
 
FHomogenousCoordsAdapter __idiv__ (float t)
 Divides every element of this view by the scalar t. More...
 
FHomogenousCoordsAdapter __itruediv__ (float t)
 Divides every element of this view by the scalar t. More...
 

Properties

 objectID = property(getObjectID)
 
 size = property(getSize)
 
 data = property(getData)
 

Detailed Description

Vector expression that exposes a vector as its homogeneous-coordinate extension by appending an implicit 1 at the end.

Constructor & Destructor Documentation

◆ __init__() [1/2]

None CDPL.Math.FHomogenousCoordsAdapter.__init__ ( FHomogenousCoordsAdapter  va)

Contructs a copy of the FHomogenousCoordsAdapter instance va.

Parameters
vaThe FHomogenousCoordsAdapter instance to copy.

◆ __init__() [2/2]

None CDPL.Math.FHomogenousCoordsAdapter.__init__ ( FVectorExpression  v)

Constructs the adapter wrapping v.

Parameters
vThe vector to be viewed as its homogeneous-coordinate extension.

Member Function Documentation

◆ getObjectID()

int CDPL.Math.FHomogenousCoordsAdapter.getObjectID ( )

Returns the numeric identifier (ID) of the wrapped C++ class instance.

Different Python FHomogenousCoordsAdapter instances may reference the same underlying C++ class instance. The commonly used Python expression a is not b thus cannot tell reliably whether the two FHomogenousCoordsAdapter instances a and b reference different C++ objects. The numeric identifier returned by this method allows to correctly implement such an identity test via the simple expression a.getObjectID() != b.getObjectID().

Returns
The numeric ID of the internally referenced C++ class instance.

◆ assign() [1/6]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.assign ( ConstFVectorExpression  e)

Assigns the vector expression e to this view (writing through to the wrapped vector).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [2/6]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.assign ( ConstDVectorExpression  e)

Assigns the vector expression e to this view (writing through to the wrapped vector).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [3/6]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.assign ( ConstLVectorExpression  e)

Assigns the vector expression e to this view (writing through to the wrapped vector).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [4/6]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.assign ( ConstULVectorExpression  e)

Assigns the vector expression e to this view (writing through to the wrapped vector).

Parameters
eThe source vector expression.
Returns
self.

◆ assign() [5/6]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.assign ( FHomogenousCoordsAdapter  va)

Copies the elements of va into this view (writing through to the wrapped vector and to the extension element).

Parameters
vaThe source adapter.
Returns
self.

◆ assign() [6/6]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.assign ( object  a)

Assigns the contents of the numpy.ndarray object a to this view.

Parameters
aThe numpy.ndarray object.
See also
[NUMPY]

◆ isEmpty()

bool CDPL.Math.FHomogenousCoordsAdapter.isEmpty ( )

Tells whether the view is empty (always False).

Returns
False.

◆ getSize()

int CDPL.Math.FHomogenousCoordsAdapter.getSize ( )

Returns the dimensionality of the view (wrapped vector size + 1).

Returns
The view size.

◆ getElement()

float CDPL.Math.FHomogenousCoordsAdapter.getElement ( int  i)

Returns the element at index i of the view.

Parameters
iThe zero-based index within the view.
Returns
The value of the element.

◆ toArray()

object CDPL.Math.FHomogenousCoordsAdapter.toArray ( )

Converts the FHomogenousCoordsAdapter instance into a corresponding numpy.ndarray object.

Returns
The generated numpy.ndarray object.
See also
[NUMPY]

◆ swap()

None CDPL.Math.FHomogenousCoordsAdapter.swap ( FHomogenousCoordsAdapter  va)

Swaps the contents of this view with those of va.

Parameters
vaThe view to swap with.

◆ setElement()

None CDPL.Math.FHomogenousCoordsAdapter.setElement ( int  i,
float  v 
)

Sets the value of the element at index i of the view to v.

Parameters
iThe zero-based index within the view.
vThe new value of the element.
Exceptions
Base.IndexErrorif i is not in the range [0, getSize()).

◆ getData()

FVectorExpression CDPL.Math.FHomogenousCoordsAdapter.getData ( )

Returns the wrapped vector.

Returns
The wrapped vector closure.

◆ __eq__() [1/2]

bool CDPL.Math.FHomogenousCoordsAdapter.__eq__ ( FHomogenousCoordsAdapter  va)

Returns the result of the comparison operation self == va.

Parameters
vaThe FHomogenousCoordsAdapter instance to be compared with.
Returns
The result of the comparison operation.

◆ __eq__() [2/2]

bool CDPL.Math.FHomogenousCoordsAdapter.__eq__ ( ConstFVectorExpression  e)

Returns the result of the comparison operation self == e.

Parameters
eThe ConstFVectorExpression instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__() [1/2]

bool CDPL.Math.FHomogenousCoordsAdapter.__ne__ ( FHomogenousCoordsAdapter  va)

Returns the result of the comparison operation self != va.

Parameters
vaThe FHomogenousCoordsAdapter instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__() [2/2]

bool CDPL.Math.FHomogenousCoordsAdapter.__ne__ ( ConstFVectorExpression  e)

Returns the result of the comparison operation self != e.

Parameters
eThe ConstFVectorExpression instance to be compared with.
Returns
The result of the comparison operation.

◆ __call__()

float CDPL.Math.FHomogenousCoordsAdapter.__call__ ( int  i)

Returns the element at index i of the view.

At index getSize() - 1 the method returns the extension element (initialized to 1). At lower indices it returns the corresponding element of the wrapped vector.

Parameters
iThe zero-based index within the view.
Returns
The value of the element.

◆ __getitem__()

float CDPL.Math.FHomogenousCoordsAdapter.__getitem__ ( int  i)

Returns the element at index i of the view.

Parameters
iThe zero-based index within the view.
Returns
The value of the element.

◆ __len__()

int CDPL.Math.FHomogenousCoordsAdapter.__len__ ( )

Returns the dimensionality of the view (wrapped vector size + 1).

Returns
The view size.

◆ __str__()

str CDPL.Math.FHomogenousCoordsAdapter.__str__ ( )

Returns a string representation of the FHomogenousCoordsAdapter instance.

Returns
The generated string representation.

◆ __pos__()

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__pos__ ( )

Returns self.

Returns
self.

◆ __neg__()

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__neg__ ( )

Returns the result of the operation self * -1.

Returns
A ConstFVectorExpression instance holding the result of the element negation.

◆ __add__()

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__add__ ( ConstFVectorExpression  e)

Returns the result of the addition operation self + e.

Parameters
eSpecifies the second addend.
Returns
A ConstFVectorExpression instance holding the result of the addition.

◆ __sub__()

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__sub__ ( ConstFVectorExpression  e)

Returns the result of the subtraction operation self - e.

Parameters
eSpecifies the subtrahend.
Returns
A FHomogenousCoordsAdapter instance holding the result of the subtraction.

◆ __mul__() [1/2]

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__mul__ ( float  t)

Returns the result of the multiplication operation self * t.

Parameters
tSpecifies the multiplier.
Returns
A ConstFVectorExpression instance holding the result of the multiplication.

◆ __mul__() [2/2]

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__mul__ ( ConstFMatrixExpression  e)

Returns the result of the multiplication operation self * e.

Parameters
eSpecifies the multiplier.
Returns
A ConstFVectorExpression instance holding the result of the multiplication.

◆ __div__()

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__div__ ( float  t)

Returns the result of the division operation self // t.

Parameters
tSpecifies the divisor.
Returns
A ConstFVectorExpression instance holding the result of the division.

◆ __truediv__()

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__truediv__ ( float  t)

Returns the result of the true division operation self / t.

Parameters
tSpecifies the divisor.
Returns
A ConstFVectorExpression instance holding the result of the division.

◆ __rmul__()

ConstFVectorExpression CDPL.Math.FHomogenousCoordsAdapter.__rmul__ ( float  t)

Returns the result of the multiplication operation t * self.

Parameters
tSpecifies the multiplicand.
Returns
A ConstFVectorExpression instance holding the result of the multiplication.

◆ __setitem__()

None CDPL.Math.FHomogenousCoordsAdapter.__setitem__ ( int  i,
float  v 
)

Sets the value of the element at index i of the view to v.

Parameters
iThe zero-based index within the view.
vThe new value of the element.
Exceptions
Base.IndexErrorif i is not in the range [0, getSize()).

◆ __iadd__() [1/2]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__iadd__ ( FHomogenousCoordsAdapter  va)

Adds the vector adapter va componentwise to this view.

Parameters
vaThe vector adapter to add.
Returns
self.

◆ __iadd__() [2/2]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__iadd__ ( ConstFVectorExpression  e)

Adds the vector expression e componentwise to this view.

Parameters
eThe vector expression to add.
Returns
self.

◆ __isub__() [1/2]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__isub__ ( FHomogenousCoordsAdapter  va)

Subtracts the vector adapter va componentwise from this view.

Parameters
vaThe vector adapter to subtract.
Returns
self.

◆ __isub__() [2/2]

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__isub__ ( ConstFVectorExpression  e)

Subtracts the vector expression e componentwise from this view.

Parameters
eThe vector expression to subtract.
Returns
self.

◆ __imul__()

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__imul__ ( float  t)

Multiplies every element of this view by the scalar t.

Parameters
tThe scalar multiplier.
Returns
self.

◆ __idiv__()

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__idiv__ ( float  t)

Divides every element of this view by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.

◆ __itruediv__()

FHomogenousCoordsAdapter CDPL.Math.FHomogenousCoordsAdapter.__itruediv__ ( float  t)

Divides every element of this view by the scalar t.

Parameters
tThe scalar divisor.
Returns
self.