import org.simantics.diagram.synchronization.SynchronizationHints;
import org.simantics.diagram.synchronization.graph.GraphSynchronizationHints;
import org.simantics.diagram.synchronization.graph.layer.GraphLayerManager;
+import org.simantics.district.network.ModelledCRS;
import org.simantics.district.network.ontology.DistrictNetworkResource;
import org.simantics.g2d.canvas.ICanvasContext;
import org.simantics.g2d.diagram.DiagramHints;
public static final ElementClass CLASS = DistrictNetworkVertexElement.CLASS;
private DistrictNetworkResource DN;
private DiagramResource DIA;
-
+
public DistrictNetworkVertexElementFactory(ReadGraph graph) {
this.DN = DistrictNetworkResource.getInstance(graph);
this.DIA = DiagramResource.getInstance(graph);
double[] coords = graph.getRelatedValue(vertexResource, DIA.HasLocation);
DistrictNetworkVertex vertex = new DistrictNetworkVertex(coords);
+
+ Resource mapping = graph.getSingleObject(vertexResource, DistrictNetworkResource.getInstance(graph).HasMapping);
+ element.setHint(DistrictNetworkAdditionalColor.KEY_DN_MAPPING_RESOURCE, mapping);
element.setHint(DistrictNetworkVertexElement.KEY_DN_VERTEX, vertex);
- // set element transform based on layer SRS and coords
- AffineTransform at = new AffineTransform(1, 0, 0, 1, coords[0], coords[1]);
+ // TODO: set element transform based on layer SRS and coords
+
+ double x = ModelledCRS.longitudeToX(coords[0]);
+ double y = ModelledCRS.latitudeToY(coords[1]);
+
+ double scale = 100000;
+
+ AffineTransform at = new AffineTransform(1, 0, 0, 1, x * scale, y * scale);
ElementUtils.setTransform(element, at);
IModifiableSynchronizationContext context = diagram.getHint(SynchronizationHints.CONTEXT);