Class ShapefileReaderJGeom

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class ShapefileReaderJGeom
    extends java.lang.Object
    implements java.lang.AutoCloseable
    • Constructor Detail

      • ShapefileReaderJGeom

        public ShapefileReaderJGeom​(java.lang.String name)
                             throws java.io.IOException
        construct an object out of the specified shapefile name.
        Throws:
        java.io.IOException
    • Method Detail

      • getShpDims

        public static int getShpDims​(int type,
                                     double maxM)
                              throws java.lang.Exception
        Throws:
        java.lang.Exception
      • getGeometry

        public static JGeometry getGeometry​(byte[] recBuffer,
                                            int srid)
                                     throws java.lang.Exception
        Throws:
        java.lang.Exception
      • getGeometry

        protected static JGeometry getGeometry​(byte[] recBuffer,
                                               int type,
                                               int off,
                                               int srid)
                                        throws java.lang.Exception
        Throws:
        java.lang.Exception
      • makePoint

        protected static JGeometry makePoint​(byte[] b,
                                             int off,
                                             int srid)
                                      throws java.io.IOException
        Throws:
        java.io.IOException
      • makePointZ

        protected static JGeometry makePointZ​(byte[] b,
                                              int off,
                                              int srid)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • makePointM

        protected static JGeometry makePointM​(byte[] b,
                                              int off,
                                              int srid)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • makeMPoint

        protected static JGeometry makeMPoint​(byte[] b,
                                              int off,
                                              int srid)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • makeMPointZ

        protected static JGeometry makeMPointZ​(byte[] b,
                                               int off,
                                               int srid)
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • makePoly

        protected static JGeometry makePoly​(byte[] b,
                                            int type,
                                            int off,
                                            int srid)
                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • makePolyZ

        protected static JGeometry makePolyZ​(byte[] b,
                                             int type,
                                             int off,
                                             int srid)
                                      throws java.io.IOException
        Throws:
        java.io.IOException
      • makePolyZM

        protected static JGeometry makePolyZM​(byte[] b,
                                              int type,
                                              int off,
                                              int srid,
                                              int[] parts,
                                              int numParts,
                                              int numPoints,
                                              int zArrayOff,
                                              int mMaxOff)
                                       throws java.io.IOException
        Throws:
        java.io.IOException
      • makePolyM

        protected static JGeometry makePolyM​(byte[] b,
                                             int type,
                                             int off,
                                             int srid)
                                      throws java.io.IOException
        Throws:
        java.io.IOException
      • swapBytes

        public static void swapBytes​(byte[] buf,
                                     int offset,
                                     int len)
      • makeIntBigEndian

        protected static int makeIntBigEndian​(byte[] b,
                                              int off)
      • makeIntLittleEndian

        protected static int makeIntLittleEndian​(byte[] b,
                                                 int off)
      • makeDoubleBigEndian

        protected static double makeDoubleBigEndian​(byte[] b,
                                                    int off)
      • makeDoubleLittleEndian

        protected static double makeDoubleLittleEndian​(byte[] b,
                                                       int off)
      • openShapefile

        protected void openShapefile​(java.lang.String name)
                              throws java.io.IOException
        open a shapefile with the given name. ready to fetch individual shape records upon success return. return true if success; otherwise false
        Throws:
        java.io.IOException
      • closeShapefile

        public void closeShapefile()
                            throws java.io.IOException
        close this shapefile.
        Throws:
        java.io.IOException
      • close

        public void close()
                   throws java.lang.Exception
        Specified by:
        close in interface java.lang.AutoCloseable
        Throws:
        java.lang.Exception
      • getGeometryBytes

        public byte[] getGeometryBytes​(int nth)
                                throws java.io.IOException
        retrieve nth shape record and return it as a byte array.
        Throws:
        java.io.IOException
      • idxRecordOffset

        protected long idxRecordOffset​(int nth)
        make an double out of the byte array starting at offset 'off'. Assumming the bytes are laid out in big-endian order.
      • mainRecordOffset

        protected boolean mainRecordOffset​(int nth,
                                           oracle.spatial.util.IndexRecord idxRec)
      • numRecords

        public int numRecords()
        return the number of shape records in the file.
      • getShpFileType

        public int getShpFileType()
        return the Shape Type in the file.
      • getMaxMeasure

        public double getMaxMeasure()
        return the maximum Measure value in file.
      • getMinMeasure

        public double getMinMeasure()
        return the minimum Measure value in file.
      • getMaxZ

        public double getMaxZ()
        return the maximum Z value in file.
      • getMinZ

        public double getMinZ()
        return the minimum Z value in file.
      • getMaxX

        public double getMaxX()
        return the maximum X value in file.
      • getMinX

        public double getMinX()
        return the minimum X value in file.
      • getMaxY

        public double getMaxY()
        return the maximum Y value in file.
      • getMinY

        public double getMinY()
        return the minimum Y value in file.