MKI_3D_VECTOR (Basic Classes) New in Version 2026.1

www.CAD6.com

This class contains the description of a 3D vector.

 

C++ Syntax

class MKI_3D_VECTOR

{

  public:

 

  double vx,

         vy,

         vz;

 

  MKI_3D_VECTOR( void );

 

  MKI_3D_VECTOR(

 MKI_3D_VECTOR* f_pThis );

 

  MKI_3D_VECTOR(

 double f_dX,

 double f_dY,

 double f_dZ );

 

  MKI_3D_VECTOR(

 const MKI_3D_POINT& f_rPoint1,

 const MKI_3D_POINT& f_rPoint2 );

 

  bool

  operator ==(

 const MKI_3D_VECTOR_BASE& f_rVector ) const;

 

  bool

  operator !=(

 const MKI_3D_VECTOR_BASE& f_rVector ) const;

 

  void

  SetZero( void );

 

  bool

  IsZero( void ) const;

 

  bool

  IsNonZero( void ) const;

 

  void

  Optimize( void );

 

  void

  Set(

 double f_dX,

 double f_dY,

 double f_dZ );

 

  void

  Set(

 MKI_CONST_POINT_REF f_rPoint,

 double f_dZ = 0.0 );

 

  void

  Set(

 const MKI_3D_POINT& f_rPoint );

 

  void

  Add(

 const MKI_3D_VECTOR_BASE& f_rVector );

 

  void

  Add(

 const MKI_3D_VECTOR_BASE& f_rVector,

 const double f_dFactor );

 

  void

  Add(

 MKI_CONST_POINT_REF f_rVector );

 

  void

  SetAdd(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 const MKI_3D_VECTOR_BASE& f_rVector2 );

 

  void

  SetAdd(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 const double f_dFactor,

 const MKI_3D_VECTOR_BASE& f_rVector2 );

 

  void

  SetAdd(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 MKI_CONST_POINT_REF f_rVector2 );

 

  void

  Sub(

 const MKI_3D_VECTOR_BASE& f_rVector );

 

  void

  Sub(

 MKI_CONST_POINT_REF f_rVector );

 

  void

  SetSub(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 const MKI_3D_VECTOR_BASE& f_rVector2 );

 

  void

  SetSub(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 MKI_CONST_POINT_REF f_rVector2 );

 

  void

  SetSub(

 const MKI_3D_POINT& f_rPoint1,

 const MKI_3D_POINT& f_rPoint2 );

 

  void

  SetSub(

 MKI_CONST_POINT_REF f_rPoint1,

 MKI_CONST_POINT_REF f_rPoint2 );

 

  void

  Multiply(

 const double f_dFactor );

 

  void

  Multiply(

 const MKI_3D_MATRIX& f_rMatrix );

 

  void

  SetMultiply(

 const double f_dFactor,

 const MKI_3D_VECTOR_BASE& f_rVector );

 

  void

  SetMultiply(

 const MKI_3D_MATRIX& f_rMatrix,

 const MKI_3D_VECTOR_BASE& f_rVector );

 

  double

  Scalar(

 const MKI_3D_POINT& f_rPoint ) const;

 

  double

  Scalar(

 const MKI_3D_VECTOR_BASE& f_rVector ) const;

 

  double

  Determinant(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 const MKI_3D_VECTOR_BASE& f_rVector2 ) const;

 

  void

  SetCross(

 const MKI_3D_VECTOR_BASE& f_rVector1,

 const MKI_3D_VECTOR_BASE& f_rVector2 );

 

  double

  Square( void ) const;

 

  double

  Length( void ) const;

 

  double

  AngleTo(

 const MKI_3D_VECTOR& f_rVector ) const;

 

  double

  Azimuth( void ) const;

 

  double

  Amplitude( void ) const;

 

  double

  Normalize( void );

 

  double

  SetLength(

 const double f_dLength );

};

 

Element Description

vx

vy

vz

[double] X-, Y- and Z-component of the vector. The components are in [mm].

 

MKD Syntax

Unused.

 

CAD6interface 2026.1 - Copyright 2026 Malz++Kassner® GmbH