# FoundationClasses
TKMath
gp

# gp_Vec2d Class Reference

Defines a non-persistent vector in 2D space.
.

`#include <gp_Vec2d.hxx>`

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
| gp_Vec2d ()
| Creates an indefinite vector. .
| gp_Vec2d (const gp_Dir2d &V)
| Creates a unitary vector from a direction V. .
| gp_Vec2d (const gp_XY &Coord)
| Creates a vector with a doublet of coordinates. .
| gp_Vec2d (const Standard_Real Xv, const Standard_Real Yv)
| Creates a point with its two cartesian coordinates. .
| gp_Vec2d (const gp_Pnt2d &P1, const gp_Pnt2d &P2)
| Creates a vector from two points. The length of the vector is the distance between P1 and P2 .
void | SetCoord (const Standard_Integer Index, const Standard_Real Xi)
| Changes the coordinate of range Index Index = 1 => X is modified Index = 2 => Y is modified Raises OutOfRange if Index != {1, 2}. .
void | SetCoord (const Standard_Real Xv, const Standard_Real Yv)
| For this vector, assigns the values Xv and Yv to its two coordinates .
void | SetX (const Standard_Real X)
| Assigns the given value to the X coordinate of this vector. .
void | SetY (const Standard_Real Y)
| Assigns the given value to the Y coordinate of this vector. .
void | SetXY (const gp_XY &Coord)
| Assigns the two coordinates of Coord to this vector. .
Standard_Real | Coord (const Standard_Integer Index) const
| Returns the coordinate of range Index : Index = 1 => X is returned Index = 2 => Y is returned //! Raised if Index != {1, 2}. .
void | Coord (Standard_Real &Xv, Standard_Real &Yv) const
| For this vector, returns its two coordinates Xv and Yv .
Standard_Real | X () const
| For this vector, returns its X coordinate. .
Standard_Real | Y () const
| For this vector, returns its Y coordinate. .
const gp_XY & | XY () const
| For this vector, returns its two coordinates as a number pair .
Standard_EXPORT Standard_Boolean | IsEqual (const gp_Vec2d &Other, const Standard_Real LinearTolerance, const Standard_Real AngularTolerance) const
| Returns True if the two vectors have the same magnitude value and the same direction. The precision values are LinearTolerance for the magnitude and AngularTolerance for the direction. .
Standard_Boolean | IsNormal (const gp_Vec2d &Other, const Standard_Real AngularTolerance) const
| Returns True if abs(Abs(<me>.Angle(Other)) - PI/2.) <= AngularTolerance Raises VectorWithNullMagnitude if <me>.Magnitude() <= Resolution or Other.Magnitude() <= Resolution from gp. .
Standard_Boolean | IsOpposite (const gp_Vec2d &Other, const Standard_Real AngularTolerance) const
| Returns True if PI - Abs(<me>.Angle(Other)) <= AngularTolerance Raises VectorWithNullMagnitude if <me>.Magnitude() <= Resolution or Other.Magnitude() <= Resolution from gp. .
Standard_Boolean | IsParallel (const gp_Vec2d &Other, const Standard_Real AngularTolerance) const
| Returns true if Abs(Angle(<me>, Other)) <= AngularTolerance or PI - Abs(Angle(<me>, Other)) <= AngularTolerance Two vectors with opposite directions are considered as parallel. Raises VectorWithNullMagnitude if <me>.Magnitude() <= Resolution or Other.Magnitude() <= Resolution from gp .
Standard_EXPORT Standard_Real | Angle (const gp_Vec2d &Other) const
| Computes the angular value between <me> and <other> returns the angle value between -PI and PI in radian. The orientation is from <me> to Other. The positive sense is the trigonometric sense. Raises VectorWithNullMagnitude if <me>.Magnitude() <= Resolution from gp or Other.Magnitude() <= Resolution because the angular value is indefinite if one of the vectors has a null magnitude. .
Standard_Real | Magnitude () const
| Computes the magnitude of this vector. .
Standard_Real | SquareMagnitude () const
| Computes the square magnitude of this vector. .
void | Add (const gp_Vec2d &Other)
void | operator+= (const gp_Vec2d &Other)
gp_Vec2d | Added (const gp_Vec2d &Other) const
| Adds two vectors .
gp_Vec2d | operator+ (const gp_Vec2d &Other) const
Standard_Real | Crossed (const gp_Vec2d &Right) const
| Computes the crossing product between two vectors .
Standard_Real | operator^ (const gp_Vec2d &Right) const
Standard_Real | CrossMagnitude (const gp_Vec2d &Right) const
| Computes the magnitude of the cross product between <me> and Right. Returns || <me> ^ Right || .
Standard_Real | CrossSquareMagnitude (const gp_Vec2d &Right) const
| Computes the square magnitude of the cross product between <me> and Right. Returns || <me> ^ Right ||**2 .
void | Divide (const Standard_Real Scalar)
void | operator/= (const Standard_Real Scalar)
gp_Vec2d | Divided (const Standard_Real Scalar) const
| divides a vector by a scalar
gp_Vec2d | operator/ (const Standard_Real Scalar) const
Standard_Real | Dot (const gp_Vec2d &Other) const
| Computes the scalar product .
Standard_Real | operator * (const gp_Vec2d &Other) const
void | Multiply (const Standard_Real Scalar)
void | operator *= (const Standard_Real Scalar)
gp_Vec2d | Multiplied (const Standard_Real Scalar) const
| Normalizes a vector Raises an exception if the magnitude of the vector is lower or equal to Resolution from package gp. .
gp_Vec2d | operator * (const Standard_Real Scalar) const
void | Normalize ()
gp_Vec2d | Normalized () const
| Normalizes a vector Raises an exception if the magnitude of the vector is lower or equal to Resolution from package gp. //! Reverses the direction of a vector .
void | Reverse ()
gp_Vec2d | Reversed () const
| Reverses the direction of a vector //! Subtracts two vectors .
gp_Vec2d | operator- () const
void | Subtract (const gp_Vec2d &Right)
void | operator-= (const gp_Vec2d &Right)
gp_Vec2d | Subtracted (const gp_Vec2d &Right) const
| Subtracts two vectors .
gp_Vec2d | operator- (const gp_Vec2d &Right) const
void | SetLinearForm (const Standard_Real A1, const gp_Vec2d &V1, const Standard_Real A2, const gp_Vec2d &V2, const gp_Vec2d &V3)
| <me> is setted to the following linear form : A1 * V1 + A2 * V2 + V3
void | SetLinearForm (const Standard_Real A1, const gp_Vec2d &V1, const Standard_Real A2, const gp_Vec2d &V2)
| <me> is setted to the following linear form : A1 * V1 + A2 * V2
void | SetLinearForm (const Standard_Real A1, const gp_Vec2d &V1, const gp_Vec2d &V2)
| <me> is setted to the following linear form : A1 * V1 + V2
void | SetLinearForm (const gp_Vec2d &Left, const gp_Vec2d &Right)
| <me> is setted to the following linear form : Left + Right Performs the symmetrical transformation of a vector with respect to the vector V which is the center of the symmetry.
Standard_EXPORT void | Mirror (const gp_Vec2d &V)
Standard_EXPORT gp_Vec2d | Mirrored (const gp_Vec2d &V) const
| Performs the symmetrical transformation of a vector with respect to the vector V which is the center of the symmetry. Performs the symmetrical transformation of a vector with respect to an axis placement which is the axis of the symmetry. .
Standard_EXPORT void | Mirror (const gp_Ax2d &A1)
Standard_EXPORT gp_Vec2d | Mirrored (const gp_Ax2d &A1) const
| Performs the symmetrical transformation of a vector with respect to an axis placement which is the axis of the symmetry. .
void | Rotate (const Standard_Real Ang)
gp_Vec2d | Rotated (const Standard_Real Ang) const
| Rotates a vector. Ang is the angular value of the rotation in radians. .
void | Scale (const Standard_Real S)
gp_Vec2d | Scaled (const Standard_Real S) const
| Scales a vector. S is the scaling value. .
Standard_EXPORT void | Transform (const gp_Trsf2d &T)
gp_Vec2d | Transformed (const gp_Trsf2d &T) const
| Transforms a vector with a Trsf from gp. .
const gp_XY & | _CSFDB_Getgp_Vec2dcoord () const

