2023年3月10日金曜日

test anime 三角測量 dame





















import bpy
import math

# 初期設定
animation_frames = 200  # 1秒あたり20フレームで10秒間のアニメーション
animation_start_frame = 0
animation_end_frame = animation_frames + 1

# 球体1の初期設定
radius1 = 0.4
location1_start = (10, 0, 0)
location1_end = (0, 0, 0)



# アニメーションの長さに合わせてシーンのフレームを設定する
bpy.context.scene.frame_start = animation_start_frame
bpy.context.scene.frame_end = animation_end_frame

# 球体1を作成し、初期位置を設定する
bpy.ops.mesh.primitive_uv_sphere_add(radius=radius1, enter_editmode=False, location=location1_start)

# 球体1オブジェクトへの参照を取得する
sphere1 = bpy.context.active_object

# 球体1の位置のキーフレームを作成する
for i in range(animation_start_frame, animation_end_frame):
    current_location1 = (
        sphere1.location[0] + (location1_end[0] - location1_start[0]) * i / animation_frames,
        sphere1.location[1] + (location1_end[1] - location1_start[1]) * i / animation_frames,
        sphere1.location[2] + (location1_end[2] - location1_start[2]) * i / animation_frames
    )
    sphere1.location = current_location1
    sphere1.keyframe_insert(data_path="location", frame=i)


# アニメーションを再生する
bpy.ops.screen.animation_play()

# 球体1を削除する
bpy.ops.object.select_all(action='DESELECT')
sphere1.select_set(True)
bpy.ops.object.delete()



















import bpy
import math

# 初期設定
animation_frames = 200  # 1秒あたり20フレームで10秒間のアニメーション
animation_start_frame = 0
animation_end_frame = animation_frames + 1

# 球体1の初期設定
radius1 = 0.4
location1_start = (10, 0, 0)
location1_end = (0, 0, 0)

# 球体2の初期設定
radius2 = 0.4
location2_start = (10, 10, 0)
location2_end = (0, 0, 0)

# アニメーションの長さに合わせてシーンのフレームを設定する
bpy.context.scene.frame_start = animation_start_frame
bpy.context.scene.frame_end = animation_end_frame

# 球体1を作成し、初期位置を設定する
bpy.ops.mesh.primitive_uv_sphere_add(radius=radius1, enter_editmode=False, location=location1_start)

# 球体1オブジェクトへの参照を取得する
sphere1 = bpy.context.active_object

# 球体1の位置のキーフレームを作成する
for i in range(animation_start_frame, animation_end_frame):
    current_location1 = (
        sphere1.location[0] + (location1_end[0] - location1_start[0]) * i / animation_frames,
        sphere1.location[1] + (location1_end[1] - location1_start[1]) * i / animation_frames,
        sphere1.location[2] + (location1_end[2] - location1_start[2]) * i / animation_frames
    )
    sphere1.location = current_location1
    sphere1.keyframe_insert(data_path="location", frame=i)

# 球体2を作成し、初期位置を設定する
bpy.ops.mesh.primitive_uv_sphere_add(radius=radius2, enter_editmode=False, location=location2_start)

# 球体2オブジェクトへの参照を取得する
sphere2 = bpy.context.active_object

# 球体2の位置のキーフレームを作成する
for i in range(animation_start_frame, animation_end_frame):
    current_location2 = (
        sphere2.location[0] + (location2_end[0] - location2_start[0]) * i / animation_frames,
        sphere2.location[1] + (location2_end[1] - location2_start[1]) * i / animation_frames,
        sphere2.location[2] + (location2_end[2] - location2_start[2]) * i / animation_frames
    )
    sphere2.location = current_location2
    sphere2.keyframe_insert(data_path="location", frame=i)

# アニメーションを再生する
bpy.ops.screen.animation_play()

# 球体1を削除する
bpy.ops.object.select_all(action='DESELECT')
sphere1.select_set(True)
bpy.ops.object.delete()

# 球体2を削除する
bpy.ops.object.select_all(action='DESELECT')
sphere2























import bpy
import math

# 半径0.1の球体を作成し、初期位置を設定する
radius = 0.2
location = (10, 0, 0)
bpy.ops.mesh.primitive_uv_sphere_add(radius=radius, location=location)

