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

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

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

Регистрация: Mar 2007
Сообщений: 319
По умолчанию Как узнать ширину и высоту вписанного прямоугольника

Есть прямоугольник. У него угол вращения меняется. В него вписан другой прямоугольник с теми же пропорциями высоты и ширины. Как узнать высоту и ширину вписанного прямоугольника?
вот изображение как должно быть.

Пожалуйста подскажите =(
нашел только формулу вычисления максимального прямоугольника..
Код AS1/AS2:
w = qwe._width;
h = qwe._height;
a = 20* Math.PI / 180;
cos_a = Math.cos(a);
sin_a = Math.sin(a);
hypotH = (sin_a * w - cos_a * h) / (sin_a * sin_a - cos_a * cos_a);
hypotW = (w - sin_a * hypotH) / cos_a;
спасибо решил)
Код AS1/AS2:
w = 200;
h = 150;
i = 360;
function onEnterFrame()
{
	qwe._rotation = i;
	i2 = (i - 360) * -1;
	qwe._x = qwe._width / 2;
	qwe._y = qwe._height / 2;
	d = i2;
	a = d * Math.PI / 180;
	xx = h * w / (2 * Math.cos(a) * (h + w * Math.tan(a)));
	//xx = (-(w * w) / (2 * Math.sin(a) * (w * (1 / Math.tan(a)) + h)));
	yy = (xx * h / w);
	//qwe2._x = (qwe._width / 2) - xx;
	//qwe2._y = (qwe._height / 2) - yy;
	qwe2._x = (qwe._width / 2) + xx;
	qwe2._y = (qwe._height / 2) - yy;
	//qwe2._width = xx * (-2);
	//qwe2._height = yy * (-2);
	qwe2._width = xx * (2);
	qwe2._x = qwe2._x - qwe2._width;
	qwe2._height = yy * (2);
	--i;
	if (i < 315)
	{
		i = 360;
	}
}


Последний раз редактировалось Nooob; 09.07.2010 в 00:33.
Старый 08.07.2010, 05:52
rainbowrussia вне форума Посмотреть профиль Отправить личное сообщение для rainbowrussia Найти все сообщения от rainbowrussia
  № 2  
Ответить с цитированием
rainbowrussia
 
Аватар для rainbowrussia

Регистрация: Feb 2008
Сообщений: 560
Тут форум по решению олимпиадных задач?
Решите задачу математичеси, а мы (если возникнут трудности) поможем перевести это в AS2.

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

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

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


 


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


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