Open CASCADE Technology  7.3.0
Public Member Functions

gp_XY Class Reference

This class describes a cartesian coordinate entity in 2D space {X,Y}. This class is non persistent. This entity used for algebraic calculation. An XY can be transformed with a Trsf2d or a GTrsf2d from package gp. It is used in vectorial computations or for holding this type of information in data structures. More...

#include <gp_XY.hxx>

Public Member Functions

 gp_XY ()
 Creates XY object with zero coordinates (0,0). More...
 
 gp_XY (const Standard_Real X, const Standard_Real Y)
 a number pair defined by the XY coordinates More...
 
void SetCoord (const Standard_Integer Index, const Standard_Real Xi)
 modifies the coordinate of range Index Index = 1 => X is modified Index = 2 => Y is modified Raises OutOfRange if Index != {1, 2}. More...
 
void SetCoord (const Standard_Real X, const Standard_Real Y)
 For this number pair, assigns the values X and Y to its coordinates. More...
 
void SetX (const Standard_Real X)
 Assigns the given value to the X coordinate of this number pair. More...
 
void SetY (const Standard_Real Y)
 Assigns the given value to the Y coordinate of this number pair. More...
 
Standard_Real Coord (const Standard_Integer Index) const
 returns the coordinate of range Index : Index = 1 => X is returned Index = 2 => Y is returned Raises OutOfRange if Index != {1, 2}. More...
 
Standard_RealChangeCoord (const Standard_Integer theIndex)
 
void Coord (Standard_Real &X, Standard_Real &Y) const
 For this number pair, returns its coordinates X and Y. More...
 
Standard_Real X () const
 Returns the X coordinate of this number pair. More...
 
Standard_Real Y () const
 Returns the Y coordinate of this number pair. More...
 
Standard_Real Modulus () const
 Computes Sqrt (X*X + Y*Y) where X and Y are the two coordinates of this number pair. More...
 
Standard_Real SquareModulus () const
 Computes X*X + Y*Y where X and Y are the two coordinates of this number pair. More...
 
Standard_Boolean IsEqual (const gp_XY &Other, const Standard_Real Tolerance) const
 Returns true if the coordinates of this number pair are equal to the respective coordinates of the number pair Other, within the specified tolerance Tolerance. I.e.: abs(<me>.X() - Other.X()) <= Tolerance and abs(<me>.Y() - Other.Y()) <= Tolerance and computations. More...
 
void Add (const gp_XY &Other)
 Computes the sum of this number pair and number pair Other <me>.X() = <me>.X() + Other.X() <me>.Y() = <me>.Y() + Other.Y() More...
 
void operator+= (const gp_XY &Other)
 
gp_XY Added (const gp_XY &Other) const
 Computes the sum of this number pair and number pair Other new.X() = <me>.X() + Other.X() new.Y() = <me>.Y() + Other.Y() More...
 
gp_XY operator+ (const gp_XY &Other) const
 
Standard_Real Crossed (const gp_XY &Right) const
 Real D = <me>.X() * Other.Y() - <me>.Y() * Other.X() More...
 
Standard_Real operator^ (const gp_XY &Right) const
 
Standard_Real CrossMagnitude (const gp_XY &Right) const
 computes the magnitude of the cross product between <me> and Right. Returns || <me> ^ Right || More...
 
Standard_Real CrossSquareMagnitude (const gp_XY &Right) const
 computes the square magnitude of the cross product between <me> and Right. Returns || <me> ^ Right ||**2 More...
 
void Divide (const Standard_Real Scalar)
 divides <me> by a real. More...
 
void operator/= (const Standard_Real Scalar)
 
gp_XY Divided (const Standard_Real Scalar) const
 Divides <me> by a real. More...
 
gp_XY operator/ (const Standard_Real Scalar) const
 
Standard_Real Dot (const gp_XY &Other) const
 Computes the scalar product between <me> and Other. More...
 
Standard_Real operator* (const gp_XY &Other) const
 
void Multiply (const Standard_Real Scalar)
 <me>.X() = <me>.X() * Scalar; <me>.Y() = <me>.Y() * Scalar; More...
 
