Search in sources :

Example 1 with Record

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;
    }
}
Also used : Record(com.revolsys.record.Record) LineString(com.revolsys.geometry.model.LineString) RecordDefinition(com.revolsys.record.schema.RecordDefinition)

Example 2 with Record

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;
}
Also used : ArrayList(java.util.ArrayList) Record(com.revolsys.record.Record)

Example 3 with Record

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;
}
Also used : LineString(com.revolsys.geometry.model.LineString) Record(com.revolsys.record.Record) Point(com.revolsys.geometry.model.Point)

Example 4 with Record

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;
}
Also used : LineString(com.revolsys.geometry.model.LineString) ArrayList(java.util.ArrayList) Record(com.revolsys.record.Record)

Example 5 with Record

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;
    }
}
Also used : Record(com.revolsys.record.Record) EdgePair(com.revolsys.geometry.graph.EdgePair)

Aggregations

Record (com.revolsys.record.Record)198 ArrayRecord (com.revolsys.record.ArrayRecord)43 RecordReader (com.revolsys.record.io.RecordReader)34 RecordDefinition (com.revolsys.record.schema.RecordDefinition)34 Geometry (com.revolsys.geometry.model.Geometry)29 LineString (com.revolsys.geometry.model.LineString)21 Point (com.revolsys.geometry.model.Point)20 ChannelWriter (com.revolsys.io.channels.ChannelWriter)19 Identifier (com.revolsys.identifier.Identifier)17 ArrayList (java.util.ArrayList)16 FieldDefinition (com.revolsys.record.schema.FieldDefinition)15 GeometryFactory (com.revolsys.geometry.model.GeometryFactory)14 LayerRecord (com.revolsys.swing.map.layer.record.LayerRecord)13 NoSuchElementException (java.util.NoSuchElementException)13 DataType (com.revolsys.datatype.DataType)10 Query (com.revolsys.record.query.Query)9 HashMap (java.util.HashMap)9 List (java.util.List)8 LinkedHashMap (java.util.LinkedHashMap)7 Edge (com.revolsys.geometry.graph.Edge)6