Обработка "Выбор цвета" из которой можно скопировать удобную форму выбора цвета для своего решения.
Форма выбора цвета выполнена на табличных макетах (для палитр) с открытым исходным кодом.
Выбор цвета осуществляется в 2 этапа. Сначала выбирается эталонный цвет на палитре, затем его яркость.
Для того чтобы при открытии формы выбора происходило позиционирование выбранного цвета на палитре цветов и палитре яркости реализовано сохранение значение яркости(в данном случае темноты) от 0 до 32, которое зашифровывается в самих значениях R G B, путем незначительного их изменения +- 3 значения.
Для кодирования используется четность чисел и наличие остатка от деления на 3. Таким образом кодируя в одном числе наличие остатка от деления на 2 и остатка от деления на 3, можно закодировать 2 бита. Для трех чисел в сумме это 6 бит информации, чего вполне достаточно для кодирования значения от 0 до 32.
При этом незначительное изменение значений R G B +-3 изменяет цвет на значения не различимые для человеческого глаза и не приводит к искажению выбранного цвета.
Позиционирование выбранного цвета бывает очень удобно в некоторых случаях чтобы не искать заново на палитре выбранный цвет и его яркость.
Проверено на следующих конфигурациях и релизах:
- Управление нашей фирмой, редакция 1.6, релизы 1.6.9.44