- Meshlab
- 3Dオブジェクトを操作させてくれるGUI。Windows,Mac,Linux OK(ダウンロード)
- 複数の3Dオブジェクトファイルを置換もできる(PLY,Obj等)
- ファイルフォーマット変換は
- あるファイルフォーマットで読み込んで、File -> Export Mesh As -> 保存ファイルの拡張子を選択
- Rvcg
- RvcgはPLY形式での書き出し、読み込みが可。
- Objファイルだったら、Meshlabで変換して以下のようにする
- テクスチャ(3dオブジェクトの表面に模様を描くには、模様を乗せたpngファイルとかが必要で、PLYファイルにはそのファイル名(パス込み)が書かれているので、それがないとワーニングが出る
install.packages("Rvcg")
library(Morpho)
library(rgl)
testobj <- vcgPlyRead("texturedknot.ply")
edges <-vcgNonBorderEdge(testobj)
lines3d(t(testobj$vb[1:3,])[c(edges$vert1[1],edges$vert2[2]),],col=2,lwd=3)
bary <- barycenter(testobj)
points3d(bary[c(edges$face1[1],edges$face2[1]),])
shade3d(testobj, col=3)
data(humface)
vcgPlyWrite(humface,filename = "humface")
import numpy as np
import mcubes
X, Y, Z = np.mgrid[:10, :10, :10]
u = (X-5)**2 + (Y-5)**2 + (Z-5)**2 - 2**2
np.shape(u)
print X
print Y
print u
vertices, triangles = mcubes.marching_cubes(u, 0)
vertices_xyz = np.transpose(vertices)
print vertices
print triangles
mcubes.export_mesh(vertices, triangles, "sphere.dae", "MySphere")
- Meshlabのコマンドライン
- meshlabserverというのがコマンド。パスを通したり、と言ったことはやらないといけないけれど、基本的には以下のコマンド
> meshlabserver -i hoge.obj -o hoge.ply
testobj <- vcgPlyRead("hoge.ply")