我如何将此代码的某些部分转换为java。 它是用VEX(Houdini)编写的
我对这样的某些部分感到困惑:
vector x,x0,kN,disp = {0,0,0}, unscaledDisp, KnMag
为什么右边有几个参数只用逗号分隔? 我尝试翻译它:
Vector3f x = new Vector3f(0,0,0);
Vector3f x0 = new Vector3f(0,0,0);
Vector3f kN = new Vector3f(0,0,0);
Vector3f disp = new Vector3f(0,0,0);
同样的事情:
float dispy = 0,0Km,w,wt,ApM,Phase,Chop;
这是否意味着所有这些变量都等于dispy?
谢谢。
答案 0 :(得分:2)
你很容易将声明与初始化混淆,这很容易理解,因为你的来源无缘无故地将它们混合在一起。
您可以使用以下格式在一个步骤中声明和初始化变量:
输入varname = value;
或者,您可以简单地声明一个变量:
输入varname;
或者您可以声明几个变量:
输入var1name,var2name,var3name;
或者您可以声明并初始化几个变量:
输入var1name = val1,var2name = val2,var2name = val3;
或者你可以将所有这些混合在一起,就像你的来源一样。在下面的行中,float dispy被声明和初始化,而浮动0Km,w,wt,ApM,Phase和Chop仅被声明:
float dispy = 0,0Km,w,wt,ApM,Phase,Chop;
在下一行中,简单地声明了向量x,x0,kN,unscaledDisp和KnMag,但是disp被初始化为{0,0,0}。
vector x,x0,kN,disp = {0,0,0},unscaledDisp,KnMag
基本上,你所看到的来源是一团糟(而且不仅仅是因为这个原因)。 HTH。