## Private Attributes

gp_XY | coord

## Friends

Standard_EXPORT friend Handle_Standard_Type & | gp_Vec2d_Type_ ()

## Constructor & Destructor Documentation

gp_Vec2d::gp_Vec2d | ( |  | ) | `[inline]`

gp_Vec2d::gp_Vec2d | ( | const gp_Dir2d & | V | ) | `[inline]`

gp_Vec2d::gp_Vec2d | ( | const gp_XY & | Coord | ) | `[inline]`

gp_Vec2d::gp_Vec2d | ( | const Standard_Real | Xv,
|  | const Standard_Real | Yv
| ) | `[inline]`

gp_Vec2d::gp_Vec2d | ( | const gp_Pnt2d & | P1,
|  | const gp_Pnt2d & | P2
| ) | `[inline]`

## Member Function Documentation

const gp_XY& gp_Vec2d::_CSFDB_Getgp_Vec2dcoord | ( |  | ) | const`[inline]`

void gp_Vec2d::Add | ( | const gp_Vec2d & | Other | ) | `[inline]`

gp_Vec2d gp_Vec2d::Added | ( | const gp_Vec2d & | Other | ) | const`[inline]`

Standard_EXPORT Standard_Real gp_Vec2d::Angle | ( | const gp_Vec2d & | Other | ) | const

