Package org.geotools.data.shapefile.shp
Class PolygonHandler
- Object
-
- PolygonHandler
-
- All Implemented Interfaces:
ShapeHandler
public class PolygonHandler extends Object implements ShapeHandler
Wrapper for a Shapefile polygon.- Author:
- aaime, Ian Schneider
-
-
Constructor Summary
Constructors Constructor Description PolygonHandler(ShapeType type, GeometryFactory gf)
PolygonHandler(GeometryFactory gf)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getLength(Object geometry)
Get the length of the given geometry Object in bytes not 16-bit words.ShapeType
getShapeType()
Get the ShapeType of this handler.Object
read(ByteBuffer buffer, ShapeType type, boolean flatFeature)
Read a geometry from the ByteBuffer.void
write(ByteBuffer buffer, Object geometry)
Write the geometry into the ByteBuffer.
-
-
-
Field Detail
-
LOGGER
protected static final Logger LOGGER
-
-
Constructor Detail
-
PolygonHandler
public PolygonHandler(GeometryFactory gf)
-
PolygonHandler
public PolygonHandler(ShapeType type, GeometryFactory gf) throws ShapefileException
- Throws:
ShapefileException
-
-
Method Detail
-
getShapeType
public ShapeType getShapeType()
Description copied from interface:ShapeHandler
Get the ShapeType of this handler.- Specified by:
getShapeType
in interfaceShapeHandler
- Returns:
- The ShapeType.
-
getLength
public int getLength(Object geometry)
Description copied from interface:ShapeHandler
Get the length of the given geometry Object in bytes not 16-bit words. This is easier to keep track of, since the ByteBuffer deals with bytes. Do not include the 8 bytes of record.- Specified by:
getLength
in interfaceShapeHandler
- Parameters:
geometry
- The geometry to analyze.- Returns:
- The number of bytes the shape will take up.
-
read
public Object read(ByteBuffer buffer, ShapeType type, boolean flatFeature)
Description copied from interface:ShapeHandler
Read a geometry from the ByteBuffer. The buffer's position, byteOrder, and limit are set to that which is needed. The record has been read as well as the shape type integer. The handler need not worry about reading unused information as the ShapefileReader will correctly adjust the buffer position after this call.- Specified by:
read
in interfaceShapeHandler
- Parameters:
buffer
- The ByteBuffer to read from.- Returns:
- A geometry object.
-
write
public void write(ByteBuffer buffer, Object geometry)
Description copied from interface:ShapeHandler
Write the geometry into the ByteBuffer. The position, byteOrder, and limit are all set. The handler is not responsible for writing the record or shape type integer.- Specified by:
write
in interfaceShapeHandler
- Parameters:
buffer
- The ByteBuffer to write to.geometry
- The geometry to write.
-
-