Troisième approche de FireMonkey avec l'animation d'objets sur des "chemins" au format SVG.
Des bases sur le HTML est un plus pour comprendre les articles en liens.
Accompagné d'un tutoriel qui détaille les commandes à utiliser pour créer un path à partir de droites, courbes de Bézier, arcs élliptiques ...
Comme d'habitude, si vous n'avez pas Delphi XE2, vous pourrez télécharger l'exécutable sur mon site.
Source / Exemple :
{==============================================================================================
Code Source : BEAUMONT Christophe
Version : 1.0.0
Date : 18 Novembre 2011
FireMonkey 03 - L'animation d'un TImage contenant un Bitmap et qui fait une rotation de 360°
sur le PathData d'un TPathAnimation.
Retrouvez ce source, son exécutable et bien d'autres sur : "http://www.delphinautes.fr"
==============================================================================================}
unit Unit1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Dialogs, FMX.Ani, FMX.Objects,
FMX.Types3D;
type
TForm1 = class(TForm)
Viewport3D1: TViewport3D;
Image1: TImage;
PathAnimation1: TPathAnimation;
PathA: TButton;
StyleBook1: TStyleBook;
Label1: TLabel;
Stop: TButton;
procedure PathAClick(Sender: TObject);
procedure StopClick(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
procedure TForm1.PathAClick(Sender: TObject);
begin
// On désactive le chemin d'animation
PathAnimation1.Enabled := False;
// On dessine 2 arcs elliptiques de 250 pixels de rayon pour former un cercle
PathAnimation1.Path.Data := 'M -250,0 A 250 250 0 0 0 250,0 A 250 250 0 0 0 -250,0';
// On valide le nouveau chemin d'animation
PathAnimation1.Enabled := True;
// Je désactive le bouton
PathA.Enabled := False;
end;
procedure TForm1.StopClick(Sender: TObject);
begin
// On désactive le chemin d'animation
PathAnimation1.Enabled := False;
// On repositionne l'image au centre
Image1.Position.X := 275;
Image1.Position.Y := 275;
// On replace le départ du chemin au centre
PathAnimation1.Path.Data := 'M 250,0';
// On valide le nouveau chemin d'animation
PathAnimation1.Enabled := True;
// Je réactive le bouton
PathA.Enabled := True;
end;
end.
Conclusion :
Plus de sources sur mon site :
www.delphinautes.fr
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.