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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

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

Регистрация: Mar 2002
Адрес: Moscow
Сообщений: 30
По умолчанию Чем дальше тем медленнее

Привет,
Вобщем смысл такой, надо создать точки заданным цветом, и разместь их друг с другом, визуально это выглядит как прямоуголник с определенным цветом. Сразу прямоугольник рисовать НЕЛЬЗЯ. Собирается это все построчно, у меня все получилось, но начинается все бодренько, а заканчивает еле еле.
Вопрос - как избавится от замедления???
Прилагаю исходник и код функции, функция вызывается на след кадре, путем циркуляции между 3 и 4.
Код:
radiusT=1;		//длинна точки ( по умолчанию 1px)
xcor=62;		//координаты левого верхнего угла прямоугольника
ycor=16;		//
colorPixel="0x000000"
function kart(){
	if(a<=120){
		for(b=0; b<=169; b++){
			_root.lineStyle(radiusT, colorPixel, 100);
			_root.moveTo(xcor+a, ycor+b-1);
			_root.lineTo(xcor+a, ycor+b);
		}
		a++;		//создаем след строку по вертикали
	}
}
Вложения
Тип файла: zip primer.zip (3.2 Кб, 75 просмотров)

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

Регистрация: Jan 2002
Сообщений: 1,323
Так не пойдёт?

Должен заметить, что твою прорисовку линий по точкам никто не увидит, т.к. линия целиком рисуется в одном кадре; все точки отображаются одновременно после отработки всего скрипта кадра.
Вложения
Тип файла: zip primer_.zip (3.1 Кб, 65 просмотров)
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 08.03.2003, 00:01
Amortizator вне форума Посмотреть профиль Отправить личное сообщение для Amortizator Посетить домашнюю страницу Amortizator Найти все сообщения от Amortizator
  № 3  
Amortizator

Регистрация: Mar 2002
Адрес: Moscow
Сообщений: 30
Привет,
Нет не так, дело в том что пиксили имеют разные цвета, которые изначально мы не знаем.
Я понимаю, что прорисовку каждого пикселя я не увижу, попиксильно они должны отрисовыватся, потому что AS должен динамически забирать цвет из массива.
Хотя скорость мне понравилась... :-)))

Как нибудь по другому можно уменьшить замедление???

Старый 08.03.2003, 00:58
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 4  
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
Да нет, наверно.
Ну кроме всяких там незначительных ускорений типа за счёт рисования наиболее часто используемого цвета фоном или сведения рядом стоящих точек одного цвета в одну прямую или многоугольник.
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 08.03.2003, 11:06
Amortizator вне форума Посмотреть профиль Отправить личное сообщение для Amortizator Посетить домашнюю страницу Amortizator Найти все сообщения от Amortizator
  № 5  
Amortizator

Регистрация: Mar 2002
Адрес: Moscow
Сообщений: 30
Жаль... :-(
Такая мазовая вещь обламалась...
Ну все равно спасибо за ответ :-)

Старый 09.03.2003, 15:33
greyshaman вне форума Посмотреть профиль Отправить личное сообщение для greyshaman Найти все сообщения от greyshaman
  № 6  
greyshaman

Регистрация: Aug 2001
Адрес: vg
Сообщений: 352
В общемто причины уже объяснялись.

radiusT=1; //длинна точки ( по умолчанию 1px)
xcor=62; //координаты левого верхнего угла прямоугольника
ycor=16; //
function kart(){
if(a<=120){
_root.createEmptyMovieClip("mc"+a,a);
_root["mc"+a]._x=xcor+a;
with(_root["mc"+a]){
for(b=0; b<=169; b++){
colorPixel=random(256*256*256);
lineStyle(radiusT, colorPixel, 100);
moveTo(0, ycor+b-1);
lineTo(0, ycor+b);
}}
a++; //создаем след строку по вертикали
}
}
stop();

Старый 09.03.2003, 18:51
Amortizator вне форума Посмотреть профиль Отправить личное сообщение для Amortizator Посетить домашнюю страницу Amortizator Найти все сообщения от Amortizator
  № 7  
Amortizator

Регистрация: Mar 2002
Адрес: Moscow
Сообщений: 30
Спасибо greyshaman, то что надо!
А то я уже надежду потерял.

Старый 10.03.2003, 02:19
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 8  
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
Клёво

Старый 10.03.2003, 14:02
greyshaman вне форума Посмотреть профиль Отправить личное сообщение для greyshaman Найти все сообщения от greyshaman
  № 9  
greyshaman

Регистрация: Aug 2001
Адрес: vg
Сообщений: 352
Не радуйтесь.
Когда захочется динамики.
Вас продинамит обработка массива.

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

Регистрация: Aug 2001
Сообщений: 4,121
шаман хокку про экшнскрипт сочиняет :))

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

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

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


 


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


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