World Ocean Simulation System (WOSS) library
uw-woss-position.h
Go to the documentation of this file.
1/* WOSS - World Ocean Simulation System -
2 *
3 * Copyright (C) 2009 Federico Guerra
4 * and regents of the SIGNET lab, University of Padova
5 *
6 * Author: Federico Guerra - federico@guerra-tlc.com
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation;
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but 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; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 */
21
22/*
23 * This software has been developed by Federico Guerra and SIGNET lab,
24 * University of Padova, in collaboration with the NATO Centre for
25 * Maritime Research and Experimentation (http://www.cmre.nato.int ;
26 * E-mail: pao@cmre.nato.int), whose support is gratefully acknowledged.
27 */
28
29
40#ifndef UNDERWATER_WOSS_POSITION_H
41#define UNDERWATER_WOSS_POSITION_H
42
43
45#include <node-core.h>
46
47
48class WossPosition : public Position, public woss::Location {
49
50
51 public:
52
53
54 WossPosition( double latitude, double longitude, double depth = 0, double dist = LOCATION_COMPARISON_DISTANCE );
55
56 WossPosition( const woss::CoordZ& coordz = woss::CoordZ(), double dist = LOCATION_COMPARISON_DISTANCE );
57
58
59 virtual ~WossPosition() { }
60
61
62 virtual WossPosition* create( double latitude, double longitude, double depth = 0, double dist = LOCATION_COMPARISON_DISTANCE ) const {
63 return new WossPosition(latitude, longitude, depth); }
64
65 virtual WossPosition* create( const woss::CoordZ& coordz = woss::CoordZ(), double dist = LOCATION_COMPARISON_DISTANCE ) const {
66 return new WossPosition( coordz, dist ); }
67
68 virtual WossPosition* clone() const { return new WossPosition(*this); }
69
70
71 virtual int command(int argc, const char*const* argv);
72
73
74 virtual void setLatitude( double val );
75
76 virtual void setLongitude( double val );
77
78 virtual void setDepth( double val );
79
80 virtual void setAltitude( double val );
81
82
83 virtual void setMinVerticalOrientation( double val );
84
85 virtual void setMaxVerticalOrientation( double val );
86
87
88 virtual void setX( double val );
89
90 virtual void setY( double val );
91
92 virtual void setZ( double val );
93
94
95 virtual double getX();
96
97 virtual double getY();
98
99 virtual double getZ();
100
101
102 virtual double getLatitude();
103
104 virtual double getLongitude();
105
106 virtual double getDepth();
107
108 virtual double getAltitude();
109
110
111 virtual double getMinVerticalOrientation();
112
113 virtual double getMaxVerticalOrientation();
114
115
116 protected:
117
118
119 double min_vertical_orientation;
120
121 double max_vertical_orientation;
122
123
124};
125
126
127#endif // UNDERWATER_WOSS_POSITION_H
128
129
Definition uw-woss-position.h:48
virtual double getLongitude()
Definition uw-woss-position.cpp:163
virtual double getX()
Definition uw-woss-position.cpp:143
virtual double getZ()
Definition uw-woss-position.cpp:153
virtual void setLatitude(double val)
Definition uw-woss-position.cpp:91
virtual double getLatitude()
Definition uw-woss-position.cpp:158
virtual double getY()
Definition uw-woss-position.cpp:148
virtual WossPosition * create(double latitude, double longitude, double depth=0, double dist=LOCATION_COMPARISON_DISTANCE) const
Definition uw-woss-position.h:62
virtual void setDepth(double val)
Definition uw-woss-position.cpp:103
virtual double getDepth()
Definition uw-woss-position.cpp:168
virtual WossPosition * create(const woss::CoordZ &coordz=woss::CoordZ(), double dist=LOCATION_COMPARISON_DISTANCE) const
Definition uw-woss-position.h:65
virtual WossPosition * clone() const
Definition uw-woss-position.h:68
virtual void setLongitude(double val)
Definition uw-woss-position.cpp:97
3D-Coordinates (lat, long, depth) class definitions and functions library
Definition coordinates-definitions.h:403
Class that stores the coordinates of moving entity.
Definition location-definitions.h:60
Implementation of woss::Location class.