void operator*= (const Standard_Real Scalar)
 
void Multiply (const gp_XY &Other)
 <me>.X() = <me>.X() * Other.X(); <me>.Y() = <me>.Y() * Other.Y(); More...
 
void operator*= (const gp_XY &Other)
 
void Multiply (const gp_Mat2d &Matrix)
 <me> = Matrix * <me> More...
 
void operator*= (const gp_Mat2d &Matrix)
 
gp_XY Multiplied (const Standard_Real Scalar) const
 New.X() = <me>.X() * Scalar; New.Y() = <me>.Y() * Scalar;. More...
 
gp_XY operator* (const Standard_Real Scalar) const
 
gp_XY Multiplied (const gp_XY &Other) const
 new.X() = <me>.X() * Other.X(); new.Y() = <me>.Y() * Other.Y(); More...
 
gp_XY Multiplied (const gp_Mat2d &Matrix) const
 New = Matrix * <me> More...
 
gp_XY operator* (const gp_Mat2d &Matrix) const
 
void Normalize ()
 <me>.X() = <me>.X()/ <me>.Modulus() <me>.Y() = <me>.Y()/ <me>.Modulus() Raises ConstructionError if <me>.Modulus() <= Resolution from gp More...
 
gp_XY Normalized () const
 New.X() = <me>.X()/ <me>.Modulus() New.Y() = <me>.Y()/ <me>.Modulus() Raises ConstructionError if <me>.Modulus() <= Resolution from gp. More...
 
void Reverse ()
 <me>.X() = -<me>.X() <me>.Y() = -<me>.Y() More...
 
gp_XY Reversed () const
 New.X() = -<me>.X() New.Y() = -<me>.Y() More...
 
gp_XY operator- () const
 
void SetLinearForm (const Standard_Real A1, const gp_XY &XY1, const Standard_Real A2, const gp_XY &XY2)
 Computes the following linear combination and assigns the result to this number pair: A1 * XY1 + A2 * XY2. More...
 
void SetLinearForm (const Standard_Real A1, const gp_XY &XY1, const Standard_Real A2, const gp_XY &XY2, const gp_XY &XY3)
 – Computes the following linear combination and assigns the result to this number pair: A1 * XY1 + A2 * XY2 + XY3 More...
 
void SetLinearForm (const Standard_Real A1, const gp_XY &XY1, const gp_XY &XY2)
 Computes the following linear combination and assigns the result to this number pair: A1 * XY1 + XY2. More...
 
void SetLinearForm (const gp_XY &XY1, const gp_XY &XY2)
 Computes the following linear combination and assigns the result to this number pair: XY1 + XY2. More...
 
void Subtract (const gp_XY &Right)
 <me>.X() = <me>.X() - Other.X() <me>.Y() = <me>.Y() - Other.Y() More...
 
void operator-= (const gp_XY &Right)
 
gp_XY Subtracted (const gp_XY &Right) const
 new.X() = <me>.X() - Other.X() new.Y() = <me>.Y() - Other.Y() More...
 
gp_XY operator- (const gp_XY &Right) const
 

Detailed Description

This class describes a cartesian coordinate entity in 2D space {X,Y}. This class is non persistent. This entity used for algebraic calculation. An XY can be transformed with a Trsf2d or a GTrsf2d from package gp. It is used in vectorial computations or for holding this type of information in data structures.

Constructor & Destructor Documentation

◆ gp_XY() [1/2]

gp_XY::gp_XY ( )

Creates XY object with zero coordinates (0,0).

◆ gp_XY() [2/2]

gp_XY::gp_XY ( const Standard_Real  X,
const Standard_Real  Y 
)

a number pair defined by the XY coordinates

Member Function Documentation

◆ Add()

void gp_XY::Add ( const gp_XY Other)

Computes the sum of this number pair and number pair Other <me>.X() = <me>.X() + Other.X() <me>.Y() = <me>.Y() + Other.Y()

◆ Added()

gp_XY gp_XY::Added ( const gp_XY Other) const

Computes the sum of this number pair and number pair Other new.X() = <me>.X() + Other.X() new.Y() = <me>.Y() + Other.Y()

