File Geodatabase API
FileGDBAPI::MultiPatchShapeBuffer Class Reference

MultiPatch Shape Buffer accessor functions. More...

Inherits FileGDBAPI::ShapeBuffer.

List of all members.

Public Member Functions

fgdbError GetExtent (double *&extent)
 Get a pointer to the geomtries extent.
fgdbError GetNumParts (int &numParts)
 Get the number of parts.
fgdbError GetNumPoints (int &numPoints)
 Get the number of coordinates in the geometry.
fgdbError GetParts (int *&parts)
 Get a pointer to the parts array.
fgdbError GetPartDescriptors (int *&partDescriptorArray)
 Get a pointer to the part descriptor array.
fgdbError GetPoints (Point *&points)
 Get a pointer to the point array.
fgdbError GetZExtent (double *&zExtent)
 Get a pointer to the z extent.
fgdbError GetZs (double *&zArray)
 Get a pointer to the z array.
fgdbError GetMExtent (double *&mExtent)
 Get a pointer to the m extent.
fgdbError GetMs (double *&mArray)
 Get a pointer to the m array.
fgdbError GetIDs (int *&ids)
 Get a pointer to the id array.
fgdbError GetNormals (float *&normals)
 Get a pointer to the normals array.
fgdbError GetTextures (int &numTextures, int &textureDimension, int *&textureParts, float *&textureCoords)
 Returns textures.
fgdbError GetMaterials (int &numMaterials, int &compressionType, int *&materialParts, byte *&materials)
 Returns materials.
fgdbError Setup (ShapeType shapeType, int numParts, int numPoints, int numTextures=0, int textureDimension=0, int numMaterials=0)
 Setup a shape buffer for insert.
fgdbError CalculateExtent (void)
 Calculates the extent for the shape after all of the coordinate arrays have been filled.

Detailed Description

MultiPatch Shape Buffer accessor functions.

These functions provide access to the shape buffer. Consult the extended shapefile format document for the buffer layout.


Member Function Documentation

fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetExtent ( double *&  extent)

Get a pointer to the geomtries extent.

Parameters:
[out]extentA pointer to the geometries extent.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetNumParts ( int &  numParts)

Get the number of parts.

Parameters:
[out]numPartsThe number of parts in the geometry.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetNumPoints ( int &  numPoints)

Get the number of coordinates in the geometry.

Parameters:
[out]numPointsThe number of points.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetParts ( int *&  parts)

Get a pointer to the parts array.

Parameters:
[out]partsA pointer to the parts array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetPartDescriptors ( int *&  partDescriptorArray)

Get a pointer to the part descriptor array.

Parameters:
[out]partDescriptorArrayA pointer to the part descriptor array.
Returns:
Error code indicating whether the method finished successfully
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetPoints ( Point *&  points)

Get a pointer to the point array.

Parameters:
[out]pointsA pointer to the point array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetZExtent ( double *&  zExtent)

Get a pointer to the z extent.

Parameters:
[out]zExtentA pointer to the z extent.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetZs ( double *&  zArray)

Get a pointer to the z array.

Parameters:
[out]zArrayA pointer to the z array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetMExtent ( double *&  mExtent)

Get a pointer to the m extent.

Parameters:
[out]mExtentA pointer to the m extent.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetMs ( double *&  mArray)

Get a pointer to the m array.

Parameters:
[out]mArrayA pointer to the m array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetIDs ( int *&  ids)

Get a pointer to the id array.

Parameters:
[out]idsA pointer to the id array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetNormals ( float *&  normals)

Get a pointer to the normals array.

Parameters:
[out]normalsA pointer to the normals array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetTextures ( int &  numTextures,
int &  textureDimension,
int *&  textureParts,
float *&  textureCoords 
)

Returns textures.

Parameters:
[out]numTexturesThe number of textures
[out]textureDimensionThe texture dimension.
[out]texturePartsA pointer to the texture parts.
[out]textureCoordsA pointer to the texture coordinates.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::GetMaterials ( int &  numMaterials,
int &  compressionType,
int *&  materialParts,
byte *&  materials 
)

Returns materials.

Parameters:
[out]numMaterialsThe number of materials
[out]compressionTypeThe compression type.
[out]materialPartsA pointer to the number of material parts.
[out]materialsA pointer to the materials array.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::Setup ( ShapeType  shapeType,
int  numParts,
int  numPoints,
int  numTextures = 0,
int  textureDimension = 0,
int  numMaterials = 0 
)

Setup a shape buffer for insert.

Allocates the correct length buffer for the selected shape type.

Parameters:
[in]shapeTypeThe shape type of the buffer. Shape Type
[in]numPartsThe number of parts that the geometry will contain.
[in]numPointsThe number of points that the geometry will contain.
[in]numTexturesThe number of textures that the geometry will contain, defaults to zero.
[in]textureDimensionThe textureDimension that the geometry will contain, defaults to zero.
[in]numMaterialsThe number of materials that the geometry will contain, defaults to zero.
Returns:
Error code indicating whether the method finished successfully.
fgdbError FileGDBAPI::MultiPatchShapeBuffer::CalculateExtent ( void  )

Calculates the extent for the shape after all of the coordinate arrays have been filled.

Returns:
Error code indicating whether the method finished successfully.