【问题标题】:Having trouble getting the modified rotational angle of fabic.js object retaliative to is original angle无法使 fabric.js 对象的修改后的旋转角度与原始角度相对应
【发布时间】:2015-01-04 13:59:20
【问题描述】:

无法让 fabic.js 对象的修改后旋转角度回复到原始角度/位置。

我正在使用 .getAngle(),如果对象旋转超过 360 度或来回旋转,我将无法将其转换回相对于原始位置/旋转的角度。

    var canvas = new fabric.Canvas('canvas');

     //global canvas setting	
    canvas.selection = false;
    canvas.setDimensions({
      width: 500,
      height: 310
    });
     //Canvas Objets	
     // create a rectangle with angle=45
    var rect = new fabric.Rect({
      left: 100,
      top: 100,
      fill: 'red',
      width: 40,
      height: 40,
      lockUniScaling: true,
      centeredRotation: true
    });

    canvas.add(rect);

     //Object modification event				
    canvas.on('object:modified', function(e) {
      var activeObject = e.target;
      document.getElementById('result').value = activeObject.getAngle();
    });

我已经设置了一个显示默认输出http://jsfiddle.net/1db5g7us/的小提琴

我假设需要对结果进行一些计算,但不知道是什么。

【问题讨论】:

    标签: javascript jquery math rotation fabricjs


    【解决方案1】:

    刚刚解决了这个问题,我需要做的就是使用模数运算符来获得相对于其原始位置的旋转,而不是总旋转角度。

                activeObject = activeObject%360;
    

    更新小提琴:http://jsfiddle.net/1db5g7us/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-03
      • 1970-01-01
      • 2012-01-23
      相关资源
      最近更新 更多