Hi all,
can somebody help me? I have troubles with my program.
I'm busy writing a small script which is basically a loop where an object rotates in after the rotation it has to make a screenshot of it and store it on the disk with the objects name and rotation degree.
The loop works perfectly it prints out what it has to save on the disk but it doesn't save (well it saves only the last screenshot).
Do I have to approach this differently?
Thanks for your help!
Code:
import viz
viz.go()
viz.clearcolor(.4,.4,.4)
view = viz.get(viz.MAIN_VIEWPOINT)
view.translate(12.416062355041504, 4.3263897895812988, 0)
view.rotate(-90,0,0)
s = viz.add(r"scissors.wrl")
co = viz.add(r"canopener.ive")
c1 = viz.add(r"cubes_01.wrl")
c2 = viz.add(r"cubes_02.wrl")
c3 = viz.add(r"cubes_03.wrl")
objects = [s,co,c1,c2,c3]
objectStrings = ["scissors","canOpener","cubes01","cubes02","cubes03"]
for i in objects :
i.visible(0)
degreesY = [0,60,120,180,240,300]
degreesZ = [0,60,300]
degreesX = [0,180]
for obj in objects :
if obj == s :
object = objectStrings[0]
elif obj == co :
object = objectStrings[1]
elif obj == c1 :
object = objectStrings[2]
elif obj == c2 :
object = objectStrings[3]
elif obj == c3 :
object = objectStrings[4]
obj.visible(1)
for degree in range(0, len(degreesX)) :
for i in range(0, len(degreesZ)) :
for j in range(0, len(degreesY)) :
obj.rotate(degreesX[degree], degreesY[j], degreesZ[i])
viz.window.screenCapture('pictures\\' + object + '_' + str(degreesX[degree]) + '_' + str(degreesY[j]) + '_' + str(degreesZ[i]) + '.bmp')
print "Created: " + object + "_" + str(degreesX[degree]) + "_" + str(degreesY[j]) + "_" + str(degreesZ[i]) + ".bmp"