获取EaselJS中一行的起点和终点

时间:2014-01-29 14:30:43

标签: javascript html5 canvas easeljs

是否可以从绘制的线中检索这些点? API并没有真正帮助我。

var line = new createjs.Graphics();
line.beginStroke( 'black' );
line.moveTo( 0, 0 );
line.lineTo( 100, 100 );

现在我正在创建Point类的实例并使用坐标作为参数。

var point1 = new Point(0, 0);
var point2 = new Point(100, 100);

var line = new createjs.Graphics();
line.beginStroke( 'black' );
line.moveTo( point1.x, point1.y );
line.lineTo( point2.x, point2.y );

1 个答案:

答案 0 :(得分:4)

虽然理论上可以检索这些坐标,但你最好将它们保存为自定义对象(例如,就像你已经存在的那样)。


Graphics - 对象在CommandsCommand(f, params, path))中保存这些绘图指令和坐标 - 所有活动命令都保存在数组中:line._activeInstructions

你必须经历第一个和最后一个命令并检索命令的params - 数组,这些将是你的观点。但这只适用于你的简单线条。由于这使用了Graphics-object的内部变量和方法,我强烈建议这样做。 另外,我建议你在这种情况下保持代码的可读性,而不是试图通过不使用具有非常不可测量的记忆效应的2点来节省一些内存。