com.vividsolutions.jts.geom.GeometryFactory.toLineStringArray()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(9.4k)|赞(0)|评价(0)|浏览(102)

本文整理了Java中com.vividsolutions.jts.geom.GeometryFactory.toLineStringArray()方法的一些代码示例,展示了GeometryFactory.toLineStringArray()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。GeometryFactory.toLineStringArray()方法的具体详情如下:
包路径:com.vividsolutions.jts.geom.GeometryFactory
类名称:GeometryFactory
方法名:toLineStringArray

GeometryFactory.toLineStringArray介绍

[英]Converts the List to an array.
[中]将List转换为数组。

代码示例

代码示例来源:origin: com.vividsolutions/jts

return createMultiLineString(toLineStringArray(geomList));

代码示例来源:origin: com.vividsolutions/jts

/**
 * Extracts linework for polygonal components.
 * 
 * @param g the geometry from which to extract
 * @return a lineal geometry containing the extracted linework
 */
private MultiLineString extractLinework(Geometry g)
{
  PolygonalLineworkExtracter extracter = new PolygonalLineworkExtracter();
  g.apply(extracter);
  List linework = extracter.getLinework();
  LineString[] lines = GeometryFactory.toLineStringArray(linework);
  return g.getFactory().createMultiLineString(lines);
}

代码示例来源:origin: org.orbisgis/h2gis-functions

/**
 * Removes duplicated coordinates in a MultiLineString.
 *
 * @param g
 * @return
 */
public static MultiLineString removeCoordinates(MultiLineString g) {
  ArrayList<LineString> lines = new ArrayList<LineString>();
  for (int i = 0; i < g.getNumGeometries(); i++) {
    LineString line = (LineString) g.getGeometryN(i);
    lines.add(removeCoordinates(line));
  }
  return FACTORY.createMultiLineString(GeometryFactory.toLineStringArray(lines));
}

代码示例来源:origin: org.orbisgis/orbisgis-core

/**
 * Removes duplicated coordinates in a MultiLineString.
 * @param g
 * @return
 */
public static MultiLineString removeDuplicateCoordinates(MultiLineString g) {
    ArrayList<LineString> lines = new ArrayList<LineString>();
    for (int i = 0; i < g.getNumGeometries(); i++) {
        LineString line = (LineString) g.getGeometryN(i);
        lines.add(removeDuplicateCoordinates(line));
    }
    return FACTORY.createMultiLineString(GeometryFactory.toLineStringArray(lines));
}

代码示例来源:origin: org.orbisgis/h2gis

/**
 * Removes duplicated coordinates in a MultiLineString.
 *
 * @param g
 * @return
 */
public static MultiLineString removeCoordinates(MultiLineString g) {
  ArrayList<LineString> lines = new ArrayList<LineString>();
  for (int i = 0; i < g.getNumGeometries(); i++) {
    LineString line = (LineString) g.getGeometryN(i);
    lines.add(removeCoordinates(line));
  }
  return FACTORY.createMultiLineString(GeometryFactory.toLineStringArray(lines));
}

代码示例来源:origin: org.orbisgis/h2gis-functions

/**
 * Removes duplicated coordinates in a MultiLineString.
 *
 * @param multiLineString
 * @param tolerance to delete the coordinates
 * @return
 */
public static MultiLineString removeDuplicateCoordinates(MultiLineString multiLineString, double tolerance) throws SQLException {
  ArrayList<LineString> lines = new ArrayList<LineString>();
  for (int i = 0; i < multiLineString.getNumGeometries(); i++) {
    LineString line = (LineString) multiLineString.getGeometryN(i);
    lines.add(removeDuplicateCoordinates(line, tolerance));
  }
  return FACTORY.createMultiLineString(GeometryFactory.toLineStringArray(lines));
}

代码示例来源:origin: org.orbisgis/h2gis

