<< Chapter < Page Chapter >> Page >
  • boolean
  • char
  • double
  • float
  • byte
  • short
  • int
  • long

However, the Processing reference lists the following eight primitive types:

  • boolean
  • byte
  • char
  • color
  • double
  • float
  • int
  • long

You will note that the primitive short type does not appear in this list. You will also note that a new primitive type named color has been added to the list.

It is easy enough to demonstrate that the short type can be used in Processing sketches. Perhaps the omission of short from the list of primitive types was simply an oversight.

I won't even speculate on how the authors of Processing created something named color that behaves like a primitive type, but they obviously did.

The primitive color type

As an experienced Java programmer, you know that the Java programming language does not have a primitive type named color . However, the standard Java class library does have a class named Color (distinguished by an upper-case C) .

Here is part of what the Processing documentation has to say about the new primitive color type:

"Datatype for storing color values. Colors may be assigned with get() and color() or they may be specified directly using hexadecimal notation such as #FFCC00 or 0xFFFFCCOO.

Using print() or println() on a color will produce strange results (usually negative numbers) because of the way colors are stored in memory. A better technique is to use the hex() function to format the color data, or use the red(), green(), and blue() functions to get individual values and print those.

The hue(), saturation(), and brightness() functions work in a similar fashion. To extract red, green, and blue values more quickly (for instance when analyzing an image or a frame of video), use bit shifting.

Values can also be created using web color notation. For example, "color c = #006699".

Web color notation only works for opaque colors. To define a color with an alpha value, you can either use the color() function, or use hexadecimal notation. For hex notation, prefix the values with "0x", for instance "color c = 0xCC006699". In that example, CC (the hex value of 204) is the alpha value, and the remainder is identical to a web color. Note the alpha value is first in the hexadecimal notation (but last when used with the color() function, or functions like fill() and stroke()).

From a technical standpoint, colors are 32 bits of information ordered as AAAAAAAARRRRRRRRGGGGGGGGBBBBBBBB where the A's contain the alpha value, the R's are the red value, G's are green, and B's are blue. Each component is 8 bits (a number between 0 and 255). These values can be manipulated with bit shifting."

The color method

The word color is also used as the name of a method that is inherited from the PApplet class. Here is part of what the documentation has to say about the color method.

"Creates colors for storing in variables of the color datatype. The parameters are interpreted as RGB or HSB values depending on the current colorMode(). The default mode is RGB values from 0 to 255 and, therefore, the function call color(255, 204, 0) will return a bright yellow color...

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, The processing programming environment. OpenStax CNX. Feb 26, 2013 Download for free at http://cnx.org/content/col11492/1.5
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'The processing programming environment' conversation and receive update notifications?

Ask