Я хочу перемещать линию влево и вправо, вращаясь вокруг своего центра.Вращать и перемещать линию в svg
С выпрямлением это очень просто, так как у вас есть x, y и высота и ширина. Хотя с линией я не могу понять это.
<line id='line' x1='20' y1='100' x2='180' y2='100' stroke-width='2' stroke='black' transform='rotate(410, 100, 100)'></line>
можно легко повернуть мою линию путем редактирования первого значения циклического сдвига
Теперь, как только я пошевелить линию вращения не работает должным образом больше и не вращается вокруг своего центра.
Кроме того, перемещение объекта связано с тем, что оно движется вниз, но оно должно идти прямо.
this.lineObject.setAttribute("x2", parseInt(this.lineObject.getAttribute("x2")) + step);
this.lineObject.setAttribute("x1", (parseInt(this.lineObject.getAttribute("x2")) - 160)); //160 is the length of the line.
this.lineObject.setAttribute("y2", (parseInt(this.lineObject.getAttribute("y2")) - step));
this.lineObject.setAttribute("y1", (parseInt(this.lineObject.getAttribute("y1")) - step));
Как я могу переместить свою линию прямо & поддерживать способность вращаться вокруг своего центра.
Вы имеете в виду 2 после 410? 100, 100 Я пробовал это, но он вылетел из экрана, и мне не удалось хорошо посмотреть, что произошло EDIT: На самом деле, я думаю, что, возможно, я ошибся в своей первой попытке. Я попробую это немного –
Моя функция перемещения не была точной, ваше решение верно –