从文件MaxScript导入旋转

时间:2014-01-26 20:01:20

标签: scripting 3dsmax maxscript

如何从文件导入旋转?我需要四元数 目前我只能导入对象位置。

txt文件的结构:

x,y,z,xrot,yrot,zrot,wrot,nameofobject

这是我的剧本:

(
   file = memStreamMgr.openFile @"C:\test.txt"

while NOT file.eos() do
(
    local line = filterString (file.readLine()) ", "
    if line.count == 8 AND isValidNode (local obj = getNodeByName line[8]) do
        obj.pos = [line[1] as float, line[2] as float, line[3] as float]
)
   memStreamMgr.close file
)

1 个答案:

答案 0 :(得分:3)

由于自上一个问题以来唯一改变的是文本文件的结构,我假设您自己创建它 - 如果是这种情况,请将逗号更改为其他分隔符,例如管道,然后保存完整节点变换矩阵。无论如何,要回答你的问题,而不是设置位置,设置如下的变换:

obj.transform = translate (quat xrot yrot zrot wrot as matrix3) [x, y, z]