2023年3月10日金曜日

anime 3 torus

aaa
import bpy
import math

R = 10  # トーラス半径(チューブの中心からトーラスの中心までの距離)
r = 0.2  # チューブ半径(断面半径)

# トーラスのメッシュを定義する
vertices = []
edges = []
faces = []

for u in range(0, 21):
    theta = u * 2*math.pi / 20
    for v in range(0, 21):
        phi = v * 2*math.pi / 20
        x = (R + r*math.cos(phi)) * math.cos(theta)
        y = (R + r*math.cos(phi)) * math.sin(theta)
        z = r*math.sin(phi)
        vertices.append((x, y, z))

        if u < 20 and v < 20:
            a = u*21 + v
            b = u*21 + v + 1
            c = (u+1)*21 + v
            d = (u+1)*21 + v + 1
            faces.append((a, b, d, c))
            
# メッシュオブジェクトを作成してシーンに追加する
mesh = bpy.data.meshes.new(name="Torus")
mesh.from_pydata(vertices, edges, faces)
object = bpy.data.objects.new(name="Torus", object_data=mesh)
bpy.context.scene.collection.objects.link(object)












import bpy
import math

# 球体を作成
bpy.ops.mesh.primitive_uv_sphere_add(radius=1)

# アニメーション用にオブジェクトを取得
obj = bpy.context.active_object

# 1回転あたりのフレーム数を計算
frames_per_rotation = bpy.context.scene.render.fps * 10

# アニメーションを作成
for i in range(frames_per_rotation):
    angle = 2 * math.pi * i / frames_per_rotation
    x = 10 * math.cos(angle)
    y = 10 * math.sin(angle)
    z = 0
    obj.location = (x, y, z)
    obj.keyframe_insert(data_path="location", frame=i+1)
    
# アニメーションを繰り返す設定
animation = obj.animation_data.action
animation.use_cyclic_offset = True
animation.frame_range = (1, frames_per_rotation)




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
いいいいいいいい

test

aaa (4) 結論としての空間概念の革命 この3枚の絵図は、zionadchat理論の最高到達点の一つです。 空間は絶対でも相対でもなく、**「観測者がどの階層(どの過去光円錐の大きさ)で現象を切り取っているか」**で決まる階層的・垂直的な実在...