ちゃんとできなかったので
手動で 追加
。指定された位置と半径で4つの大きな球体を作成し、それらの間に6つの線分に相当する位置に均等に9つの0.01の球体を配置するスクリプトを以下に示します。
4つの球体で
6つの 線分相当が
できるから
その6つの線分相当に
均等間隔で 9つの0.02 球体 描いて
blender python
球体を作る
半径 0.03
位置は
0,0,0.5
1,√3,0
1,0,0
0,0,0
4点の間 それぞれに
9個の球体を作る
この球体の半径 0.04
4点の間を
”あ”
”い”
”う”
”か”
”き”
”く”
と 名付け
半径 0.02の球体に 連番で
”あ01" "あ02" このように名付ける
import bpy
import math
# 4つの大きな球体の位置を指定
positions = [
(0, 0, 0.5),
(1, math.sqrt(3), 0),
(1, 0, 0),
(0, 0, 0)
]
# 大きな球体の半径を指定
large_radius = 0.04
# 4つの大きな球体を作成
for i, position in enumerate(positions):
bpy.ops.mesh.primitive_uv_sphere_add(radius=large_radius, location=position)
bpy.context.active_object.name = f"大{i+1}"
import bpy
import math
# 9つの球体を均等に配置する関数
def create_small_spheres(start_pos, end_pos):
# 9つの球体を均等に配置
for j in range(9):
t = j / 8.0
pos = [
start_pos[0] * (1-t) + end_pos[0] * t,
start_pos[1] * (1-t) + end_pos[1] * t,
start_pos[2] * (1-t) + end_pos[2] * t
]
bpy.ops.mesh.primitive_uv_sphere_add(radius=0.01, location=pos)
# 各線分区間に球体を配置する
def create_small_spheres_for_all_lines():
# 線分区間の開始点と終了点のリスト
positions = [
[(0, 0, 0.5), (1, math.sqrt(3), 0)], # aa
[(0, 0, 0.5), (1, 0, 0)], # bb
[(0, 0, 0.5), (0, 0, 0)], # cc
[(1, math.sqrt(3), 0), (1, 0, 0)], # dd
[(1, math.sqrt(3), 0), (0, 0, 0)], # ee
[(1, 0, 0), (0, 0, 0)] # ff
]
# 各線分区間に球体を配置
for i in range(len(positions)):
start_pos, end_pos = positions[i]
create_small_spheres(start_pos, end_pos)
create_small_spheres_for_all_lines()
import bpy
import math
# 20個の球体を均等に配置する関数
def create_small_spheres(start_pos, end_pos):
# 20個の球体を均等に配置
for j in range(20):
t = j / 19.0
pos = [
start_pos[0] * (1-t) + end_pos[0] * t,
start_pos[1] * (1-t) + end_pos[1] * t,
start_pos[2] * (1-t) + end_pos[2] * t
]
bpy.ops.mesh.primitive_uv_sphere_add(radius=0.02, location=pos)
# 各線分区間に球体を配置する
def create_small_spheres_for_all_lines():
# 線分区間の開始点と終了点のリスト
positions = [
[(0, 0, 0.5), (1, math.sqrt(3), 0)], # aa
[(0, 0, 0.5), (1, 0, 0)], # bb
[(0, 0, 0.5), (0, 0, 0)], # cc
[(1, math.sqrt(3), 0), (1, 0, 0)], # dd
[(1, math.sqrt(3), 0), (0, 0, 0)], # ee
[(1, 0, 0), (0, 0, 0)] # ff
]
# 各線分区間に球体を配置
for i in range(len(positions)):
start_pos, end_pos = positions[i]
create_small_spheres(start_pos, end_pos)
create_small_spheres_for_all_lines()
4つの球体から
2つの球体を両端とする
線分に名前を付ける
6つできるハズ
aa,bb,cc,dd,ee,ff
それをコレクション名とし
まずコレクションだけ作る
3次元座標 xyz で
(0,0,1) から
(1,2,0)までの
直線距離と
数式を 書いて
できれば 絵図も
3次元座標 xyz で
(0,0,0.5) から
(1,0,0)までの
直線距離と
数式を 書いて