congrats Icon
New! Announcing Tabnine Chat Beta
Learn More
Tabnine Logo
PolygonPatch.getInteriorRings
Code IndexAdd Tabnine to your IDE (free)

How to use
getInteriorRings
method
in
org.deegree.geometry.primitive.patches.PolygonPatch

Best Java code snippets using org.deegree.geometry.primitive.patches.PolygonPatch.getInteriorRings (Showing top 10 results out of 315)

origin: deegree/deegree3

@Override
public List<Points> getInteriorRingsCoordinates() {
  List<Points> controlPoints = new ArrayList<Points>();
  if ( patches.size() == 1 ) {
    if ( patches.get( 0 ) instanceof PolygonPatch ) {
      PolygonPatch patch = (PolygonPatch) patches.get( 0 );
      List<Ring> interiorRings = patch.getInteriorRings();
      for ( Ring ring : interiorRings ) {
        controlPoints.add( ring.getControlPoints() );
      }
    } else {
      throw new IllegalArgumentException( Messages.getMessage( "SURFACE_IS_NON_PLANAR" ) );
    }
  } else {
    throw new IllegalArgumentException( Messages.getMessage( "SURFACE_MORE_THAN_ONE_PATCH" ) );
  }
  return controlPoints;
}
origin: deegree/deegree3

private void exportPolygonPatch( PolygonPatch polygonPatch )
            throws XMLStreamException, UnknownCRSException, TransformationException {
  switch ( polygonPatch.getPolygonPatchType() ) {
  case POLYGON_PATCH:
    writer.writeStartElement( gmlNs, "PolygonPatch" );
    writer.writeStartElement( gmlNs, "exterior" );
    exportRing( polygonPatch.getExteriorRing() );
    writer.writeEndElement();
    for ( Ring ring : polygonPatch.getInteriorRings() ) {
      writer.writeStartElement( gmlNs, "interior" );
      exportRing( ring );
      writer.writeEndElement();
    }
    writer.writeEndElement();
    break;
  case TRIANGLE:
    exportTriangle( (Triangle) polygonPatch );
    break;
  case RECTANGLE:
    exportRectangle( (Rectangle) polygonPatch );
    break;
  }
}
origin: deegree/deegree3

  LOG.warn( "The exterior ring of a polygon patch did not contain any coordinates, discarding this patch." );
} else {
  List<Ring> interior = patch.getInteriorRings();
  List<float[]> interiors = new ArrayList<float[]>( interior.size() );
  int size = extC.length;
origin: deegree/deegree3

  /**
   * Returns a linearized version (i.e. a {@link PolygonPatch} that only uses {@link LinearRing}s as boundaries) of
   * the given {@link PolygonPatch}.
   * 
   * @param patch
   * @param crit
   *            determines the interpolation quality / number of interpolation points
   * @return {@link PolygonPatch} that only uses {@link LinearRing}s as boundaries
   */
  public PolygonPatch linearize( PolygonPatch patch, LinearizationCriterion crit ) {

    Ring exteriorRing = patch.getExteriorRing();
    Ring linearizedExteriorRing = null;
    if ( exteriorRing != null ) {
      linearizedExteriorRing = (Ring) curveLinearizer.linearize( exteriorRing, crit );
    }

    List<Ring> interiorRings = patch.getInteriorRings();
    List<Ring> linearizedInteriorRings = new ArrayList<Ring>( interiorRings.size() );
    for ( Ring interiorRing : interiorRings ) {
      linearizedInteriorRings.add( (Ring) curveLinearizer.linearize( interiorRing, crit ) );
    }
    return geomFac.createPolygonPatch( linearizedExteriorRing, linearizedInteriorRings );
  }
}
origin: deegree/deegree3

  @Override
  protected com.vividsolutions.jts.geom.Geometry buildJTSGeometry() {

    if ( patches.size() < 1 || !( patches.get( 0 ) instanceof PolygonPatch ) ) {
      throw new IllegalArgumentException( Messages.getMessage( "SURFACE_NOT_EQUIVALENT_TO_POLYGON" ) );
    }

    // TODO handle the other patches as well
    PolygonPatch patch = (PolygonPatch) patches.get( 0 );
    Ring exteriorRing = patch.getExteriorRing();
    List<Ring> interiorRings = patch.getInteriorRings();

    LinearRing shell = (LinearRing) getAsDefaultGeometry( exteriorRing ).getJTSGeometry();
    LinearRing[] holes = null;
    if ( interiorRings != null ) {
      holes = new LinearRing[interiorRings.size()];
      int i = 0;
      for ( Ring ring : interiorRings ) {
        holes[i++] = (LinearRing) getAsDefaultGeometry( ring ).getJTSGeometry();
      }
    }
    return jtsFactory.createPolygon( shell, holes );
  }
}
origin: deegree/deegree3

