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

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

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

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
держи, но к Дембицкому все равно сходи..
Вложения
Тип файла: zip path_sin.zip (7.8 Кб, 82 просмотров)

Старый 03.02.2006, 22:16
veterok4 вне форума Посмотреть профиль Отправить личное сообщение для veterok4 Посетить домашнюю страницу veterok4 Найти все сообщения от veterok4
  № 22  
Ответить с цитированием
veterok4
 
Аватар для veterok4

Регистрация: Aug 2005
Адрес: живу в Миловке
Сообщений: 101
ТЕМА не ЗАКРЫТА!
Внедрил патч Дембицкого... до конца правда, ещё не разобрался... однако уже наблюдаю не желательный эффет: к сожалению синусоида идёт по затухающей...см скрин ==>

Может какие поправки с приращением внести?
Изображения
Тип файла: jpg глюк.jpg (10.3 Кб, 45 просмотров)
__________________
Тссс... не вспугните!


Последний раз редактировалось veterok4; 04.02.2006 в 16:53. Причина: Тема не закрыта!
Старый 04.02.2006, 17:08
veterok4 вне форума Посмотреть профиль Отправить личное сообщение для veterok4 Посетить домашнюю страницу veterok4 Найти все сообщения от veterok4
  № 23  
Ответить с цитированием
veterok4
 
Аватар для veterok4

Регистрация: Aug 2005
Адрес: живу в Миловке
Сообщений: 101
По умолчанию Ещё поправка!

Цитата:
Сообщение от veterok4
ТЕМА не ЗАКРЫТА!
к сожалению синусоида идёт по затухающей...см скрин ==>
И ещё один минус (см скрин) при задании толщины линии более 10 ps, наблюдается ещё один не желательный эффект: рваные края и проплеш в центре линии.
Изображения
Тип файла: jpg глюк2.jpg (15.2 Кб, 44 просмотров)
__________________
Тссс... не вспугните!


Последний раз редактировалось veterok4; 04.02.2006 в 17:09. Причина: поправка
Старый 04.02.2006, 17:44
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 24  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
дада, ошибка накапливается, но ты не грусти.., поставь туда синус
Код:
ampl=10;
phase=10;
for(var i=0;i<path.path_length;i++){
	p=path.getPoint(i);
	plotter._y=ampl*Math.sin(Math.PI*i/phase);
	curve._rotation=p._rotation;
	curve._x=p._x;
	curve._y=p._y;
	var gp = {x:plotter._x, y:plotter._y};
	curve.localToGlobal(gp);
	lineTo(gp.x,gp.y);
};
ps про второй скрин не понял: зачем такую линию синусоидой рисовать, рисуй по линии и не будет рваных краев..


Последний раз редактировалось silin; 04.02.2006 в 17:52.
Старый 04.02.2006, 22:24
veterok4 вне форума Посмотреть профиль Отправить личное сообщение для veterok4 Посетить домашнюю страницу veterok4 Найти все сообщения от veterok4
  № 25  
Ответить с цитированием
veterok4
 
Аватар для veterok4

Регистрация: Aug 2005
Адрес: живу в Миловке
Сообщений: 101
По умолчанию хммм....

Цитата:
Сообщение от silin
ps про второй скрин не понял: зачем такую линию синусоидой рисовать, рисуй по линии и не будет рваных краев...
Это я показал конечно утрированную линию... но и при 5 ps уже появляются рваные края - хотелось чистоты эксперимента...

А теперь новая трабла (сокращённый мой код со встроенным патчем Дембицкого):
Код:
	with (Math) {	
		_root.createEmptyMovieClip("myClip"+dd,dd); //создаю клипак
		_root["myClip"+dd]._x = 285;//перемещаю начало координат клипа...
		_root["myClip"+dd]._y = 275;//в центр рабочего стола
		_root.createEmptyMovieClip("curve", -1000+dd);
		var plotter=curve.createEmptyMovieClip("plotter", -1000+dd);

		//hexV = parseInt(colorIn,16);//указываю на 16-ную систему переменной...
		//eyeColor=new Color("myClip"+dd);//цвета, в ново-созданном объекте
		//eyeColor.setRGB(hexV);
		var radians = (ug.text*PI)/180;//перевожу  градусы в радианы
		var rad1 = sqrt(pow(x, 2)+pow(y, 2));//нахождение радиуса для...
		var rad2 = sqrt(pow(q, 2)+pow(w, 2));//каждой точки
		var rad3 = sqrt(pow(e, 2)+pow(r, 2));
		
		if (x<0&&y>0) {//определяю в какой четверти лежит точка и исходя из этого...
			var ugol1 = PI/2+(PI/2-asin(abs(y)/rad1));//определяю угол
		} else if (x<0&&y<0) {
			ugol1 = asin(abs(y)/rad1)+PI;
		} else if (x>0&&y<0) {
			ugol1 = 3*PI/2+(PI/2-asin(abs(y)/rad1));
		}else{ 
			ugol1 = asin(y/rad1);
		}
		
		if (q<0&&w>0) {
			var ugol2 = PI/2+(PI/2-asin(abs(w)/rad2));
		} else if (q<0&&w<0) {
			ugol2 = asin(abs(w)/rad2)+PI;
		} else if (q>0&&w<0) {
			ugol2 = 3*PI/2+(PI/2-asin(abs(w)/rad2));
		} else{
			ugol2 = asin(w/rad2);
		}		
		
		if (e<0&&r>0) {
			var ugol3 = PI/2+(PI/2-asin(abs(r)/rad3));
		} else if (e<0&&r<0) {
			ugol3 = asin(abs(r)/rad3)+PI;
		} else if (e>0&&r<0) {
			ugol3 = 3*PI/2+(PI/2-asin(abs(r)/rad3));
		} else{
			ugol3 = asin(r/rad3);
		}
				
		var tt = 360/ug.text;//угол поворота
		for (i=0; i<tt; i++) {//цикл прорисовки
			var u1 = ugol1+radians;//нахожу угол приращения для кождой точки
			var u2 = ugol2+radians;
			var u3 = ugol3+radians;
			x2 = rad1*cos(u1);//переназначаю координаты точек
			y2 = rad1*sin(u1);
			q2 = rad2*cos(u2);
			w2 = rad2*sin(u2);
			e2 = rad3*cos(u3);
			r2 = rad3*sin(u3);
			var sSomeString : String = _root.czve.inValue;
			var nSomeNumber : Number = Number( "0x" + sSomeString ); // Number ( ... ) - есть каст.
			_root['myClip'+dd].lineStyle(tip.text, nSomeNumber, alfa.text);//задаю параметры линии
			_root['myClip'+dd].moveTo(x2, y2);//ставим на первый анкер 
			_root['myClip'+dd].curveTo(q2, w2, e2, r2);//рисуем через контрольную до второго анкера

			var path = new Path(x2+285, y2+275, q2+285, w2+275, e2+285, r2+275);//© Ivan Dembicki, http://www.dembicki.org
			/////////синусода по кривой/////////////////////////
			p=path.getPoint(0);
			moveTo(p._x,p._y);
			lineStyle(tip.text, nSomeNumber, alfa.text);
			curve._rotation=p._rotation;
			ampl=10;//амплитуда
			phase=10;
			for(var i=0;i<path.path_length;i++){
				p=path.getPoint(i);
				plotter._y=ampl*sin(PI*i/phase);
				curve._rotation=p._rotation;
				curve._x=p._x;
				curve._y=p._y;
				var gp = {x:plotter._x, y:plotter._y};
				curve.localToGlobal(gp);
				lineTo(gp.x,gp.y);
				trace("myClip"+dd);//слежу за количеством итераций
				dd=dd+1;//приращиваю переменную глубины мувика
};
			ugol1 = u1;//меняем переменные углов (приращение)
			ugol2 = u2;
			ugol3 = u3;
		}
	schet = schet+1;//приращение счётчика истории создания клипов
	}
