SketchUp  Ruby API Reference 

Class Index

Method Index

Developers Guide

Examples

Color class

The Color class is used to create and manipulate colors within SketchUp models. 

For methods that accept a Color object, such as the face.material method, you can pass in an actual Color object, or an object that can be converted to a Color. For example:

face.material = Sketchup::Color.new(255, 0, 0)
face.material = 255
face.material = 0xff
face.material = "red"
face.material = "#ff0000"
face.material = [1.0, 0.0, 0.0]
face.material = [255, 0, 0]

SketchUp ships with several built in colors in the Materials Browser. These colors are listed in the following table.

Name

RGB Values

AliceBlue

240,248,255,

AntiqueWhite

250,235,215

Aqua

0,255,255

Aquamarine

127,255,212

Azure

240,255,255

Beige

245,245,220

Bisque

255,228,196

Black

0,0,0

BlanchedAlmond

255,235,205

Blue

0,0,255

BlueViolet

138,43,226

Brown

165,42,42

BurlyWood

222,184,135

CadetBlue

95,158,160

Chartreuse

127,255,0

Chocolate

210,105,30

Coral

255,127,80

CornflowerBlue

100,149,237

Cornsilk

255,248,220

Crimson

220,20,60

Cyan

0,255,255

DarkBlue

0,0,139

DarkCyan

0,139,139

DarkGoldenrod

184,134,11

DarkGray

169,169,169

DarkGreen

0,100,0

DarkKhaki

189,183,107

DarkMagenta

139,0,139

DarkOliveGreen

85,107,47

DarkOrange

255,140,0

DarkOrchid

153,50,204

DarkRed

139,0,0

DarkSalmon

233,150,122

DarkSeaGreen

143,188,143

DarkSlateBlue

72,61,139

DarkSlateGray

47,79,79

DarkTurquoise

0,206,209

DarkViolet

148,0,211

DeepPink

255,20,147

DeepSkyBlue

0,191,255

DimGray

105,105,105

DodgerBlue

30,144,255

FireBrick

178,34,34

FloralWhite

255,250,240

ForestGreen

34,139,34

Fuchsia

255,0,255

Gainsboro

220,220,220,

GhostWhite

248,248,255

Gold

255,215,0

Goldenrod

218,165,32

Gray

128,128,128

Green

0,128,0

GreenYellow

173,255,47

Honeydew

240,255,240

HotPink

255,105,180

IndianRed

205,92,92

Indigo

75,0,130

Ivory

255,255,240

Khaki

240,230,140

Lavender

230,230,250

LavenderBlush

255,240,245

LawnGreen

124,252,0

LemonChiffon

255,250,205

LightBlue

173,216,230

LightCoral

240,128,128

LightCyan

224,255,255

LightGoldenrodYellow

250,250,210

LightGreen

144,238,144

LightGrey

211,211,211

LightPink

255,182,193

LightSalmon

255,160,122

LightSeaGreen

32,178,170

LightSkyBlue

135,206,250

LightSlateGray

119,136,153

LightSteelBlue

176,196,222

LightYellow

255,255,224

Lime

0,255,0

LimeGreen

50,205,50

Linen

250,240,230

Magenta

255,0,255

Maroon

128,0,0

MediumAquamarine

102,205,170

MediumBlue

0,0,205

MediumOrchid

186,85,211

MediumPurple

147,112,219

MediumSeaGreen

60,179,113

MediumSlateBlue

123,104,238

MediumSpringGreen

0,250,154

MediumTurquoise

72,209,204

MediumVioletRed

199,21,133

MidnightBlue

25,25,112

MintCream

245,255,250

MistyRose

255,228,225

Moccasin

255,228,181

NavajoWhite

255,222,173

Navy

0,0,128

OldLace

253,245,230

Olive

128,128,0

OliveDrab

107,142,35

Orange

255,165,0

OrangeRed

255,69,0

Orchid

