AdvancedMathematics CATMathSetOfPointsNDWithVectors

Usage: you must use this class as is. You should never derive it.


public class CATMathSetOfPointsNDWithVectors

Class defining a set of points in R^n with associated vectors.


Constructor and Destructor Index


o CATMathSetOfPointsNDWithVectors(CATLONG32,CATLONG32)
Constructs a CATMathSetOfPointsNDTwoTangents.
o CATMathSetOfPointsNDWithVectors(CATMathSetOfPointsNDWithVectors&)
Copy constructor.
o ~CATMathSetOfPointsNDWithVectors()

Method Index


o AddNewPointWithVector(double*,double*,double)
Appends a point and its associated vector at the end of the set, if the point is different from the last one.
o AddPoint(double*)
Appends a point at the end of the set.
o AddPointWithVector(double*,double*)
Appends a point and its associated vector at the end of the set.
o AddSet(CATMathSetOfPointsNDWithVectors&,CATBoolean)
Concatenates a CATMathSetOfPointsNDWithVectors just after the last point of this CATMathSetOfPointsNDWithVectors.
o AutoInvert()
Inverts the content of this CATMathSetOfPointsNDWithVectors inside itself.
o FindCircle(CATLONG32*,double&,double*,double*,double*,double,double,CATTolerance&)
Searches for a 3D circle defined by the set of points on 3 specific coordinates.
o GetLastTangent()
Returns the last tangent of this CATMathSetOfPointsNDWithVectors.
o GetPointWithVector(CATLONG32,double*,double*)
Retrieves the coordinates of a specific point and its associated vector .
o GetVector(double*)
Retrieves the coordinates of the vector associated with the current point.
o GetVector(CATLONG32,double*)
Retrieves the vector associated with a specific point of this CATMathSetOfPointsNDWithVector.
o GetVectors()
Returns the coordinates of the vector associated with the current point.
o InitializeParameters(double*)
Computes the distance between two successive points of this CATMathSetOfPointsNDWithVectors.
o InsertPoint(double*,CATLONG32)
Inserts a point at a specific position.
o InsertPointWithVector(double*,double*,CATLONG32)
Inserts a point and its associated vector at a specific position.
o Invert(CATMathSetOfPointsNDWithVectors&)
Inverts the content of this CATMathSetOfPointsNDWithVectors.
o IsA()
Returns the class name .
o IsAKindOf(CATMathClassId)
Tests the class of this CATMathSetOfPointsNDWithVectors.
o IsLinear(CATLONG32,CATLONG32*,CATTolerance&)
Searches for a line defined by the set of points on specific coordinates.
o Pack()
Packs this CATMathSetOfPointsWithVectors.
o RemovePoint(CATLONG32)
Removes one point of this CATMathSetOfPointsNDWithVectors.
o RemovePoints(CATMathSetOfLongs&)
Removes points of this CATMathSetOfPointsNDWithVectors.
o ReplaceVector(double*)
Replaces the coordinates of vector associated with the current point.
o ReplaceVector(CATLONG32,double*)
Replaces the coordinates of the vector associated with a specific point.
o Reset()
Resets this CATMathSetOfPointsTwoTangents (the points, the vectors and tangents).
o SetLastTangent(double*)
Modifies the last tangent of this CATMathSetOfPointsNDWithVectors.
o SetPeriodic(CATBoolean)
Sets the periodicity of this CATMathSetOfPointsNDWithVectors.
o Split(CATLONG32,CATMathSetOfPointsNDWithVectors&,CATBoolean,CATTolerance&)
Splits a CATMathSetOfPointsNDWithVectors just after the point corresponding to the iIndex.
o SwapPoints(CATLONG32,CATLONG32)
Swaps two points inside this CATMathSetOfPointsNDWithVectors.
o operator =(CATMathSetOfPointsNDWithVectors&)
Assignment operator.

Constructor and Destructor


o CATMathSetOfPointsNDWithVectors
public CATMathSetOfPointsNDWithVectors( const iN,
const iNumberOfPoint)
Constructs a CATMathSetOfPointsNDTwoTangents.
The tangents are initialized by the null vector.
Parameters:
iN
The dimension of the space.
iNumberOfPoint
The size of the set.
o CATMathSetOfPointsNDWithVectors
public CATMathSetOfPointsNDWithVectors( const iToCopy)
Copy constructor.
o ~CATMathSetOfPointsNDWithVectors
public ~CATMathSetOfPointsNDWithVectors()

Methods


