xc
Ref1d3d.h
1 // -*-c++-*-
2 //----------------------------------------------------------------------------
3 // xc utils library; general purpose classes and functions.
4 //
5 // Copyright (C) Luis C. Pérez Tato
6 //
7 // XC utils is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // This software is distributed in the hope that it will be useful, but
13 // WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with this program.
19 // If not, see <http://www.gnu.org/licenses/>.
20 //----------------------------------------------------------------------------
21 //Ref1d3d.h
22 
23 #ifndef REF1D3D_H
24 #define REF1D3D_H
25 
26 #include "Ref.h"
27 #include "utility/geom/coo_sys/Rect1d3dCooSys.h"
28 #include "utility/geom/d3/GeomObj3d.h"
29 #include "utility/geom/pos_vec/Pos3d.h"
30 #include "utility/geom/pos_vec/Vector3d.h"
31 #include "utility/geom/pos_vec/Dir3d.h"
32 
33 class Line3d;
34 class Ref2d3d;
35 class Ref3d3d;
36 
41 class Ref1d3d : public Ref<Rect1d3dCooSys>
42  {
43  public:
46  public:
47  Ref1d3d(void);
48  explicit Ref1d3d(const Pos3d &o);
49  Ref1d3d(const Pos3d &,const Rect1d3dCooSys &);
50  Ref1d3d(const Pos3d &o,const Vector3d &vX);
51  Ref1d3d(const Pos3d &o,const Dir3d &dirX);
52  Ref1d3d(const Pos3d &o,const Pos3d &p);
53  explicit Ref1d3d(const Ref2d3d &);
54  explicit Ref1d3d(const Ref3d3d &);
55 
56  Vector3d getIVector(void) const;
57  Line3d getXAxis(void) const;
58 
59  virtual ~Ref1d3d(void)
60  {}
61  };
62 
63 #endif
64 
65 
66 
67 
68 
69 
Vector3d getIVector(void) const
Return the global coordinates of unit vector I.
Definition: Ref1d3d.cc:47
Base class for position lists.
Definition: PolyPos.h:35
Line3d getXAxis(void) const
Returns the line defined by X axis.
Definition: Ref1d3d.cc:51
Dirección en el espacio de tres dimensiones.
Definition: Dir3d.h:35
Base class for reference systems.
Definition: Ref.h:37
Posición en tres dimensiones.
Definition: Pos3d.h:44
Line in a three-dimensional space.
Definition: Line3d.h:62
1D reference system defined in a three-dimensional one.
Definition: Ref1d3d.h:41
Vector en tres dimensiones.
Definition: Vector3d.h:39
Two-dimensional reference system defined in a three-dimensional space.
Definition: Ref2d3d.h:41
Three-dimensional reference system defined in a three-dimensional space.
Definition: Ref3d3d.h:39
One-dimensional coordinate system defined in a three-dimensional space.
Definition: Rect1d3dCooSys.h:33