![]() |
как можно устранить подтормаживание или ускорить выполнение скрипта
Доброго времени суток.
Сделал как положено, с применением метода инкапсуляции ( имеется ядро с набором функций и скин, который к ним обращается, когда загружается куда надо). В общем, проблема в том, что скин меняет цвет, когда юзер водит по цветовой палитре, всё бы ничего, но вот анимацию самой палитры компьютер уже не тянет и наблюдаются тормоза. При наведении юзером на одну из ячеек цветовой палитры, скниу передаётся комманда установить setTheme(bgCol, fgCol), а вот вся красота в том, что внутри этой функции выполняется вот что: Код:
RGBtoHSBFgCol = _root.playeCore.RGBtoHSB(fgCol);Функции RGBtoHSB и HSBtoRGB уже описывал вот в этом топике RBGtoHSB и HSBtoRGB только в этом топике они в виде прототипа... с названия playeCore - сразу ясно что это и есть ядро, в ктором содержаться все функции. Вот в чём вопрос: как-то возможно ускорить это всё, потому что если юзер быстро начинает водить по пресету, тоанимация пресета начинает тормозить, но цвет меняется ещё боле менее. Может если разбить вычесления для мувиков в 3-4 функции, хотя попробовал, не выходит, что-бы одновременно выполнялось несколько функций... |
Слишком много вычислений. Почему нельзя загнать результат вычислений в одну переменную и отвещать всем сразу?
И потом, писать полсотни одинаковых строк смахивает на садо-мазо. |
спасибо автору, он продлил мою жизнь
|
отсмеялся.
ты не называй это пожалуйста инкапсуляцией, у меня приступы начнутся. ты про циклы знаешь? for там и тд |
метод "упрощевания" через "циклизацию":
Код:
var bgArr:Array = new Array();50 одинаковых строк это сильно. Я видел до этого только 15 в серьезном проекте, отпаивали валерианкой. |
А здесь вообще нет никакой инкапсуляции.
|
Цитата:
|
мдя.....
Каждый объек получает получает разные цвета и coef для всех разный, цикли не прокатят. Насколько помню, инкапсуляция - это когда ни инкапсулированый объект ни ядро не имею ни малейшего понятия о схеме реализации кода как в ядре, так и в инкапсулированом объекте. Ув. Nirth Вы заметили хоть одно обращение на прямую к какой-то переменной из ядра? И вообще, лучше отложить все эти насмешки, а то уже был один топик, только со мной спорили __etc и iNilis. Я книги читал и хорошо помню что такое инкапсуляция. Я вам привел утрированный код, дабы отразить суть вопроса. |
Цитата:
Надо сокращать количество операций, причем серьезно. вот это: Код:
_root.playeCore.HSBtoRGB(...)Код:
HSBtoRGB(...) |
Цитата:
|
| Часовой пояс GMT +4, время: 16:32. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.