Eclipse SUMO - Simulation of Urban MObility
Position.cpp
Go to the documentation of this file.
1
/****************************************************************************/
2
// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.org/sumo
3
// Copyright (C) 2001-2019 German Aerospace Center (DLR) and others.
4
// This program and the accompanying materials
5
// are made available under the terms of the Eclipse Public License v2.0
6
// which accompanies this distribution, and is available at
7
// http://www.eclipse.org/legal/epl-v20.html
8
// SPDX-License-Identifier: EPL-2.0
9
/****************************************************************************/
17
// A position in the 2D- or 3D-world
18
/****************************************************************************/
19
20
// ===========================================================================
21
// included modules
22
// ===========================================================================
23
#include <
config.h
>
24
25
#include <limits>
26
#include "
Position.h
"
27
28
29
// ===========================================================================
30
// static member definitions
31
// ===========================================================================
32
33
// Position 1Mio km below the surface should suffice for signaling invalidity inside the solar system
34
const
Position
Position::INVALID
(
35
- 1024 * 1024 * 1024,
36
- 1024 * 1024 * 1024,
37
- 1024 * 1024 * 1024);
38
39
40
Position
41
Position::rotateAround2D
(
double
rad,
const
Position
& origin) {
42
const
double
s = sin(rad);
43
const
double
c = cos(rad);
44
Position
p = (*this) - origin;
45
return
Position
(
46
p.
x
() * c - p.
y
() * s,
47
p.
x
() * s + p.
y
() * c) + origin;
48
49
}
Position::rotateAround2D
Position rotateAround2D(double rad, const Position &origin)
rotate this position by rad around origin and return the result
Definition:
Position.cpp:41
Position::INVALID
static const Position INVALID
used to indicate that a position is valid
Definition:
Position.h:284
Position
A point in 2D or 3D with translation and scaling methods.
Definition:
Position.h:38
Position::x
double x() const
Returns the x-position.
Definition:
Position.h:56
Position.h
Position::y
double y() const
Returns the y-position.
Definition:
Position.h:61
config.h
Position::Position
Position()
default constructor
Definition:
Position.h:41
src
utils
geom
Position.cpp
Generated on Sun Jun 21 2020 23:18:41 for Eclipse SUMO - Simulation of Urban MObility by
1.8.17