var image=new fabric.Image.fromURL('ship.png',function(img){
img.set(
(function(){
var left_c = 100,
top_c = 100,
width = 30,
height = 20,
angle = 40,
left = left_c - width/2*Math.cos(angle*Math.PI/180) + height/2*Math.sin(angle*Math.PI/180),
top = top_c - width/2*Math.sin(angle*Math.PI/180) - height/2*Math.cos(angle*Math.PI/180),
fill = "red"
return {
left: left,
top: top,
fill: fill,
width: width,
height: height,
angle: angle
}
})()
);
img.set("selectable", false);
canvas.add(img);
player=img;
});
в файле main.js 146 строка
немного изменил
left_c и top_c координаты центра фигуры
получается одна система координат в другой как на картинке,
зная координаты центра относительно обеих систем ( рамка черная и сама фигура )
и угол поворота нам надо найти смещение фигуры или же тоже самое, что найти смещение начала координат ( левый верхний угол фигуры ) получается типо уравнение с одним неизвестным.
чувствую фигово обьяснил, почитай пару раз, думаю поймешь,
если это тебе нужно:)