Paper.js Segment未定义

时间:2014-03-22 20:52:50

标签: javascript paperjs

我正在修改我发现的CAD浏览器应用程序,我正在尝试添加一些“添加新细分”'''功能。这意味着用户可以单击预先存在的曲线并在那里添加一个段。

它使用Paper.j s作为画布库。

我找到的应用是:https://github.com/memononen/stylii

这是定义功能的代码片段:

} else if (this.mode == 'insert') {
        if (this.hitResult != null) {
            var location = this.hitResult.location;

            var values = location.curve.getValues();
            var isLinear = location.curve.isLinear();
            var parts = paper.Curve.subdivide(values, location.parameter);
            var left = parts[0];
            var right = parts[1];

            var x = left[6], y = left[7];
            var segment = new Segment(new paper.Point(x, y),
                !isLinear && new paper.Point(left[4] - x, left[5] - y),
                !isLinear && new paper.Point(right[2] - x, right[3] - y));

            var seg = this.hitResult.item.insert(location.index + 1, segment);

            if (!isLinear) {
                seg.previous.handleOut.set(left[2] - left[0], left[3] - left[1]);
                seg.next.handleIn.set(right[4] - right[6], right[5] - right[7]);
            }

            deselectAllPoints();
            seg.selected = true;

            this.hitResult = null;
        }

似乎当我尝试使用此功能时,我不断发现''未定义细分''在Chrome Canary中,但FF都不起作用。

Stylii使用的Paper版本:v0.9.15

1 个答案:

答案 0 :(得分:2)

我应该通过这样的方式在JS文件中预先定义段:

var Base = paper.Base,
Segment = paper.segment;