37#ifndef Alembic_AbcGeom_GeometryScope_h
38#define Alembic_AbcGeom_GeometryScope_h
40#include <Alembic/Util/Export.h>
41#include <Alembic/AbcGeom/Foundation.h>
45namespace ALEMBIC_VERSION_NS {
102 kFacevaryingScope = 4,
113inline void SetGeometryScope( AbcA::MetaData &ioMetaData, GeometryScope iScope )
117 case kConstantScope: ioMetaData.set(
"geoScope",
"con" );
return;
118 case kUniformScope: ioMetaData.set(
"geoScope",
"uni" );
return;
119 case kVaryingScope: ioMetaData.set(
"geoScope",
"var" );
return;
120 case kVertexScope: ioMetaData.set(
"geoScope",
"vtx" );
return;
121 case kFacevaryingScope: ioMetaData.set(
"geoScope",
"fvr" );
return;
122 case kUnknownScope:
return;
128inline GeometryScope GetGeometryScope(
const AbcA::MetaData &iMetaData )
130 const std::string val = iMetaData.get(
"geoScope" );
131 if ( val ==
"con" || val ==
"" ) {
return kConstantScope; }
132 else if ( val ==
"uni" ) {
return kUniformScope; }
133 else if ( val ==
"var" ) {
return kVaryingScope; }
134 else if ( val ==
"vtx" ) {
return kVertexScope; }
135 else if ( val ==
"fvr" ) {
return kFacevaryingScope; }
136 else {
return kUnknownScope; }
147GeometryScopeNumValuesQuadrics( GeometryScope iScope );
152GeometryScopeNumValuesPolygon( GeometryScope iScope,
size_t iNumVerts );
157GeometryScopeNumValuesPointsPolygons( GeometryScope iScope,
160 size_t iSumOfCounts );
165GeometryScopeNumValuesPoints( GeometryScope iScope,
171GeometryScopeNumValuesSubdivisionMesh( GeometryScope iScope,
174 size_t iSumOfCounts );
179GeometryScopeNumValuesBilinearPatch( GeometryScope iScope );
184GeometryScopeNumValuesBicubicPatch( GeometryScope iScope );
189GeometryScopeNumValuesBilinearPatchMesh( GeometryScope iScope,
190 size_t iNu,
bool iUNoWrap,
191 size_t iNv,
bool iVNoWrap );
197GeometryScopeNumValuesBicubicPatchMesh( GeometryScope iScope,
198 size_t iNu,
bool iUNoWrap,
199 size_t iNv,
bool iVNoWrap );
204GeometryScopeNumValuesNuPatch( GeometryScope iScope,
205 size_t iNu,
size_t iUorder,
206 size_t iNv,
size_t iVorder );
211GeometryScopeNumValuesLinearCurves( GeometryScope iScope,
212 size_t iNumCurves,
bool iNoWrap,
213 size_t iSumOfCounts );
217GeometryScopeNumValuesCubicCurves( GeometryScope iScope,
218 size_t iNumCurves,
bool iNoWrap,
219 size_t iSumOfCounts );
226ALEMBIC_EXPORT
void SetIsUV( AbcA::MetaData &ioMetaData,
bool isUV );
228ALEMBIC_EXPORT
bool isUV(
const AbcA::PropertyHeader & iHeader );
232using namespace ALEMBIC_VERSION_NS;
Alembic namespace ...
Definition ArchiveInfo.cpp:39