Open1

オブジェクトを選択したり複製したりする

黒狐黒狐

単にオブジェクトを選択するだけなのにどうしてこうも難しいのか・・

import bpy

bpy.data.objects['Cup'].select_set(True)

これで「'Cup'」という名前のオブジェクトが選択されます。参考:(ありがとうです・・!)
コピペで覚える~
さらにオブジェクトの複製についてもまとめておきます。

import bpy

def duplicate_move_and_rename(obj_name, new_name, x, y, z):
    for obj in bpy.data.objects:
        obj.select_set(False)
    original_obj = bpy.data.objects[obj_name]
    original_obj.select_set(True)
    bpy.ops.object.duplicate_move(TRANSFORM_OT_translate={"value":(x,y,z)})
    new_obj = bpy.data.objects[obj_name + ".001"]
    new_obj.name = new_name

duplicate_move_and_rename('Cup', 'Cup2', 1, 1, 1)
duplicate_move_and_rename('Cup2', 'Cup3', 1, 2, 1)
duplicate_move_and_rename('Cup3', 'Cup4', 1, 3, 1)

実行結果:


関数duplicate_move_and_renameはobj_nameのオブジェクトを複製してnew_nameという名前を付け、さらにx,y,zだけ移動させるというものです。実行すると面白いようにオブジェクトが増えていきます。楽しい・・。
コップがいっぱい:


script:


グラデーションノード使ってみた:

ちょっと編集してみよ

console.log("Hello,world!")

うん、スマホでも編集しやすい。