OpenSceneGraph/include/osgSim/LightPoint

71 lines
1.9 KiB
Plaintext
Raw Normal View History

//C++ header - Open Scene Graph Simulation - Copyright (C) 1998-2002 Robert Osfield
// Distributed under the terms of the GNU General Public License (GPL)
// as published by the Free Software Foundation.
//
// All software using osgSim must be GPL'd or excempted via the
// purchase of the Open Scene Graph Professional License (OSGPL)
// for further information contact robert@openscenegraph.com.
#ifndef OSGSIM_LGIHTPOINT
#define OSGSIM_LIGHTPOINT 1
#include <osgSim/Export>
#include <osgSim/Sector>
#include <osgSim/BlinkSequence>
#include <osg/Quat>
#include <osg/Vec3>
#include <osg/Vec4>
namespace osgSim {
class OSGSIM_EXPORT LightPoint
{
public:
enum BlendingMode
{
OPAQUE,
ADDITIVE,
BLENDED
};
LightPoint();
LightPoint(const osg::Vec3& position,
const osg::Vec4& color);
LightPoint(bool on,
const osg::Vec3& position,
const osg::Vec4& color,
float intensity=1.0f,
float radius=1.0f,
float maxPixelSize=30,
Sector* sector=0,
BlinkSequence* blinkSequence=0,
BlendingMode blendingMode=BLENDED);
LightPoint(const LightPoint& lp);
LightPoint& operator = (const LightPoint& lp);
bool _on;
osg::Vec3 _position;
osg::Vec4 _color;
float _intensity;
float _radius;
float _maxPixelSize;
osg::ref_ptr<Sector> _sector;
osg::ref_ptr<BlinkSequence> _blinkSequence;
BlendingMode _blendingMode;
};
}
#endif