Дело в том, что флеш производит чуть более 21000 итераций и ...виснет! А всё потому что в цикле патча Дембицкого происходит НУ ОЧЕНЬ много поворотов мувика... Нельзя ли хоть как то сократить их? Или поискать альтернативный путь?
Изображения
Тип файла: jpg глюк 3.jpg (15.5 Кб, 45 просмотров)
__________________
Тссс... не вспугните!


Последний раз редактировалось veterok4; 04.02.2006 в 22:25. Причина: ошибка
Старый 04.02.2006, 22:43
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 26  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
Цитата:
.. не забывайте о специфике материала, с которым работаете. многие беды флэшовых работ происходят от того, что люди делают в них вещи неспецифичными для флэша способами.
Цитата:
Вообще флэш не для таких вещей которые делаешь ты, для этого бы больше подошла Java
я, пожалуй, присоединюсь : искать 'альтернативный путь' в теперешнем флеше нет резона, не заточен он под такие вещи..
теоретичски это интерсно, но для практики(флешевой) -null
зы: в 9-ом плеере обещают производительность (арифметики по крайней мере) поднять в разы (а то и порядки), может тогда.., поглядим..

Старый 04.02.2006, 22:56
veterok4 вне форума Посмотреть профиль Отправить личное сообщение для veterok4 Посетить домашнюю страницу veterok4 Найти все сообщения от veterok4
  № 27  
Ответить с цитированием
veterok4
 
Аватар для veterok4

Регистрация: Aug 2005
Адрес: живу в Миловке
Сообщений: 101
Ухожу "пробивать лбом стену"...(
__________________
Тссс... не вспугните!

Старый 06.02.2006, 07:41
Usnul вне форума Посмотреть профиль Отправить личное сообщение для Usnul Посетить домашнюю страницу Usnul Найти все сообщения от Usnul
  № 28  
Ответить с цитированием
Usnul
 
Аватар для Usnul

Регистрация: Mar 2001
Адрес: во сне
Сообщений: 2,701
Отправить сообщение для Usnul с помощью ICQ
можно с диференциалом это все решить достаточно легко... находишь этот... как его по русски то? gradient короче, потом находишь синус, поворачиваешь точку на вычесленный угол и так далее пока не дойдешь до начала. Могу почиркать если кого интересует...
__________________
I'm only happy when it rains.
Waka Laka

Старый 06.02.2006, 21:21
veterok4 вне форума Посмотреть профиль Отправить личное сообщение для veterok4 Посетить домашнюю страницу veterok4 Найти все сообщения от veterok4
  № 29  
Ответить с цитированием
veterok4
 
Аватар для veterok4

Регистрация: Aug 2005
Адрес: живу в Миловке
Сообщений: 101
По умолчанию ОЙ!

Цитата:
Сообщение от Usnul
Могу почиркать если кого интересует...
ОЧЕНЬ, очень интересует! Ты просто не представляешь как будет тебе благодарно будущее поколение флешеров-дезигнеров-полиграфистов!
__________________
Тссс... не вспугните!

Старый 06.02.2006, 21:25
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 30  
Ответить с цитированием
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
Сообщение от Usnul
находишь этот... как его по русски то? gradient короче, потом находишь синус, поворачиваешь точку на вычесленный угол и так далее пока не дойдешь до начала
градиент по-русски так и называется. :)

очень любопытно, что ты имеешь в виду.

зы: если будешь делать, учти, тебе придется объяснить как это работает :)

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

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

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


 


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


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