我找到了代码from internet并尝试了解它。我不知道代码的编程语言是什么,并试图找到javascript等效或解决方法。
A)哪种语言有问题?
*a_offsetrot = PI / 4.0f;
B)' *'是什么意思?在上面,什么是可能的Javascript等价?
C)' f'是什么意思?什么是可能的Javascript等价?
if (K<0) K = 0; else K = (float)sqrt (K);
D)&#39;(浮动)&#39;是什么意思?什么是可能的Javascript等价?
*a_offsetrot = 0.5f * (float)atan2(B,ac);
E)&#34; atan2&#34;是什么意思?什么是可能的Javascript等价?
void Ellipse_Transform (float * a_rh, float * a_rv, float *a_offsetrot, Vector2 * endpoint, matrix * a_mat, int *a_ReverseWinding)
F)&#39; Vector2 * endpoint&#39;是什么意思?并且可能有Javascript等价吗? Vector2是一个有两个(x,y)点还是只有一个(x,y)点的东西?
m[0] = a_mat->m[0] * +rh * c + a_mat->m[3] * rh * s;
G)&#39; a_mat-&gt; m [0]&#39;是什么意思?什么是可能的Javascript等价?
EDIT2:感谢@rid的建设性回答,我将C语言代码翻译为Javascript,它是HERE,完整的功能示例是HERE。
答案 0 :(得分:4)
A)语言为C.
B)*
是解除引用运算符。 JavaScript中没有等价物,因为JavaScript不使用指针。
C f
中的4.0f
表示该值为float
值。 JavaScript中没有等效项,因为在JavaScript中,所有数值都表示为数字。
D)(float)
是一个类型转换。 JavaScript中类似的东西是parseFloat()
,它将解析参数并返回浮点数,但这与类型转换不同,并且在JavaScript中没有等效的类型转换。
E)atan2()
是用于计算反正切的数学函数。您可以在标准JavaScript Math
包中找到它。
F)Vector2
很可能是一个具有两个属性的结构,x
属性和y
属性。
G)a_mat->m[0]
表示数组m
中的第一个元素是a_mat
的属性。如果a_mat
是JavaScript中的对象,则等效值为a_mat.m[0]
。