Вверх ↑
Этот топик читают: Гость
Ответов: 1291
Рейтинг: 47
#1: 2019-02-13 02:17:14 ЛС | профиль | цитата
Может кто-то провести ликбез - в каком формате используются цвета в Хиасм? Знаю что черный соответствует 0, а красный 255. Но что это за формат? Гуглил "красный - соответствует 255", в справке читал - так и не нашел ничего. Просто хотел задать белый цифровым значением и не знаю как его вычислить. Вот такой примитивный обломс на ровном месте)
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Разработчик
Ответов: 26113
Рейтинг: 2126
#2: 2019-02-13 02:56:06 ЛС | профиль | цитата
Aziz писал(а):
Может кто-то провести ликбез - в каком формате используются цвета в Хиасм?

В десятичном

Схема


Add(MainForm,2953706,245,147)
{
Width=294
Height=128
Position=1
}
Add(RGB,5094081,336,210)
{
link(onRGB,6394787:doText,[])
link(R,6041161:Text,[(342,201)(307,201)])
link(G,11939676:Text,[])
link(B,2495369:Text,[(356,187)(398,187)])
}
Add(Edit,6041161,301,147)
{
Left=40
Top=10
Text="255"
}
Add(Label,14892181,259,98)
{
Left=20
Top=12
Width=15
Height=17
Caption="R:"
}
Add(Edit,11939676,343,147)
{
Left=125
Top=10
Text="255"
}
Add(Label,12502912,252,91)
{
Left=105
Top=12
Width=15
Height=17
Caption="G:"
}
Add(Edit,2495369,392,147)
{
Left=210
Top=10
Text="255"
}
Add(Label,15695962,245,84)
{
Left=190
Top=12
Width=14
Height=17
Caption="B:"
}
Add(Button,15459236,245,210)
{
Left=105
Top=70
TabOrder=-1
Caption="Set Color"
link(onClick,5094081:doRGB,[])
}
Add(Edit,6394787,392,210)
{
Left=50
Top=40
Width=210
Text=""
link(onChange,11432938:doColor,[(445,216)(445,230)])
}
Add(Edit,11432938,455,210)
{
Left=20
Top=40
Width=20
Text=""
Point(doColor)
}

карма: 22

0
Ответов: 1291
Рейтинг: 47
#3: 2019-02-13 09:04:48 ЛС | профиль | цитата
Спасибо, Nesco. Я и это гуглил "десятичный формат цвета" и не находил. Это свой внутренний формат в среде?
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 1291
Рейтинг: 47
#4: 2019-02-13 10:24:06 ЛС | профиль | цитата
Посмотрел код компонента - как-то мудрено цвет формируется: FColor := r + g shl 8 + b shl 16; На калькуляторе не посчитаешь, целых два сдвига. Получается 3-байтовое число, соответствующее 24-битному цвету? 1-й (младший) байт - красный, второй - зеленый и третий - синий..
Это сделано для того чтобы иметь возможность описывать цвет одним числом?
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Разработчик
Ответов: 26113
Рейтинг: 2126
#5: 2019-02-13 10:53:07 ЛС | профиль | цитата
Aziz писал(а):
как-то мудрено цвет формируется

Да он в любой 24-х битной картинке так формируется. В 32-х битной также формируется, только добавляется еще alpha shl 24.

Редактировалось 2 раз(а), последний 2019-02-13 18:23:16
карма: 22

0
Ответов: 9906
Рейтинг: 351
#6: 2019-02-13 17:23:45 ЛС | профиль | цитата
Я балдею, как вы ныряете, зеленые
карма: 9

0
Разработчик
Ответов: 26113
Рейтинг: 2126
#7: 2019-02-13 18:27:30 ЛС | профиль | цитата
Galkov писал(а):
Я балдею, как вы ныряете, зеленые

Спокойствие, только спокойствие. Чел наверное не в курсах, что shl N это обычное умножение числа на 2^N степени
карма: 22

0
Ответов: 5227
Рейтинг: 587
#8: 2019-02-13 20:17:31 ЛС | профиль | цитата
Aziz в ударе! (в хорошем смысле этого слова ) значит есть мотивация
Aziz писал(а):
Посмотрел код компонента - как-то мудрено цвет формируется

можешь сделать по своему через absolute, никто не запрещает.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 16884
Рейтинг: 1239
#9: 2019-02-13 22:29:30 ЛС | профиль | цитата
Aziz, дарю.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1color_new.zip [38.9KB] [425]
Ответов: 1291
Рейтинг: 47
#10: 2019-02-13 23:09:56 ЛС | профиль | цитата
Tad, спасибо. Я еще не дома, позже гляну.
А я думал с кого там балдеет Галков) Да я знаю что вопрос был довольно туповат, и что сдвиг это умножение, но тк я забросил программирование и с математикой у меня как у всякого "художника" гуманитария напряженка, то это нормально. Но вот конечно хотелось бы в справке какой-то раздел по типам данных используемых в Хиасм. Раздел-то врроде есть но про цвет там ничего.
К тому же я поискал в инете "десятичный цвет" и никто об этом там ничего не знает. Вот я и решил опозориться перед Галковым и К. ) Но мне кажется, показывать свое невежество с целью его устранения менее зазорно и позорно чем его скрывать и кидаться умными терминами нифига в них не понимая, пуская "пыль в глаза")

