21 #ifndef ossimEcefVector_HEADER 22 #define ossimEcefVector_HEADER 47 : theData (copy_this.theData) {}
50 : theData (assign_this) {}
54 : theData (to.data() - from.data()) {}
66 : theData(assign_this) {}
110 inline double magnitude()
const;
111 inline double norm2()
const;
112 inline double length()
const;
113 inline double normalize();
118 double x()
const {
return theData[0]; }
119 double&
x() {
return theData[0]; }
120 double y()
const {
return theData[1]; }
121 double&
y() {
return theData[1]; }
122 double z()
const {
return theData[2]; }
123 double&
z() {
return theData[2]; }
124 double& operator [](
int idx){
return theData[idx];}
125 const double& operator [](
int idx)
const{
return theData[idx];}
153 void toPoint(
const std::string& s);
158 NEWMAT::ColumnVector v (3);
169 { os <<
"(ossimEcefVector) " << theData; }
172 { instance.
print(os);
return os; }
const ossimColumnVector3d & data() const
ossimEcefVector unitVector() const
ossimColumnVector3d cross(const ossimColumnVector3d &rhs) const
ossimRationalNumber operator-(ossim_int32 i, ossimRationalNumber &r)
ossimEcefVector(const ossimColumnVector3d &assign_this)
bool operator!=(const ossimRefPtr< _Tp1 > &__a, const ossimRefPtr< _Tp2 > &__b) noexcept
double dot(const ossimColumnVector3d &rhs) const
ossimEcefVector cross(const ossimEcefVector &) const
double dot(const ossimEcefVector &) const
double nan()
Method to return ieee floating point double precision NAN.
ossimRationalNumber operator/(ossim_int32 i, ossimRationalNumber &r)
ossimEcefVector operator+(const ossimEcefVector &) const
ossimColumnVector3d theData
ossimEcefVector(const NEWMAT::ColumnVector &assign_this)
ossimRationalNumber operator*(ossim_int32 i, ossimRationalNumber &r)
const ossimEcefVector & operator=(const ossimEcefVector &)
ostream & operator<<(ostream &out, const ossimAxes &axes)
ossimColumnVector3d & data()
ossimEcefVector operator-() const
ossimEcefVector(const double &x, const double &y, const double &z)
unsigned int ossim_uint32
ossimEcefVector operator*(const double &) const
bool operator==(const ossimRefPtr< _Tp1 > &__a, const ossimRefPtr< _Tp2 > &__b) noexcept
ossimEcefVector(const ossimGpt &from, const ossimGpt &to)
ossimEcefVector(const ossimEcefPoint &from, const ossimEcefPoint &to)
void print(ostream &os=ossimNotify(ossimNotifyLevel_INFO)) const
ossimEcefVector(const ossimEcefVector ©_this)
NEWMAT::ColumnVector toVector() const
Converts this point to a 3D column vector.
const ossimColumnVector3d & data() const
double angleTo(const ossimEcefVector &) const
ossimEcefVector operator/(const double &) const
ossimRationalNumber operator+(ossim_int32 i, ossimRationalNumber &r)
bool operator==(const ossimEcefVector &) const
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
std::basic_ostream< char > ostream
Base class for char output streams.
bool isnan(const float &v)
isnan Test for floating point Not A Number (NAN) value.
double norm2() const
speedup
bool operator!=(const ossimEcefVector &) const