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

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

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

Регистрация: Aug 2009
Сообщений: 17
По умолчанию Вращение картинки вокруг её центра

Подскажите как можно вращать картинку за её центр, ане за левый верхний угол.

Наверняка кто то с этим сталкивался

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

блогер
Регистрация: Nov 2007
Адрес: Almaty, Moscow
Сообщений: 396
Записей в блоге: 5
Отправить сообщение для Партизан с помощью Skype™
Нужно сместить центр картинки в контейнере на 0,0 и крутить контейнер. Это проще всего.

Старый 17.09.2009, 23:21
kolypaev вне форума Посмотреть профиль Отправить личное сообщение для kolypaev Найти все сообщения от kolypaev
  № 3  
Ответить с цитированием
kolypaev

Регистрация: Aug 2009
Сообщений: 17
да, я читал про этот способ, но не как не могу найти внятный рабочий пример.

Покажите как?

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

блогер
Регистрация: Nov 2007
Адрес: Almaty, Moscow
Сообщений: 396
Записей в блоге: 5
Отправить сообщение для Партизан с помощью Skype™
Код AS3:
var container:Sprite = new Sprite();
var shape:Shape = new Shape();
shape.graphics.beginFill(0xFF0000);
shape.graphics.drawRect(0,0,100,100);
shape.graphics.endFill();
container.addChild(shape)
 
// смещаем центр на 0,0
shape.x= -shape.width/2;
shape.y= -shape.height/2;
 
 
addChild(container)
container.x=container.y=150;
 
setInterval(rotate,50);
 
function rotate () {
	container.rotation++;
}

Старый 17.09.2009, 23:52
FlashRabbit вне форума Посмотреть профиль Отправить личное сообщение для FlashRabbit Найти все сообщения от FlashRabbit
  № 5  
Ответить с цитированием
FlashRabbit
 
Аватар для FlashRabbit

Регистрация: Jul 2009
Сообщений: 93
Вот так я думаю правильнее будет.
Код AS3:
var s:Sprite= new Sprite();
s.graphics.beginFill(0x00FF00);
s.graphics.drawRect(0,0,100,100);
s.graphics.endFill();
addChild(s)
 
rotateAroundPoint(s, 45, new Point(s.width * 0.5, s.height * 0.5));
 
function rotateAroundPoint(target:DisplayObject, angle:Number, transformationPoint:Point):void
{
	var m:Matrix = target.transform.matrix;
 
	transformationPoint= m.transformPoint(transformationPoint);
 
	m.tx -= transformationPoint.x;
	m.ty -= transformationPoint.y;
	m.rotate(angle * (Math.PI / 180));
	m.tx += transformationPoint.x;
	m.ty += transformationPoint.y;
	target.transform.matrix = m;
}


Последний раз редактировалось FlashRabbit; 17.09.2009 в 23:56.
Старый 17.09.2009, 23:55
kolypaev вне форума Посмотреть профиль Отправить личное сообщение для kolypaev Найти все сообщения от kolypaev
  № 6  
Ответить с цитированием
kolypaev

Регистрация: Aug 2009
Сообщений: 17
Спасибо. Вы отлично помогли !

Старый 18.09.2009, 00:56
Stargazer вне форума Посмотреть профиль Отправить личное сообщение для Stargazer Найти все сообщения от Stargazer
  № 7  
Ответить с цитированием
Stargazer

Регистрация: Nov 2008
Сообщений: 528
Также, если интересно, попробуйте взглянуть на класс MatrixTransformer.

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

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

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


 


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


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