--- Добавлено в 2019-02-13 23:20:36

Вообще, читая свои сообщения и компоненты здесь от 2013 года, понимаю что за 6 лет я похоже довольно утратил квалификацию. Связано это с нехватной свободного времени на новой работе, где я уже 4 года.

Редактировалось 1 раз(а), последний 2019-02-13 23:20:36
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 1291
Рейтинг: 47
#11: 2019-02-14 01:54:46 ЛС | профиль | цитата
Tad, это шедевр!) Спасибо.. Припоминаю когда-то делал себе подобное..

Редактировалось 1 раз(а), последний 2019-02-14 01:55:12
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Ответов: 5227
Рейтинг: 587
#12: 2019-02-14 08:29:20 ЛС | профиль | цитата
Aziz писал(а):
понимаю что за 6 лет я похоже довольно утратил квалификацию.

Сильно не переживай, это почти как на велосипеде, сел и поехал, чем дальше тем интересней.
Я тоже бывает месяцами ни строчки кода не напишу пока нет вдохновения, ну а появляться оно стало всё реже и реже.
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 1291
Рейтинг: 47
#13: 2019-02-14 12:13:45 ЛС | профиль | цитата
andrestudio, согласен..
Tad, пришел ответ сегодня)

--- Добавлено в 2019-02-14 12:18:49

Кстати, все забыли что если нажать в свойствах например Memory значок @ то откроется меню "Специальная вставка", где есть генератор цветов.

--- Добавлено в 2019-02-14 12:39:07

В общем, нашел в примерах с рашконтролами как можно сделать:


Add(ButtonRush,6116194,448,371)
{
Left=10
Top=10
Caption="Настройки"
Glyphs=[]
Point(doSetTheme)
}
Add(Timer,1813359,329,385)
{
link(onTimer,5558424:doMTString,[])
}
Add(MT_String,5558424,399,371)
{
link(onResult,6116194:doSetTheme,[])
link(Str1,2289121:Text,[])
}
Add(StrList,2289121,399,322)
{
Strings=#116:16777215;16777215;15266030;0;13684686;-1;-1;-1;-1;-1;-1;13564670;8840446;0;13684686;-1;10614015;7067903;0;4167618;-1|
}


Редактировалось 3 раз(а), последний 2019-02-14 12:39:07
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Разработчик
Ответов: 26113
Рейтинг: 2126
#14: 2019-02-14 12:57:48 ЛС | профиль | цитата
Aziz писал(а):
В общем, нашел в примерах с рашконтролами как можно сделать:

Ешкин кот, ну наконец-то, зато успел вынести мозг в нескольких темах
карма: 22

0
Ответов: 1291
Рейтинг: 47
#15: 2019-02-14 13:00:43 ЛС | профиль | цитата
Еще один хак: если в схему вставить компонент ToRGB и в его свойствах выбрать нужный стандартный (или не стандартный - по двойному клику на цвете), то во всплывающей к нему подсказке появляется его десятичное значение, которое можно использовать.

Add(ToRGB,2174556,280,462)
{
Color=15780518
}


Доработанный пример изменения цвета (добавил -1 для сохранения других цветовых настроек)

Add(ButtonRush,6116194,448,371)
{
Left=10
Top=10
ColorToOver=16777215
Caption="Настройки"
Glyphs=[]
Point(doSetTheme)
}
Add(Timer,1813359,245,385)
{
link(onTimer,3513316:doSwitch,[])
}
Add(MT_String,5558424,364,315)
{
link(onResult,3227479:doWork1,[(422,321)])
link(Str1,2289121:Text,[])
}
Add(StrList,2289121,364,266)
{
@Hint=#7:passive|
Strings=#74:-1;16777215;16777215;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1|
}
Add(MT_String,4120334,371,420)
{
link(onResult,3227479:doWork3,[(422,426)])
link(Str1,14375711:Text,[])
}
Add(StrList,14375711,371,371)
{
@Hint=#6:active|
Strings=#74:-1;16777215;15780518;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1;-1|
}
Add(HubEx,3227479,418,371)
{
link(onEvent,6116194:doSetTheme,[])
}
Add(Switch,3513316,294,385)
{
Point(onOn)
Point(onOff)
link(onOn,5558424:doMTString,[(345,398)(345,335)])
link(onOff,4120334:doMTString,[(348,405)(348,440)])
}


nesco, по цвету я вроде здесь только пытался вынести всем мозг))

Редактировалось 1 раз(а), последний 2019-02-14 18:06:15
карма: 3
Hiasm + Flowstone + CopperCube + GoDot + JS
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)