1 #line 1 "S:/jenkins/workspace/ECP/ufe/ufe-full-python3.10-windows/ufe/include/light.h" 63 typedef std::shared_ptr<Light>
Ptr;
118 static bool addObserver(
127 static bool removeObserver(
144 static bool hasObserver(
149 static bool hasObservers(
const Path &
path);
155 static bool hasObservers(
Rtid runTimeId);
160 static void notify(
const Path &
path);
170 virtual const Path &
path()
const = 0;
176 virtual Type type()
const = 0;
191 if (
auto cmd = intensityCmd(li)) {
198 virtual float intensity()
const = 0;
214 virtual void color(
float r,
float g,
float b) {
215 if (
auto cmd = colorCmd(r, g, b)) {
222 virtual Color3f color()
const = 0;
237 if (
auto cmd = shadowEnableCmd(se)) {
244 virtual bool shadowEnable()
const = 0;
261 if (
auto cmd = shadowColorCmd(r, g, b)) {
268 virtual Color3f shadowColor()
const = 0;
284 if (
auto cmd = diffuseCmd(ld)) {
291 virtual float diffuse()
const = 0;
307 if (
auto cmd = specularCmd(ls)) {
314 virtual float specular()
const = 0;
334 if (
auto cmd = angleCmd(la)) {
341 virtual float angle()
const = 0;
346 std::shared_ptr<DirectionalInterface> directionalInterface();
368 if (
auto cmd = spherePropsCmd(radius, asPoint)) {
380 std::shared_ptr<SphereInterface> sphereInterface();
403 virtual void coneProps(
float focus,
float angle,
float softness) {
404 if (
auto cmd = conePropsCmd(focus, angle, softness)) {
416 std::shared_ptr<ConeInterface> coneInterface();
438 if (
auto cmd = normalizeCmd(nl)) {
445 virtual bool normalize()
const = 0;
450 std::shared_ptr<AreaInterface> areaInterface();
453 virtual std::shared_ptr<DirectionalInterface> directionalInterfaceImpl() = 0;
454 virtual std::shared_ptr<SphereInterface> sphereInterfaceImpl() = 0;
455 virtual std::shared_ptr<ConeInterface> coneInterfaceImpl() = 0;
456 virtual std::shared_ptr<AreaInterface> areaInterfaceImpl() = 0;
virtual void diffuse(float ld)
virtual void specular(float ls)
virtual void coneProps(float focus, float angle, float softness)
std::shared_ptr< Observer > Ptr
Definition of macros for symbol visibility.
std::shared_ptr< ObservableSelection > Ptr
virtual void color(float r, float g, float b)
virtual void shadowColor(float r, float g, float b)
std::shared_ptr< SetValueUndoableCommand > Ptr
Identify an object or 3D path in the scene.
SetValueUndoableCommand< bool > SetBoolUndoableCommand
std::shared_ptr< Light > Ptr
Abstract class for set value command.
virtual void shadowEnable(bool se)
virtual void angle(float la)
SetValueUndoableCommand< float > SetFloatUndoableCommand
std::shared_ptr< SceneItem > Ptr
Abstract base class for light interface.
SetValueUndoableCommand< const Color3f & > SetColor3fUndoableCommand
virtual void sphereProps(float radius, bool asPoint)
Path path(const std::string &pathString)
virtual void normalize(bool nl)
virtual void intensity(float li)