218,112,214

PaleGoldenrod

238,232,170

PaleGreen

152,251,152

PaleTurquoise

175,238,238

PaleVioletRed

219,112,147

PapayaWhip

255,239,213

PeachPuff

255,218,185

Peru

205,133,63

Pink

255,192,203

Plum

221,160,221

PowderBlue

176,224,230

Purple

128,0,128

Red

255,0,0

RosyBrown

188,143,143

RoyalBlue

65,105,225

SaddleBrown

139,69,19

Salmon

250,128,114

SandyBrown

244,164,96

SeaGreen

46,139,87

Seashell

255,245,238

Sienna

160,82,45

Silver

192,192,192

SkyBlue

135,206,235

SlateBlue

106,90,205

SlateGray

112,128,144

Snow

255,250,250

SpringGreen

0,255,127

SteelBlue

70,130,180

Tan

210,180,140

Teal

0,128,128

Thistle

216,191,216

Tomato

255,99,71

Turquoise

64,224,208

Violet

238,130,238

Wheat

245,222,179

White

255,255,255

WhiteSmoke

245,245,245

Yellow

255,255,0

YellowGreen

154,205,50

Parent: Object

Methods: blend, names, new, alpha, alpha= , blend, blue, blue= , green , green=, red, red= , to_a , to_i , to_s

Example Code: colortests.rb

Class Methods

blend

The blend method is used to blend two colors into one.

Syntax

color3 = Sketchup::Color.blend color1, color2, weight

Arguments

color1 - first color to be blended


color2 - second color to be blended


weight - a value between 0 and 1 that controls how much of each color to use for blending.

Return Value

color3 - the new Color object if successful

Comments

The blended color will be the result of taking (1 - weight)*color1 + weight * color2. For example, a weight of .25 will result in a color where .25 is derived from color1 and .75 from color2. If weight = 0, you will get color2. If weight = 1 you will get color1.

Example

color1 = Sketchup::Color.new "OldLace"
color2 = Sketchup::Color.new "AliceBlue"  begin
color = Sketchup::Color.blend color1, color2, 1
rescue
UI.messagebox $!.message
end if (color)
UI.messagebox color
else
UI.messagebox "Failure"
end  

 

 

names

The names method is used to retrieve an array of all color names recognized by SketchUp.

Syntax

names = Geom::Color.names

Return Value

names - an array of all SketchUp color names if successful

Comments

In general, whenever a method wants a color, you can pass in a String with one of these names.

Example

array = Sketchup::Color.names 



if (array)
UI.messagebox array[0]
else
UI.messagebox "Failure"
end

 

 


new

The new method is used to create a new Color object.

Syntax

color = Sketchup::Color.new red, green, blue 



color = SketchUp::Color.new "name"

Arguments

red - a red value 

green - a green value

blue - a blue value

"name" - the name of a color that currently exists in SketchUp. See the table at the start of this class description for more information.

Return Value

color - a Color object if successful

Example

color = Sketchup::Color.new "OldLace" 



if (color)
UI.messagebox color
else
UI.messagebox "Failure"
end

Instance Methods


alpha

The alpha method is used to retrieve the opacity of the color.

Syntax

alpha = color.alpha

Return Value

alpha - the opacity of the color if successful

Example

color = Sketchup::Color.new "OldLace"
alpha = color.alpha  if (alpha)
UI.messagebox alpha
else
UI.messagebox "Failure"
end

 

 


alpha=

The alpha= method is used to set the opacity of the color.

Syntax

alpha = color.alpha = alpha

Arguments

alpha - the new opacity value

Return Value

alpha - the newly set opacity value if successful

Comments

0 is transparent, 255 is opaque.

Example

color = Sketchup::Color.new "AliceBlue"
alpha = color.alpha=255  if (alpha)
UI.messagebox alpha
else
UI.messagebox "Failure"
end

 

 


blend

The blend method is used to blend two colors.

