PDA

Просмотр полной версии : Как для Shape обновить координаты?


alien54
30.08.2007, 01:33
Есть Shape, перетаскиваю ее в другое место, а она возвращается обратно, что делать?

baron27
30.08.2007, 12:34
чем перетаскиваешь?

alien54
30.08.2007, 19:32
я рисую в канвасе объект, потом делаю его трансформацию, например при смещении его translate, все ок, далее когда пытаюсь применить matrix transform он возвращается в исходное положение, как был до перемещения.

alien54
30.08.2007, 19:57
event.updateAfterEvent(); не помогает

silin
30.08.2007, 20:35
пример нужен..
догадаться что ты в действительности делаешь тяжело..

alien54
30.08.2007, 20:40
private function setScale(bounds:Rectangle):void {
var matrixMy:Matrix = new Matrix();
var oldX:Number=bounds.x+parentApplication.pathDelClip.width/2;
var oldY:Number=bounds.y+parentApplication.pathDelClip.height/2;
matrixMy.translate(-oldX,-oldY);
if((bounds.width>50)&&(bounds.height>50)&&(bounds.x>0)&&(bounds.y>0)&&(bounds.x+bounds.width<583)&&(bounds.y+bounds.height<397)){
matrixMy.scale((this.mouseX/offSetXO),(this.mouseY/offSetYO));
matrixMy.translate(oldX,oldY);
parentApplication.pathDelClip.transform.matrix=matrixMy;
setRezMask(parentApplication.pathDelClip.getBounds(parentApplication.draw_canvas));
endPoint(parentApplication.pathDelClip.getBounds(parentApplication.draw_canvas));
}else{
flagStartDrag=false;
}
}

вот так я трансформирую, тоесть питаюсь изменить размеры шейпа...

silin
30.08.2007, 20:54
попробуй трансформировать именно матрицу твоего объекта, а не вновь созданную:
var matrixMy:Matrix = parentApplication.pathDelClip.transform.matrix;//new Matrix();

зы: неужели трудно дать пример локализованной проблемы, который можно запустить и потестить, при чем здесь setRezMask, endPoint.., что за parentApplication.pathDelClip и пр.
несерьезно ждать уважительного отношения к своей проблеме, даже не потрудившись нормально ее сформулировать..

alien54
30.08.2007, 21:14
просто там много кода, и хотелось узнать направление куда двигатся...

miramax
30.08.2007, 23:28
ты чего, прямо в graphics канваса это рисуешь ??

alien54
01.09.2007, 12:05
...нет, канвас внешний контейнер.
Вариант с трансформацией собственной матрицы с объектами помог.
Спасибо.