◆ ChangeCoord()

Standard_Real& gp_XY::ChangeCoord ( const Standard_Integer  theIndex)

◆ Coord() [1/2]

Standard_Real gp_XY::Coord ( const Standard_Integer  Index) const

returns the coordinate of range Index : Index = 1 => X is returned Index = 2 => Y is returned Raises OutOfRange if Index != {1, 2}.

◆ Coord() [2/2]

void gp_XY::Coord ( Standard_Real X,
Standard_Real Y 
) const

For this number pair, returns its coordinates X and Y.

◆ Crossed()

Standard_Real gp_XY::Crossed ( const gp_XY Right) const

Real D = <me>.X() * Other.Y() - <me>.Y() * Other.X()

◆ CrossMagnitude()

Standard_Real gp_XY::CrossMagnitude ( const gp_XY Right) const

computes the magnitude of the cross product between <me> and Right. Returns || <me> ^ Right ||

◆ CrossSquareMagnitude()

Standard_Real gp_XY::CrossSquareMagnitude ( const gp_XY Right) const

computes the square magnitude of the cross product between <me> and Right. Returns || <me> ^ Right ||**2

◆ Divide()

void gp_XY::Divide ( const Standard_Real  Scalar)

divides <me> by a real.

◆ Divided()

gp_XY gp_XY::Divided ( const Standard_Real  Scalar) const

Divides <me> by a real.

◆ Dot()

Standard_Real gp_XY::Dot ( const gp_XY Other) const

Computes the scalar product between <me> and Other.

◆ IsEqual()

Standard_Boolean gp_XY::IsEqual ( const gp_XY Other,
const Standard_Real  Tolerance 
) const

Returns true if the coordinates of this number pair are equal to the respective coordinates of the number pair Other, within the specified tolerance Tolerance. I.e.: abs(<me>.X() - Other.X()) <= Tolerance and abs(<me>.Y() - Other.Y()) <= Tolerance and computations.

◆ Modulus()

Standard_Real gp_XY::Modulus ( ) const

Computes Sqrt (X*X + Y*Y) where X and Y are the two coordinates of this number pair.

◆ Multiplied() [1/3]

gp_XY gp_XY::Multiplied ( const Standard_Real  Scalar) const

New.X() = <me>.X() * Scalar; New.Y() = <me>.Y() * Scalar;.

◆ Multiplied() [2/3]

gp_XY gp_XY::Multiplied ( const gp_XY Other) const

new.X() = <me>.X() * Other.X(); new.Y() = <me>.Y() * Other.Y();

◆ Multiplied() [3/3]

gp_XY gp_XY::Multiplied ( const gp_Mat2d Matrix) const

New = Matrix * <me>

◆ Multiply() [1/3]

void gp_XY::Multiply ( const Standard_Real  Scalar)

<me>.X() = <me>.X() * Scalar; <me>.Y() = <me>.Y() * Scalar;

◆ Multiply() [2/3]

void gp_XY::Multiply ( const gp_XY Other)

<me>.X() = <me>.X() * Other.X(); <me>.Y() = <me>.Y() * Other.Y();

◆ Multiply() [3/3]

void gp_XY::Multiply ( const gp_Mat2d Matrix)

<me> = Matrix * <me>

◆ Normalize()

void gp_XY::Normalize ( )

<me>.X() = <me>.X()/ <me>.Modulus() <me>.Y() = <me>.Y()/ <me>.Modulus() Raises ConstructionError if <me>.Modulus() <= Resolution from gp

◆ Normalized()

gp_XY gp_XY::Normalized ( ) const

New.X() = <me>.X()/ <me>.Modulus() New.Y() = <me>.Y()/ <me>.Modulus() Raises ConstructionError if <me>.Modulus() <= Resolution from gp.

◆ operator*() [1/3]

Standard_Real gp_XY::operator* ( const gp_XY Other) const
inline

◆ operator*() [2/3]

gp_XY gp_XY::operator* ( const Standard_Real  Scalar) const
inline

◆ operator*() [3/3]

