OPEN SOURCED PACKED TOOLS AND ENGINES TO POWER Paletto, a WIP desktop app.
This openFrameworks add-on is a bundle of Tools and Engines to create and organize Color Palettes for your scenes.
ofxColorManager: (YouTube)
ofxColorClient: (YouTube)
Send palettes to the Editor.
- Algorithmic Theory Schemes from a base color.
Analogous, Compound, Flipped Compound, Monochrome, Tetrad, Triad, Complementary, Split and Flipped.
- Range Spaces between two colors.
RGB, HSL, HSV, HSB, LUV, LAB, HLAB, LCH, CMY, CMYK, YXY, and XYZ.
- Colour Lovers API to search keywords online, handle favorites, and history search.
- Extract the Dominant Colors from image files.
Sorting by Dominance, Hue, Saturation or Brightness.
Palettes Management.
-
EDITOR:
- Receive from the Engines and organize the palette colors.
- Edit using the color pickers, tweak global Hue/Sat/Brg and.
- Access to +2000 Pantone colors library.
- Add, remove, sort, shift, copy and drag colors.
- Coolors.co URL import/export: Adobe .ASE, CSS, SVG, ...
-
KIT OF PRESETS MANAGER:
- Receive palettes, name and save to Presets Kit.
- Tweak, delete or duplicate Pesets from your Kit.
- Fast preview all your presets on a scrollable clickable panel.
- Your Palettes Kit is ready to use in other apps using the ofxColorClient player.
-
GRADIENT DESIGNER:
- Auto-generates a gradient for each palette.
- Exposes all the gradient colors + one extra pickable color.
- Tweackeable curve to deform spread distribution.
- Palettize gradient as a NEW preset palette.
ONE SINGLE APP
Use the add-on inside your Scene Render App when you want to use all the bundled Tools.
( Requires all the dependencies. )
ONE SINGLE APP
A Lightweight Mode into your Scene Render App. Only using the ofxColorClient add-on.
( Without the bigger ofxColorManager )
Just as a player or palettes browser, but without all the Engines and Tools.
Only included some minimal edit tools. Fewer dependencies.
TWO APPS: Master and Client Apps
All the Engines and Tools, but with a more handy setup.
Links a MASTER OF_App (with the ofxColorManager) to your CLIENT OF_App (with the ofxColorClient).
- A Lightweight version of the add-on.
- Works in the Standalone Mode too.
- Browse and use your Palettes Presets Kit files.
- A Pack of tools: Palettes Kit Browser, Colors and Gradient previews, and tweakeable tweened timed transitions.
- Also used by ofxColorManager.
Ready to use pre-compiled versions for fast testing, or to have executable apps with for the most common uses/learning.
Windows / macOS
MASTER APP
Works Standalone or Linked to a CLIENT APP
( 1-example_Basic from ofxColorManager )
CLIENT APP
Works Standalone or Linked to a MASTER APP
( 3-example_Scenes from ofxColorClient )
HowTo / Guide
THREE DIFFERENT WORKFLOWS
-
Open the MASTER App alone to create, manage and browse palettes. Explore the GUI.
-
Open the CLIENT App alone and browse the bundled kit of presets files.
-
To play on Linking Mode:
Open both MASTER and CLIENT Apps, and start creating and browsing presets on MASTER App,
and look how CLIENT App is linked and coloring your scene.
- NOTES / HELP
- When TCP Linking, you should open the Master App at first.
- Sometimes you need to toggle Off/On the TCP Link toggle.
Other Features
- Import and export Coolors.co URL format using clipboard copy/paste.
- Demo Scenes for fast palette preview. Colored SVG with blending and Bubble scenes.
- ImGui based GUI. Docked and customizable with layouts presets management.
- Hue wheel and rectangle Color Pickers with HSV sliders and clipboard copy/paste codes.
- Pantone library with 2000+ colors.
- Kit exporter of all JSON preset files to your project DATA PATH.
(Can be used on the Standalone Client App.)
Usage
ofApp.h
#include "ofxColorManager.h"
ofxColorManager colorManager;
vector<ofColor> palette; // the colors
ofApp.cpp
void ofApp::setup()
{
colorManager.setLinkPalette(palette); // subscribe local palette
colorManager.setup();
}
void ofApp::draw()
{
/*
COLORiZE
Nothing more!
*/
}
Required Dependencies
Clone these add-ons and include into the OF Project Generator to allow compile your projects or the examples:
- ofxColorClient
- ofxImGui [ Fork from @Daandelange. Thanks Daan! ]
- ofxSurfingHelpers
- ofxScaleDragRect
- ofxIO
- ofxKuNetwork [ Fork from @kuflex ]
- ofxNetwork [ OF ]
- ofxPoco [ OF ]
- ofxGui [ OF ]
- ofxOpenCv [ OF ]
- ofxXmlSettings [ OF ]
- ofxSCENE-SVG [ Only for the example ]
- ofxWindowApp [ Only for the example ]
Included Dependencies
The above add-ons already packed somewhere into OF_ADDON/libs.
No need to add them manually with the OF Project Generator:
- ofxColorQuantizerHelper
- ofxColorsBrowser
- ofxColourLoversHelper
- ofxMouseRuler2
- ofxCameraSaveLoad
- ofxColorMorph
- ofxColorPalette
- ofxColorTheory
- ofxColourLovers
- ofxColorQuantizer
- ofxHttpUtils
- ofxSimpleTimer
- ofxAppUpdateNotifier
- ofxJSON
For ofxColorClient:
- ofxAnimatable
- ofxColorGradient
- ofxCurvesTool
- ofxSerializer
- ofxSimpleSlider [ Fork ]
- ofxMSAInteractiveObject [ Fork ]
Thanks a lot to all these ofxAddons coders. Look into each folder for authoring CREDITS, original forks, and license info.
Preset File format
The JSON FILE FORMAT of a palette preset quite simple.
This is an example of a 3 colors palette file content:
[
{
"a": 255,
"b": 206,
"g": 69,
"r": 4
},
{
"a": 255,
"b": 165,
"g": 103,
"r": 3
},
{
"a": 255,
"b": 125,
"g": 137,
"r": 3
}
]
Tested Systems
- Windows 10 / VS 2017 / OF ~0.11
- macOS. High Sierra / Xcode9 & Xcode10 / OF ~0.11
Credits
List of GitHub names of all coders of used ofxAddons:
@jvcleave, @Daandelange, @roymacdonald, @bakercp, @kuflex, @borg, @mantissa, @makobouzu, @aspeteRakete, @kasparsj, @arturoc, @HeliosInteractive, @frauzufall, @armadillu, @kylemcdonald, @golanlevin, @Mat-Loz, @memo, @jeffcrouse.
IDEAS / TODO
- Create an App using all the power but more user-friendly and a very simplified GUI. (?)
- Export Adobe .ASE, .ACO, ...etc (?)
- Think about other creative code tools client/add-on: Processing / Unity3D / UE4 clients plug-ins. (?)
- Tween transitions to presets also on master app. (?)
- Undo engine. (?)
- Improve Gradient Engine adding cosine/shifting algorithms.
- Add an example and improve gradient exposing and background tool.
- ofxCosineGradient
- DearWidgets
An addon by @moebiusSurfing
( ManuMolina ) 2019-2021
Twitter | YouTube | Instagram | GitHub | Email