|
Пиксельная графика.
Артикул | Наименование | Цена, от | TurnPix | | Корректирует точку (H_16, V_16) =(EAX, EBX) для поворота на угол (10000=Pi) с центром Hr_16, Vr_16 | TurnPix, Hr_16, Vr_16, H_16, V_16, Alf1 | Пересчитывает входящие координаты. | | TurnBMP | | Поворачивает в центре картинку Arr2 на угол -(10000=Pi) и накладывает в центр картинки Arr1. | TurnBMP, Arr1, Arr2, Alf1 | На основе функции TurnPix. Неэффективна для переноса маленьких картинок на большую - проходит по циклу весь приемник Arr1. Поворачивает на положительный угол по часовой стрелке (в обратную сторону) | | ScalePointRGB | | Корректирует точку (H_16, V_16) =(EAX, EBX) для масштабирования ScH16, ScV16 в центре Hr_16, Vr_16 | ScalePointRGB, Hr_16, Vr_16, H_16, V_16, ScH16, ScV16 | | | SmoothRGB | | Сглаживает текущий пиксел (Hr1, Vr1)[16,16] с соседними, JZ ошибка. Регистры не сохраняются. | SmoothRGB, Arr1, Hr1, Vr1 | На основе функции F128plusNxTransRGB (вместо F128plusNxRGB) | | SmoothRGBZ | | Сглаживает текущий пиксел (Hr1, Vr1) с соседними, серую полосу отрезаем, JZ ошибка. Регистры не сохраняются. | SmoothRGBZ, Arr1, Hr1, Vr1 | На основе функций TakeRGB и F128plusNxRGB. | | SmoothWr | | Записывает пиксел RGB1(Hr1, Vr1)[16.16], сглаживая с соседними, JZ ошибка. | SmoothWr, Arr1, RGB1, Hr1, Vr1 | Работает без искажений при линейной записи. При произвольном доступе возможна паразитная сетка. | | SmoothShadowWr | | Записывает тень пикселя RGB1(Hr1, Vr1) с прозрачностью Trans16, сглаживая с соседними, JZ ошибка. | SmoothShadowWr Arr1, RGB1, Trans16, Hr1, Vr1 | Модификация функции SmoothWr. | | TakeRGB | | EAX = текущий пиксел (Hr1, Vr1), JNZ-код ошибки | TakeRGB, Arr1, Hr1, Vr1 | | | TakeAddrRGB | | EAX = адрес пикселя (Hr16, Vr16), JNZ-код ошибки. | TakeAddrRGB, Arr1, Hr16, Vr16 | На основе функций TakeRGB, но округляет координаты [16.16] после запятой не отбрасывая дробную часть, а прибавляя 1/2(7FFF) . | | WrRGB | | Пишет пиксел RGB1 (Hr1, Vr1)[16.16], JNZ-код ошибки | WrRGB, Arr1, RGB1, Hr1, Vr1 | Требуется предварительная инициализация картинки функцией ResPnArr. | | PutScaleBMP | | Наложение центра картинки Arr1 с масштабом Scl16[16.16] на точку H016, V016 [16.16] картинки Arr2. | PutScaleBMP, Arr2, Arr1, H016, V016, Scl16 | На основе функции ScalePix. | | PutRGB | | Накладывает полупрозрачный пиксел RGB1 на Arr1(Hr1, Vr1), JNZ-код ошибки | PutRGB, RGB1,Trans1,Arr1,Hr1,Vr1 | | | PutRGB16 | | Накладывает полупрозрачный пиксел RGB1 на Arr1(Hr1, Vr1), JNZ-код ошибки | PutRGB16, RGB1, Trans16, Arr1, Hr1, Vr1 | | | PutShadow16 | | Накладывает полупрозрачную тень пикселя RGB1 с прозрачностью Trans16 на Arr1(Hr1, Vr1), JNZ-код ошибки. | PutShadow16 RGB1, Trans16, Arr1, Hr1, Vr1 | На основе функции ShadowRGB16. В отличие от PutRGB16, накладывает тень от пикселя. | | RGBAddNum | | Сложение (вычитание) пикселя RGB1 и числа Num1 с ограничением 0-FF. Прозрачность не изменяем. Портит все регистры. | RGBAddNum, RGB1, Num1 | | | AddARGB | | Складывает 2 RGB числа с ограничением свыше 0FFh. Прозрачность суммируется, результат - в EAX, портит EAX. | AddARGB, RGB1, RGB2 | | | AddRGB | | Складывает 2 RGB числа с ограничением свыше 0FFh. Прозрачность RGB1, результат - в EAX, портит EAX. | AddARGB, RGB1, RGB2 | | | TransRGB | | Накладывает полупрозрачное RGB2 на RGB1, результат - в EAX | TransRGB, RGB1, RGB2 | На основе функций MulRGB16L, AddARGB. | | RGBTransRGB | | Накладывает RGB2 с прозрачностью Tr16 (0-010000h) на RGB1, сохраняется исходная прозрачность RGB2, результат - в EAX. Регистры не сохраняет. | RGBTransRGB, RGB1, RGB2, Tr16 | На основе 2 вызовов функции MulRGB16. | | RGBtoRGB | | Накладывает полупрозрачный RGB2 с дополнительной прозрачностью Trans16 (0-1.0000h) на RGB1 с сохранением его прозрачности, результат - в EAX. | RGBtoRGB, RGB1, RGB2, Trans16 | На основе 3 вызовов функции MulRGB16L. | | ShadowRGB | | Накладывает тень от пикселя в EAX с прозрачностью Trans1 на пиксель RGB1: Выход: EAX-затененный пиксель RGB1. | ShadowRGB RGB1, Trans1 | На основе функции MulTrans, MulRGB. | | ShadowRGB16 | | Накладывает тень от пикселя в EAX с прозрачностью Trans16 на пиксель RGB1: Выход: EAX-затененный пиксель RGB1. | ShadowRGB RGB1, Trans16 | На основе функции MulTrans16, MulRGB. | | MixARGB | | Смешивает 2 пикселя с учетом прозрачности в пропорции Trans16 (0-1.0000h), результат - в EAX. Портит EAX, EBX. | MixARGB, RGB1, RGB2, Trans16 | На основе 2 вызовов функции MulRGB16L, затем - AddARGB. При Trans16=<0 результат - только RGB1, Trans16>=10000 - только RGB2. | | RemovRGB | | Мягкая замена цветов в RGB с RGB1 на RGB2, результат - в EAX | RemovRGB, RGB0, RGB1, RGB2 | На основе функции MixARGB. Не доделана! | | ColOnRGB | | Выделение чистого цвета: увеличение насыщенности цвета (EAX-EAX) в степени Satr1 (1,2,..) и яркости до максимума. Яркость исходного белого в EBX (близко к системе HSL). Портит EAX, EBX. | ColOnRGB, Satr1 | | | HSLFromRGB | | Разделение цвета (EAX-EAX) и яркости белого в EBX (близко к системе HSL), увеличение насыщенности цвета в Satr1 раз (1,2,3..). Портит все регистры. | HSLFromRGB, Satr1 | Смысл функции - преобразовать цвет в систему HSL с небольшим остатком в "нулевом" цвете, для его последующего ненулевого умножения при цветокоррекции. | | SaturRGB | | Увеличение насыщенности цвета пикселя EAX в 1/CoRGB16 [16.16]. Портит все регистры. | SaturRGB, CoRGB16 | | | DeltaRGB | | Вычитает (RGB2-RGB1+255)/2 числа, результат -DeltaRGB в EAX | DeltaRGB, RGB2, RGB1 | | | AddDltRGB | | Складывает RGB+DeltaRGB числа, результат - в EAX | AddDltRGB, RGB1, DltRGB | | | MulDltRGB | | Умножает DeltaRGB число на CoRGB(X1=7F), результат -DeltaRGB в EAX | MulDltRGB, DltRGB, CoRGB | | | ModulRGB | | Сравнивает EAX-RGB1, результат: EAX сохр., EBX=сумма абсолютных разностей (0-1ff). Прозрачность не учитывается. Портит EAX, EBX. | ModulRGB, RGB1 | | | CompRGB | | Сравнивает яркость пикселей EAX-RGB1, результат: EAX сохр., EBX=сумма разностей. Портит EAX, EBX. | CompRGB, RGB1 | | | IdentRGB | | Попарно делит цвета пикселей и выдает в EBX максимальное значение из трех проходов [16.16] >= 10000h. Точность темных цветов при уровнях ниже 16 резко занижается до 10000h. Портит EBX. | IdentRGB, RGB1, RGB2 | Арифметическо_лигический цикл из трех проходов. | | DepthCmpRGB | | Углубленное сравнение пикселей. EAX -RGB1, EBX [16.16] различие пикселей. | DepthCmpRGB, RGB1, RGB2 | | | AnalRGB | | Анализирует пиксель: EAX=номер цвета[0N1N2h], EBX=32*Макс/Средн (оттенок), ECX= Мин/Макс (контраст): [16.16]:0-10000h, EDX=Макс (Яркость). | AnalRGB, RGB1 | | | ModVarRGB | | Сравнивает RGB1 с пикселями в строке Var1, при разнице модуля меньше Dat32 дает признак JL. В EAX - первый похожий пиксель. | ModVarRGB Var1, RGB1, Dat32 | Находит похожие пиксели в строке. | | BlackRGB | | Превращает цвет в EAX в средний черно-белый (EAX->EAX). Портит EAX. | BlackRGB | | | MaxRGB | | EAX - значение (яркость) макс цвета из EAX. Портит EAX, EBX. | MaxRGB | | | MinRGB | | EAX - значение (яркость) минимального цвета из EAX. Портит EAX, EBX. | MinRGB | | | MinMaxRGB | | EAX - значение максимального цвета (полная яркость) из RGB=(EAX), EBX - значение минимального цвета (яркость белого). Портит EAX, EBX. | MinMaxRGB | Максимально быстрая функция. | | BrightRGB | | Яркость пикселя RGB1 от Brt16 (4000h-24000h) и Sqr1 (255 в степени Brt16-1). | BrightRGB, RGB1, Brt16, Sqr1 | На основе 3-х вызовов макроса BriChan. Сложная функция на основе алгоритмов вычисления дробной степени числа. | | BrightTabRGB | | Яркость пикселя RGB1 по таблице Arr1 256 (16x16) точек. | BrightTabRGB, Arr1, RGB1 | Используется таблица после функции TabBrig. | | SlowBrightRGB | | Яркость пикселя RGB1 от Brt16 (4000h-24000h) в EAX. Нулевой отсчет- 10000h. Портит EAX, EBX. | SlowBrightRGB, RGB1, Brt16 | Сложная и медленная функция. Применяется, если нужно вычислять отдельную яркость для каждого пикселя. | | RealBrightRGB | | Изменение яркости пикселя RGB1 с коррекцией насыщенности цвета. Прозрачность не изменяет. Не портит регистры ESI, EDI. | RealBrightRGB, RGB1, CoRGB16 | Проверить по коэффициентам! На основе функции HSLFromRGB. | | BlurRGB | | EAX =средний цвет (+-Npx) нового пикселя. Npx=0,1,2… px. Портит EAX. | BlurRGB, Npx, Arr1, H1, V1 | | | BlurARGB | | EAX = средний цвет (+-Npx) нового пикселя с учетом прозрачности. Портит EAX. | BlurARGB, , Npx, Arr1, H1, V1 | Немного медленнее, чем BlurRGB, но с правильным учетом прозрачности. | | BlurTransRGB | | EAX = пиксель (H1, V1) со средней прозрачностью (+-Npx). Портит EAX. | BlurTransRGB, Npx, Arr1, H1, V1 | | | MulRGB | | Умножает RGB число на CoRGB, результат - в EAX, прозрачность не трогаем | MulRGB, RGB1, CoRGB | | | MulRGB16 | | Умножает RGB число на CoRGB16 (1= 1.0000h), результат - в EAX, прозрачность не трогаем. Портит EAX. | MulRGB16, RGB1, CoRGB16 | | | MulRGB16L | | Умножает RGB число на CoRGB16 (0-до 1.0000h), результат - в EAX, прозрачность не трогаем. Портит EAX. | MulRGB16L, RGB1, CoRGB16 | | | MulARGB16L | | Умножает RGB число на CoRGB16 (0-до 1.0000h), результат - в EAX, прозрачность умножаем. Портит EAX. | MulARGB16L, RGB1, CoRGB16 | | | MulTrans | | Умножает прозрачность в (EAX=RGB число) на CoRGB, результат - в EAX. Портит EAX. | MulTrans, CoRGB | | | MulTrans16 | | Умножает прозрачность в (EAX=RGB число) на CoRGB16, результат - в EAX. Портит EAX. | MulTrans16, CoRGB16 | | | RGBTransMul | | Умножение ARGB=EAX на собственную прозрачность, саму прозрачность не трогаем. Вых. в EAX, портит EAX, EBX. | RGBTransMul | | | RGBColorRGB | | Заменяет цвет и насыщенность RGB1 на RGB2 в пропорции Brt16 (0-010000h), сохраняется исходная прозрачность и яркость RGB1, результат - в EAX. Регистры не сохраняет. | RGBColorRGB, RGB1, RGB2, Brt16 | Плавно заменяет цвета, сохраняя исходную яркость. | | PermutPic | | Смещение соседних цветов пикселя ARGB1 линейной аппроксимацией на CoRGB [16/16]. | PermutPic, ARGB1, CoRGB16 | | | RGBsubRGB | | EAX=RGB2-RGB1, ограничение до 0, прозрачность = RGB2. Портит EAX. | RGBsubRGB, RGB2, RGB1 | | | DiffRGB | | EAX = 0 - 1 0000h: отношение расхождения цветов EAX/RGB2, точность Pc1=0 - 31, (14=100%). | DiffRGB, RGB2, Pc1 | На основе функции ModulRGB, BlackRGB. | | ParaRGB | | Изменяет пиксель RGB1 согласно параметров ParaVar1, вых=EAX | ParaRGB, RGB1, ParaVar1 | | | TabBrig | | Создание таблицы 256 (16x16) точек нелинейной яркости в Arr1/0 от Brt16. Создает список при Arr1=0 и выводит в EAX. | TabBrig, Arr1, Brt16 | Использует макрос BriChan. | | BriChan | | Яркость 1 цвета пикселя Colr1 от Brt16 и Sqr16 (255 в степени Brt16-1). | BriChan Colr1, Brt16, Sqr16 | | |
Страница "Пиксельная графика." обновлена -
|