/**
 * Removes duplicated coordinates in a MultiLineString.
 *
 * @param multiLineString
 * @param tolerance to delete the coordinates
 * @return
 */
public static MultiLineString removeDuplicateCoordinates(MultiLineString multiLineString, double tolerance) throws SQLException {
  ArrayList<LineString> lines = new ArrayList<LineString>();
  for (int i = 0; i < multiLineString.getNumGeometries(); i++) {
    LineString line = (LineString) multiLineString.getGeometryN(i);
    lines.add(removeDuplicateCoordinates(line, tolerance));
  }
  return FACTORY.createMultiLineString(GeometryFactory.toLineStringArray(lines));
}

代码示例来源:origin: org.geotools/gt2-api

return factory.createMultiLineString(GeometryFactory.toLineStringArray(lines));

代码示例来源:origin: com.vividsolutions/jts-ora

/**
 * Create MultiLineString as encoded by elemInfo.
 *
 * @param oraGeom SDO_GEOMETRY attributes being read
 * @param coords the coordinates of the entire geometry
 * @return MultiLineString
 */
private MultiLineString readMultiLine(OraGeom oraGeom) 
{
 int nElem = oraGeom.numElements();
 List geoms = new ArrayList();
 for (int i = 0; i < nElem; i++) {
  int etype = oraGeom.eType(i);
  // stop reading if not a line
  if (etype != OraGeom.ETYPE.LINE)
   break;
  geoms.add(readLine(oraGeom, i));
 }
 MultiLineString lines = geometryFactory.createMultiLineString(GeometryFactory.toLineStringArray(geoms));
 return lines;
}

代码示例来源:origin: org.geotools.xsd/gt-xsd-gml3

/**
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 *
 * @generated modifiable
 */
public Object parse(ElementInstance instance, Node node, Object value)
  throws Exception {
  
  List<LineString> lineStrings = new ArrayList<LineString>();
  // This property element contains a list of curves.
  // The order of the elements is significant and shall be preserved when processing the array.
  for (Node child : (List<Node>)node.getChildren()) {
    Object nodeValue = child.getValue();
    if (nodeValue instanceof MultiLineString) {
      MultiLineString curve = (MultiLineString)nodeValue;
      for (int i = 0; i < curve.getNumGeometries(); i++) {
        LineString lineString = (LineString)curve.getGeometryN(i);
        lineStrings.add(lineString);
      }
    } else if (nodeValue instanceof LineString) {
      LineString lineString = (LineString)nodeValue;
      lineStrings.add(lineString);
    }
  }
  
  return gf.createMultiLineString(GeometryFactory.toLineStringArray(lineStrings));
}

代码示例来源:origin: org.geotools.xsd/gt-xsd-gml3

/**
 * <!-- begin-user-doc -->
 * <!-- end-user-doc -->
 *
 * @generated modifiable
 */
@Override
public Object parse(ElementInstance instance, Node node, Object value)
  throws Exception {
  List<MultiLineString> curveMemberList = node.getChildValues(MultiLineString.class);
  List<LineString> curveMembers = new ArrayList<LineString>();
  for (MultiLineString curveMember : curveMemberList) {
    for (int i = 0; i < curveMember.getNumGeometries(); i++) {
      LineString lineString = (LineString)curveMember.getGeometryN(i);
      curveMembers.add(lineString);
    }
  }
  MultiLineString multiLineString = gf.createMultiLineString(
      GeometryFactory.toLineStringArray(curveMembers));
  return gf.createLinearRing(multiLineString.getCoordinates());
}

代码示例来源:origin: org.geotools.xsd/gt-xsd-gml3