void gp_Vec2d::Coord | ( | Standard_Real & | Xv,
|  | Standard_Real & | Yv
| ) | const`[inline]`

Standard_Real gp_Vec2d::Coord | ( | const Standard_Integer | Index | ) | const`[inline]`

Standard_Real gp_Vec2d::Crossed | ( | const gp_Vec2d & | Right | ) | const`[inline]`

Standard_Real gp_Vec2d::CrossMagnitude | ( | const gp_Vec2d & | Right | ) | const`[inline]`

Standard_Real gp_Vec2d::CrossSquareMagnitude | ( | const gp_Vec2d & | Right | ) | const`[inline]`

void gp_Vec2d::Divide | ( | const Standard_Real | Scalar | ) | `[inline]`

gp_Vec2d gp_Vec2d::Divided | ( | const Standard_Real | Scalar | ) | const`[inline]`

Standard_Real gp_Vec2d::Dot | ( | const gp_Vec2d & | Other | ) | const`[inline]`

Standard_EXPORT Standard_Boolean gp_Vec2d::IsEqual | ( | const gp_Vec2d & | Other,
|  | const Standard_Real | LinearTolerance,
|  | const Standard_Real | AngularTolerance
| ) | const

Standard_Boolean gp_Vec2d::IsNormal | ( | const gp_Vec2d & | Other,
|  | const Standard_Real | AngularTolerance
| ) | const`[inline]`

Standard_Boolean gp_Vec2d::IsOpposite | ( | const gp_Vec2d & | Other,
|  | const Standard_Real | AngularTolerance
| ) | const`[inline]`

Standard_Boolean gp_Vec2d::IsParallel | ( | const gp_Vec2d & | Other,
|  | const Standard_Real | AngularTolerance
| ) | const`[inline]`

Standard_Real gp_Vec2d::Magnitude | ( |  | ) | const`[inline]`

Standard_EXPORT void gp_Vec2d::Mirror | ( | const gp_Ax2d & | A1 | ) |

Standard_EXPORT void gp_Vec2d::Mirror | ( | const gp_Vec2d & | V | ) |

Standard_EXPORT gp_Vec2d gp_Vec2d::Mirrored | ( | const gp_Ax2d & | A1 | ) | const

Standard_EXPORT gp_Vec2d gp_Vec2d::Mirrored | ( | const gp_Vec2d & | V | ) | const

gp_Vec2d gp_Vec2d::Multiplied | ( | const Standard_Real | Scalar | ) | const`[inline]`

void gp_Vec2d::Multiply | ( | const Standard_Real | Scalar | ) | `[inline]`

void gp_Vec2d::Normalize | ( |  | ) | `[inline]`

gp_Vec2d gp_Vec2d::Normalized | ( |  | ) | const`[inline]`

gp_Vec2d gp_Vec2d::operator * | ( | const Standard_Real | Scalar | ) | const`[inline]`

Standard_Real gp_Vec2d::operator * | ( | const gp_Vec2d & | Other | ) | const`[inline]`

void gp_Vec2d::operator *= | ( | const Standard_Real | Scalar | ) | `[inline]`

