Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import bpy
- from bpy_extras.object_utils import world_to_camera_view
- hand_pose = bpy.data.objects["Armature"].pose;
- render_scale=bpy.context.scene.render.resolution_percentage/100;
- height = 512
- width = 512
- bpy.context.scene.render.resolution_x = width
- bpy.context.scene.render.resolution_y = height
- bpy.context.scene.render.resolution_percentage = 100
- render_size = (
- bpy.context.scene.render.resolution_x * render_scale,
- bpy.context.scene.render.resolution_y * render_scale
- )
- bpy.context.scene.render.filepath = 'sample.png'
- bpy.ops.render.render(write_still=True)
- fingers=[ 'finger_pinky.03.L', 'finger_ring.03.L', 'finger_middle.03.L', 'finger_index.03.L', 'thumb.03.L' ]
- for i, finger in enumerate(fingers):
- pos = world_to_camera_view(bpy.context.scene, bpy.context.scene.camera, hand_pose.bones[finger].head)
- print(finger + ' position is ', render_size[0]*pos.x, height-render_size[1]*pos.y-1)
- finger_pinky.03.L position is 255.89732360839844 297.16163635253906
- finger_ring.03.L position is 249.3601531982422 292.98570251464844
- finger_middle.03.L position is 246.95179748535156 286.85406494140625
- finger_index.03.L position is 249.28578186035156 279.54920959472656
- thumb.03.L position is 266.2782287597656 270.7700500488281
- for obj in bpy.data.objects:
- if obj.type == "MESH":
- for v in obj.data.vertices:
- co = obj.matrix_world * Vector((v.co.x, v.co.y, v.co.z, 1))
- co = world_to_camera_view(scene, camera, co)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement