KineticJS:Line.getPoints()方法不返回点数组。为什么?

时间:2013-05-29 21:48:54

标签: javascript kineticjs

KineticJS中Line对象上的getPoints()方法不返回点数组。我创建了一个fiddle来说明问题。

在小提琴中,我放置了一个运行test()功能的按钮。

我的代码如下:

var stage = new Kinetic.Stage({
container: 'main',
width: 1200,
height: 400,
});

var linesLayer = new Kinetic.Layer();
var textLayer = new Kinetic.Layer();

var testLine = new Kinetic.Line({
     points: [100, 100, 100, 200],

    stroke: 'red',
    strokeWidth: 3});

linesLayer.add(testLine);

function test(){

var context = textLayer.getContext();
context.font = '18pt Calibri';
context.fillStyle = 'black';

context.fillText(testLine.getPoints().join(),100,350);

}
stage.add(linesLayer);

stage.add(textLayer);

test()函数运行时屏幕上显示的结果是[object Object],[object Object],我不知道为什么或如何处理。帮助

谢谢你们!

1 个答案:

答案 0 :(得分:1)

事实上确实如此。它返回一个包含两个对象的数组(正如您在输出中已经看到的那样),并且这些对象的每个都包含两个值:x和y。

如果您记录testLine.getPoints():

,这是控制台的屏幕截图

enter image description here