gp_XY gp_XY::operator* ( const gp_Mat2d Matrix) const
inline

◆ operator*=() [1/3]

void gp_XY::operator*= ( const Standard_Real  Scalar)
inline

◆ operator*=() [2/3]

void gp_XY::operator*= ( const gp_XY Other)
inline

◆ operator*=() [3/3]

void gp_XY::operator*= ( const gp_Mat2d Matrix)
inline

◆ operator+()

gp_XY gp_XY::operator+ ( const gp_XY Other) const
inline

◆ operator+=()

void gp_XY::operator+= ( const gp_XY Other)
inline

◆ operator-() [1/2]

gp_XY gp_XY::operator- ( ) const
inline

◆ operator-() [2/2]

gp_XY gp_XY::operator- ( const gp_XY Right) const
inline

◆ operator-=()

void gp_XY::operator-= ( const gp_XY Right)
inline

◆ operator/()

gp_XY gp_XY::operator/ ( const Standard_Real  Scalar) const
inline

◆ operator/=()

void gp_XY::operator/= ( const Standard_Real  Scalar)
inline

◆ operator^()

Standard_Real gp_XY::operator^ ( const gp_XY Right) const
inline

◆ Reverse()

void gp_XY::Reverse ( )

<me>.X() = -<me>.X() <me>.Y() = -<me>.Y()

◆ Reversed()

gp_XY gp_XY::Reversed ( ) const

New.X() = -<me>.X() New.Y() = -<me>.Y()

◆ SetCoord() [1/2]

void gp_XY::SetCoord ( const Standard_Integer  Index,
const Standard_Real  Xi 
)

modifies the coordinate of range Index Index = 1 => X is modified Index = 2 => Y is modified Raises OutOfRange if Index != {1, 2}.

◆ SetCoord() [2/2]

void gp_XY::SetCoord ( const Standard_Real  X,
const Standard_Real  Y 
)

For this number pair, assigns the values X and Y to its coordinates.

◆ SetLinearForm() [1/4]

void gp_XY::SetLinearForm ( const Standard_Real  A1,
const gp_XY XY1,
const Standard_Real  A2,
const gp_XY XY2 
)

Computes the following linear combination and assigns the result to this number pair: A1 * XY1 + A2 * XY2.

◆ SetLinearForm() [2/4]

void gp_XY::SetLinearForm ( const Standard_Real  A1,
const gp_XY XY1,
const Standard_Real  A2,
const gp_XY XY2,
const gp_XY XY3 
)

– Computes the following linear combination and assigns the result to this number pair: A1 * XY1 + A2 * XY2 + XY3

◆ SetLinearForm() [3/4]

void gp_XY::SetLinearForm ( const Standard_Real  A1,
const gp_XY XY1,
const gp_XY XY2 
)

Computes the following linear combination and assigns the result to this number pair: A1 * XY1 + XY2.

◆ SetLinearForm() [4/4]

void gp_XY::SetLinearForm ( const gp_XY XY1,
const gp_XY XY2 
)

Computes the following linear combination and assigns the result to this number pair: XY1 + XY2.

◆ SetX()

void gp_XY::SetX ( const Standard_Real  X)

Assigns the given value to the X coordinate of this number pair.

◆ SetY()

void gp_XY::SetY ( const Standard_Real  Y)

Assigns the given value to the Y coordinate of this number pair.

◆ SquareModulus()

Standard_Real gp_XY::SquareModulus ( ) const

Computes X*X + Y*Y where X and Y are the two coordinates of this number pair.

◆ Subtract()

void gp_XY::Subtract ( const gp_XY Right)

<me>.X() = <me>.X() - Other.X() <me>.Y() = <me>.Y() - Other.Y()

◆ Subtracted()

gp_XY gp_XY::Subtracted ( const gp_XY Right) const

new.X() = <me>.X() - Other.X() new.Y() = <me>.Y() - Other.Y()

◆ X()

Standard_Real gp_XY::X ( ) const

Returns the X coordinate of this number pair.

◆ Y()

Standard_Real gp_XY::Y ( ) const

Returns the Y coordinate of this number pair.


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