File Geodatabase API
|
MultiPatch Shape Buffer accessor functions. More...
Inherits FileGDBAPI::ShapeBuffer.
Public Member Functions | |
fgdbError | GetExtent (double *&extent) const |
Get a pointer to the geomtries extent. More... | |
fgdbError | GetNumParts (int &numParts) const |
Get the number of parts. More... | |
fgdbError | GetNumPoints (int &numPoints) const |
Get the number of coordinates in the geometry. More... | |
fgdbError | GetParts (int *&parts) const |
Get a pointer to the parts array. More... | |
fgdbError | GetPartDescriptors (int *&partDescriptorArray) const |
Get a pointer to the part descriptor array. More... | |
fgdbError | GetPoints (Point *&points) const |
Get a pointer to the point array. More... | |
fgdbError | GetZExtent (double *&zExtent) const |
Get a pointer to the z extent. More... | |
fgdbError | GetZs (double *&zArray) const |
Get a pointer to the z array. More... | |
fgdbError | GetMExtent (double *&mExtent) const |
Get a pointer to the m extent. More... | |
fgdbError | GetMs (double *&mArray) const |
Get a pointer to the m array. More... | |
fgdbError | GetIDs (int *&ids) const |
Get a pointer to the id array. More... | |
fgdbError | GetNormals (float *&normals) const |
Get a pointer to the normals array. More... | |
fgdbError | GetTextures (int &numTextures, int &textureDimension, int *&textureParts, float *&textureCoords) const |
Returns textures. More... | |
fgdbError | GetMaterials (int &numMaterials, int &compressionType, int *&materialParts, byte *&materials) const |
Returns materials. More... | |
fgdbError | Setup (ShapeType shapeType, int numParts, int numPoints, int numTextures=0, int textureDimension=0, int numMaterials=0, size_t materialsLength=0) |
Setup a shape buffer for insert. More... | |
fgdbError | CalculateExtent (void) |
Calculates the extent for the shape after all of the coordinate arrays have been filled. More... | |
![]() | |
bool | Allocate (size_t length) |
Allocates a byte array of the specified size. More... | |
bool | IsEmpty (void) const |
Is the ShapeBuffer empty. More... | |
void | SetEmpty (void) |
Set the ShapeBuffer empty. | |
fgdbError | GetShapeType (ShapeType &shapeType) const |
Gets the shape type from the shape buffer. More... | |
fgdbError | GetGeometryType (GeometryType &geometryType) const |
Gets the geometry type which corresponds to the shape type in the shape buffer. More... | |
ShapeBuffer (size_t length=0) | |
The class constructor. | |
virtual | ~ShapeBuffer () |
The class destructor. | |
Additional Inherited Members | |
![]() | |
static bool | HasZs (ShapeType shapeType) |
Does the shape buffer contain Z values. More... | |
static bool | HasMs (ShapeType shapeType) |
Does the shape buffer contain Ms. More... | |
static bool | HasIDs (ShapeType shapeType) |
Does the shape buffer contain IDs. More... | |
static bool | HasCurves (ShapeType shapeType) |
Does the shape buffer contain Curves. More... | |
static bool | HasNormals (ShapeType shapeType) |
Does the shape buffer includes Normals. More... | |
static bool | HasTextures (ShapeType shapeType) |
Does the shape buffer include Textures. More... | |
static bool | HasMaterials (ShapeType shapeType) |
Does the shape buffer include Materials. More... | |
static GeometryType | GetGeometryType (ShapeType shapeType) |
Gets the geometry type from a shape type. More... | |
![]() | |
byte * | shapeBuffer |
The underlying byte array. | |
size_t | allocatedLength |
The capacity of the byte array. | |
size_t | inUseLength |
The number of bytes being used in the array. | |
MultiPatch Shape Buffer accessor functions.
These functions provide access to the shape buffer. Consult the extended shapefile format document for the buffer layout.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetExtent | ( | double *& | extent | ) | const |
Get a pointer to the geomtries extent.
[out] | extent | A pointer to the geometries extent. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetNumParts | ( | int & | numParts | ) | const |
Get the number of parts.
[out] | numParts | The number of parts in the geometry. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetNumPoints | ( | int & | numPoints | ) | const |
Get the number of coordinates in the geometry.
[out] | numPoints | The number of points. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetParts | ( | int *& | parts | ) | const |
Get a pointer to the parts array.
[out] | parts | A pointer to the parts array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetPartDescriptors | ( | int *& | partDescriptorArray | ) | const |
Get a pointer to the part descriptor array.
[out] | partDescriptorArray | A pointer to the part descriptor array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetPoints | ( | Point *& | points | ) | const |
Get a pointer to the point array.
[out] | points | A pointer to the point array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetZExtent | ( | double *& | zExtent | ) | const |
Get a pointer to the z extent.
[out] | zExtent | A pointer to the z extent. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetZs | ( | double *& | zArray | ) | const |
Get a pointer to the z array.
[out] | zArray | A pointer to the z array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetMExtent | ( | double *& | mExtent | ) | const |
Get a pointer to the m extent.
[out] | mExtent | A pointer to the m extent. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetMs | ( | double *& | mArray | ) | const |
Get a pointer to the m array.
[out] | mArray | A pointer to the m array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetIDs | ( | int *& | ids | ) | const |
Get a pointer to the id array.
[out] | ids | A pointer to the id array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetNormals | ( | float *& | normals | ) | const |
Get a pointer to the normals array.
[out] | normals | A pointer to the normals array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetTextures | ( | int & | numTextures, |
int & | textureDimension, | ||
int *& | textureParts, | ||
float *& | textureCoords | ||
) | const |
Returns textures.
[out] | numTextures | The number of textures |
[out] | textureDimension | The texture dimension. |
[out] | textureParts | A pointer to the texture parts. |
[out] | textureCoords | A pointer to the texture coordinates. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetMaterials | ( | int & | numMaterials, |
int & | compressionType, | ||
int *& | materialParts, | ||
byte *& | materials | ||
) | const |
Returns materials.
[out] | numMaterials | The number of materials |
[out] | compressionType | The compression type. |
[out] | materialParts | A pointer to the number of material parts. |
[out] | materials | A pointer to the materials array. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::Setup | ( | ShapeType | shapeType, |
int | numParts, | ||
int | numPoints, | ||
int | numTextures = 0 , |
||
int | textureDimension = 0 , |
||
int | numMaterials = 0 , |
||
size_t | materialsLength = 0 |
||
) |
Setup a shape buffer for insert.
Allocates the correct length buffer for the selected shape type.
[in] | shapeType | The shape type of the buffer. Shape Type |
[in] | numParts | The number of parts that the geometry will contain. |
[in] | numPoints | The number of points that the geometry will contain. |
[in] | numTextures | The number of textures that the geometry will contain, defaults to zero. |
[in] | textureDimension | The textureDimension that the geometry will contain, defaults to zero. |
[in] | numMaterials | The number of materials that the geometry will contain, defaults to zero. |
[in] | materialsLength | The size in bytes of the materials block, defaults to zero. |
fgdbError FileGDBAPI::MultiPatchShapeBuffer::CalculateExtent | ( | void | ) |
Calculates the extent for the shape after all of the coordinate arrays have been filled.