private void writePolygonPatch( String id, ICRS crs, PrecisionModel pm, PolygonPatch polyPatch, Writer writer )
            throws IOException {
  PolygonPatchType type = polyPatch.getPolygonPatchType();
  Polygon poly = null;
  switch ( type ) {
  case POLYGON_PATCH:
  case RECTANGLE:
  case TRIANGLE:
    poly = new DefaultPolygon( id, crs, pm, polyPatch.getExteriorRing(), polyPatch.getInteriorRings() );
    break;
  }
  writePolygonWithoutPrefix( poly, writer );
}
origin: deegree/deegree3

private PolygonPatch transform( PolygonPatch patch, Transformation trans )
            throws TransformationException {
  Ring exterior = patch.getExteriorRing();
  LinearRing transformedExteriorRing = transform( exterior, trans );
  PolygonPatch result = null;
  PolygonPatchType type = patch.getPolygonPatchType();
  switch ( type ) {
  case POLYGON_PATCH:
    List<Ring> interiorRings = ( patch ).getInteriorRings();
    List<Ring> transformedInteriorRings = new ArrayList<Ring>( interiorRings == null ? 0 : interiorRings.size() );
    if ( interiorRings != null && !interiorRings.isEmpty() ) {
      for ( Ring interior : interiorRings ) {
        if ( interior != null ) {
          LinearRing lr = transform( interior, trans );
          transformedInteriorRings.add( lr );
        }
      }
    }
    result = geomFactory.createPolygonPatch( transformedExteriorRing, transformedInteriorRings );
    break;
  case RECTANGLE:
    result = geomFactory.createRectangle( transformedExteriorRing );
    break;
  case TRIANGLE:
    result = geomFactory.createTriangle( transformedExteriorRing );
    break;
  }
  return result;
}
origin: deegree/deegree3

List<Ring> interiorRings = patch.getInteriorRings();
simplified = geomFac.createPolygon( geometry.getId(), geometry.getCoordinateSystem(), exteriorRing,
                  interiorRings );
for ( SurfacePatch patch : linearized.getPatches() ) {
  Ring exteriorRing = ( (PolygonPatch) patch ).getExteriorRing();
  List<Ring> interiorRings = ( (PolygonPatch) patch ).getInteriorRings();
  members.add( geomFac.createPolygon( null, geometry.getCoordinateSystem(), exteriorRing,
                    interiorRings ) );
origin: deegree/deegree3

List<Ring> interiorRings = patch.getInteriorRings();
List<LinearRing> interiorJTSRings = new ArrayList<LinearRing>( interiorRings.size() );
List<Polygon> interiorJTSRingsAsPolygons = new ArrayList<Polygon>( interiorRings.size() );
origin: deegree/deegree3

                          offx, offy ) );
List<Ring> interiorRings = ( (PolygonPatch) patch ).getInteriorRings();
List<Ring> movedInteriorRings = new ArrayList<Ring>( interiorRings.size() );
for ( Ring interior : interiorRings ) {
org.deegree.geometry.primitive.patchesPolygonPatchgetInteriorRings

Javadoc

Returns the interior rings (holes) of the patch.

Popular methods of PolygonPatch

  • getExteriorRing
  • getPolygonPatchType
  • getBoundaryRings
    Returns the boundary rings (interior + exteriors)
  • getCoordinateDimension

Popular in Java

  • Start an intent from android
  • startActivity (Activity)
  • notifyDataSetChanged (ArrayAdapter)
  • compareTo (BigDecimal)
  • VirtualMachine (com.sun.tools.attach)
    A Java virtual machine. A VirtualMachine represents a Java virtual machine to which this Java vir
  • InetAddress (java.net)
    An Internet Protocol (IP) address. This can be either an IPv4 address or an IPv6 address, and in pra
  • Manifest (java.util.jar)
    The Manifest class is used to obtain attribute information for a JarFile and its entries.
  • Collectors (java.util.stream)
  • Cipher (javax.crypto)
    This class provides access to implementations of cryptographic ciphers for encryption and decryption
  • Response (javax.ws.rs.core)
    Defines the contract between a returned instance and the runtime when an application needs to provid
  • Top plugins for WebStorm
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now