Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Флейм (http://www.flasher.ru/forum/forumdisplay.php?f=7)
-   -   [MX] вороны в тот день летели по небу не простые, а красные... (http://www.flasher.ru/forum/showthread.php?t=38562)

Nox Noctis 17.10.2002 23:39

[MX] вороны в тот день летели по небу не простые, а красные...
 
...примета была из самых дурных.

вот скажите мне,
я один такой тормоз,
чтобы до сих пор не заметить такую афигительную фичу:
Код:

a = createEmptyMovieClip("mc", 1);
a.lineStyle(100), a.lineTo(.15, 0);
a._alpha = 80;
trace(a._alpha);

в результате трейса будет выведено число 79.6875,
что ну никак не соответствует моим представлениям о прекрасном :)))

присваиваем свойству целочисленное значение, а получаем нечто с четырьмя знаками после точки...

путем усиленной работы мысли была выведена любопытная закономерность:
если присвоить альфе значения равные
100/1 = 100;
100/2 = 50;
100/4 = 25;
100/8 = 12.5;
100/16 = 6.25;
100/32 = 3.125;
100/64 = 1.5625;
100/128 = 0.78125
100/256 = 0.390625;
то есть кратные степеням двойки, то все работает ПРАВИЛЬНО =)

а вот если присвоить что угодно другое - то мы получим какую-то странную дробь...

Код:

a = createEmptyMovieClip("mc", 1);
a.lineStyle(100), a.lineTo(.15, 0);
this.onEnterFrame = function() {
        if (a._alpha) {
                a._alpha /= 2;
                trace(a._alpha);
        } else {
                trace("_____What a hell ?!_____");
                this.onEnterFrame = function() {
                        if (a._alpha<=100) {
                                a._alpha += 5;
                                trace(a._alpha);
                        } else {
                                delete this.onEnterFrame;
                        }
                };
        }
};

я охреневаю, дорогая редакция...

Nox Noctis 17.10.2002 23:55

да, я тут погорячился маленько...
еще одно уточнение:

к примеру:
_alpha = 100/4 + 100/8;
trace(_alpha);
результат вполне ожидаемый...

то есть значение альфы раскладывается на сумму дробей вида (100/2^i), где i меняется в пределах от 0 до 8

например, вместо _alpha=80 получаем
(100/2 = 50) + (100/4 = 25) + (100/32 = 3.125) + (100/64 = 1.5625) = 79.6875

но общей сути это не меняет =)
фак налицо =)

Смольный (Smolniy) 18.10.2002 20:07

Очень интересно.
Я знал что там все криво, но мат. зависимости не выводил.

Pietrovich 20.10.2002 15:01

может с моей стороны глупо показывать ЭТО Nox Noctis'y (уж должен бы знать парень, но видно не знает :) )

в хелпе ясно написано....


The following statements set the _alpha property of a movie clip named star to 29.6875% when the button is clicked (there are 128 levels of alpha mapped on a range of 0-100 ):

on(release) {
star._alpha = 30;
}


правда я совершенно случайно на это попал недавно.... думал и в альфе можно немного инфы о клипе хранить... обломался :(

а ведь нормальному человеку действительно в голову не прийдет рыть хелп про альфу, которая вроде должна быть проще пареной репы :)

Pietrovich 20.10.2002 15:04

глупый вопрос на последок.

а почему в флейме?

Pietrovich 20.10.2002 15:07

Цитата:

где i меняется в пределах от 0 до 8
от 0 до 7, мапят же не 256 а 128 сетепей прозрачности ;)

Nox Noctis 30.06.2003 17:23

в экшнскрпте только что эти же грабли сработали :)

ответ на прошлогоднее сообщение Петровича:
_alpha = 100/256; работает.
так что уровней альфы как минимум 129 :)

Nox Noctis 30.06.2003 18:24

http://www.flasher.ru/forum/showthre...930#post297136

DeliMIter 01.07.2003 15:36

Когда у меня положенный на сцену ПУСТОЙ клип, в котором потом рисовалась всякая фигня, оказался с _xscale'ом в 99 с чем-то процентов... Это сейчас мне смешно.

Nox Noctis 01.07.2003 15:40

а ты читал пользовательское соглашение макромедии, когда флэш устанавливал ? :)

там про некрофилов отдельно сказано... :)))


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

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