MCPcopy Create free account
hub / github.com/ImageEngine/cortex / testConversion

Method testConversion

test/IECoreScene/PDCReader.py:216–254  ·  view source on GitHub ↗
( self )

Source from the content-addressed store, hash-verified

214
215
216 def testConversion( self ) :
217
218 r = IECore.Reader.create( os.path.join( "test", "IECore", "data", "pdcFiles", "particleShape1.250.pdc" ) )
219 self.assertEqual( type( r ), IECoreScene.PDCParticleReader )
220
221 r.parameters()["realType"].setValue( "float" )
222
223 expectedAttrNamesAndTypes = {
224 "particleId" : IECore.FloatVectorData,
225 "mass" : IECore.FloatVectorData,
226 "lastWorldVelocity" : IECore.V3fVectorData,
227 "worldVelocityInObjectSpace" : IECore.V3fVectorData,
228 "worldVelocity" : IECore.V3fVectorData,
229 "lastWorldPosition" : IECore.V3fVectorData,
230 "worldPosition" : IECore.V3fVectorData,
231 "acceleration" : IECore.V3fVectorData,
232 "lastVelocity" : IECore.V3fVectorData,
233 "velocity" : IECore.V3fVectorData,
234 "lastPosition" : IECore.V3fVectorData,
235 "P" : IECore.V3fVectorData,
236 "lifespanPP" : IECore.FloatVectorData,
237 "finalLifespanPP" : IECore.FloatVectorData,
238 "emitterId" : IECore.FloatVectorData,
239 "birthTime" : IECore.FloatVectorData,
240 "age" : IECore.FloatVectorData,
241 }
242
243 c = r.read()
244 self.assertEqual( type( c ), IECoreScene.PointsPrimitive )
245 self.assertEqual( len( c ), len( expectedAttrNamesAndTypes ) )
246 for i in expectedAttrNamesAndTypes.keys() :
247 self.assertTrue( i in c )
248 self.assertEqual( type(c[i].data), expectedAttrNamesAndTypes[i] )
249 self.assertEqual( len(c[i].data), r.numParticles() )
250
251 for p in c["P"].data :
252 self.assertEqual( p.y, 0 )
253 self.assertTrue( abs( p.x ) < 1.1 )
254 self.assertTrue( abs( p.z ) < 1.1 )
255
256 def testFileNameChange( self ) :
257

Callers

nothing calls this directly

Calls 9

typeFunction · 0.85
joinMethod · 0.80
lenFunction · 0.50
createMethod · 0.45
setValueMethod · 0.45
parametersMethod · 0.45
readMethod · 0.45
keysMethod · 0.45
numParticlesMethod · 0.45

Tested by

no test coverage detected