WavesSystems.Projector 3.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package WavesSystems.Projector --version 3.0.1
NuGet\Install-Package WavesSystems.Projector -Version 3.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="WavesSystems.Projector" Version="3.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add WavesSystems.Projector --version 3.0.1
#r "nuget: WavesSystems.Projector, 3.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install WavesSystems.Projector as a Cake Addin
#addin nuget:?package=WavesSystems.Projector&version=3.0.1

// Install WavesSystems.Projector as a Cake Tool
#tool nuget:?package=WavesSystems.Projector&version=3.0.1

Badge AUR license badge Badge

Waves Projector

WPF UI Element that reproduces animations based on sprite sheet files.

Content

License

This project is licensed under the terms of Apache 2.0 license.

The Projector

I worked to make it as familiar as possible with other WPF controls, such as Timeline, so we have basic animation properties such as FillBehavior, RepeatBehavior and AutoReverse, as shown in the following table:

Properties

Property Description
AutoReverse Gets or sets a value that indicates whether the animation plays in reverse after it completes a forward iteration.
AutoStart Gets of sets a value that indicates whether the animation starts automatically after loading.
ColumnCount Gets or Sets the amount of columns in the sprite animation sheet.
Duration Gets the length of time for which this Animation plays, not counting repetitions.
FillBehavior Gets or sets a value that specifies how the animation behaves after it reaches the end of its active period.
FrameCount Gets or Sets the amount of frames in the sprite animation file.
FrameRate Gets or Sets the frame per second rate of animation.
IsPlaying Gets or sets a value that indicates whether the animation is running.
Source Gets or Sets the animated image displayed in the view.
TotalDuration Gets the length of time for which this Animation plays, counting repetitions.

Usage

Using this control is quite simple. Check the following steps:

First thing, define the namespace in the parent object attributes.

xmlns:visual="clr-namespace:Waves.Visual;assembly=Waves.Visual.Projector"

Right! Now you can place the element like this:

<visual:Projector FrameCount="293"
                  ColumnCount="15"
                  RepeatBehavior="Forever"
                  FillBehavior="Stop"
                  Source="/Assets/nooooooo.png"
                  Width="800"
                  Height="450" />

You got define the URI of the sprite sheet and then define the number of frames and the number of columns. The number rows, let me automatically calculate for you.

Please do not forget: the frame and column count are especially important to run the animation properly. Mistaking these property values will create a visual mess.

I have not implemented the Width and Height automatic calculation for when these properties are set as "Auto" just like when you set source of an Image object, but it is on the plan.

Methods

Method Description
BeginAnimation() Starts or resumes the animation.
BeginAnimationAsync() Starts or resumes the animation and holds the execution until the animation completes its active period.
StopAnimation() Stops the animation.

Events

Event Description
Completed Occurs when this animation has completely finished playing and will no longer enter its active period.

You can check the full documentation in wavessystems.com.br/projector.

Release Notes

v3.0.1.0:

  • FillBehavior property;
  • RepeatBehavior property with full implementation;
  • AutoReverse property;
  • Completed event;
  • BeginAnimationAsync method;
  • Fix image going blank when setting dimension properties to "Auto";
Product Compatible and additional computed target framework versions.
.NET Framework net461 is compatible.  net462 was computed.  net463 was computed.  net47 was computed.  net471 is compatible.  net472 is compatible.  net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.6.1

    • No dependencies.
  • .NETFramework 4.7.1

    • No dependencies.
  • .NETFramework 4.7.2

    • No dependencies.
  • .NETFramework 4.8

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.4.1 172 11/14/2023
3.0.3.1 219 7/10/2023
3.0.3 225 2/13/2023
3.0.2.1 218 2/12/2023
3.0.2 233 2/12/2023
3.0.1.4 282 12/19/2022
3.0.1.3 266 12/19/2022
3.0.1.2 266 12/18/2022
3.0.1 292 12/18/2022
2.1.0 412 12/17/2022
1.0.6.1 417 12/14/2022

Includes:
* FillBehavior property;
* RepeatBehavior property with full implementation;
* AutoReverse property;
* Completed event;
* BeginAnimationAsync method;
* Fix image going blank when setting dimension properties to "Auto";