void gp_Vec2d::operator delete | ( | void * | anAddress | ) | `[inline]`

void* gp_Vec2d::operator new | ( | size_t | size | ) | `[inline]`

void* gp_Vec2d::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

gp_Vec2d gp_Vec2d::operator+ | ( | const gp_Vec2d & | Other | ) | const`[inline]`

void gp_Vec2d::operator+= | ( | const gp_Vec2d & | Other | ) | `[inline]`

gp_Vec2d gp_Vec2d::operator- | ( | const gp_Vec2d & | Right | ) | const`[inline]`

gp_Vec2d gp_Vec2d::operator- | ( |  | ) | const`[inline]`

void gp_Vec2d::operator-= | ( | const gp_Vec2d & | Right | ) | `[inline]`

gp_Vec2d gp_Vec2d::operator/ | ( | const Standard_Real | Scalar | ) | const`[inline]`

void gp_Vec2d::operator/= | ( | const Standard_Real | Scalar | ) | `[inline]`

Standard_Real gp_Vec2d::operator^ | ( | const gp_Vec2d & | Right | ) | const`[inline]`

void gp_Vec2d::Reverse | ( |  | ) | `[inline]`

gp_Vec2d gp_Vec2d::Reversed | ( |  | ) | const`[inline]`

void gp_Vec2d::Rotate | ( | const Standard_Real | Ang | ) | `[inline]`

gp_Vec2d gp_Vec2d::Rotated | ( | const Standard_Real | Ang | ) | const`[inline]`

void gp_Vec2d::Scale | ( | const Standard_Real | S | ) | `[inline]`

gp_Vec2d gp_Vec2d::Scaled | ( | const Standard_Real | S | ) | const`[inline]`

void gp_Vec2d::SetCoord | ( | const Standard_Real | Xv,
|  | const Standard_Real | Yv
| ) | `[inline]`

void gp_Vec2d::SetCoord | ( | const Standard_Integer | Index,
|  | const Standard_Real | Xi
| ) | `[inline]`

void gp_Vec2d::SetLinearForm | ( | const gp_Vec2d & | Left,
|  | const gp_Vec2d & | Right
| ) | `[inline]`

void gp_Vec2d::SetLinearForm | ( | const Standard_Real | A1,
|  | const gp_Vec2d & | V1,
|  | const gp_Vec2d & | V2
| ) | `[inline]`

void gp_Vec2d::SetLinearForm | ( | const Standard_Real | A1,
|  | const gp_Vec2d & | V1,
|  | const Standard_Real | A2,
|  | const gp_Vec2d & | V2
| ) | `[inline]`

void gp_Vec2d::SetLinearForm | ( | const Standard_Real | A1,
|  | const gp_Vec2d & | V1,
|  | const Standard_Real | A2,
|  | const gp_Vec2d & | V2,
|  | const gp_Vec2d & | V3
| ) | `[inline]`

void gp_Vec2d::SetX | ( | const Standard_Real | X | ) | `[inline]`

void gp_Vec2d::SetXY | ( | const gp_XY & | Coord | ) | `[inline]`

void gp_Vec2d::SetY | ( | const Standard_Real | Y | ) | `[inline]`

Standard_Real gp_Vec2d::SquareMagnitude | ( |  | ) | const`[inline]`

void gp_Vec2d::Subtract | ( | const gp_Vec2d & | Right | ) | `[inline]`

gp_Vec2d gp_Vec2d::Subtracted | ( | const gp_Vec2d & | Right | ) | const`[inline]`

Standard_EXPORT void gp_Vec2d::Transform | ( | const gp_Trsf2d & | T | ) |

gp_Vec2d gp_Vec2d::Transformed | ( | const gp_Trsf2d & | T | ) | const`[inline]`

Standard_Real gp_Vec2d::X | ( |  | ) | const`[inline]`

const gp_XY & gp_Vec2d::XY | ( |  | ) | const`[inline]`

Standard_Real gp_Vec2d::Y | ( |  | ) | const`[inline]`

## Friends And Related Function Documentation

Standard_EXPORT friend Handle_Standard_Type& gp_Vec2d_Type_ | ( |  | ) | `[friend]`

## Field Documentation

gp_XY gp_Vec2d::coord `[private]`

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

- gp_Vec2d.hxx
- gp_Vec2d.lxx