Class RenderProfileElement
Represents an element of a Profile that has advanced rendering capabilities
Inheritance
Inherited Members
Namespace: Artemis.Core
Assembly: Artemis.Core.dll
Syntax
public abstract class RenderProfileElement : ProfileElement, IBreakableModel, IDisposable
Properties
Bounds
The bounds of this entity
Declaration
public SKRectI Bounds { get; }
Property Value
Type | Description |
---|---|
SKRectI |
DisplayCondition
Gets or sets the display condition used to determine whether this element is active or not
Declaration
public ICondition DisplayCondition { get; set; }
Property Value
Type | Description |
---|---|
ICondition |
DisplayConditionMet
Gets whether the display conditions applied to this layer where met or not during last update
Always true if the layer has no display conditions
Declaration
public bool DisplayConditionMet { get; }
Property Value
Type | Description |
---|---|
bool |
Enabled
Gets a boolean indicating whether this render element and its layers/brushes are enabled
Declaration
public bool Enabled { get; protected set; }
Property Value
Type | Description |
---|---|
bool |
LayerEffects
Gets a read-only collection of the layer effects on this entity
Declaration
public ReadOnlyCollection<BaseLayerEffect> LayerEffects { get; }
Property Value
Type | Description |
---|---|
ReadOnlyCollection<BaseLayerEffect> |
Parent
Gets the parent of this element
Declaration
public ProfileElement Parent { get; }
Property Value
Type | Description |
---|---|
ProfileElement |
Path
Gets the path containing all the LEDs this entity is applied to, any rendering outside the entity Path is clipped.
Declaration
public SKPath? Path { get; protected set; }
Property Value
Type | Description |
---|---|
SKPath |
ShouldBeEnabled
Gets a boolean indicating whether this render element and its layers/brushes should be enabled
Declaration
public abstract bool ShouldBeEnabled { get; }
Property Value
Type | Description |
---|---|
bool |
Timeline
Gets the timeline associated with this render element
Declaration
public Timeline Timeline { get; }
Property Value
Type | Description |
---|---|
Timeline |
Methods
AddLayerEffect(BaseLayerEffect)
Adds a the provided layer effect to the render profile element
Declaration
public void AddLayerEffect(BaseLayerEffect layerEffect)
Parameters
Type | Name | Description |
---|---|---|
BaseLayerEffect | layerEffect | The effect to add. |
Disable()
Enables the render element and its brushes and effects
Declaration
public abstract void Disable()
Dispose(bool)
Disposes the profile element
Declaration
protected override void Dispose(bool disposing)
Parameters
Type | Name | Description |
---|---|---|
bool | disposing |
Overrides
Enable()
Disables the render element and its brushes and effects
Declaration
public abstract void Enable()
GetAllLayerProperties()
Creates a list of all layer properties present on this render element
Declaration
public abstract List<ILayerProperty> GetAllLayerProperties()
Returns
Type | Description |
---|---|
List<ILayerProperty> | A list of all layer properties present on this render element |
OverrideTimelineAndApply(TimeSpan)
Overrides the main timeline to the specified time and clears any extra time lines
Declaration
public abstract void OverrideTimelineAndApply(TimeSpan position)
Parameters
Type | Name | Description |
---|---|---|
TimeSpan | position | The position to set the timeline to |
RemoveLayerEffect(BaseLayerEffect)
Removes the provided layer effect.
Declaration
public void RemoveLayerEffect(BaseLayerEffect layerEffect)
Parameters
Type | Name | Description |
---|---|---|
BaseLayerEffect | layerEffect | The effect to remove. |
UpdateDisplayCondition()
Evaluates the display conditions on this element and applies any required changes to the Timeline
Declaration
public void UpdateDisplayCondition()
UpdateTimeline(double)
Updates the Timeline according to the provided deltaTime
and current display
condition
Declaration
protected void UpdateTimeline(double deltaTime)
Parameters
Type | Name | Description |
---|---|---|
double | deltaTime |
Events
LayerEffectsUpdated
Occurs when a layer effect has been added or removed to this render element
Declaration
public event EventHandler? LayerEffectsUpdated
Event Type
Type | Description |
---|---|
EventHandler |