- writeValue(graph, row, diameterColumnIndex, edge, DN.Edge_HasDiameter);
- writeValue(graph, row, outerDiameterColumnIndex, edge, DN.Edge_HasOuterDiameter);
- writeValue(graph, row, nominalMassFlowIndex, edge, DN.Edge_HasNominalMassFlow);
- writeValue(graph, row, tGroundIndex, edge, DN.Edge_HasTGround);
- writeValue(graph, row, kReturnIndex, edge, DN.Edge_HasKReturn);
- writeValue(graph, row, kSupplyIndex, edge, DN.Edge_HasKSupply);
- writeValue(graph, row, edgeFlowAreaIndex, edge, DN.Edge_HasFlowArea);
- writeValue(graph, row, lengthIndex, edge, DN.Edge_HasLength);
- writeDoubleArrayFromString(graph, row, detailedGeometryIndex, edge, DN.Edge_HasGeometry, actualTransform);
+ double startXCoord = Double.parseDouble(startXCoords); // make negative
+ double startYCoord = Double.parseDouble(startYCoords);
+ double startZCoord = Double.parseDouble(startZCoords);
+
+ double endXCoord = Double.parseDouble(endXCoords); // make negative
+ double endYCoord = Double.parseDouble(endYCoords);
+ double endZCoord = Double.parseDouble(endZCoords);
+
+ double[] startCoords;
+ double[] endCoords;
+ if (actualDoTransform) {
+ DirectPosition2D startTargetPos = new DirectPosition2D();
+ DirectPosition2D startSourcePos = new DirectPosition2D(startXCoord, startYCoord);
+ DirectPosition startRes = actualTransform.transform(startSourcePos, startTargetPos);
+ startCoords = startRes.getCoordinate();
+
+ DirectPosition2D endTargetPos = new DirectPosition2D();
+ DirectPosition2D endSourcePos = new DirectPosition2D(endXCoord, endYCoord);
+ DirectPosition endRes = actualTransform.transform(endSourcePos, endTargetPos);
+ endCoords = endRes.getCoordinate();
+ } else {
+ startCoords = new double[] { startXCoord , startYCoord };
+ endCoords = new double[] { endXCoord , endYCoord };
+ }
+
+ // Switch to (longitude, latitude)
+ flipAxes(startCoords);
+ flipAxes(endCoords);
+
+ Optional<Resource> oedge = DNEdgeBuilder.create(graph, existingVertices, model.getParentDiagram(), model.getComponentMappings().get(mappingValue), startCoords, startZCoord, endCoords, endZCoord, new double[0], padding, true);
+ if (oedge.isPresent()) {
+ Resource edge = oedge.get();
+
+ writeStringValue(graph, row, idColumn, edge, DN.HasId);
+
+ writeValue(graph, row, diameterColumnIndex, edge, DN.Edge_HasDiameter);
+ writeValue(graph, row, outerDiameterColumnIndex, edge, DN.Edge_HasOuterDiameter);
+ writeValue(graph, row, nominalMassFlowIndex, edge, DN.Edge_HasNominalMassFlow);
+ writeValue(graph, row, tGroundIndex, edge, DN.Edge_HasTGround);
+ writeValue(graph, row, kReturnIndex, edge, DN.Edge_HasKReturn);
+ writeValue(graph, row, kSupplyIndex, edge, DN.Edge_HasKSupply);
+ writeValue(graph, row, edgeFlowAreaIndex, edge, DN.Edge_HasFlowArea);
+ writeValue(graph, row, lengthIndex, edge, DN.Edge_HasLength);
+ writeStringValue(graph, row, regionIndex, edge, DN.HasRegion);
+ writeStringValue(graph, row, pipeTypeIndex, edge, DN.Edge_HasType);
+ writeDoubleArrayFromString(graph, row, detailedGeometryIndex, edge, DN.Edge_HasGeometry, actualTransform);
+ writeStringValue(graph, row, pipeCodeIndex, edge, DN.Edge_HasPipeCode);
+ writeIntegerValue(graph, row, installationYearIndex, edge, DN.Edge_HasInstallationYear);
+ writeValue(graph, row, wallThicknessIndex, edge, DN.Edge_HasWallThickness);
+ writeValue(graph, row, insulationConductivityIndex, edge, DN.Edge_HasInsulationConductivity);
+ writeIntegerValue(graph, row, pipeSizeDNIndex, edge, DN.Edge_HasPipeSizeDN);
+ writeValue(graph, row, roughnessIndex, edge, DN.Edge_HasRoughness);
+ writeStringValue(graph, row, structureIndex, edge, DN.Edge_HasStructure);
+ }