public class Shapefile
extends java.lang.Object
You construct it with a file name, and later you can read the file's properties, i.e. Sizes, Types, and the data itself.
Copyright 1998 by James Macgill.
Version 1.0beta1.1 (added construct with inputstream)
1.0beta1.2 (made Shape type constants public 18/Aug/98)
This class supports the Shape file as set out in :-
"ESRI(r) Shapefile - A Technical Description"
'An ESRI White Paper . May 1997'
This code is coverd by the LGPL. Mail the Author
Modifier and Type | Field and Description |
---|---|
static int |
ARC |
static int |
ARCM |
static int |
ARCZ |
static int |
MULTIPATCH |
static int |
MULTIPOINT |
static int |
MULTIPOINTM |
static int |
MULTIPOINTZ |
static int |
NULL |
static int |
POINT |
static int |
POINTM |
static int |
POINTZ |
static int |
POLYGON |
static int |
POLYGONM |
static int |
POLYGONZ |
static int |
UNDEFINED |
Constructor and Description |
---|
Shapefile(java.io.InputStream IS) |
Shapefile(java.net.URL url)
Creates and initialises a shapefile from a url
|
Modifier and Type | Method and Description |
---|---|
void |
close() |
int |
getErrorNumber()
Get the number of errors found after a read.
|
static ShapeHandler |
getShapeHandler(com.vividsolutions.jts.geom.Geometry geom,
int ShapeFileDimension) |
static ShapeHandler |
getShapeHandler(int type) |
static int |
getShapeType(com.vividsolutions.jts.geom.Geometry geom,
int ShapeFileDimension)
Returns the Shape Type corresponding to geometry geom of dimension
ShapeFileDimension.
|
static java.lang.String |
getShapeTypeDescription(int index)
Returns a string describing the shape type.
|
com.vividsolutions.jts.geom.GeometryCollection |
read(com.vividsolutions.jts.geom.GeometryFactory geometryFactory)
Initialises a shapefile from disk.
|
void |
readIndex(java.io.InputStream is) |
void |
write(com.vividsolutions.jts.geom.GeometryCollection geometries,
int ShapeFileDimension)
Saves a shapefile to an output stream.
|
void |
writeIndex(com.vividsolutions.jts.geom.GeometryCollection geometries,
EndianDataOutputStream file,
int ShapeFileDimension)
Saves a shapefile index (shx) to an output stream.
|
public static final int NULL
public static final int POINT
public static final int POINTZ
public static final int POINTM
public static final int ARC
public static final int ARCM
public static final int ARCZ
public static final int POLYGON
public static final int POLYGONM
public static final int POLYGONZ
public static final int MULTIPOINT
public static final int MULTIPOINTM
public static final int MULTIPOINTZ
public static final int MULTIPATCH
public static final int UNDEFINED
public Shapefile(java.net.URL url)
url
- The url of the shapefilepublic Shapefile(java.io.InputStream IS)
public void close()
public com.vividsolutions.jts.geom.GeometryCollection read(com.vividsolutions.jts.geom.GeometryFactory geometryFactory) throws java.io.IOException, ShapefileException, java.lang.Exception
geometryFactory
- the geometry factory to use to read the shapesjava.io.IOException
ShapefileException
java.lang.Exception
public int getErrorNumber()
public void write(com.vividsolutions.jts.geom.GeometryCollection geometries, int ShapeFileDimension) throws java.io.IOException, java.lang.Exception
geometries
- geometry collection to writeShapeFileDimension
- shapefile dimension (2=x,y ; 3=x,y,m ; 4=x,y,z,m)java.io.IOException
java.lang.Exception
public void writeIndex(com.vividsolutions.jts.geom.GeometryCollection geometries, EndianDataOutputStream file, int ShapeFileDimension) throws java.io.IOException, java.lang.Exception
geometries
- geometry collection to writefile
- file to write toShapeFileDimension
- shapefile dimension (2=x,y ; 3=x,y,m ; 4=x,y,z,m)java.io.IOException
java.lang.Exception
public static java.lang.String getShapeTypeDescription(int index)
index
- An int coresponding to the shape type to be describedpublic static ShapeHandler getShapeHandler(com.vividsolutions.jts.geom.Geometry geom, int ShapeFileDimension) throws java.lang.Exception
java.lang.Exception
public static ShapeHandler getShapeHandler(int type) throws java.lang.Exception
java.lang.Exception
public static int getShapeType(com.vividsolutions.jts.geom.Geometry geom, int ShapeFileDimension) throws ShapefileException
geom
- the geomShapeFileDimension
- the dimension of the geom (2=x,y ; 3=x,y,m ; 4=x,y,z,m)ShapefileException
public void readIndex(java.io.InputStream is) throws java.io.IOException
java.io.IOException