是否可以从绘制的直线中检索这些点? 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 );
最佳答案
虽然理论上可以检索这些坐标,但最好将它们保存为自定义对象(例如点,就像您已经做的那样)。
<小时/>Graphics
对象将这些绘制指令和坐标保存在Commands
(Command(f, params, path)
)中 - 以及所有事件命令保存在数组中:line._activeInstructions
您必须遍历第一个和最后一个命令并检索命令的 params
数组,这些将是您的要点。但这仅适用于简单线路的情况。由于这使用了 Graphics 对象的内部变量和方法,因此我强烈建议不要这样做。
另外,我建议您在这种情况下保持代码的可读性,而不是尝试通过不使用具有几乎无法测量的内存效应的 2 个点来节省一些内存。
关于javascript - EaselJS中获取直线的起点和终点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21434043/