Skip to content

Commit 7de834d

Browse files
fix #39
1 parent a281e4d commit 7de834d

File tree

2 files changed

+9
-10
lines changed

2 files changed

+9
-10
lines changed

rtron-transformer/src/main/kotlin/io/rtron/transformer/converter/roadspaces2citygml/Roadspaces2CitygmlTransformer.kt

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ import io.rtron.model.roadspaces.RoadspacesModel
3131
import io.rtron.model.roadspaces.identifier.opposite
3232
import io.rtron.model.roadspaces.roadspace.road.Lane
3333
import io.rtron.model.roadspaces.roadspace.road.LaneChange
34-
import io.rtron.model.roadspaces.roadspace.road.LaneType
3534
import io.rtron.std.getValueEither
3635
import io.rtron.transformer.converter.roadspaces2citygml.module.RelationAdder
3736
import io.rtron.transformer.converter.roadspaces2citygml.report.Roadspaces2CitygmlReport
@@ -220,10 +219,7 @@ class Roadspaces2CitygmlTransformer(
220219

221220
// predecessor
222221
val predecessorLaneIds =
223-
if (currentLane.type == LaneType.BIDIRECTIONAL) {
224-
roadspacesModel.getPredecessorLaneIdentifiers(currentLane.id).getOrElse { throw it } +
225-
roadspacesModel.getSuccessorLaneIdentifiers(currentLane.id).getOrElse { throw it }
226-
} else if (currentLane.id.isForward()) {
222+
if (currentLane.id.isForward()) {
227223
roadspacesModel.getPredecessorLaneIdentifiers(currentLane.id).getOrElse { throw it }
228224
} else {
229225
roadspacesModel.getSuccessorLaneIdentifiers(currentLane.id).getOrElse { throw it }
@@ -241,10 +237,7 @@ class Roadspaces2CitygmlTransformer(
241237

242238
// successor
243239
val successorLaneIds =
244-
if (currentLane.type == LaneType.BIDIRECTIONAL) {
245-
roadspacesModel.getSuccessorLaneIdentifiers(currentLane.id).getOrElse { throw it } +
246-
roadspacesModel.getPredecessorLaneIdentifiers(currentLane.id).getOrElse { throw it }
247-
} else if (currentLane.id.isForward()) {
240+
if (currentLane.id.isForward()) {
248241
roadspacesModel.getSuccessorLaneIdentifiers(currentLane.id).getOrElse { throw it }
249242
} else {
250243
roadspacesModel.getPredecessorLaneIdentifiers(currentLane.id).getOrElse { throw it }

rtron-transformer/src/main/kotlin/io/rtron/transformer/converter/roadspaces2citygml/module/TransportationModuleBuilder.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import io.rtron.model.roadspaces.identifier.AbstractRoadspacesIdentifier
3030
import io.rtron.model.roadspaces.identifier.LaneIdentifier
3131
import io.rtron.model.roadspaces.roadspace.objects.RoadspaceObject
3232
import io.rtron.model.roadspaces.roadspace.road.Lane
33+
import io.rtron.model.roadspaces.roadspace.road.LaneType
3334
import io.rtron.model.roadspaces.roadspace.road.RoadMarking
3435
import io.rtron.transformer.converter.roadspaces2citygml.Roadspaces2CitygmlParameters
3536
import io.rtron.transformer.converter.roadspaces2citygml.geometry.GeometryTransformer
@@ -112,7 +113,12 @@ class TransportationModuleBuilder(
112113
relatedObjects.forEach { relationAdder.addRelatedToRelation(it, trafficSpaceFeature) }
113114
// TODO: consider left-hand traffic (LHT)
114115
trafficSpaceFeature.trafficDirection =
115-
if (lane.id.isForward()) TrafficDirectionValue.FORWARDS else TrafficDirectionValue.BACKWARDS
116+
when {
117+
lane.type == LaneType.BIDIRECTIONAL -> TrafficDirectionValue.BOTH
118+
lane.id.isForward() -> TrafficDirectionValue.FORWARDS
119+
else -> TrafficDirectionValue.BACKWARDS
120+
}
121+
116122
// geometry
117123
val centerLineGeometryTransformer = GeometryTransformer(parameters).also { centerLine.accept(it) }
118124
trafficSpaceFeature.populateLod2Geometry(centerLineGeometryTransformer)

0 commit comments

Comments
 (0)