已知圆点坐标和半径,想用这个半径做一次圆周运动。类似圆形雷达扫描线.我按照数学公式: X坐标=Cos(角度)*半径  Y坐标=Sin(角度)*半径搞不出效果。求公式 写法~~~

解决方案 »

  1.   


    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs,Math, StdCtrls, ExtCtrls;type
      TForm1 = class(TForm)
        Timer1: TTimer;
        procedure FormPaint(Sender: TObject);
        procedure FormCreate(Sender: TObject);
        procedure Timer1Timer(Sender: TObject);
      private
        { Private declarations }
        angle:integer;
        procedure DrawCircle(angle:integer);
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}{ TForm1 }procedure TForm1.DrawCircle(angle:integer);
    var
      x,y:integer;
    begin
      Self.Canvas.Ellipse(0,0,200,200);
      x := Round(100-100*sin(angle/180*pi));
      y := Round(100-100*cos(angle/180*pi));
      Self.Canvas.MoveTo(100,100);
      Self.Canvas.LineTo(x,y);
    end;procedure TForm1.FormPaint(Sender: TObject);
    begin
      DrawCircle(angle);
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      angle := 0;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    begin
      angle := angle+10;
      Invalidate;
    end;end.