Polygon Example - Java - Latest

Spectrum Spatial Guide

Product type
Software
Portfolio
Locate
Product family
Spectrumâ„¢ software
Product
Spectrumâ„¢ software > Spatial > Spectrum Spatial
Version
Latest
ft:locale
en-US
Product name
Spectrum Technology Platform
ft:title
Spectrum Spatial Guide
Copyright
2025
First publish date
2007
ft:lastEdition
2025-03-07
ft:lastPublication
2025-03-07T10:28:48.112000

The following shows a Java example that returns a Polygon object.


public static Polygon buildPolygon() throws Exception
{
    Polygon polygon = new Polygon();
    polygon.setSrsName("EPSG:4326");
    Ring exteriorRing = new Ring();
    LineString lineString = new LineString();

    Pos pos = new Pos();
    pos.setX(-75.66);
    pos.setY(42.33);
    pos.setMValue(new Double(-12.33));
    lineString.getPos().add(pos);

    //add the viaPoint
    Pos pos1 = new Pos();
    pos1.setX(-77.66);
    pos1.setY(43.33);
    pos1.setMValue(new Double(-17.33));
    lineString.getPos().add(pos1);
    //add the end Point.
    Pos pos2 = new Pos();
    pos2.setX(-78.66);
    pos2.setY(44.33);
    pos2.setMValue(new Double(-19.33));
    lineString.getPos().add(pos2);

    Pos pos3 = new Pos();
    pos3.setX(-75.66);
    pos3.setY(42.33);
    pos3.setMValue(new Double(-12.33));
    lineString.getPos().add(pos3);

    exteriorRing.getLineString().add(lineString);

    polygon.setExterior(exteriorRing);

    //set the interior ring.
    Ring interiorRing = new Ring();
    LineString interiorlineString = new LineString();

    Pos interiorPos = new Pos();
    interiorPos.setX(-75.66);
    interiorPos.setY(45.33);
    interiorPos.setMValue(new Double(-12.33));
    interiorlineString.getPos().add(interiorPos);
    //add the viaPoint
    Pos interiorPos1 = new Pos();
    interiorPos1.setX(-77.66);
    interiorPos1.setY(46.33);
    interiorPos1.setMValue(new Double(-17.33));
    interiorlineString.getPos().add(interiorPos1);
    //add the end Point.
    Pos interiorPos2 = new Pos();
    interiorPos2.setX(-75.66);
    interiorPos2.setY(45.33);
    interiorPos2.setMValue(new Double(-19.33));
    interiorlineString.getPos().add(interiorPos2);

    interiorRing.getLineString().add(interiorlineString);
    InteriorList interiorList = new InteriorList();
    polygon.setInteriorList(interiorList);
    //polygon.getInteriorList().getRing().add(interiorRing[0]);

    return polygon;
}