o AddNewPointWithVector
public AddNewPointWithVector( const iPoint,
const iVector,
const iTol)
Appends a point and its associated vector at the end of the set, if the point is different from the last one. If needed, this CATMathSetOfPointsNDWithVectors is reallocated.
Parameters:
iPoint
The array of the coordinates of the point.
iVector
The array of the coordinates of the vector.
iTol
The tolerance of confusion. If 0, the numerical tolerance is used.
o AddPoint
public AddPoint( const iPoint)
Appends a point at the end of the set. If needed, this CATMathSetOfPointsNDWithVectors is reallocated.
Parameters:
iPoint
The array of the coordinates.
o AddPointWithVector
public AddPointWithVector( const iPoint,
const iVector)
Appends a point and its associated vector at the end of the set. If needed, this CATMathSetOfPointsNDWithVectors is reallocated.
Parameters:
iPoint
The array of the coordinates of the point.
iVector
The array of the coordinates of the vector.
o AddSet
public AddSet( const iSetToConcatenate,
iMerge)
Concatenates a CATMathSetOfPointsNDWithVectors just after the last point of this CATMathSetOfPointsNDWithVectors. If needed, this CATMathSetOfPointsNDWithVectors is reallocated.
Parameters:
iSetToConcatenate
The set to concatenate.
iMerge
The way to concatenate.
Legal values: TRUE if the last point of this CATMathSetOfPointsNDWithVectors. and the first point of iSetToConcatenate must be merged, FALSE otherwise.
o AutoInvert
public AutoInvert()
Inverts the content of this CATMathSetOfPointsNDWithVectors inside itself.
The tangents and the vectors are also inverted.
o FindCircle
public virtual FindCircle( const iCoordIndex,
ioRadius,
ioCenter,
ioU,
ioV,
iTol=0.,
iPlanarityTol= 0.,
const iTolObject=CATGetDefaultTolerance())
Searches for a 3D circle defined by the set of points on 3 specific coordinates.
Parameters:
iCoordIndex
The array of 3 coodinates indexes to be taken into account, such that 0 <= iCoord[i] < N, i=0,1,2.
ioRadius
The value of the radius of the circle.
ioCenter
The 3D center point.
ioU
The first normed vector of the circle plane.
ioV
The second orthonormed vector of the circle plane.
iTol
The tolerance to match the circle. By default, the numerical tolerance is used.
iPlanarityTol
The tolerance to match the circle plane. By default, the numerical tolerance is used.
iTolObject
The default tolerance.
Returns:
The result diagnosis. 1 if a circle has been found, 0 otherwise.
o GetLastTangent
public GetLastTangent()
Returns the last tangent of this CATMathSetOfPointsNDWithVectors.
Returns:
The array [N] of coordinates. Must be previously allocated.
o GetPointWithVector
public GetPointWithVector( const iPointIndex,
oPoint,
oVector)
Retrieves the coordinates of a specific point and its associated vector .
Parameters:
iPointIndex
The index of the point (0<= iPointIndex < NumberOfPoints).
oPoint
A pointer to the coordinates of the point.
oVector
A pointer to the coordinates of the vector.
o GetVector
public GetVector( oVector)
Retrieves the coordinates of the vector associated with the current point.
Parameters:
oVector
A pointer to the the coordinates .
o GetVector
public GetVector( const iPointIndex,
oVector)
Retrieves the vector associated with a specific point of this CATMathSetOfPointsNDWithVector.
Parameters:
iPointIndex
The index of the point (0<= iPointIndex < NumberOfPoints).
oVector
A pointer to the coordinates.
o GetVectors
public GetVectors()
Returns the coordinates of the vector associated with the current point.
Returns:
A pointer to the vectors.
o InitializeParameters
public InitializeParameters( ioParameters)
Computes the distance between two successive points of this CATMathSetOfPointsNDWithVectors.
Parameters:
ioParameters
The array of distance of each successive interval. Must be previously allocated to NumberOfPoints-1.
o InsertPoint
public InsertPoint( const iPoint,
const iPointIndex)
Inserts a point at a specific position. If needed, this CATMathSetOfPointsNDWithVectors is reallocated.
Parameters:
iPoint
The array of the new coordinates.
iPointIndex
The index of the point (0<= iPointIndex < NumberOfPoints).
o InsertPointWithVector
public InsertPointWithVector( const iPoint,
const iVector,
const iPointIndex)
Inserts a point and its associated vector at a specific position. If needed, this CATMathSetOfPointsNDWithVectors is reallocated.
Parameters:
iPoint
The array of the new coordinates.
iVector
The array of the coordinates of the vector.
iPointIndex
The index of the point (0<= iPointIndex < NumberOfPoints).
o Invert
public Invert( iResultingSet)
Inverts the content of this CATMathSetOfPointsNDWithVectors.
Parameters:
ioResultingSet
The result of the inversion (must be previously allocated). The tangents and the vectors are also inverted.
o IsA
public IsA()
Returns the class name .
Returns:
CATMathSetOfPointsNDWithVectors.
o IsAKindOf
public IsAKindOf( const iClassId)
Tests the class of this CATMathSetOfPointsNDWithVectors.
Parameters:
iClassId
The name of the class.
Returns:
The result of the test.
Legal values: TRUE if this CATMathSetOfPointsNDTWithVectors is a kind of iClassId, FALSE otherwise.
o IsLinear
public IsLinear( const iNumCoord,
const iCoordIndex,
const iTolObject=CATGetDefaultTolerance())
Searches for a line defined by the set of points on specific coordinates.
Parameters:
iNumCoord
The number of coordinates to take into account.
iCoordIndex
The array of iNumCoord coodinates indexes to be taken into account, such that 0 <= iCoord[i] < N, i=0,..,iNumCoord-1.
iTol
The tolerance to match the line. By default, the numerical tolerance is used.
Returns:
The result diagnosis. 1 if a line has been found, 0 otherwise.
o Pack
public Pack()
Packs this CATMathSetOfPointsWithVectors.
In this case, _MaxNumberOfPoint = _NumberOfPoint.
o RemovePoint
public RemovePoint( const iIndexToRemove)
Removes one point of this CATMathSetOfPointsNDWithVectors.
The points after the removed point are shift, but the memory is not deleted (_MaxNumberOfPoint still remains the same).
Parameters:
iIndexToRemove
The index of the point to remove 0<= iIndexToRemove < NumberOfPoints .
o RemovePoints
public RemovePoints( const iPointsIndex)
Removes points of this CATMathSetOfPointsNDWithVectors.
The remaining points are shift, but the memory is not deleted (_MaxNumberOfPoint still remains the same).
Parameters:
iPointsIndex
The list of the indexes of the points to remove.
o ReplaceVector
public ReplaceVector( const iVector)
Replaces the coordinates of vector associated with the current point.
Parameters:
iVector
The array of the new coordinates.
o ReplaceVector
public ReplaceVector( const iPointIndex,
const iVector)
Replaces the coordinates of the vector associated with a specific point.
Parameters:
iPointIndex
The index of the point (0<= iPointIndex < NumberOfPoints).
iVector
The array of the new coordinates.
o Reset
public Reset()
Resets this CATMathSetOfPointsTwoTangents (the points, the vectors and tangents).
The memory is not deleted and the class can be used again.
o SetLastTangent
public SetLastTangent( const iB)
Modifies the last tangent of this CATMathSetOfPointsNDWithVectors.
Parameters:
iB
The array [N] of coordinates.
o SetPeriodic
public SetPeriodic( const iPeriodic= 1)
Sets the periodicity of this CATMathSetOfPointsNDWithVectors.
Parameters:
iPeriodic

