# osgUtil::CubeMapGenerator Class Reference

This is the base class for cube map generators. More...

Inheritance diagram for osgUtil::CubeMapGenerator:

[legend]
List of all members.

## Public Member Functions

| CubeMapGenerator (int texture_size=64)
| CubeMapGenerator (const CubeMapGenerator &copy, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
osg::Image * | getImage (osg::TextureCubeMap::Face face)
const osg::Image * | getImage (osg::TextureCubeMap::Face face) const
void | generateMap (bool use_osg_system=true)
| Generate the six cube images.

## Protected Member Functions

virtual | ~CubeMapGenerator ()
CubeMapGenerator & | operator= (const CubeMapGenerator &)
void | set_pixel (int index, int c, int r, const osg::Vec4 &color)
virtual osg::Vec4 | compute_color (const osg::Vec3 &R) const =0
| Override this method to define how colors are computed.

## Static Protected Member Functions

static osg::Vec4 | vector_to_color (const osg::Vec3 &vec)

## Detailed Description

This is the base class for cube map generators.

It exposes the necessary interface to access the six generated images; descendants should only override the compute_color() method.

## Constructor & Destructor Documentation

CubeMapGenerator::CubeMapGenerator | ( | int | texture_size = `64` | ) | `[explicit]`

CubeMapGenerator::CubeMapGenerator | ( | const CubeMapGenerator & | copy,
|  | const osg::CopyOp & | copyop = `osg::CopyOp::SHALLOW_COPY`
| ) |

virtual osgUtil::CubeMapGenerator::~CubeMapGenerator | ( |  | ) | `[inline, protected, virtual]`

## Member Function Documentation

virtual osg::Vec4 osgUtil::CubeMapGenerator::compute_color | ( | const osg::Vec3 & | R | ) | const`[protected, pure virtual]`

| Override this method to define how colors are computed. The parameter R is the reflection vector, pointing from the center of the cube. The return value should be the RGBA color associated with that reflection ray. Implemented in osgUtil::HalfWayMapGenerator, osgUtil::HighlightMapGenerator, and osgUtil::ReflectionMapGenerator.

void CubeMapGenerator::generateMap | ( | bool | use_osg_system = `true` | ) |

| Generate the six cube images. If use_osg_system is true, then the OSG's coordinate system is used instead of the default OpenGL one.

const osg::Image * osgUtil::CubeMapGenerator::getImage | ( | osg::TextureCubeMap::Face | face | ) | const`[inline]`

osg::Image * osgUtil::CubeMapGenerator::getImage | ( | osg::TextureCubeMap::Face | face | ) | `[inline]`

CubeMapGenerator& osgUtil::CubeMapGenerator::operator= | ( | const CubeMapGenerator & |  | ) | `[inline, protected]`

void osgUtil::CubeMapGenerator::set_pixel | ( | int | index,
|  | int | c,
|  | int | r,
|  | const osg::Vec4 & | color
| ) | `[inline, protected]`

osg::Vec4 osgUtil::CubeMapGenerator::vector_to_color | ( | const osg::Vec3 & | vec | ) | `[inline, static, protected]`

The documentation for this class was generated from the following files:

- CubeMapGenerator
- CubeMapGenerator.cpp