NDEVR
API Documentation
CoordinateProjection.h
1/*--------------------------------------------------------------------------------------------
2Copyright (c) 2019, NDEVR LLC
3tyler.parke@ndevr.org
4 __ __ ____ _____ __ __ _______
5 | \ | | | __ \ | ___|\ \ / / | __ \
6 | \ | | | | \ \ | |___ \ \ / / | |__) |
7 | . \| | | |__/ / | |___ \ V / | _ /
8 | |\ |_|_____/__|_____|___\_/____| | \ \
9 |__| \__________________________________| \__\
10
11Subject to the terms of the Enterprise+ Agreement, NDEVR hereby grants
12Licensee a limited, non-exclusive, non-transferable, royalty-free license
13(without the right to sublicense) to use the API solely for the purpose of
14Licensee's internal development efforts to develop applications for which
15the API was provided.
16
17The above copyright notice and this permission notice shall be included in all
18copies or substantial portions of the Software.
19
20THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
21INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
22PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
23FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
24OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
25DEALINGS IN THE SOFTWARE.
26
27Library: Design
28File: CoordinateProjection
29Included in API: True
30Author(s): Tyler Parke
31 *-----------------------------------------------------------------------------------------**/
32#pragma once
33#include <NDEVR/String.h>
34#include <NDEVR/Bounds.h>
35#include <NDEVR/UUID.h>
36#include <NDEVR/Unit.h>
37#include <NDEVR/Pointer.h>
38namespace NDEVR
39{
86}
87
88
89
90
A specification of upper and lower bounds in N-dimensions.
Definition Bounds.hpp:54
Provides a constant, unmodifiable pointer that has shared ownership of a dynamically allocated object...
Definition Pointer.hpp:276
The core String class for the NDEVR API.
Definition String.h:95
Any text displayed to the user should be defined as a TranslatedString which allows the program to lo...
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
Definition UUID.h:61
The primary namespace for the NDEVR SDK.
static constexpr bool IsValid(const Angle< t_type > &value)
Checks whether the given Angle holds a valid value.
Definition Angle.h:398
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
int32_t sint04
-Defines an alias representing a 4 byte, signed integer.
Defines for a given type (such as sint04, fltp08, UUID, etc) a maximum, minimum, and reserved 'invali...
Basic data about a particular coordinate projection.
String authority
The authority that defines this projection (e.g., "EPSG").
String GEOGCS
The geographic coordinate system name (e.g., "GCS_WGS_1984").
Bounds< 2, fltp08 > WGS84_bounds
The geographic bounds in WGS84 coordinates (longitude/latitude).
String vertical_authority
The authority for the vertical coordinate reference system.
Bounds< 2, fltp08 > projected_bounds
The bounds in projected coordinates (easting/northing).
String projection
The projection method name (e.g., "Transverse Mercator").
TranslatedString name
The display name of the coordinate projection.
UUID id
Unique identifier for this coordinate projection.
sint04 utm_zone
The UTM zone number, or Invalid if not a UTM projection.
String last_revised
The date this projection definition was last revised.
String crsIdentifier() const
Constructs a CRS identifier string for this projection.
ConstPointer< Unit > unit
The unit of measurement used by this projection.
String proj4_string
The PROJ4 format definition string for this projection.
uint04 vertical_authority_number
The numeric code for the vertical CRS assigned by the vertical authority.
TranslatedString scope
The intended scope or purpose of this projection.
String wkt_string
The Well-Known Text (WKT) definition string for this projection.
TranslatedString area
The geographic area of use for this projection.
uint04 authority_number
The numeric code assigned by the authority (e.g., EPSG code).