1 |
//
|
2 |
// cSite.h: interface for the cSite class.
|
3 |
//
|
4 |
// Copyright 2002-2003 Michael F. Henry
|
5 |
//
|
6 |
//////////////////////////////////////////////////////////////////////
|
7 |
|
8 |
#pragma once
|
9 |
|
10 |
#include "coord.h"
|
11 |
#include "cEci.h"
|
12 |
|
13 |
//////////////////////////////////////////////////////////////////////
|
14 |
// class cSite
|
15 |
// This class represents a location (ground site) on the earth.
|
16 |
class cSite
|
17 |
{
|
18 |
public:
|
19 |
cSite(double degLat, double degLon, double kmAlt);
|
20 |
cSite(const cCoordGeo &geo);
|
21 |
virtual ~cSite();
|
22 |
|
23 |
void setGeo(const cCoordGeo &geo); // Set new coordinates
|
24 |
cCoordGeo getGeo() const { return m_geo; }
|
25 |
|
26 |
cEci getPosition(const cJulian&) const; // calc ECI of geo location.
|
27 |
cCoordTopo getLookAngle(const cEci&) const; // calc topo coords to ECI object
|
28 |
|
29 |
double getLat() const { return m_geo.m_Lat; }
|
30 |
double getLon() const { return m_geo.m_Lon; }
|
31 |
double getAlt() const { return m_geo.m_Alt; }
|
32 |
|
33 |
string toString() const;
|
34 |
|
35 |
protected:
|
36 |
cCoordGeo m_geo; // lat, lon, alt of earth site
|
37 |
|
38 |
};
|