スポンサーリンク

Blender bpy でvertexとfaceとedgeを追加

vertexを定義してfaceを追加

import bpy


#頂点定義
verts = []
verts.append( [0.2,1.5,1.5] )
verts.append( [1.5,1.5,1.5] )
verts.append( [1.5,0.2,0.2] )

#面を、それを構成する頂点番号で定義
faces =[]
faces.append( [0,1,2] )

#頂点と頂点番号からメッシュを作成
mymesh = bpy.data.meshes.new("mymesh")
mymesh.from_pydata(verts,[],faces) #作成部分
mymesh.update()

#オブジェクトを作成し、メッシュを登録
obj = bpy.data.objects.new("My_Object", mymesh)

#オブジェクトのマテリアルを作成
mat = bpy.data.materials.new("Mat1")
mat.diffuse_color = (0.3,0.7,0.5)
obj.active_material = mat

#オブジェクトを登録
scene = bpy.context.scene
scene.objects.link(obj)

 

makeface

#作成部分を以下のように変更すると、頂点の登録のみになります。

mymesh.from_pydata(verts,[],[])

 

エッジ用の頂点リストを作成したうえで、#作成部分を以下のように変更すると、エッジの登録のみになります。

edges = []
edges.append( [0,2] ) # エッジをなす二点の頂点番号

mymesh = bpy.data.meshes.new("mymesh")
mymesh.from_pydata(verts,edges,[])
mymesh.update()

 

 

 

 

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)


この記事のトラックバックURL: