Eclipse SUMO - Simulation of Urban MObility
Toggle main menu visibility
Main Page
Related Pages
Topics
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
Functions
a
c
e
f
g
h
i
j
l
n
o
r
s
t
u
Variables
a
c
d
f
g
i
j
k
l
m
o
p
r
s
t
v
Typedefs
b
c
d
e
f
g
i
j
k
m
n
o
p
r
s
t
u
v
Enumerations
Enumerator
a
c
d
f
m
p
s
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
i
j
k
l
m
n
o
p
r
s
t
v
w
Enumerations
a
c
d
e
f
g
i
j
l
m
n
o
p
r
s
t
v
w
Enumerator
a
b
c
d
e
f
h
i
l
m
n
o
p
r
s
t
u
v
w
z
Properties
a
c
d
e
f
g
h
m
n
p
r
s
t
u
v
y
Related Symbols
:
a
b
d
f
g
i
m
n
o
p
r
s
w
Files
File List
Globals
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
i
j
l
m
n
o
p
r
s
t
v
w
Variables
a
c
d
e
f
g
i
l
m
n
o
p
r
s
t
v
w
x
y
z
Typedefs
a
c
e
f
g
i
l
m
n
p
r
s
Enumerations
a
c
d
e
f
g
i
j
k
l
m
n
o
p
r
s
t
v
x
Enumerator
a
b
d
f
g
i
k
l
m
p
r
s
t
v
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Loading...
Searching...
No Matches
Position.cpp
Go to the documentation of this file.
1
/****************************************************************************/
2
// Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3
// Copyright (C) 2001-2025 German Aerospace Center (DLR) and others.
4
// This program and the accompanying materials are made available under the
5
// terms of the Eclipse Public License 2.0 which is available at
6
// https://www.eclipse.org/legal/epl-2.0/
7
// This Source Code may also be made available under the following Secondary
8
// Licenses when the conditions for such availability set forth in the Eclipse
9
// Public License 2.0 are satisfied: GNU General Public License, version 2
10
// or later which is available at
11
// https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13
/****************************************************************************/
21
// A position in the 2D- or 3D-world
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
}
41
Position::rotateAround2D
(
double
rad,
const
Position
& origin) {
…
}
Position.h
Position
A point in 2D or 3D with translation and scaling methods.
Definition
Position.h:37
Position::Position
Position()
default constructor
Definition
Position.h:40
Position::INVALID
static const Position INVALID
used to indicate that a position is valid
Definition
Position.h:319
Position::x
double x() const
Returns the x-position.
Definition
Position.h:52
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::y
double y() const
Returns the y-position.
Definition
Position.h:57
src
utils
geom
Position.cpp
Generated on Wed Jun 4 2025 00:17:10 for Eclipse SUMO - Simulation of Urban MObility by
1.9.8