class RoadspacesModel: AbstractModel

The RoadspacesModel is a parametric implementation of the objects within a road space and is capable of generating surface based representations. Therefore, it can serve as intermediate model, as it can read the parametric modeling approach of OpenDRIVE and generate the surface based modeling approach of CityGML.

Fields

Name Description
val roadspaceIdentifiers: /** Identifiers of all available roadspace. */

Identifiers of all available roadspace.

val junctionIdentifiers: /** Identifiers of all available junctions. */

Identifiers of all available junctions.

val numberOfRoadspaces: get() = roadspaces.size
val numberOfJunctions: get() = junctions.size
val id: ModelIdentifier
val header: Header

Constructors

<init>

constructor(id: ModelIdentifier, header: Header, roadspaces: List<Roadspace>, junctions: List<Junction>)

The RoadspacesModel is a parametric implementation of the objects within a road space and is capable of generating surface based representations. Therefore, it can serve as intermediate model, as it can read the parametric modeling approach of OpenDRIVE and generate the surface based modeling approach of CityGML.

Parameters

Name Description
id: ModelIdentifier
header: Header
roadspaces: List<Roadspace>
junctions: List<Junction>

Methods

getRoadspace

fun getRoadspace(roadspaceIdentifier: RoadspaceIdentifier): (roadspaceIdentifier: RoadspaceIdentifier)

Returns the Roadspace with specific roadspaceIdentifier.

Parameters

Name Description
roadspaceIdentifier: RoadspaceIdentifier

ReturnValue

Name Description
(roadspaceIdentifier: RoadspaceIdentifier)

getJunction

fun getJunction(junctionIdentifier: JunctionIdentifier): (junctionIdentifier: JunctionIdentifier)

Returns the Junction with specific junctionIdentifier.

Parameters

Name Description
junctionIdentifier: JunctionIdentifier

ReturnValue

Name Description
(junctionIdentifier: JunctionIdentifier)

getAllRoadspaceNames

fun getAllRoadspaceNames(): List<String>

Returns a sorted list of all raodspace names.

ReturnValue

Name Description
List<String>

getAllRoadspaces

fun getAllRoadspaces(): Collection<Roadspace>

Returns all available Roadspaces.

ReturnValue

Name Description
Collection<Roadspace>

getAllJunctions

fun getAllJunctions(): Collection<Junction>

Returns all available Junctions.

ReturnValue

Name Description
Collection<Junction>

getAllLeftRightLanes

fun getAllLeftRightLanes(): List<Lane>

Returns a list of all available Lanes (without center lanes).

ReturnValue

Name Description
List<Lane>

getAllRoadspaceIdentifiersNotLocatedInJunctions

fun getAllRoadspaceIdentifiersNotLocatedInJunctions(roadspaceName: String): List<RoadspaceIdentifier>

Returns a list of all RoadspaceIdentifier of roadspaces which are not located in a Junction and have the roadspaceName.

Parameters

Name Description
roadspaceName: String

ReturnValue

Name Description
List<RoadspaceIdentifier>

getAllRoadspacesNotLocatedInJunction

fun getAllRoadspacesNotLocatedInJunction(): ()

Returns a list of all Roadspaces that are not located in a junction.

ReturnValue

Name Description
()

getAllRoadspacesLocatedInJunction

fun getAllRoadspacesLocatedInJunction(): ()

Returns a list of all Roadspaces that are located in a junction.

ReturnValue

Name Description
()

getAllJunctionIdentifiersContainingRoadspaces

fun getAllJunctionIdentifiersContainingRoadspaces(roadspaceName: String): List<JunctionIdentifier>

Returns a list of Junctions which contain at least one Roadspace with the name roadspaceName.

Parameters

Name Description
roadspaceName: String

ReturnValue

Name Description
List<JunctionIdentifier>

getRoadspacesWithinJunction

fun getRoadspacesWithinJunction(junctionIdentifier: JunctionIdentifier): Result, Exception><List<Roadspace>, Exception>

Returns a list of Roadspaces that belong to the junction with junctionIdentifier.

Parameters

Name Description
junctionIdentifier: JunctionIdentifier

ReturnValue

Name Description
Result, Exception><List<Roadspace>, Exception>

getPredecessorLaneIdentifiers

fun getPredecessorLaneIdentifiers(laneId: LaneIdentifier): Result, IllegalArgumentException><List<LaneIdentifier>, IllegalArgumentException>

Returns an identifier list of lanes that precede this lane.

Parameters

Name Description
laneId: LaneIdentifier

lane identifier for which the predecessor lanes shall be found

ReturnValue

Name Description
Result, IllegalArgumentException><List<LaneIdentifier>, IllegalArgumentException>

getSuccessorLaneIdentifiers

fun getSuccessorLaneIdentifiers(laneId: LaneIdentifier): Result, IllegalArgumentException><List<LaneIdentifier>, IllegalArgumentException>

Returns an identifier list of lanes that follow this lane.

Parameters

Name Description
laneId: LaneIdentifier

lane identifier for which the successor lanes shall be found

ReturnValue

Name Description
Result, IllegalArgumentException><List<LaneIdentifier>, IllegalArgumentException>

getFillerSurfaces

fun getFillerSurfaces(laneId: LaneIdentifier): Result, Exception><List<FillerSurface>, Exception>

Parameters

Name Description
laneId: LaneIdentifier

ReturnValue

Name Description
Result, Exception><List<FillerSurface>, Exception>