Export 为什么我在MaxScript中得到奇怪的顶点位置值

Export 为什么我在MaxScript中得到奇怪的顶点位置值,export,mesh,maxscript,Export,Mesh,Maxscript,我正在尝试用maxscript编写一个简单的网格导出器。这没什么特别的,它只需要导出面、顶点和垂直面。我的代码和工作时一样好,但有时我会在顶点位置得到非常奇怪的值(例如-1.1234e-005)。我知道这是一个非常大的数字,但问题是,我的顶点与数字所指示的位置并不接近(我在1m*1m*1m框中看到过这种情况)。我发现当它发生在一个网格上时,它总是发生在那个网格和同一个顶点上,直到我移动那个特定的顶点为止(缩放/移动整个东西都不起作用)。我使用以下代码导出顶点位置: num_verts = se

我正在尝试用maxscript编写一个简单的网格导出器。这没什么特别的,它只需要导出面、顶点和垂直面。我的代码和工作时一样好,但有时我会在顶点位置得到非常奇怪的值(例如-1.1234e-005)。我知道这是一个非常大的数字,但问题是,我的顶点与数字所指示的位置并不接近(我在1m*1m*1m框中看到过这种情况)。我发现当它发生在一个网格上时,它总是发生在那个网格和同一个顶点上,直到我移动那个特定的顶点为止(缩放/移动整个东西都不起作用)。我使用以下代码导出顶点位置:

num_verts  = sel_mesh.numverts
for i=1 to num_verts do (
  v = getVert sel_mesh i
  format "v %\n" v to:out_file
)
format "\n" to:out_file

我曾尝试用谷歌搜索这个问题,但似乎没有人有同样的问题。我对我的电视节目使用相同的代码,这些节目可以很好地导出。如果需要的话,我可以把整个出口商寄出去。如果您需要查看更多代码,请告诉我:)。

这实际上是一个非常小的数字

-1.1234e-005
-1.1234*(10^-5)
,非常小

与您的评论相反,
formattedPrint
确实“修复”了这一问题

formattedPrint -1.1234e-005 format:".6f"

output:    "-0.000011"
您可以在导出程序中使用它:

num_verts  = sel_mesh.numverts
for i=1 to num_verts do (
  v = getVert sel_mesh i
  format "v %\n" (formattedPrint v format:".6f") to:out_file
)
format "\n" to:out_file

它实际上可能是一个v小数字。您是否尝试过限制小数点后2位或3位?我尝试过使用格式为“#.6f”和格式为“.6f”的formattedPrint,有些使用3,4,5而不是6。没有人修复了它,有些格式甚至破坏了它。很抱歉,我没有比这更有用的了,已经好几年没有使用maxscript了:(