对象数据随机更改Fabric.js

艾赛尔

我得到了一段记录鼠标单击并在最后绘制一个多边形的代码。绘制多边形后,它将对坐标数组进行字符串化,以备将来处理。

我面临的问题是,记录和绘制的内容以及经过字符串化的内容是两组完全不同的数据。

例如

(index):169 Mouse click at 543 179
(index):171 Object {x: 543, y: 179} contains value, match as per mouse click
(index):169 Mouse click at 310 592
(index):171 Object {x: 310, y: 592} contains value, match as per mouse click
(index):169 Mouse click at 735 480
(index):171 Object {x: 735, y: 480} contains value, match as per mouse click
(index):246 [{"x":20.5,"y":-206.5},{"x":-212.5,"y":206.5},{"x":212.5,"y":94.5}] is stringified value

JS

    var coords = [];
    var canvas = new fabric.Canvas('canvas');

    canvas.on('mouse:down', function (options) {
                getCoordinates(options);
        });



    $('.drawReady').click(function(){
           drawMyPolygon(coords, 1);
           stringifyTheData();
    });

function drawMyPolygon(retData, tmpId) {
            var polygon = new fabric.Polygon(retData, {
                fill: 'purple',
                selectable: true,
                lockMovementX: true,
                lockMovementY: true,
                id: tmpId
            });

            canvas.add(polygon);

        };
    function getCoordinates(options) {
      var pointer = canvas.getPointer(event.e);
      coords.push({x: pointer.x, y: pointer.y});
    }

    function stringifyTheData() {
      var retVal = JSON.stringify(coords);
    }
安德里亚·博加齐(Andrea Bogazzi)

看起来您正在使用1.6.0之前的fabricJS版本,在1.5.0中,fabricjs修改了点数组,而现在没有。

该cange包括减去多边形的顶部,左侧和一半宽度的每个点,以使其原点居中。

更新或克隆点数组,然后再传递到多边形。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Fabric JS父子对象

来自分类Dev

Fabric JS 对象缩放

来自分类Dev

Fabric.js计数对象

来自分类Dev

当包含的对象更改大小时,Fabric.js自动调整大小的组控件

来自分类Dev

fabric.js 3.6-更改分组对象时,组的边界框不会更新

来自分类Dev

fabric.js 3.6-更改分组对象时,组的边界框不会更新

来自分类Dev

当包含的对象更改大小时,Fabric.js自动调整大小的组控件

来自分类Dev

我可以更改 Fabric.js 中选定的两个或多个对象的控制边框吗?

来自分类Dev

图像数据fabric.js

来自分类Dev

图像数据fabric.js

来自分类Dev

Fabric.js支持的文本更改事件

来自分类Dev

缩放fabric.js画布对象

来自分类Dev

使用mouse:Fabric JS:覆盖动画对象

来自分类Dev

Fabric.js:按名称获取对象

来自分类Dev

在Fabric.js中调整对象大小

来自分类Dev

Fabric.js动画对象/图像

来自分类Dev

在Fabric JS中取消选择对象

来自分类Dev

Fabric.js:按名称获取对象

来自分类Dev

Fabric JS右键单击选择对象

来自分类Dev

fabric.js:通过boundingbox移动对象

来自分类Dev

Fabric.js 从 toDataURL 中删除对象

来自分类Dev

fabric js:对象分组无法正常工作

来自分类Dev

Fabric js禁用对象取消选择

来自分类Dev

[JS]更改多级对象值

来自分类Dev

Fabric.js对象:已选中,未选中对象

来自分类Dev

Fabric.js-在选定对象下移动对象

来自分类Dev

Ember.js:通过原型和元数据动态更改Ember对象的“类”

来自分类Dev

在Fabric.js中更改文本字体

来自分类Dev

如何在画布上更改SVG颜色-Fabric.js