37 #ifndef Alembic_AbcGeom_IPoints_h
38 #define Alembic_AbcGeom_IPoints_h
70 return m_positions && m_ids;
78 m_selfBounds.makeEmpty();
121 init( iArg0, iArg1 );
133 init( iArg0, iArg1 );
154 {
return std::max( m_positionsProperty.getNumSamples(),
155 m_idsProperty.getNumSamples() ); }
159 bool isConstant()
const {
return m_positionsProperty.isConstant() && m_idsProperty.isConstant(); }
165 if ( m_positionsProperty.valid() )
167 return m_positionsProperty.getTimeSampling();
169 return getObject().getArchive().getTimeSampling(0);
178 m_positionsProperty.get( oSample.m_positions, iSS );
179 m_idsProperty.get( oSample.m_ids, iSS );
181 m_selfBoundsProperty.get( oSample.m_selfBounds, iSS );
183 if ( m_velocitiesProperty && m_velocitiesProperty.getNumSamples() > 0 )
184 { m_velocitiesProperty.get( oSample.m_velocities, iSS ); }
200 return m_positionsProperty;
205 return m_velocitiesProperty;
210 return m_idsProperty;
215 return m_widthsParam;
228 m_positionsProperty.reset();
229 m_velocitiesProperty.reset();
230 m_idsProperty.reset();
231 m_widthsParam.reset();
241 m_positionsProperty.
valid() &&
242 m_idsProperty.valid() );
#define ALEMBIC_OPERATOR_BOOL(PASS_COND)
Abc::UInt64ArraySamplePtr m_ids
Alembic::Util::shared_ptr< UInt64ArraySample > UInt64ArraySamplePtr
Abc::P3fArraySamplePtr getPositions() const
Abc::UInt64ArraySamplePtr getIds() const
Alembic::Util::shared_ptr< V3fArraySample > V3fArraySamplePtr
Util::shared_ptr< IPoints > IPointsPtr
GLsizei const GLchar *const * string
IPointsSchema(const ICompoundProperty iProp, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
Abc::IUInt64ArrayProperty getIdsProperty() const
Abc::IV3fArrayProperty m_velocitiesProperty
Abc::V3fArraySamplePtr getVelocities() const
Abc::IP3fArrayProperty m_positionsProperty
Abc::ISchemaObject< IPointsSchema > IPoints
Alembic::Util::shared_ptr< TimeSampling > TimeSamplingPtr
Abc::IV3fArrayProperty getVelocitiesProperty() const
virtual bool valid() const
Abc::IUInt64ArrayProperty m_idsProperty
#define ALEMBIC_OVERRIDE_OPERATOR_BOOL(PASS_COND)
#define ALEMBIC_ABC_SAFE_CALL_BEGIN(CONTEXT)
Abc::V3fArraySamplePtr m_velocities
Abc::P3fArraySamplePtr m_positions
Abc::Box3d getSelfBounds() const
IPointsSchema(const IPointsSchema &iCopy)
Copy constructor.
Box< V3d > Box3d
3D box of base type double.
#define ALEMBIC_ABC_SAFE_CALL_END()
ImageBuf OIIO_API max(Image_or_Const A, Image_or_Const B, ROI roi={}, int nthreads=0)
AbcA::TimeSamplingPtr getTimeSampling() const
IPointsSchema(const ICompoundProperty &iParent, const std::string &iName, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
size_t getNumSamples() const
Default assignment operator used.
Sample getValue(const Abc::ISampleSelector &iSS=Abc::ISampleSelector()) const
IFloatGeomParam m_widthsParam
IFloatGeomParam getWidthsParam() const
Abc::IP3fArrayProperty getPositionsProperty() const
Alembic::Util::shared_ptr< P3fArraySample > P3fArraySamplePtr
#define ALEMBIC_VERSION_NS