Legal values :
1
Sets to periodic: in this case, the first and the last points must be the same.
0
unsets the periodicity.
o Split
public Split( const iIndex,
ioSetbis,
iMerge,
const iTolObject=CATGetDefaultTolerance())
Splits a CATMathSetOfPointsNDWithVectors just after the point corresponding to the iIndex. The part of this CATMathSetOfPointsNDWithVectors before iIndex will stay in this CATMathSetOfPointsNDWithVectors, and the part after will go in ioSetbis. If needed, ioSetbis is reallocated,and this CATMathSetOfPointsNDWithVectors is disallocated.
Parameters:
iIndex
The index of the point where to split(0<=iIndex
iSetbis
The new set after the split(must be previously allocated).
iMerge
The way to split.
Legal values: TRUE if the last point of new this CATMathSetOfPointsNDWithVectors. and the first point of iSetbis will be the same equal to iIndex point, FALSE if the last . point of new this CATMathSetOfPointsNDWithVectors will be equal to iIndex point and the first point. of iSetbis will be the iIndex+1 point.
iTolObject
The default tolerance.
o SwapPoints
public SwapPoints( const iPointIndex1,
const iPointIndex2)
Swaps two points inside this CATMathSetOfPointsNDWithVectors.
Parameters:
iPointIndex1
The index of the first point to swap.
iPointIndex2
The index of the second point to swap.
o operator =
public operator =( const iS)
Assignment operator.

This object is included in the file: CATMathSetOfPointsNDWithVectors.h
If needed, your Imakefile.mk should include the module: CATAdvancedMathematics

Copyright © 1999-2014, Dassault Systèmes. All rights reserved.