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

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

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

Регистрация: Oct 2006
Сообщений: 395
Arrow Наложение Movie Clip на три точки при помощи матриц... как?

Здравствуйте, есть такой вопрос: как можно наложить Movie Clip (форма - прямоугольный треугольник с рисунком, 100 х 100 рх) на 3 точки при помощи матриц? Сам разобраться не смог, в поиске ответ не нашел.

Вообще ответ есть на http://flash-ripper.com/archives/000620.php , но исходник пропал с сервера .
__________________
.:Make it better:.
www.gevanni.com

Старый 02.09.2007, 14:06
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
http://silin.fatal.ru/#2,9

Старый 03.09.2007, 17:15
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 3  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
Может кому будет полезно. Сам столкнулся недавно с задачей деформирования мувика по 3 точкам, общие формулы такие:
если заданы 3 точки мувиКлипа (скажем 3 угловых точки) и надо найти преобразование переводящее 3 точки мувиКлипа (p1,p2,p3) в другие произвольные 3 точки (p1',p2',p3') то матрица преобразования будет
вот такой


остается только прикрутить полученную матрицу к мувику
Код:
var m:Matrix=new Matrix(a,b,c,d,tx,ty);
mc.transform.matrix=m;


Последний раз редактировалось undefined; 03.09.2007 в 17:27.
Старый 03.09.2007, 18:04
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 4  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
не надо пугать людей такими формулами..
Код:
import flash.geom.*;
//растягиваем  TL,TR,BL углы мувика
function transf(mc:MovieClip,tl:Point,tr:Point,bl:Point){
	//размеры неискаженного мувика
	mc.transform.matrix=new Matrix();
	var w=mc._width;
	var h=mc._height;
	//параметры трансформации
	var sx=(tr.x - tl.x)/w;
	var skx=(bl.x - tl.x)/h;
	var sy=(bl.y - tl.y)/h;
	var sky=(tr.y - tl.y)/w;
	var tx=tl.x;
	var ty=tl.y;
	mc.transform.matrix=new Matrix(sx,sky,skx,sy,tx,ty);
}
//пример:
transf(mc,new Point(0,10),new Point(300,20),new Point(20,200));

Старый 03.09.2007, 18:42
undefined вне форума Посмотреть профиль Отправить личное сообщение для undefined Найти все сообщения от undefined
  № 5  
Ответить с цитированием
undefined

Регистрация: Oct 2006
Сообщений: 2,283
Цитата:
не надо пугать людей такими формулами.
хех, твой вариант частный случай моего, при условии что 3 точки мувика совпадают с его углами, а такое не всегда возможно, например при наложении текстур, текстурные координаты далеко не всегда образуют прямоугольный треугольник.
Насчет страха перед формулами - ну хз,вроде не такие они и страшные, их же запоминать не надо.

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

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

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


 


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


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