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

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

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

Регистрация: Nov 2003
Сообщений: 256
Thumbs up [любопытным]исходники от D-MANa

Вот решил повыкладывать всякие свои скрипты, написанные на досуге. Математика, физика, и всякая мелочь. Они не столько профессиональны в смысле кодинга, сколько образовательны в смысле алгоритма решения.
Ну вы смотрите, читайте, задавайте вопросы, выкладвайте мнения - нада это все / не надо.

Для начала, помнится была тема насчет альтернативы localToGlobal, globalToLocal.
Вот, написал ручками (работает несколько точнее ):

Название: localToGlobal, globalToLocal alternative
Тема: метематика, преобразование координат
Код:
MovieClip.prototype.thisToParent = function(my_obj: Object){
	var nx, ny, x, y;
	x = my_obj.x;
	y = my_obj.y;
	nx = x;
	ny = y;
	ang = (this._rotation) * Math.PI /180;
	nx = nx * this._xscale / 100;
	ny = ny * this._yscale / 100;
	x = nx;
	y = ny;
	nx = x * Math.cos(ang) - y * Math.sin(ang);
	ny = x * Math.sin(ang) + y * Math.cos(ang);
	nx = nx + this._x;
	ny = ny + this._y;
	my_obj.x = nx;
	my_obj.y = ny;
	
}
MovieClip.prototype.newLocalToGlobal = function(my_obj: Object){
	var c, num, nar;
	nar = this._target.toString().split("/");
	num = nar.length;
	for(c=1;c<=num-1;c++){
		pth = "_root."+nar.slice(1,num - c+1).join(".");
		eval(pth).thisToParent(my_obj);
	}
}
MovieClip.prototype.thisToChild = function(my_obj: Object){
	var nx, ny, x, y;
	x = my_obj.x;
	y = my_obj.y;
	nx = x;
	ny = y;
	ang = (-this._rotation) * Math.PI /180;
	nx = nx - this._x;
	ny = ny - this._y;
	x = nx;
	y = ny;
	nx = x * Math.cos(ang) - y * Math.sin(ang);
	ny = x * Math.sin(ang) + y * Math.cos(ang);
	nx = nx / this._xscale * 100;
	ny = ny / this._yscale * 100;
	my_obj.x = nx;
	my_obj.y = ny;
	
}
MovieClip.prototype.newGlobalToLocal = function(my_obj: Object){
	var c, num, nar;
	
	nar = this._target.toString().split("/");
	num = nar.length;
	for(c=1;c<=num-1;c++){
		pth = "_root."+nar.slice(1,c+1).join(".");
		eval(pth).thisToChild(my_obj);
	}

}
Здесь присутвуют 4 функции: newLocalToGlobal(), newGlobalToLocal() - это понятно. Использовать как оригиналы.
thisToChild(), thisToParent() - поуровневое преобразование от родителя к ребенку и от ребенка к родителю.
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится.

Anime Must Die!


Последний раз редактировалось Ales; 30.07.2005 в 23:19.
Старый 28.07.2005, 22:07
mediaman вне форума Посмотреть профиль Отправить личное сообщение для mediaman Найти все сообщения от mediaman
  № 2  
Ответить с цитированием
mediaman
Moderator
 
Аватар для mediaman

модератор форума
Регистрация: Jun 2002
Адрес: Москва
Сообщений: 594
2 D-man попробуй разглядеть свой код

успхв
Вложения
Тип файла: zip d-man_xxx.zip (5.3 Кб, 138 просмотров)
__________________
Все течет, все изменя.... .

Старый 28.07.2005, 22:31
cyraxchel вне форума Посмотреть профиль Отправить личное сообщение для cyraxchel Найти все сообщения от cyraxchel
  № 3  
Ответить с цитированием
cyraxchel
"Аинслей"
 
Аватар для cyraxchel

Регистрация: Apr 2003
Адрес: Russia, Chelyabinsk
Сообщений: 359
Отправить сообщение для cyraxchel с помощью ICQ
Интересный штука. А не приходилось писать сктипт для программного рисования окружности через lineTo? Если приходилось, скинь пример посмотреть.. я сейчас делаю похожие вещи, размышляю, как это лучше реализовать...
__________________
Мы не съедобны.

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

Регистрация: Nov 2003
Сообщений: 256
What's wrong, man?
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится.

Anime Must Die!

Старый 28.07.2005, 22:48
mediaman вне форума Посмотреть профиль Отправить личное сообщение для mediaman Найти все сообщения от mediaman
  № 5  
Ответить с цитированием
mediaman
Moderator
 
Аватар для mediaman

модератор форума
Регистрация: Jun 2002
Адрес: Москва
Сообщений: 594
2 D-MAN та нее, все нормалек, ты просто попробуй доберись до своего кода во флешке, которая с "_xxx", у меня не получилось )
__________________
Все течет, все изменя.... .

Старый 28.07.2005, 22:59
D-MAN вне форума Посмотреть профиль Отправить личное сообщение для D-MAN Найти все сообщения от D-MAN
  № 6  
Ответить с цитированием
D-MAN
 
Аватар для D-MAN

Регистрация: Nov 2003
Сообщений: 256
2cyraxchel
Приходилось 2 дня назад. Тока там у меня задача пообщее: построение по трем точкам дуги окружности. Можт скоро выложу
Рисование проще всего сделать циклом.
Но лучше у Iv'а глянь - у него через curveTo организовано.
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится.

Anime Must Die!

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

Регистрация: Jun 2005
Сообщений: 262
Цитата:
сктипт для программного рисования окружности через lineTo
супер-мега-простой способ
Код:
MovieClip.prototype.drawCircle = function(x, y, radius, cWidth, innerColor, outerColor) {
	this.lineStyle(radius, outerColor, 100);
	this.moveTo(x, y);
	this.lineTo(x, y+0.15);
	this.lineStyle(radius-cWidth, innerColor, 100);
	this.moveTo(x, y);
	this.lineTo(x, y+0.15);
};

Старый 28.07.2005, 23:13
D-MAN вне форума Посмотреть профиль Отправить личное сообщение для D-MAN Найти все сообщения от D-MAN
  № 8  
Ответить с цитированием
D-MAN
 
Аватар для D-MAN

Регистрация: Nov 2003
Сообщений: 256
браво!
__________________
Программирование на Flash подобно шаманству, гаданию на кофейной гуще - никогда не знаешь, что получится.

Anime Must Die!

Старый 28.07.2005, 23:29
cyraxchel вне форума Посмотреть профиль Отправить личное сообщение для cyraxchel Найти все сообщения от cyraxchel
  № 9  
Ответить с цитированием
cyraxchel
"Аинслей"
 
Аватар для cyraxchel

Регистрация: Apr 2003
Адрес: Russia, Chelyabinsk
Сообщений: 359
Отправить сообщение для cyraxchel с помощью ICQ
2Dvaman
Прикольный выход. Но он не подходит мне, т.к. в моем случае мне нужна окружность без заливки. А в этой ванианте это нереально..
__________________
Мы не съедобны.

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

Регистрация: Jun 2005
Сообщений: 262
я могу нарисовать по трем точкам только квадратичную кривую, дугу надо подумать, не пробовал. полную окружность где-то делал, найду выложу.

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

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

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


 


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


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