V8 Javascript API

Lightprofile Class Reference

[Elements]

Description

Represents a Lightprofile element. Lightprofiles to represent the underlying IES file

Constructor

 Lightprofile( String name, bool create, Number privacy_level)
More...

Functions

varying as( String type_name)
Upcasts an element to a specific element type. More...
 base64( String data)
Load lightprofile from base64 encoded string. More...
the copy( String name, Number privacy_level)
Make a copy of this element in the database. More...
 create( String element_type, Number privacy_level)
Creates a scene element called name. More...
 delete()
Remove this element from the database.
bool  exists( String element_type)
Returns whether the element exists or not. More...
 localize( Number privacy_level)
Localizes this element. More...
varying property_get( String cache, String command, String element_name_arg, Function as_a)
Retrieves and caches a property of an element. More...
 property_set( String cache, String command, String element_name_arg, String value_arg_name, varying value, Function from_a)
Sets and caches a property of an element. More...
 set_filename( String filename, Number degree, Number flags, Uint32_2 resolution)
Set the filename for the Lightprofile with other properties at the same time. More...

Properties

Attributes attributes
The attributes associated with this element.
Number  degree
The degree of the curve used to interpolate profile points. More...
bool  exists
Returns whether the lightprofile exists or not. More...
String  filename
The underlying filename represented by this Lightprofile. More...
Number  flags
The flags describing the ordering of horizontal angles in the light profile. More...
String  name
The name of the element. More...
Uint32_2  resolution
The precision of the interpolation. More...
String  type_name
The type name of the element. More...

Constructor

Lightprofile( String name, bool create, Number privacy_level)

Parameters

name
The name of the lightprofile
create
if true then create the lightprofile, otherwise it is assumed it already exists.
privacy_level
if create is true then the privacy level to create the lightprofile at. Defaults to privacy level of the current scope.

Functions

varying Lightprofile.as( String type_name)

Upcasts an element to a specific element type. If this element is not of the given type then undefined is returned. If type_name does not have a matching element implementation an error is thrown. Note that this is not strictly an upcast but will return a new instance of the specific class representing type_name.

Parameters

type_name
the element type name to convert to.

Returns

the specific Element implementation for this element.

Lightprofile.base64( String data)

Load lightprofile from base64 encoded string.

Parameters

data
base64 encoded string representing the lightprofile file
the Lightprofile.copy( String name, Number privacy_level)

Make a copy of this element in the database.

Parameters

name
The name of the new element to copy to.
privacy_level
The privacy level to which the element will be copied. Defaults to the privacy level of the current scope.

Returns

copied element

Lightprofile.create( String element_type, Number privacy_level)

Creates a scene element called name. Throws on error.

Parameters

element_type
the type of element to create
privacy_level
The privacy level to create the element at. Defaults to the privacy level of the current scope.
Lightprofile.delete()

Remove this element from the database.

bool Lightprofile.exists( String element_type)

Returns whether the element exists or not.

Note:

element_type of 'Scene' is not supported. To test if a Scene exists use this.as('Scene') !== undefined

Parameters

element_type
if provided then the element must also be of this type.
Lightprofile.localize( Number privacy_level)

Localizes this element.

Parameters

privacy_level
The privacy level to which the element will be localized. Defaults to the privacy level of the current scope.
varying Lightprofile.property_get( String cache, String command, String element_name_arg, Function as_a)

Retrieves and caches a property of an element. The value of the property must be retrievable via a command that takes a single argument which is the name of the element to retrieve the property from. The name of this Element is used. If the returned property is another named scene Element then the element's constructor can be provided to return the element itself rather than it's name. On error this will return undefined.

Parameters

cache
name of the property to cache the result to
command
name of the RS command to get the property value
element_name_arg
name of the command argument to use for the element name
as_a
if the property being retrieved is an RS Element then the element constructor should be passed in here. The result of the command is assumed to be the element name and this is used to create an Element instance to return rather than the name of the element. Use undefined if the retrieved value is not an element.

Returns

the property value if it exists or undefined

Lightprofile.property_set( String cache, String command, String element_name_arg, String value_arg_name, varying value, Function from_a)

Sets and caches a property of an element. The value of the property must be set via a command that takes two arguments, one being the name of the element to set and the other being the property's value. The names of these arguments are passed in. If the property is another named scene Element then the element's constructor can be provided and value can either be the element itself or it's name. Will throw on error.

Parameters

cache
name of the property to cache the result to
command
name of the RS command to set the property value
element_name_arg
name of the command argument to use for the element name
value_arg_name
name of the value argument to use for the value
value
the value to set
from_a
if the property being set is a RealityServer Element then the element constructor should be passed in here. value can then either be the name of the scene element or the Element itself. If value is a name then an Element is constructed and cache rather than the name itself. Use undefined if the value does not represent an Element .
Lightprofile.set_filename( String filename, Number degree, Number flags, Uint32_2 resolution)

Set the filename for the Lightprofile with other properties at the same time.

Parameters

filename
the underlying filename represeted by this Lightprofile
degree
the degree of the curve used to interpolate profile points
flags
the flags describing the ordering of horizontal angles in the light profile
resolution
the precision of the interpolation

Properties

Attributes Lightprofile.attributes

The attributes associated with this element.

Number Lightprofile.degree

The degree of the curve used to interpolate profile points.

  • 1 - Linear

  • 3 - Cubic

bool Lightprofile.exists

Returns whether the lightprofile exists or not. This test is type checked.

String Lightprofile.filename

The underlying filename represented by this Lightprofile. Set to the filename's path to change the lightprofile file used.

Number Lightprofile.flags

The flags describing the ordering of horizontal angles in the light profile. Valid values are a combination of the following: 1: Clockwise; 2: Counter Clockwise; 4: Rotate Type B; 8: Rotate Type C 90-270.

String Lightprofile.name

The name of the element. Read only.

Uint32_2 Lightprofile.resolution

The precision of the interpolation. Note setting the properties of the vector will not modify anything, you must set the actual vector.

String Lightprofile.type_name

The type name of the element. If the element does not exists returns undefined. Read only.

Note:

For a Scene element this will return 'Attribute_container', not 'Scene'.