use of com.revolsys.record.Record in project com.revolsys.open by revolsys.
the class RecordGraph method getTypeName.
/**
* Get the type name for the edge.
*
* @param edge The edge.
* @return The type name.
*/
@Override
public String getTypeName(final Edge<Record> edge) {
final Record record = edge.getObject();
if (record == null) {
return null;
} else {
final RecordDefinition recordDefinition = record.getRecordDefinition();
final String typePath = recordDefinition.getPath();
return typePath;
}
}
use of com.revolsys.record.Record in project com.revolsys.open by revolsys.
the class RecordGraph method getObjects.
public List<Record> getObjects(final Collection<Integer> edgeIds) {
final List<Record> records = new ArrayList<>();
for (final Integer edgeId : edgeIds) {
final Edge<Record> edge = getEdge(edgeId);
final Record record = edge.getObject();
records.add(record);
}
return records;
}
use of com.revolsys.record.Record in project com.revolsys.open by revolsys.
the class RecordGraph method hasEdge.
public boolean hasEdge(final Record record) {
final LineString line = record.getGeometry();
final Point fromPoint = line.getPoint(0);
final Point toPoint = line.getToPoint();
final Node<Record> fromNode = findNode(fromPoint);
final Node<Record> toNode = findNode(toPoint);
if (fromNode != null && toNode != null) {
final Collection<Edge<Record>> edges = Node.getEdgesBetween(fromNode, toNode);
for (final Edge<Record> edge : edges) {
final LineString updateLine = edge.getLineString();
if (updateLine.equals(line)) {
return true;
}
}
}
return false;
}
use of com.revolsys.record.Record in project com.revolsys.open by revolsys.
the class RecordGraph method splitEdges.
public List<Edge<Record>> splitEdges(final Point point, final double distance) {
final List<Edge<Record>> edges = new ArrayList<>();
for (final Edge<Record> edge : getEdges(point, distance)) {
final LineString line = edge.getLineString();
final List<Edge<Record>> splitEdges = edge.splitEdge(point);
DirectionalFields.edgeSplitFieldValues(line, point, splitEdges);
edges.addAll(splitEdges);
}
return edges;
}
use of com.revolsys.record.Record in project com.revolsys.open by revolsys.
the class PseudoNodeAttribute method newEdgePair.
private EdgePair<Record> newEdgePair(final Node<Record> node, final Edge<Record> edge1, final Edge<Record> edge2) {
final Record object1 = edge1.getObject();
final Record object2 = edge2.getObject();
if (DirectionalFields.canMergeRecords(node, object1, object2, this.equalExcludeFieldNames)) {
return new EdgePair<>(edge1, edge2);
} else {
return null;
}
}
Aggregations