Color Mixer

6 votes
Version: 
0.05
Date Updated: 
12/21/2013

Simple color mixer. You can change the number of segments of the gradient control and move the slider or enter a percentage to get a desired blend of two colors in RGB or HSV color space. The width of the dialog can be changed.

Color Mixer UI

I made this script because quite frequently in the past I had to reach for Photoshop or Mix color map just to find a value somewhere in-between two colors. This control offers more intuitive way of blending them and more control over the result. The two source colors and the resulting blend color are colorpickers and as such you can right-click them and copy/paste their values.

Installation: The .ms file can be run from any location (Maxscript -> Run Script...). If you want to put it in toolbar, menu or quadmenu, you can create a macroscript using Macroscript Creator.

Additional Info: 

Changelog:

Version 0.05:
Right-clicking the bar gives option to copy color code to clipboard (RGB, HEX, HSB, OLE, approx. CMYK).
Code cleanup and refactoring.

Version 0.04:
Fixed a few bugs, including double gamma.
Thanks to MrTom and obaida for pointing out the issues.

Version 0.03:
Colors are now gamma corrected.

Version 0.02:
Added HSV/RGB color space switcher.

Version Requirement: 
3ds Max 9, VIZ 2008
Other Software Required: 
for Max 9/VIZ 2008 AVGuard extension is needed
AttachmentSize
color_mixer.ms16.06 KB

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Swordslayer's picture

Cool, thanks for spotting

Cool, thanks for spotting that :) I've included that bit in the refactored version, if you spot any other problem/oversight, don't hesistate to let me know, I really value that.

IIRC it was there to prevent one from accidentally changing the result color but it was a stupid decision eitherway :)

MrTom's picture

Excellent!

Thanks for updating this, appreciated.

I wonder though if this code seems a little redundant maybe?

on cpResult changed val do
    cpResult.color = getColorAtPos (int(dncTriBtn1.pos.x - 105))

It kind of says, "when I'm changed, change me again"

I've put that line into the next event handler down so that changing the % spinner value changes the output colour....

on spnPercent changed val do
(
	local ctrl = btn_controls[(0.01 * btn_controls.count) * (100 - val) + 1]
	dncTriBtn1.pos.x = dncTriBtn2.pos.x = 106 + ctrl.Location.X + ctrl.Width/2
	cpResult.color = getColorAtPos (int(dncTriBtn1.pos.x - 105))		
)

Best regards.
MrTom.

MrTom's picture

Fixed, I think....?

Further to my last post I think I have found the error....

Changed:

fn getStepColor clr clr_step mode =
	case mode of
	(
		#rgb : gammaCorrect (clr + clr_step) gamma
		#hsv : gammaCorrect (hsvToClr [clr.h + ............
	)

To:

fn getStepColor clr clr_step mode = 
	case mode of
	(
		#rgb : gammaCorrect (clr + clr_step) gamma
		#hsv : gammaCorrect (convertHsv2rgb [clr.h +  ............
	)

Is this correct? It seems to work ok.

I did find a couple more [ minor ] issues though in the process, see image for details.

Regards.

AttachmentSize
mixer_error_02.png 136.88 KB
MrTom's picture

Error.

Ran the .ms script from editor...all fine until I click the HSV button.
The image shows the error produced.

I acknowledged the error and closed the rollout.
Ran the script again and the same error occurred instantly.

Closed Max and re-opened, ran script again....instant error again.

Using:
Win 7u SP1 x64
Max 2013 pu6 x64

Regards.

AttachmentSize
mixer_error_01.png 124.88 KB
obaida's picture

another issue here ! the

another issue here ! the (result color) has bouble gamma !?

AttachmentSize
problem.jpg 16.59 KB
obaida's picture

its working fine now , thank

its working fine now , thank you for quick replay .

Swordslayer's picture

Updated

Thanks for using it, I've updated the script to handle gamma correction.

obaida's picture

Important script

Thank you for this script , I noticed that the color in slider bar have gamma 1.0 even if the gamma set to 2.2 !!?
so , any fix for this issue .

Script_Butler's picture

No problem.

Thanks for sorting it asap.

Cheers.

Script_Butler

Swordslayer's picture

Thanks for input, I will look

Thanks for input, I will look into it ASAP.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.