|  | Home · All Classes · Modules

# QGLColormap Class Reference
[QtOpenGL module]

The QGLColormap class is used for installing custom colormaps into a QGLWidget. More...

### Methods

- __init__ (self)
- __init__ (self, QGLColormap)
- detach (self)
- QColor entryColor (self, int idx)
- int entryRgb (self, int idx)
- int find (self, int color)
- int findNearest (self, int color)
- sip.voidptr handle (self)
- bool isEmpty (self)
- setEntries (self, list-of-int colors, int base = 0)
- setEntry (self, int idx, int color)
- setEntry (self, int idx, QColor color)
- setHandle (self, sip.voidptr ahandle)
- int size (self)

## Detailed Description

The QGLColormap class is used for installing custom colormaps into a QGLWidget.

QGLColormap provides a platform independent way of specifying and installing indexed colormaps for a QGLWidget. QGLColormap is especially useful when using the OpenGL color-index mode.

Under X11 you must use an X server that supports either a `PseudoColor` or `DirectColor` visual class. If your X server currently only provides a `GrayScale`, `TrueColor`, `StaticColor` or `StaticGray` visual, you will not be able to allocate colorcells for writing. If this is the case, try setting your X server to 8 bit mode. It should then provide you with at least a `PseudoColor` visual. Note that you may experience colormap flashing if your X server is running in 8 bit mode.

The size() of the colormap is always set to 256 colors. Note that under Windows you can also install colormaps in child widgets.

This class uses implicit sharing as a memory and speed optimization.

Example of use:

     #include <QApplication>
     #include <QGLColormap>

     int main(int argc, char *argv[])
     {
         QApplication app(argc, argv);

         MySuperGLWidget widget;     // a QGLWidget in color-index mode
         QGLColormap colormap;

         // This will fill the colormap with colors ranging from
         // black to white.
         const int size = 256;
         for (int i = 0; i < size; ++i)
             colormap.setEntry(i, qRgb(i, i, i));

         widget.setColormap(colormap);
         widget.show();
         return app.exec();
     }

## Method Documentation

### QGLColormap.__init__ (self)

Construct a QGLColormap.

### QGLColormap.__init__ (self, QGLColormap)

Construct a shallow copy of map.

### QGLColormap.detach (self)

### QColor QGLColormap.entryColor (self, int idx)

Returns the QRgb value in the colorcell with index idx.

### int QGLColormap.entryRgb (self, int idx)

Returns the QRgb value in the colorcell with index idx.

### int QGLColormap.find (self, int color)

Returns the index of the color color. If color is not in the map, -1 is returned.

### int QGLColormap.findNearest (self, int color)

Returns the index of the color that is the closest match to color color.

### sip.voidptr QGLColormap.handle (self)

### bool QGLColormap.isEmpty (self)

Returns true if the colormap is empty or it is not in use by a QGLWidget; otherwise returns false.

A colormap with no color values set is considered to be empty. For historical reasons, a colormap that has color values set but which is not in use by a QGLWidget is also considered empty.

Compare size() with zero to determine if the colormap is empty regardless of whether it is in use by a QGLWidget or not.

See also size().

### QGLColormap.setEntries (self, list-of-int colors, int base = 0)

Set an array of cells in this colormap. count is the number of colors that should be set, colors is the array of colors, and base is the starting index. The first element in colors is set at base in the colormap.

### QGLColormap.setEntry (self, int idx, int color)

Set cell at index idx in the colormap to color color.

### QGLColormap.setEntry (self, int idx, QColor color)

This is an overloaded function.

Set the cell with index idx in the colormap to color color.

### QGLColormap.setHandle (self, sip.voidptr ahandle)

### int QGLColormap.size (self)

Returns the number of colorcells in the colormap.