Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cedargrovestudios/circuitpython_colorfader

A CircuitPython helper for brightness and gamma adjustment of an integer RGB color value.
https://github.com/cedargrovestudios/circuitpython_colorfader

circuitpython circuitpython-community-bundle color-fader palette-brightness

Last synced: about 2 months ago
JSON representation

A CircuitPython helper for brightness and gamma adjustment of an integer RGB color value.

Awesome Lists containing this project

README

        

Introduction
============

.. image:: https://img.shields.io/discord/327254708534116352.svg
:target: https://adafru.it/discord
:alt: Discord

.. image:: https://github.com/CedarGroveStudios/CircuitPython_ColorFader/workflows/Build%20CI/badge.svg
:target: https://github.com/CedarGroveStudios/CircuitPython_ColorFader/actions
:alt: Build Status

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
:alt: Code Style: Black

A CircuitPython helper for brightness and gamma adjustment of an integer RGB
color value. Gamma is optionally applied after the brightness calculation.
Transparency is preserved. Returns an adjusted integer color value.
To adjust a ``displayio`` palette or multiple color list, use the
``cedargrove_palettefader.PaletteFader`` class.

Dependencies
=============
This driver depends on:

* `Adafruit CircuitPython `_

Please ensure all dependencies are available on the CircuitPython filesystem.
This is easily achieved by downloading
`the Adafruit library and driver bundle `_
or individual libraries can be installed using
`circup `_.

Installing to a Connected CircuitPython Device with Circup
==========================================================

Make sure that you have ``circup`` installed in your Python environment.
Install it with the following command if necessary:

.. code-block:: shell

pip3 install circup

With ``circup`` installed and your CircuitPython device connected use the
following command to install:

.. code-block:: shell

circup install cedargrove_colorfader

Or the following command to update an existing version:

.. code-block:: shell

circup update

Usage Example
=============

Scale a 24-bit RGB source color value in proportion to the brightness setting
(0 to 1.0). The adjusted color's gamma value is typically from 0.0 to 2.0 with
a default of 1.0 for no gamma adjustment. Returns an adjusted 24-bit RGB color
value or None if the source color is None (transparent).

.. code-block:: python

>>> from cedargrove_colorfader import color_fader
>>> # Dim a pure red color to 50%; no gamma adjustment
>>> print(hex(color_fader(source_color=0xFF0000, brightness=0.5, gamma=1.0)
0x7f0000

Documentation
=============
API documentation for this library can be found `here `_.

For information on building library documentation, please check out
`this guide `_.

Contributing
============

Contributions are welcome! Please read our `Code of Conduct
`_
before contributing to help this project stay welcoming.