Description | uses | Classes, Interfaces, Objects and Records | Functions and Procedures | Types | Constants | Variables |
ReadShapefileUnit
defines TShapeGeometryFile which provides a method of reading the geometry part of ESRI Shapefiles. Each shape in the Shapefile is stored in a TShapeObject which can be accessed through the TShapeGeometryFile.Items property.
See http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf for a description of the Shapefile format.
Name | Description |
---|---|
packed record TBoundingBox |
TBoundingBox represents the bounding box or of all the shapes in a Shapefile. |
packed record TShapefileHeader |
TShapefileHeader appears at the beginning of a Shapefile |
packed record TShapeRecordHeader |
TShapeRecordHeader appears at the beginning of each Shape record. |
packed record TNullShapeRecord |
TNullShapeRecord is the constant-length part of a null-shape. |
packed record TPointShapeRecord |
TPointShapeRecord is the constant-length part of a point-shape. |
packed record TShapePoint |
TShapePoint defines a point in a Shapefile. |
packed record TMultiPointShapeRecord |
TMultiPointShapeRecord is the constant-length part of a multi-point shape. |
packed record TPolyLineShapeRecord |
TPolyLineShapeRecord is the constant-length part of a polyline shape. |
packed record TPolygonShapeRecord |
TPolygonShapeRecord is the constant-length part of a polygon shape. |
packed record TPointMShapeRecord |
TPointMShapeRecord is the constant-length part of a PointM shape. |
packed record TShapePointM |
TShapePointM defines a PointM. |
packed record TMultiPointMShapeRecord |
TMultiPointMShapeRecord is the constant-length part of a MultiPointPointM shape. |
packed record TPolyLineMShapeRecord |
TPolyLineMShapeRecord is the constant-length part of a PolyLineM shape. |
packed record TPolygonMShapeRecord |
TPolygonMShapeRecord is the constant-length part of a PolygonM shape. |
packed record TPointZShapeRecord |
TPointZShapeRecord defines a PointZ shape in a Shapefile. |
packed record TMultiPointZShapeRecord |
TMultiPointZShapeRecord is the constant-length part of a MultiPointZ shape. |
packed record TPolyLineZShapeRecord |
TPolyLineZShapeRecord is the constant-length part of a PolyLineZ shape. |
packed record TPolygonZShapeRecord |
TPolygonZShapeRecord is the constant-length part of a PolygonZ shape. |
packed record TMultiPatchShapeRecord |
TMultiPatchShapeRecord defines a MultiPatch shape in a Shapefile. |
packed record TShapeIndexRecord |
TShapeIndexRecord defines a Shape Index record. |
Class TShapeObject |
TShapeObject represents a shape in an ESRI Shapefile. See TShapeGeometryFile.Items. |
Class TShapeGeometryFile |
TShapeGeometryFile provides a method of reading the geometry part of ESRI Shapefiles. Each shape in the Shapefile is stored in a TShapeObject which can be accessed through the Items property. |
packed record TDoubleEndianCnvRec |
TDoubleEndianCnvRec is used in ConvertDouble to convert a double to or from the BigEndian format. |
packed record TLongintEndianCnvRec |
TLongintEndianCnvRec is used in ConvertInteger to convert a longint to or from the BigEndian format. |
procedure SwapDoubleBytes(Dest, Source: PDoubleEndianCnvRec); |
procedure SwapLongIntBytes(Dest, Source: PLongintEndianCnvRec); |
function ConvertDouble(const Value: double): double; |
function ConvertInteger(const Value: longint): longint; |
function FileShapeType(const FileName: string): integer; |
TProgressProcedure = procedure(Sender: TObject; FractionDone: double) of object; |
TBytePos = (...); |
PDoubleEndianCnvRec = ˆTDoubleEndianCnvRec; |
PLongintEndianCnvRec = ˆTLongintEndianCnvRec; |
stNull = 0; |
stPoint = 1; |
stPolyLine = 3; |
stPolygon = 5; |
stMultiPoint = 8; |
stPointZ = 11; |
stPolyLineZ = 13; |
stPolygonZ = 15; |
stMultiPointZ = 18; |
stPointM = 21; |
stPolyLineM = 23; |
stPolygonM = 25; |
stMultipointM = 28; |
stMultiPatch = 31; |
ptTriangleStrip = 0; |
ptTriangleFan = 1; |
ptOuterRing = 2; |
ptInnerRing = 3; |
ptFirstRing = 4; |
ptRing = 5; |
procedure SwapDoubleBytes(Dest, Source: PDoubleEndianCnvRec); |
|
procedure SwapLongIntBytes(Dest, Source: PLongintEndianCnvRec); |
|
function FileShapeType(const FileName: string): integer; |
The ShapeType which should be one of: stNull = 0; stPoint = 1; stPolyLine = 3; stPolygon = 5; stMultiPoint = 8; stPointZ = 11; stPolyLineZ = 13; stPolygonZ = 15; stMultiPointZ = 18; stPointM = 21; stPolyLineM = 23; stPolygonM = 25; stMultipointM = 28; stMultiPatch = 31; |
TProgressProcedure = procedure(Sender: TObject; FractionDone: double) of object; |
|
TBytePos = (...); |
enumeration used in variant record Values
|
PDoubleEndianCnvRec = ˆTDoubleEndianCnvRec; |
|
PLongintEndianCnvRec = ˆTLongintEndianCnvRec; |
|
stNull = 0; |
Null Shape |
stPoint = 1; |
Point Shape |
stPolyLine = 3; |
Polyline Shape |
stPolygon = 5; |
Polygon Shape |
stMultiPoint = 8; |
MultiPoint Shape |
stPointZ = 11; |
PointZ Shape |
stPolyLineZ = 13; |
PolyLineZ Shape |
stPolygonZ = 15; |
PolygonZ Shape |
stMultiPointZ = 18; |
MultiPointZ Shape |
stPointM = 21; |
PointM Shape |
stPolyLineM = 23; |
PolyLineM Shape |
stPolygonM = 25; |
PolygonM Shape |
stMultipointM = 28; |
MultiPointM Shape |
stMultiPatch = 31; |
MultiPatch Shape |
ptOuterRing = 2; |
|
ptInnerRing = 3; |
|
ptFirstRing = 4; |
|
ptRing = 5; |
|