public Object parse(ElementInstance instance, Node node, Object value)
  throws Exception {
 //&lt;element maxOccurs="unbounded" minOccurs="0" ref="gml:curveMember"/&gt;
  List<MultiLineString> curveMemberList = node.getChildValues("curveMember");
  //&lt;element minOccurs="0" ref="gml:curveMembers"/&gt;
  MultiLineString curveMembers = (MultiLineString)node.getChildValue("curveMembers");
  List<LineString> lineStrings = new ArrayList<LineString>();
  if (curveMemberList != null) {
    for (MultiLineString curveMember : curveMemberList) {
      for (int i = 0; i < curveMember.getNumGeometries(); i++) {
        LineString lineString = (LineString)curveMember.getGeometryN(i);
        lineStrings.add(lineString);
      }
    }
  }
  if (curveMembers != null) {
    for (int i = 0; i < curveMembers.getNumGeometries(); i++) {
      LineString lineString = (LineString)curveMembers.getGeometryN(i);
      lineStrings.add(lineString);
    }
  }
  return gf.createMultiLineString(GeometryFactory.toLineStringArray(lineStrings));
}

代码示例来源:origin: com.vividsolutions/jts-core

/**
 * Extracts linework for polygonal components.
 * 
 * @param g the geometry from which to extract
 * @return a lineal geometry containing the extracted linework
 */
private MultiLineString extractLinework(Geometry g)
{
  PolygonalLineworkExtracter extracter = new PolygonalLineworkExtracter();
  g.apply(extracter);
  List linework = extracter.getLinework();
  LineString[] lines = GeometryFactory.toLineStringArray(linework);
  return g.getFactory().createMultiLineString(lines);
}

代码示例来源:origin: mapplus/spatial_statistics_for_geotools_udig

private Geometry lineIntersection(Geometry source, Geometry sliver) {
  final List<LineString> list = new ArrayList<LineString>();
  Geometry intersection = source.getBoundary().intersection(sliver.getBoundary());
  intersection.apply(new GeometryComponentFilter() {
    @Override
    public void filter(Geometry geom) {
      if (geom instanceof LineString) {
        list.add((LineString) geom);
      } else if (geom instanceof MultiLineString) {
        for (int i = 0; i < geom.getNumGeometries(); i++) {
          list.add((LineString) geom.getGeometryN(i));
        }
      }
    }
  });
  return source.getFactory().createMultiLineString(GeometryFactory.toLineStringArray(list));
}

代码示例来源:origin: org.geotools/gt-main

} else if (internalType.equals("LineString")) {
  LineString[] lineStringArray = geometryFactory
      .toLineStringArray(geometries);
  MultiLineString multiLineString = geometryFactory.createMultiLineString(lineStringArray);
  multiLineString.setUserData( getSRS() );

代码示例来源:origin: org.geotools/gt2-main

} else if (internalType.equals("LineString")) {
  LineString[] lineStringArray = geometryFactory
      .toLineStringArray(geometries);
  MultiLineString multiLineString = geometryFactory.createMultiLineString(lineStringArray);
  multiLineString.setUserData( getSRS() );

代码示例来源:origin: mapplus/spatial_statistics_for_geotools_udig

LineString[] lsArray = GeometryFactory.toLineStringArray(lineStrings);
MultiLineString multi = factory.createMultiLineString(lsArray);
List<Point> intersections = extractPoints(part.intersection(multi));

代码示例来源:origin: mapplus/spatial_statistics_for_geotools_udig

LineString[] lsArray = GeometryFactory.toLineStringArray(lineStrings);
MultiLineString multi = factory.createMultiLineString(lsArray);
List<Point> intersections = extractPoints(part.intersection(multi));

代码示例来源:origin: mapplus/spatial_statistics_for_geotools_udig

LineString[] lsArray = GeometryFactory.toLineStringArray(segments);
Geometry trimmed = multiPart.getFactory().createMultiLineString(lsArray);
if (trimmed == null || trimmed.isEmpty()) {

代码示例来源:origin: mapplus/spatial_statistics_for_geotools_udig

LineString[] lsArray = GeometryFactory.toLineStringArray(segments);
Geometry trimmed = multiPart.getFactory().createMultiLineString(lsArray);
if (trimmed == null || trimmed.isEmpty()) {

相关文章