
org.opentripplanner.inspector.raster.WalkSafetyEdgeRenderer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of otp Show documentation
Show all versions of otp Show documentation
The OpenTripPlanner multimodal journey planning system
The newest version!
package org.opentripplanner.inspector.raster;
import java.awt.Color;
import java.util.Optional;
import org.opentripplanner.inspector.raster.EdgeVertexTileRenderer.EdgeVertexRenderer;
import org.opentripplanner.inspector.raster.EdgeVertexTileRenderer.EdgeVisualAttributes;
import org.opentripplanner.inspector.raster.EdgeVertexTileRenderer.VertexVisualAttributes;
import org.opentripplanner.street.model.edge.Edge;
import org.opentripplanner.street.model.edge.StreetEdge;
import org.opentripplanner.street.model.vertex.IntersectionVertex;
import org.opentripplanner.street.model.vertex.Vertex;
import org.opentripplanner.street.search.TraverseMode;
/**
* Render walk safety for each edge using a color palette. Display the walk safety factor as label.
*/
public class WalkSafetyEdgeRenderer implements EdgeVertexRenderer {
private final ScalarColorPalette palette = new DefaultScalarColorPalette(1.0, 3.0, 10.0);
public WalkSafetyEdgeRenderer() {}
@Override
public Optional renderEdge(Edge e) {
if (e instanceof StreetEdge pse) {
if (pse.getPermission().allows(TraverseMode.WALK)) {
double walkSafety = pse.getWalkSafetyFactor();
return EdgeVisualAttributes.optional(
palette.getColor(walkSafety),
"%.02f".formatted(walkSafety)
);
} else {
return EdgeVisualAttributes.optional(Color.LIGHT_GRAY, "no walking");
}
}
return Optional.empty();
}
@Override
public Optional renderVertex(Vertex v) {
if (v instanceof IntersectionVertex) {
return VertexVisualAttributes.optional(Color.DARK_GRAY, null);
}
return Optional.empty();
}
@Override
public String getName() {
return "Walk safety";
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy