我正在尝试为 Haxe 制作 KineticJS 的 extern。我正在制作“转换”类(class),但我遗漏了一些部分,所以我认为这里有人可以提供帮助。
extern class Transform {
public function new();
public function translate(x:Float, y:Float):Void;
public function scale(sx:Float, sy:Float):Void;
public function rotate(rad:Float):Void;
/**
* Returns the translation
* @returns {Object} 2D point(x, y)
*/
getTranslation: function() {
return {
x: this.m[4],
y: this.m[5]
};
},
public function multiply(matrix:Transform):Void;
public function invert():Void;
/**
* return matrix
*/
getMatrix: function() {
return this.m;
}
}
所以,正如你所看到的,我缺少
getTranslation
和 getMatrix
。这是因为我不确定它们的返回类型应该是什么。这里有什么帮助吗?对于那些想知道的人,
m
变量定义如下:Kinetic.Transform = function() {
this.m = [1, 0, 0, 1, 0, 0];
}
非常感谢!
-P
最佳答案
鉴于 m
正在存储一个矩阵,它应该是一个 Array<Float>
。
getTranslation 的返回类型是 structure 。
所以最后的功能应该是:
public function getMatrix():Array<Float>;
public function getTranslation():{ x:Float, y:Float };
关于haxe - 创建 Haxe extern,返回类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12428761/