# アニメーションのフレーム設定を行う
start_frame = 1  # アニメーションの最初のフレーム
end_frame = 400  # アニメーションの最後のフレーム
bpy.context.scene.frame_start = start_frame  # アニメーションの開始フレームを設定
bpy.context.scene.frame_end = end_frame  # アニメーションの終了フレームを設定

# キーフレームを設定する
obj = bpy.context.object  # オブジェクトを選択
obj.location = (10, 0, 0)  # 開始位置を設定
obj.keyframe_insert(data_path="location", frame=start_frame)  # 開始フレームでキーフレームを設定
obj.location = (-10, 0, 0)  # 終了位置を設定
obj.keyframe_insert(data_path="location", frame=end_frame)  # 終了フレームでキーフレームを設定


# アニメーション再生
bpy.ops.screen.animation_play()  # アニメーションを再生

このアニメの作り方で


(10,0,0)  開始位置
球体「aka」半径 0.2
(0,0,0) 終了位置 

の球体移動 と 同じ速度で

(10,0,10)  開始位置
球体「ao」 半径 0.2
(0,0,0) 終了位置 

動かす

どちらの球体も終了位置で 球体の大きさを半径0にして
どちらの球体も終了位置に到着したら

アニメを繰り返す















import bpy

# 球体1の初期設定
radius1 = 0.4
location1_start = (10, 0, 0)
location1_end = (0, 0, 0)
obj1 = bpy.ops.mesh.primitive_uv_sphere_add(radius=radius1, location=location1_start)
bpy.context.object.name = "aka"
obj1 = bpy.data.objects["aka"]

# 球体2の初期設定
radius2 = 0.4
location2_start = (10, 10, 0)
location2_end = (0, 0, 0)
obj2 = bpy.ops.mesh.primitive_uv_sphere_add(radius=radius2, location=location2_start)
bpy.context.object.name = "ao"
obj2 = bpy.data.objects["ao"]

# アニメーションのフレーム設定を行う
start_frame = 1  # アニメーションの最初のフレーム
end_frame = 400  # アニメーションの最後のフレーム
bpy.context.scene.frame_start = start_frame  # アニメーションの開始フレームを設定
bpy.context.scene.frame_end = end_frame  # アニメーションの終了フレームを設定

# キーフレームを設定する
obj1.location = location1_start  # 球体1の開始位置を設定
obj1.keyframe_insert(data_path="location", frame=start_frame)  # 開始フレームでキーフレームを設定
obj1.location = location1_end  # 球体1の終了位置を設定
obj1.scale = (0, 0, 0)  # 終了位置でサイズを0にする
obj1.keyframe_insert(data_path="location", frame=end_frame)  # 終了フレームでキーフレームを設定
obj1.keyframe_insert(data_path="scale", frame=end_frame)  # 終了フレームでキーフレームを設定

obj2.location = location2_start  # 球体2の開始位置を設定
obj2.keyframe_insert(data_path="location", frame=start_frame)  # 開始フレームでキーフレームを設定
obj2.location = location2_end  # 球体2の終了位置を設定
obj2.scale = (0, 0, 0)  # 終了位置でサイズを0にする
obj2.keyframe_insert(data_path="location", frame=end_frame)  # 終了フレームでキーフレームを設定
obj2.keyframe_insert(data_path="scale", frame=end_frame)  # 終了フレームでキーフレームを設定

# アニメーションを繰り返す
bpy.data.actions



bbb
togetter.com/t/c2022meetzionad
togetter.com/t/b2022meetzionad




twitter 新着検索 Dürer & 測距儀


aaa









bbb
twitter zionadchat
twitter に追い出されたら 連絡先は Gettr https://gettr.com/user/zionadchat
twitter サブアカウント https://twitter.com/2022zionad

old page いいい
new page いいい

目次 2022の目次 単純トリック hatena zionadchat
いいいいいいいい

伊勢丹 建物広告 球体群 配置 20240323_001

aaa y軸に 球体半径0.1を等間隔に配置して 球体の名前は Sphere_x_y_z で 小数1桁で 座標位置で 名前を作る y=+1から ー1までで 21個の球体で 作る コレクションだけを作って "y軸の球体群" import bpy #...