Проблема при масштабировании с использованием Raphaël - PullRequest
0 голосов
/ 10 сентября 2010

Я создаю приложение, используя Raphaël.Я выполнил свою работу над векторами, теперь я хочу вот что: я хочу увеличить векторы.Я реализовал этот код на нем, но когда я уменьшаю элемент, его координаты также меняются вместе с ним, чего я не хочу.

Пожалуйста, помогите мне.Заранее спасибо.

Вот мой код:

    var raphael=Raphael(20,20,500,500)
    var dress=raphael.rect(50,30,200,300)
    dress.attr(
    {
        fill:"green",
        stroke:"black",
        opacity:"0.3"

    }
)
    var mdipoint=raphael.circle(150,175,2).attr(
    {
        fill:"black",
        stroke:"black"
    }
)
    dress.toFront()

dress.mousemove(function(){

        var c= dress.scale(0.5)
        //var x,y;
        xx=event.pageX
        yy=event.pageY
        document.getElementById("t1").value=xx
        document.getElementById("t2").value=yy



   //     var x,y;
     //   x=event.pageX-150
       // y=event.pageY-175
        //document.getElementById("t1").value=x
        //document.getElementById("t2").value=y
       // alert(x+","+y)



})

    dress.mousemove(function(event){

        var x,y;
        x=event.pageX-70
        y=event.pageY-50
        document.getElementById("t1").value=x
        document.getElementById("t2").value=y

    })
    dress.mouseout(function(){

        document.getElementById("t1").value=""
        document.getElementById("t2").value=""
    })

1 Ответ

1 голос
/ 07 октября 2010

Чтобы вернуть что-либо к исходному размеру, используйте .scale(1).Масштаб всегда соответствует исходному размеру, а не предыдущему размеру.

Чтобы уменьшить прямоугольник при наведении мыши, а затем вернуть его к исходному размеру с исходными угловыми координатами, используйте что-то вроде:

    dress.mouseover(function(){
          // Shrink rectangle
        dress.scale(0.5)
    });
    dress.mouseout(function(){
          // This will return it to original size
        dress.scale(1);
    })

упрощенный пример jsFiddle

(вам не нужно назначать операции масштабирования для переменных)

...