我想获得带有maxscript
的多边形边缘位置3Ds Max。我尝试过以下方法:
tmesh = snapshotAsMesh selection[1]
out_name = ((GetDir #export)+"/testmesh.dat")
out_file = createfile out_name
num_verts = tmesh.numverts
num_faces = tmesh.numfaces
format "% % %\n" num_verts num_faces to:out_file
for v = 1 to num_verts do
(
vert = getVert tmesh v
format "%," vert to:out_file
)
format "\n" to:out_file
for f = 1 to num_faces do
(
face = getFace tmesh f
format "%," face to:out_file
)
close out_file
delete tmesh
edit out_name
输出需要类似于OBJ文件格式,但我想在线框中只显示边缘连接。
示例输出:
[0,0,0],[1,0,0],[0,1,0],[1,1,0]
[1,2],[2,3],[3,4],[4,1]
编辑: 我可以通过这段代码找到隐形边缘。
for f = 1 to num_faces do
(
face = getFace tmesh f
edge1 = getEdgeVis tmesh f 1
edge2 = getEdgeVis tmesh f 2
edge3 = getEdgeVis tmesh f 3
format "%,[%,%,%]" face edge1 edge2 edge3 to:out_file
format "\n" to:out_file
)
答案 0 :(得分:0)
您可以使用meshop.GetVertsUsingEdge获取边缘的顶点,如下所示:
tmesh = snapshotAsMesh selection[1]
allverts = #()
for v = 1 to num_verts do
(
vert = getVert tmesh v
append allverts vert
)
print allverts
format "\n" --to:out_file
edges = tmesh.Edges
for ed in edges do
(
print ed
edverts = meshop.GetVertsUsingEdge tmesh ed
print "ed verts: "
for v in edverts do (
print allverts[v]
)
print "\n"
)
delete tmesh