Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

SDTSRawPolygon Class Reference

#include <sdts_al.h>

Inheritance diagram for SDTSRawPolygon:

SDTSFeature List of all members.

Public Methods

int AssembleRings ()
virtual void Dump (FILE *)

Public Attributes

int nRings
int nVertices
int * panRingStart
double * padfX
double * padfY
double * padfZ

Detailed Description

Class for holding information about a polygon feature.

When directly read from a polygon module, the polygon has no concept of it's geometry. Just it's ID, and references to attribute records. However, if the SDTSLineReader::AttachToPolygons() method is called on the module containing the lines forming the polygon boundaries, then the nEdges/papoEdges information on the SDTSRawPolygon will be filled in.

Once this is complete the AssembleRings() method can be used to fill in the nRings/nVertices/panRingStart/padfX/padfY/padfZ information defining the ring geometry.

Note that the rings may not appear in any particular order, nor with any meaningful direction (clockwise or counterclockwise).


Member Function Documentation

int SDTSRawPolygon::AssembleRings  
 

This method will assemble the edges associated with a polygon into rings, returning FALSE if problems are encountered during assembly.

void SDTSRawPolygon::Dump FILE *    [virtual]
 

Dump reable description of feature to indicated stream.

Implements SDTSFeature.


Member Data Documentation

int SDTSRawPolygon::nRings
 

Number of rings in assembled polygon.

int SDTSRawPolygon::nVertices
 

Total number of vertices in all rings of assembled polygon.

double* SDTSRawPolygon::padfX
 

List of nVertices X coordinates for the polygon (split over multiple rings via panRingStart.

double* SDTSRawPolygon::padfY
 

List of nVertices Y coordinates for the polygon (split over multiple rings via panRingStart.

double* SDTSRawPolygon::padfZ
 

List of nVertices Z coordinates for the polygon (split over multiple rings via panRingStart. The values are almost always zero.

int* SDTSRawPolygon::panRingStart
 

Offsets into padfX/padfY/padfZ for the beginning of each ring in the polygon. This array is nRings long.


The documentation for this class was generated from the following files:
Generated on Mon Oct 6 16:31:38 2003 for SDTS_AL by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002