我正在尝试将以下代码从 Java 转换为 Objective-c。
如何在不创建自己的 Quaternion 类的情况下像在 Java 中一样创建新的 Quaternion 对象。是否可以使用 GLKQuaternion ,因为这已经实现了?
this.q = new Quaternion(qrot);
其次,如何访问 GLKQuaternion 结构中的元素。例如,我尝试过:
self._m[9]
运气不好
我正在尝试将以下代码从 Java 转换为 Objective-c。
如何在不创建自己的 Quaternion 类的情况下像在 Java 中一样创建新的 Quaternion 对象。是否可以使用 GLKQuaternion ,因为这已经实现了?
this.q = new Quaternion(qrot);
其次,如何访问 GLKQuaternion 结构中的元素。例如,我尝试过:
self._m[9]
运气不好
不确定我是否正确阅读,但对于第 1 部分,您正在谈论 Java 中的构造函数,带有参数。据我所知,Objective-C 不使用构造函数。要模仿一个,你必须扩展init
方法。所以,
this.q = new Quaternion(qrot);
变成
self.q = [[Quaternion alloc] initWithRotation:qrot];
对于第 2 部分,在 Objective-C 中访问struct
元素确实像在 Java 中一样使用点表示法,但除非变量 _m 是一个数组,否则您的代码会导致编译错误。
哪里structElement
是int = y
,
exmapleStruct.strutElement = 9;
是一个有效的论点。在您的代码中,您正在访问_m
sub 9 或数组中的第 8 个元素_m
希望这可以帮助