1 #line 1 "S:/jenkins/workspace/ECP/ufe/ufe-full-python3.9-windows/ufe/include/light.h" 52 typedef std::shared_ptr<Light>
Ptr;
107 static bool addObserver(
116 static bool removeObserver(
133 static bool hasObserver(
138 static bool hasObservers(
const Path &
path);
144 static bool hasObservers(
Rtid runTimeId);
149 static void notify(
const Path &
path);
159 virtual const Path &
path()
const = 0;
165 virtual Type type()
const = 0;
180 if (
auto cmd = intensityCmd(li)) {
187 virtual float intensity()
const = 0;
201 virtual void color(
float r,
float g,
float b) {
202 if (
auto cmd = colorCmd(r, g, b)) {
209 virtual Color3f color()
const = 0;
224 if (
auto cmd = shadowEnableCmd(se)) {
231 virtual bool shadowEnable()
const = 0;
246 if (
auto cmd = shadowColorCmd(r, g, b)) {
253 virtual Color3f shadowColor()
const = 0;
269 if (
auto cmd = diffuseCmd(ld)) {
276 virtual float diffuse()
const = 0;
292 if (
auto cmd = specularCmd(ls)) {
299 virtual float specular()
const = 0;
319 if (
auto cmd = angleCmd(la)) {
326 virtual float angle()
const = 0;
331 std::shared_ptr<DirectionalInterface> directionalInterface();
353 if (
auto cmd = spherePropsCmd(radius, asPoint)) {
365 std::shared_ptr<SphereInterface> sphereInterface();
388 virtual void coneProps(
float focus,
float angle,
float softness) {
389 if (
auto cmd = conePropsCmd(focus, angle, softness)) {
401 std::shared_ptr<ConeInterface> coneInterface();
423 if (
auto cmd = normalizeCmd(nl)) {
430 virtual bool normalize()
const = 0;
435 std::shared_ptr<AreaInterface> areaInterface();
438 virtual std::shared_ptr<DirectionalInterface> directionalInterfaceImpl() = 0;
439 virtual std::shared_ptr<SphereInterface> sphereInterfaceImpl() = 0;
440 virtual std::shared_ptr<ConeInterface> coneInterfaceImpl() = 0;
441 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)