捐贈 | 廣告 | 注冊 | 發布 | 上傳 | 關于我們    
  滬ICP備05001939號 DELPHI盒子 | 盒子論壇 | 盒子文章 | 盒子問答懸賞 | 最新更新 | 論壇檢索 | 下載中心 | 高級搜索    
  精品專區 | 繁體中文 | 獎勵公告欄 | 直通車賬號登陸 | 關閉GOOGLE廣告 | 臨時留言    
盒子資源分類
全部展開 - 全部合攏
跨平臺,物體沿軌跡(SVG)運動實例。
關鍵字:跨平臺,軌跡,SVG,運動
來 自:原創
平 臺:Win2K/2003/NT/XP,Vista/WIN7 下載所需:0 火柴
深淺度:中級 完成時間:2018/5/3
發布者:chn1009 (獎勵50火柴) 發布時間:2018/5/9
編輯器:DelphiXE2 語  種:簡體中文
分 類:多媒體 下載瀏覽:115/7776
加入到我的收藏
下載錯誤報錯
登陸以后才能下載
 用戶名:
 密 碼:
自動登陸(30天有效)
圖片如果打不開,說明流量不夠了,請稍候下載……
  跨平臺,物體沿軌跡(SVG)運動實例。
     設計人:付貴軍  QQ和微信名稱:雨夜  QQ1034724439
delphiXE 網上動畫方面的文章很少,下面例子,起到舉一反三,觸類旁通的作用。delphiXE2以上版本用去SVG圖像格式。SVG可以算是目前最最火熱的圖像文件格式了,它的英文全稱為Scalable Vector Graphics,意思為可縮放的矢量圖形。它是基于XML(Extensible Markup Language),由World Wide Web Consortium(W3C)聯盟進行開發的。嚴格來說應該是一種開放標準的矢量圖形語言,可讓你設計激動人心的、高分辨率的Web圖形頁面。用戶可以直接用代碼來描繪圖像,可以用任何文字處理工具打開SVG圖像,通過改變部分代碼來使圖像具有交互功能,并可以隨時插入到HTML中通過瀏覽器來觀看比較常用在線圖像編輯網站
https://c.runoob.com/more/svgeditor/
http://www.zhangxinxu.com/sp/svg/#paste
這樣網站很多

PathAnimation 中 path輸入  m53.5,136.66c108,68 106,68 105.5,67.34c0.5,0.66 -22.5,2.66 -24.5,25.66c-2,23 -11,59 18,63c29,4 86,1 103,-3c17,-4 38,-17 42,-25c4,-8 12,-37 15,-49c3,-12 -11,-50 -13,-52c-2,-2 -59,-34 -63,-37c-4,-3 -61,-16 -63,-17c-2,-1 -54,-11 -55,-11c-1,0 -173,-30 -65,38z
代表是一個封閉曲線。
在窗體上放一個園Layer3D1在其上放入circle1,圓下放一下pathAnimation1
PathAnimation1 屬性中 path輸入  m53.5,136.66c108,68 106,68 105.5,67.34c0.5,0.66 -22.5,2.66 -24.5,25.66c-2,23 -11,59 18,63c29,4 86,1 103,-3c17,-4 38,-17 42,-25c4,-8 12,-37 15,-49c3,-12 -11,-50 -13,-52c-2,-2 -59,-34 -63,-37c-4,-3 -61,-16 -63,-17c-2,-1 -54,-11 -55,-11c-1,0 -173,-30 -65,38z

當然我又放入一圓,沿橢圓運動,寫一參數方程,代碼不多,達到了快速編輯三維動畫的效果。

下面是具體代碼:

unit Unit12;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms3D, FMX.Types3D, FMX.Forms, FMX.Graphics,
  FMX.Dialogs, System.Math.Vectors, FMX.Objects3D, FMX.Objects, FMX.Controls3D,
  FMX.Layers3D, FMX.Ani, FMX.MaterialSources, FMX.Controls.Presentation,
  FMX.StdCtrls;

type
  TForm12 = class(TForm3D)
    Layer3D1: TLayer3D;
    Circle1: TCircle;
    Brush1: TBrushObject;
    PathAnimation1: TPathAnimation;
    Path1: TPath;
    Cylinder1: TCylinder;
    TextureMaterialSource1: TTextureMaterialSource;
    TextureMaterialSource2: TTextureMaterialSource;
    Light1: TLight;
    Light2: TLight;
    Cube2: TCube;
    Camera1: TCamera;
    Timer1: TTimer;
    Button1: TButton;
    Sphere1: TSphere;
    TextureMaterialSource3: TTextureMaterialSource;
    Button2: TButton;
    Label1: TLabel;
    Circle2: TCircle;
    Cone1: TCone;
    TextureMaterialSource4: TTextureMaterialSource;
    PathAnimation2: TPathAnimation;
    procedure Timer1Timer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
  var x1:integer;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form12: TForm12;

implementation

{$R *.fmx}

procedure TForm12.Button1Click(Sender: TObject);
begin
 Timer1.Interval:=0;

end;

procedure TForm12.Button2Click(Sender: TObject);
begin
 Timer1.Interval:=500;
end;

procedure TForm12.Timer1Timer(Sender: TObject);
begin
x1:=x1+1;

Cylinder1.RotationAngle.Y :=x1*50;
Cube2.RotationAngle.Y :=x1*50;
//Cube2.RotationAngle.Z :=x1*30;
//Cube2.RotationAngle.X :=x1*10;

//Sphere1.RotationAngle.X :=x1*15;
Sphere1.RotationAngle.Y :=x1*5;
//Sphere1.RotationAngle.Z :=x1*2;

Circle2.Position.X :=Circle2.Position.X+187*cos(x1);

Circle2.Position.Y :=Circle2.Position.Y+182*sin(x1);
Cone1.RotationAngle.Y :=-x1*10;

Layer3D1.RotationAngle.x :=Random(10);
//Layer3D1.RotationAngle.X :=-x1*10;
//Layer3D1.RotationAngle.x :=15*cos(x1*10);
//Layer3D1.RotationAngle.Y :=sin(x1*10);
//Layer3D1.RotationAngle.Z :=25*tan(x1);

end;

end.
Google
 
本站原創作品,未經作者許可,嚴禁任何方式轉載;轉載作品,如果侵犯了您的權益,請聯系我們
龍脈加密鎖 15元起 Grid++Report 報表 申請支付@網
 相關文章
沒有相關文章
相關評論
共有評論5條 當前顯示最后3條評論
chn1009 2018/5/10 9:28:48
這方面文章很少,我做到觸類旁通作用,就達到目的了。
bigboy2050 2018/5/10 9:59:40
必須用firemonkey嗎? 可以用vcl嗎
chn1009 2018/5/10 10:17:53
SVG圖像是跨平臺,主要是在移動平臺使用,必須用firemonkey ,不建議用vcl!
我要發表評論 查看全部評論
 
  DELPHI盒子版權所有 1999-2012 V3.01 滬ICP備05001939號 更新RSS列表  
 
快乐10分助手官网