a
# コレクションを作る 重複の場合 作らない
import bpy
# List of collection names
collection_names = [
"axis_x_balls",
"axis_y_balls",
"axis_z_balls",
"ba_X=0.5 balls",
"ba_X=1 balls",
"ba_(√3)/2 balls",
"xyz 軸 balls"
]
# Function to create a new collection if it doesn't exist
def create_collection_if_not_exists(name):
if name not in bpy.data.collections:
collection = bpy.data.collections.new(name)
bpy.context.scene.collection.children.link(collection)
# Create collections
for name in collection_names:
create_collection_if_not_exists(name)
blender python
21個の球体を作る
球体の大きさ0.06
指定位置の間に等間隔に配置する
(x,y,z)
=(0,1、0)から
(0,-1、0)
連番で名前をつける "ba_a連番(0,1、0)(0,-1、0)ball”
位置は 小数点1桁まで表示
連番で名前をつける "ba_a連番(0,1、0)(0,-1、0)ball”
連番で名前をつける "ba_b連番(0,1、0)(0,-1、0)ball”
のように 名前を付ける
(x,y,z)
=(0,1、0)から(0,-1、0)
(x,y,z)
=(-1,0、0)から(1,0、0)
(x,y,z)
=(0,0、ー1)から(0,0、1)
(x,y,z)
=(1,1、0)から(1,-1、0)
import bpy
# Function to create a new sphere object and rename it with a sequential number
def create_sphere_object(location, name):
bpy.ops.mesh.primitive_uv_sphere_add(radius=0.06, location=location)
obj = bpy.context.active_object
obj.name = name
# Number of spheres to create
num_spheres = 21
# Define the ranges for each axis
ranges = [
((0, 1, 0), (0, -1, 0)),
((-1, 0, 0), (1, 0, 0)),
((0, 0, -1), (0, 0, 1))
]
# Loop through the ranges and create sphere objects with the desired prefixes
prefixes = ["axis_y", "axis_x", "axis_z"]
for i, (start_position, end_position) in enumerate(ranges):
prefix = prefixes[i]
step_size = [(end_position[j] - start_position[j]) / (num_spheres - 1) for j in range(3)]
for j in range(num_spheres):
x = round(start_position[0] + j * step_size[0], 1)
y = round(start_position[1] + j * step_size[1], 1)
z = round(start_position[2] + j * step_size[2], 1)
object_name = f"{prefix}_{str(j+1).zfill(3)}({x},{y},{z})_({x},{-y},{z})_ball"
create_sphere_object((x, y, z), object_name)
基本系 配布 001 単位円 torus と xyz軸 円柱
https://drive.google.com/file/d/1adh0pC0n5MUfaPnsQcab8CnTvHu_JqLg/view?usp=drive_link
基本系 配布 002 単位2長さ balls
https://drive.google.com/file/d/1vyg5oFWmw_TK8nwp5TmVSfLH94I6rTaY/view?usp=drive_link
基本系 配布 003 単位2長さ balls 光時計セット
https://drive.google.com/file/d/1u2Rn_nVBcewe39Vokua9C5n25cdivyyL/view?usp=drive_link
blender 基本系 配布 カタログ 2023 - zionad_mainのブログ https://mokuji000zionad.hatenablog.com/entry/2023/07/31/095208
以下 ChatGPT との対話 修正記録 と メモ・ノート
(x,y,z)
=(0.5,1、0)から(0.5,-1、0)
いまのを
ba_a を axis_y
ba_b を axis_x
ba_c を axis_z に変更して
ba_X=1
(x,y,z)
=(1,1、0)から(1,-1、0)
ba_X=0.5
(x,y,z)
=(0.5,1、0)から(0.5,-1、0)
ba_(√3)/2
(x,y,z)
=((√3)/2,1、0)から((√3)/2,-1、0)
a