Syntax

color3 = color1.blend color2, weight

Arguments

color2 - the second color to be blended (with color1) 

weight - ?

Return Value

color3 - the newly blended Color object if successful

Comments

The blended color will be the result of taking (1 - weight)*color1 + weight * color2. If weight = 0, you will get color2. If weight = 1 you will get color1.

Example

color1 = Sketchup::Color.new "OldLace"
color2 = Sketchup::Color.new "AliceBlue"
color3 = color1.blend color2, 10 UI.messagebox $!.message      
if (color3)
UI.messagebox color3
else
UI.messagebox "Failure"
end          

 

 


blue

The blue method is used to retrieve the blue value of a color. Colors are comprised of red, green, and blue values.

Syntax

blue = color.blue

Return Value

blue - the blue value for the color if successful

Comments

Value range is 0 to 255.

Example

color = Sketchup::Color.new "AliceBlue"
setting = color.blue  if (setting)
UI.messagebox setting
else
UI.messagebox "Failure"
end

 

 


blue=

The blue= method is used to set the blue value of a color. Colors are comprised of red, green, and blue values.

Syntax

blue = color.blue = blue

Arguments

blue - the blue value for the color

Return Value

blue - the new blue value for the color if successful

Comments

Value range is 0 to 255.

Example

color = Sketchup::Color.new "AliceBlue"
setting = color.blue=200
if (setting)
UI.messagebox setting
else
UI.messagebox "Failure"
end         

 

 


green

The green method is used to retrieve the green value of a color. Colors are comprised of red, green, and blue values.

Syntax

green = color.green

Return Value

green - the green value for the color if successful

Comments

Value range is 0 to 255.

Example

color = Sketchup::Color.new "AliceBlue"
setting = color.green
if (setting)
UI.messagebox setting
else
UI.messagebox "Failure"
end     

 

 


green=

The green= method is used to set the green component of a RGB Color.

Syntax

green = color.green = green

Arguments

green - the green value for the color

Return Value

green - the new green value for the color if successful

Comments

Value range is 0 to 255.

Example

color = Sketchup::Color.new "AliceBlue"
setting = color.green=200
if (setting)
UI.messagebox setting
else
UI.messagebox "Failure"
end

 

 


red

The red method is used to retrieve the red component of a RGB Color.

Syntax

red = color.red

Return Value

red - the red value for the color if successful

Comments

Value range is 0 to 255.

Example

color = Sketchup::Color.new "AliceBlue"
setting = color.red
if (setting)
UI.messagebox setting
else
UI.messagebox "Failure"
end

 

 


red=

The red= method is used to set the red component of a RGB Color.

Syntax

red = color.red = red

Arguments

red - the red value for the color

Return Value

red - the new red value for the color if successful

Comments

Value range is 0 to 255.

Example

color = Sketchup::Color.new "AliceBlue"
setting = color.red=200  if (setting)
UI.messagebox setting
else
UI.messagebox "Failure"
end

 

 


to_a

The to_a method is used to convert a Color object to an Array object.

Syntax

array = color.to_a

Return Value

array - an Array object if successful

Example

color = Sketchup::Color.new "AliceBlue"
ascii = color.to_a

if (ascii)
UI.messagebox ascii
else
UI.messagebox "Failure"
end

 

 


to_i

The to_i method is used to convert a Color object to an 32 bit integer.

Syntax

integer = color.to_i

Return Value

integer - a 32 bit integer if successful

Example

color = Sketchup::Color.new "AliceBlue"
integer = color.to_i  if (integer)
UI.messagebox integer
else
UI.messagebox "Failure"
end

 

 


to_s

The to_s method is used to convert a Color object to a string.

Syntax

string = color.to_s

Return Value

string - a string representation of the Color object if successful

Example

color = Sketchup::Color.new "AliceBlue"
str = color.to_s  if (str)
UI.messagebox str
else
UI.messagebox "Failure"
end