Показать сообщение отдельно
Старый 15.04.2009, 16:19
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 9  
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
Psycho Tiger, это не есть выход, помещать основной объект внутрь другого контейнера или перебирать всех детей и смещать их. Накладно очень будет в некоторых случаях....

Вообщем поковырявшись пришел к такому решению, может кому пригодится.
Код AS3:
// Масштаб относительно произвольной точки $point
public static function relativeScale($dob:DisplayObjectContainer, $scaleX:Number, $scaleY:Number, $point:Point):void
{ 
	var mtrx:Matrix=$dob.transform.matrix;
	mtrx.tx -= $point.x;
	mtrx.ty -= $point.y;
	mtrx.scale($scaleX, $scaleY);
	mtrx.tx += $point.x;
	mtrx.ty += $point.y;
	$dob.transform.matrix = mtrx;
}
 
// Поворот относительно произвольной точки $point
public static function relativeRotate($dob:DisplayObjectContainer, $angle:Number, $point:Point):void
{
      var mtrx:Matrix=$dob.transform.matrix;
      mtrx.tx -= $point.x;
      mtrx.ty -= $point.y;
      mtrx.rotate($angle * (Math.PI / 180));
      mtrx.tx += $point.x;
      mtrx.ty += $point.y;
      $dob.transform.matrix=mtrx;
}
Спасибо, Cybo, чуток бы пораньше
__________________
trace("Остановите Землю, я сойду!!!");


Последний раз редактировалось Mur4ik; 15.04.2009 в 16:22.