2023年1月31日火曜日

時計



 
時計を描くBlender Pythonスクリプトを書け。

以下は、BlenderのPythonスクリプトを使用して時計を作成する例です。これを修正または変更して、独自の画像を作成することができます。

import bpy
import math
from datetime import datetime

def create_clock():
    # Create a circle for the clock face
    bpy.ops.mesh.primitive_circle_add(radius=2, location=(0,0,0))
    
    # Get the current time
    current_time = datetime.now().time()
    hour = current_time.hour
    minute = current_time.minute
    second = current_time.second
    
    # Create the hour hand
    hour_angle = (hour / 12) * 360
    x = math.sin(math.radians(hour_angle)) * 1.5
    y = math.cos(math.radians(hour_angle)) * 1.5
    bpy.ops.mesh.primitive_cone_add(radius1=0.1, depth=1.5, location=(x, y, 0))
    
    # Create the minute hand
    minute_angle = (minute / 60) * 360
    x = math.sin(math.radians(minute_angle)) * 1.8
    y = math.cos(math.radians(minute_angle)) * 1.8
    bpy.ops.mesh.primitive_cylinder_add(radius=0.1, depth=1.8, location=(x, y, 0))
    
    # Create the second hand
    second_angle = (second / 60) * 360
    x = math.sin(math.radians(second_angle)) * 2
    y = math.cos(math.radians(second_angle)) * 2
    bpy.ops.mesh.primitive_cube_add(size=0.2, location=(x, y, 0))

create_clock()