ui/src/main/java/ucar/nc2/ui/gis/AbstractGisFeature.java
public Shape getShape() {
    int npts = getNumPoints();
    GeneralPath path = new GeneralPath(GeneralPath.WIND_EVEN_ODD, npts);

    java.util.Iterator pi = getGisParts();
    while (pi.hasNext()) {
      GisPart gp = (GisPart) pi.next();
      double[] xx = gp.getX();
      double[] yy = gp.getY();
      int np = gp.getNumPoints();
      if (np > 0)
        path.moveTo((float) xx[0], (float) yy[0]);
      for (int i = 1; i < np; i++) {
        path.lineTo((float) xx[i], (float) yy[i]);
      }
    }
    return path;
  }
public Shape getShape() {
    int npts = getNumPoints();
    GeneralPath path = new GeneralPath(GeneralPath.WIND_EVEN_ODD, npts);

    java.util.Iterator pi = getGisParts();
    while (pi.hasNext()) {
      GisPart gp = (GisPart) pi.next();
      double[] xx = gp.getX();
      double[] yy = gp.getY();
      int np = gp.getNumPoints();
      if (np > 0)
        path.moveTo((float) xx[0], (float) yy[0]);
      for (int i = 1; i < np; i++) {
        path.lineTo((float) xx[i], (float) yy[i]);
      }
    }
    return path;
  }
public Shape getShape ( ) { int npts = getNumPoints ( ) ; GeneralPath path = new GeneralPath ( GeneralPath . WIND_EVEN_ODD , npts ) ; java . util . Iterator pi = getGisParts ( ) ; while ( pi . hasNext ( ) ) { GisPart gp = ( GisPart ) pi . next ( ) ; double [ ] xx = gp . getX ( ) ; double [ ] yy = gp . getY ( ) ; int np = gp . getNumPoints ( ) ; if ( np > 0 ) path . moveTo ( ( float ) xx [ 0 ] , ( float ) yy [ 0 ] ) ; for ( int i = 1 ; i < np ; i ++ ) { path . lineTo ( ( float ) xx [ i ] , ( float ) yy [ i ] ) ; } } return path ; }
Convert this GisFeature to a java.awt.Shape, using the default
coordinate system, mapping gisFeature(x,y) -> screen(x,y).
LOOK STILL HAVE TO crossSeam()

@return shape corresponding to this feature.
Convert this GisFeature to a java . awt . Shape using the default coordinate system mapping gisFeature ( x y ) - > screen ( x y ) . LOOK STILL HAVE TO crossSeam ()