37#ifndef Alembic_AbcGeom_IPoints_h
38#define Alembic_AbcGeom_IPoints_h
70 return m_positions && m_ids;
78 m_selfBounds.makeEmpty();
115 const std::string &iName,
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 );
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_ABC_SAFE_CALL_END()
#define ALEMBIC_ABC_SAFE_CALL_BEGIN(CONTEXT)
#define ALEMBIC_VERSION_NS
virtual bool valid() const
Abc::V3fArraySamplePtr getVelocities() const
Abc::Box3d getSelfBounds() const
Abc::P3fArraySamplePtr getPositions() const
Abc::UInt64ArraySamplePtr getIds() const
Abc::V3fArraySamplePtr m_velocities
Abc::P3fArraySamplePtr m_positions
ALEMBIC_OPERATOR_BOOL(valid())
Abc::UInt64ArraySamplePtr m_ids
Abc::IP3fArrayProperty getPositionsProperty() const
IPointsSchema(const IPointsSchema &iCopy)
Copy constructor.
size_t getNumSamples() const
Default assignment operator used.
ALEMBIC_OVERRIDE_OPERATOR_BOOL(IPointsSchema::valid())
IPointsSchema(const ICompoundProperty &iParent, const std::string &iName, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
Abc::IUInt64ArrayProperty m_idsProperty
IFloatGeomParam getWidthsParam() const
AbcA::TimeSamplingPtr getTimeSampling() const
void init(const Abc::Argument &iArg0, const Abc::Argument &iArg1)
void get(Sample &oSample, const Abc::ISampleSelector &iSS=Abc::ISampleSelector()) const
IFloatGeomParam m_widthsParam
Sample getValue(const Abc::ISampleSelector &iSS=Abc::ISampleSelector()) const
Abc::IP3fArrayProperty m_positionsProperty
Abc::IV3fArrayProperty getVelocitiesProperty() const
Abc::IV3fArrayProperty m_velocitiesProperty
Abc::IUInt64ArrayProperty getIdsProperty() const
IPointsSchema(const ICompoundProperty iProp, const Abc::Argument &iArg0=Abc::Argument(), const Abc::Argument &iArg1=Abc::Argument())
Alembic::Util::shared_ptr< TimeSampling > TimeSamplingPtr
Util::shared_ptr< IPoints > IPointsPtr
Alembic::Util::shared_ptr< UInt64ArraySample > UInt64ArraySamplePtr
Alembic::Util::shared_ptr< V3fArraySample > V3fArraySamplePtr
Alembic::Util::shared_ptr< P3fArraySample > P3fArraySamplePtr