Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
NIVissimBoundedClusterObject.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-2024 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/****************************************************************************/
18// -------------------
19/****************************************************************************/
20#include <config.h>
21
22
23#include <cassert>
24#include <utils/geom/Boundary.h>
26
28
30 : myBoundary(nullptr), myClusterID(-1) {
31 myDict.insert(this);
32}
33
34
38
39
40bool
42 double offset) const {
43 assert(myBoundary != 0 && myBoundary->xmax() >= myBoundary->xmin());
44 return myBoundary->overlapsWith(poly, offset);
45}
46
47
48void
52
53
54bool
58
59
60void
62 for (ContType::iterator i = myDict.begin(); i != myDict.end(); i++) {
63 (*i)->computeBounding();
64 }
65}
66
67
68const Boundary&
72
73
74/****************************************************************************/
A class that stores a 2D geometrical boundary.
Definition Boundary.h:39
double xmin() const
Returns minimum x-coordinate.
Definition Boundary.cpp:118
bool overlapsWith(const AbstractPoly &poly, double offset=0) const
Returns whether the boundary overlaps with the given polygon.
Definition Boundary.cpp:197
double xmax() const
Returns maximum x-coordinate.
Definition Boundary.cpp:124
std::set< NIVissimBoundedClusterObject * > ContType
bool crosses(const AbstractPoly &poly, double offset=0) const