Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 02.04.2010, 13:52
random13 вне форума Посмотреть профиль Отправить личное сообщение для random13 Найти все сообщения от random13
  № 1  
Ответить с цитированием
random13
 
Аватар для random13

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
По умолчанию подскажите как масштабировать объект относительно точки

подскажите как масштабировать объект относительно какой либо точки?
__________________
Коллекционирую чужие ActionScript Блоги

Старый 02.04.2010, 13:59
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 2  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Кладете свой объект в спрайт и меняете внутри него координаты.
Код AS3:
var spr:Sprite = new Sprite();
spr.addChild(obj);
obj.x = obj.y = 100;
spr.scaleX = spr.scaleY = 1.5;

Старый 02.04.2010, 14:12
Jewelz вне форума Посмотреть профиль Отправить личное сообщение для Jewelz Найти все сообщения от Jewelz
  № 3  
Ответить с цитированием
Jewelz
 
Аватар для Jewelz

Регистрация: Aug 2008
Адрес: Рязань
Сообщений: 723
или используйте TweenLite

Код AS3:
import com.greensock.*; 
import com.greensock.easing.*;
import flash.geom.Point;
 
TweenLite.to(mc, 1, {transformAroundPoint:{point:new Point(244,299), scaleX:0.5, scaleY:0.5}, ease:Elastic.easeOut});
__________________
low +

Старый 02.04.2010, 14:22
random13 вне форума Посмотреть профиль Отправить личное сообщение для random13 Найти все сообщения от random13
  № 4  
Ответить с цитированием
random13
 
Аватар для random13

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
Цитата:
Сообщение от Jewelz Посмотреть сообщение
или используйте TweenLite

Код AS3:
import com.greensock.*; 
import com.greensock.easing.*;
import flash.geom.Point;
 
TweenLite.to(mc, 1, {transformAroundPoint:{point:new Point(244,299), scaleX:0.5, scaleY:0.5}, ease:Elastic.easeOut});
воо, это как раз и нуно, использую именно TweenLite, не видел у него этого свойства.
а какие координаты принимает transformAroundPoint, локальные или глобальные?
__________________
Коллекционирую чужие ActionScript Блоги

Старый 02.04.2010, 15:45
Vier вне форума Посмотреть профиль Отправить личное сообщение для Vier Посетить домашнюю страницу Vier Найти все сообщения от Vier
  № 5  
Ответить с цитированием
Vier

Регистрация: Sep 2004
Сообщений: 90
А в caurina.Tweener есть такая возможность? В доках не нашел.
Обычно сам считаю, куда нужно подвинуть мувик в процессе масштабирования, неудобно.

Старый 02.04.2010, 15:50
Art_133 вне форума Посмотреть профиль Отправить личное сообщение для Art_133 Посетить домашнюю страницу Art_133 Найти все сообщения от Art_133
  № 6  
Ответить с цитированием
Art_133
 
Аватар для Art_133

блогер
Регистрация: Feb 2007
Адрес: Москва
Сообщений: 538
Записей в блоге: 2
Отправить сообщение для Art_133 с помощью Skype™
В caurina.Tweener не видел тоже. Наверное нет...

Старый 02.04.2010, 16:45
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 7  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Очевидно же, что TweenLite, не говоря уже о TweenMax в сто тыщ раз круче Caurin'ы.

Старый 02.04.2010, 18:00
Jewelz вне форума Посмотреть профиль Отправить личное сообщение для Jewelz Найти все сообщения от Jewelz
  № 8  
Ответить с цитированием
Jewelz
 
Аватар для Jewelz

Регистрация: Aug 2008
Адрес: Рязань
Сообщений: 723
Цитата:
а какие координаты принимает transformAroundPoint, локальные или глобальные?
глобальные
__________________
low +

Старый 07.04.2010, 12:13
random13 вне форума Посмотреть профиль Отправить личное сообщение для random13 Найти все сообщения от random13
  № 9  
Ответить с цитированием
random13
 
Аватар для random13

Регистрация: Oct 2006
Адрес: Москва
Сообщений: 889
Сюдя по всему transformAroundPoint добавляется через плагин, причем платный

Добавлено через 41 минуту
еще есть какие нить предложения кроме Caurin'ы
__________________
Коллекционирую чужие ActionScript Блоги

Старый 08.04.2010, 18:29
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 10  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
Код AS3:
function scaleFromPoint(doInstance:DisplayObject, sx:Number, sy:Number, scalePoint:Point):void
{ 
	var m:Matrix = doInstance.transform.matrix;
 
	m.tx -= scalePoint.x;
	m.ty -= scalePoint.y;
	m.scale(sx, sy);
	m.tx += scalePoint.x;
	m.ty += scalePoint.y;
 
	doInstance.transform.matrix = m;
}
существуют и более извращенные варианты, например после изменения масштаба или позиции объекта сразу же пересчитывать координаты относительно нужной точки, либо написать класс Proxy для дисплей объекта и использовать его в твинерах или еще где вместо самого объекта. Какой из вариантов производительнее не проверял.
__________________
trace("Остановите Землю, я сойду!!!");

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:33.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:33.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.