xc
Ref2d2d.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 //Ref2d2d.h
22 
23 #ifndef REF2D2D_H
24 #define REF2D2D_H
25 
26 #include "Ref.h"
27 #include "utility/geom/coo_sys/Rect2d2dCooSys.h"
28 #include "utility/geom/d2/GeomObj2d.h"
29 #include "utility/geom/pos_vec/Pos2d.h"
30 #include "utility/geom/pos_vec/Vector2d.h"
31 #include "utility/geom/pos_vec/Dir2d.h"
32 
33 class Line2d;
34 
39 class Ref2d2d : public Ref<Rect2d2dCooSys>
40  {
41  public:
44 
45  public:
46  Ref2d2d(void);
47  Ref2d2d(const Pos2d &o);
48  Ref2d2d(const Pos2d &,const Rect2d2dCooSys &);
49  Ref2d2d(const Pos2d &o,const Vector2d &vX);
50  Ref2d2d(const Pos2d &o,const Dir2d &dirX);
51  Ref2d2d(const Pos2d &o,const Pos2d &p);
52  Vector2d getIVector(void) const; //I unary vector.
53  Vector2d getJVector(void) const; //J unary vector.
54  Line2d getXAxis(void) const; //Return the x axis.
55  Line2d getYAxis(void) const; //Return the y axis.
56 
57  virtual ~Ref2d2d(void)
58  {}
59  };
60 
61 #endif
62 
63 
64 
65 
66 
67 
Dirección en dos dimensiones.
Definition: Dir2d.h:36
Base class for position lists.
Definition: PolyPos.h:35
Posición en dos dimensiones.
Definition: Pos2d.h:41
Line in a two-dimensional space.
Definition: Line2d.h:61
Vector2d getIVector(void) const
Return the unary vector I expressed in global coordinates.
Definition: Ref2d2d.cc:37
Vector en dos dimensiones.
Definition: Vector2d.h:40
Two-dimensional reference system defined in a two-dimensional space.
Definition: Ref2d2d.h:39
Vector2d getJVector(void) const
Return the unary vector J expressed in global coordinates.
Definition: Ref2d2d.cc:40
Base class for reference systems.
Definition: Ref.h:37
Twp-dimensional rectangular coordinate system defined in a two-dimensional space. ...
Definition: Rect2d2dCooSys.h:33
Line2d getXAxis(void) const
Return la line defining the x axis.
Definition: Ref2d2d.cc:44
Line2d getYAxis(void) const
Return la line defining the y axis.
Definition: Ref2d2d.cc:50