use of com.helger.xsds.peppol.smp1.ObjectFactory in project RouteConverter by cpesch.
the class Kml22Format method createKmlType.
private KmlType createKmlType(List<KmlRoute> routes) {
ObjectFactory objectFactory = new ObjectFactory();
KmlType kmlType = objectFactory.createKmlType();
DocumentType documentType = objectFactory.createDocumentType();
kmlType.setAbstractFeatureGroup(objectFactory.createDocument(documentType));
documentType.setOpen(TRUE);
if (hasCharacteristics(routes, Route))
documentType.getAbstractStyleSelectorGroup().add(objectFactory.createStyle(createLineStyle(ROUTE_LINE_STYLE, getLineWidth(), getRouteLineColor())));
if (hasCharacteristics(routes, Track)) {
documentType.getAbstractStyleSelectorGroup().add(objectFactory.createStyle(createLineStyle(TRACK_LINE_STYLE, getLineWidth(), getTrackLineColor())));
if (isWriteSpeed())
for (StyleType style : createSpeedTrackColors(getSpeedLineWidth())) documentType.getAbstractStyleSelectorGroup().add(objectFactory.createStyle(style));
}
for (KmlRoute route : routes) {
switch(route.getCharacteristics()) {
case Waypoints:
FolderType wayPointsFolder = objectFactory.createFolderType();
wayPointsFolder.setName(createPlacemarkName(WAYPOINTS, route));
wayPointsFolder.setDescription(asDescription(route.getDescription()));
documentType.getAbstractFeatureGroup().add(objectFactory.createFolder(wayPointsFolder));
List<PlacemarkType> wayPoints = createWayPoints(route, 0, route.getPositionCount());
for (PlacemarkType wayPoint : wayPoints) wayPointsFolder.getAbstractFeatureGroup().add(objectFactory.createPlacemark(wayPoint));
break;
case Route:
FolderType routeFolder = objectFactory.createFolderType();
routeFolder.setName(createPlacemarkName(ROUTE, route));
documentType.getAbstractFeatureGroup().add(objectFactory.createFolder(routeFolder));
PlacemarkType routePlacemarks = createRoute(route);
routeFolder.getAbstractFeatureGroup().add(objectFactory.createPlacemark(routePlacemarks));
if (isWriteMarks())
routeFolder.getAbstractFeatureGroup().add(objectFactory.createFolder(createMarks(route, 0, route.getPositionCount())));
break;
case Track:
FolderType trackFolder = objectFactory.createFolderType();
trackFolder.setName(createPlacemarkName(TRACK, route));
documentType.getAbstractFeatureGroup().add(objectFactory.createFolder(trackFolder));
PlacemarkType track = createTrack(route, 0, route.getPositionCount());
trackFolder.getAbstractFeatureGroup().add(objectFactory.createPlacemark(track));
if (isWriteSpeed()) {
FolderType speed = createSpeed(route, 0, route.getPositionCount());
if (speed != null)
trackFolder.getAbstractFeatureGroup().add(objectFactory.createFolder(speed));
}
if (isWriteMarks())
trackFolder.getAbstractFeatureGroup().add(objectFactory.createFolder(createMarks(route, 0, route.getPositionCount())));
break;
default:
throw new IllegalArgumentException("Unknown RouteCharacteristics " + route.getCharacteristics());
}
}
return kmlType;
}
use of com.helger.xsds.peppol.smp1.ObjectFactory in project RouteConverter by cpesch.
the class Kml22Format method createLineStyle.
private StyleType createLineStyle(String styleName, double width, byte[] color) {
ObjectFactory objectFactory = new ObjectFactory();
StyleType styleType = objectFactory.createStyleType();
styleType.setId(styleName);
LineStyleType lineStyleType = objectFactory.createLineStyleType();
styleType.setLineStyle(lineStyleType);
lineStyleType.setColor(color);
lineStyleType.setWidth(width);
return styleType;
}
use of com.helger.xsds.peppol.smp1.ObjectFactory in project RouteConverter by cpesch.
the class Kml22Format method createSpeedSegment.
private PlacemarkType createSpeedSegment(int currentSegment, int speedClass, List<String> coordinates) {
ObjectFactory objectFactory = new ObjectFactory();
PlacemarkType placemarkType = objectFactory.createPlacemarkType();
placemarkType.setName("Segment " + currentSegment);
placemarkType.setDescription(getSpeedDescription(speedClass));
placemarkType.setStyleUrl('#' + getSpeedColor(speedClass));
placemarkType.setVisibility(FALSE);
LineStringType lineStringType = objectFactory.createLineStringType();
lineStringType.getCoordinates().addAll(coordinates);
placemarkType.setAbstractGeometryGroup(objectFactory.createLineString(lineStringType));
return placemarkType;
}
use of com.helger.xsds.peppol.smp1.ObjectFactory in project RouteConverter by cpesch.
the class Kml22Format method createVec2Type.
private Vec2Type createVec2Type(double x, double y, UnitsEnumType unitX, UnitsEnumType unitY) {
ObjectFactory objectFactory = new ObjectFactory();
Vec2Type vec2Type = objectFactory.createVec2Type();
vec2Type.setX(x);
vec2Type.setY(y);
vec2Type.setXunits(unitX);
vec2Type.setYunits(unitY);
return vec2Type;
}
use of com.helger.xsds.peppol.smp1.ObjectFactory in project RouteConverter by cpesch.
the class Kml22Format method createScreenOverlayImage.
private ScreenOverlayType createScreenOverlayImage(String name, String url, Vec2Type overlayXY, Vec2Type screenXY, Vec2Type size) {
ObjectFactory objectFactory = new ObjectFactory();
ScreenOverlayType screenOverlayType = objectFactory.createScreenOverlayType();
screenOverlayType.setName(name);
screenOverlayType.setOverlayXY(overlayXY);
screenOverlayType.setScreenXY(screenXY);
screenOverlayType.setSize(size);
LinkType icon = objectFactory.createLinkType();
icon.setHref(url);
screenOverlayType.setIcon(icon);
return screenOverlayType;
}
Aggregations