Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Alexey Danov                         2:5020/400     26 Sep 2001  13:25:17
 To : Yurij Zabelyshynskij
 Subject : Re: 2D cash
 -------------------------------------------------------------------------------- 
 
 вот пример кривой Гильберта на Delphi:
 
 procedure TForm1.FormPaint(Sender: TObject);
 const
   SquareSize = 512;
 var
   i,x0,y0,u,Px,Py: integer;
 
   procedure Line(N,dS:integer);
   var dx,dy,i:integer;
   begin
     dx := 0; dy := 0;
     case N of
       0: dy := -dS;
       2: dx :=  dS;
       4: dy :=  dS;
       6: dx := -dS;
     end;
     Canvas.MoveTo(Px,Py);
     inc(Px,dX); inc(Py,dY);
     Canvas.LineTo(Px,Py);
     // тормоз, чтоб видно было КАК рисуется ;-)
        for i := 0 to 1000000 do begin end;
   end;
 
   procedure B(i: integer);forward;
   procedure C(i: integer);forward;
   procedure D(i: integer);forward;
 
   procedure A(i: integer);
   begin
     if i > 0 then begin
       D(i-1); line(4,u); A(i-1); line(6,u);
       A(i-1); line(0,u); B(i-1)
       end;
   end;
 
   procedure B(i: integer);
   begin
     if i > 0 then begin
       C(i-1); line(2,u); B(i-1); line(0,u);
       B(i-1); line(6,u); A(i-1)
       end;
   end;
 
   procedure C(i: integer);
   begin
     if i > 0 then begin
       B(i-1); line(0,u); C(i-1); line(2,u);
       C(i-1); line(4,u); D(i-1)
       end;
   end;
 
   procedure D(i: integer);
   begin
     if i > 0 then begin
       A(i-1); line(6,u); D(i-1); line(4,u);
       D(i-1); line(2,u); C(i-1)
       end;
   end;
 
 begin
   x0 := ClientWidth - (ClientWidth - ClientHeight) div 2; y0 := 10;
   u := SquareSize; i := 6;
     u := u shr i;
     x0 := x0 + (u div 2);
     y0 := y0 + (u div 2);
     Px := x0; Py := y0;
     A(i);
 end;
 --- ifmail v.2.15dev5
  * Origin: Internet-Arkhangelsk Company (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 2D cash   Yurij Zabelyshynskij   25 Sep 2001 23:40:52 
 Re: 2D cash   Alexey Danov   26 Sep 2001 13:19:06 
 Re: 2D cash   Yurij Zabelyshynskij   26 Sep 2001 19:35:29 
 Re: 2D cash   Alexey Danov   27 Sep 2001 09:19:07 
 Re: 2D cash   Alexey Danov   26 Sep 2001 13:25:17 
 Re: 2D cash   Evgenij Masherov   26 Sep 2001 14:32:50 
 Re: 2D cash   Alexey Danov   26 Sep 2001 15:21:36 
Архивное /ru.algorithms/44187164309c.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional