mirror of
https://github.com/Artemis-RGB/Artemis
synced 2026-11-12 03:48:56 +00:00
Implemented profile default loading and rendering without the editor
Changed edit tool rotation to allow rotation past 360 degrees
This commit is contained in:
1 parent
f8fc30ace2
commit
fabb385556
13 files changed
+116
-41
No files matched your search
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using Artemis.Core.Exceptions;
|
||||
using Artemis.Core.Models.Profile.LayerProperties;
|
||||
@@ -77,8 +78,7 @@ namespace Artemis.Core.Models.Profile.KeyframeEngines
|
||||
return;
|
||||
|
||||
var keyframes = LayerProperty.UntypedKeyframes.ToList();
|
||||
Progress = Progress.Add(TimeSpan.FromMilliseconds(deltaTime));
|
||||
|
||||
Progress = Progress.Add(TimeSpan.FromSeconds(deltaTime));
|
||||
// The current keyframe is the last keyframe before the current time
|
||||
CurrentKeyframe = keyframes.LastOrDefault(k => k.Position <= Progress);
|
||||
// The next keyframe is the first keyframe that's after the current time
|
||||
@@ -112,7 +112,7 @@ namespace Artemis.Core.Models.Profile.KeyframeEngines
|
||||
public void OverrideProgress(TimeSpan progress)
|
||||
{
|
||||
Progress = TimeSpan.Zero;
|
||||
Update(progress.TotalMilliseconds);
|
||||
Update(progress.TotalSeconds);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -135,7 +135,7 @@ namespace Artemis.Core.Models.Profile
|
||||
/// <summary>
|
||||
/// The rotation property of this layer range 0 - 360, also found in <see cref="Properties" />
|
||||
/// </summary>
|
||||
public LayerProperty<int> RotationProperty { get; private set; }
|
||||
public LayerProperty<float> RotationProperty { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// The opacity property of this layer range 0 - 100, also found in <see cref="Properties" />
|
||||
@@ -153,11 +153,8 @@ namespace Artemis.Core.Models.Profile
|
||||
{
|
||||
property.KeyframeEngine?.Update(deltaTime);
|
||||
// This is a placeholder method of repeating the animation until repeat modes are implemented
|
||||
if (property.KeyframeEngine != null && property.IsUsingKeyframes && property.KeyframeEngine.NextKeyframe == null)
|
||||
{
|
||||
Debug.WriteLine($"Reset {property} progress");
|
||||
if (property.KeyframeEngine != null && property.IsUsingKeyframes && property.KeyframeEngine.NextKeyframe == null)
|
||||
property.KeyframeEngine.OverrideProgress(TimeSpan.Zero);
|
||||
}
|
||||
}
|
||||
|
||||
LayerBrush?.Update(deltaTime);
|
||||
@@ -421,7 +418,7 @@ namespace Artemis.Core.Models.Profile
|
||||
AnchorPointProperty = new LayerProperty<SKPoint>(this, transformProperty, "Core.AnchorPoint", "Anchor Point", "The point at which the shape is attached to its position.");
|
||||
PositionProperty = new LayerProperty<SKPoint>(this, transformProperty, "Core.Position", "Position", "The position of the shape.");
|
||||
SizeProperty = new LayerProperty<SKSize>(this, transformProperty, "Core.Size", "Size", "The size of the shape.") {InputAffix = "%"};
|
||||
RotationProperty = new LayerProperty<int>(this, transformProperty, "Core.Rotation", "Rotation", "The rotation of the shape in degrees.") {InputAffix = "°"};
|
||||
RotationProperty = new LayerProperty<float>(this, transformProperty, "Core.Rotation", "Rotation", "The rotation of the shape in degrees.") {InputAffix = "°"};
|
||||
OpacityProperty = new LayerProperty<float>(this, transformProperty, "Core.Opacity", "Opacity", "The opacity of the shape.") {InputAffix = "%"};
|
||||
transformProperty.Children.Add(AnchorPointProperty);
|
||||
transformProperty.Children.Add(PositionProperty);
|
||||
|
||||
@@ -222,6 +222,8 @@ namespace Artemis.Core.Models.Profile.LayerProperties
|
||||
|
||||
currentKeyframe.BaseValue = value;
|
||||
}
|
||||
|
||||
OnValueChanged();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
Reference in new issue
Block a user