كود يقوم برسم مجموعة نجوم على كانفاس
#1
PHP كود :
procedure DrawStars(Bitmap: TBitmap; Canvas: TCanvas; cntrl: Tcontrol;
  
factor: Integer); // Color1: TColor);

var
  
qtr, rad, a: Single; //
  
xx, yy, ii, i, r: Integer;
  
pBtm: ^TBitmap;
 
pr, py,px:^integer;
begin
  pBtm 
:= @Bitmap;
  
px:=@xx;py:=@yy; pr:=@r;
//  Bitmap := pBtm^;
  // mycanvas.Pen.Width:=5;

  
pr^ := ((cntrl.Height + cntrl.Width) div factor);
  
// for i :=1 to 10 do
  // if True then

  
for i := 12 downto 1 do
  
begin

    a 
:= Random * i * pi;
    
rad := Random * pr^;

    
// Canvas.Pixels[x + Round(rad * Cos(i)), y+ Round(rad * Sin(i))] := Color1;
    // qtr:=(x+y)/2;
    
px^ := (cntrl.Top + (cntrl.Height div 3)) + Round(rad * Cos((a)));

    
py^ := (cntrl.Left + (cntrl.Width div 2)) + Round(rad * Sin((a)));

    
// mycanvas.Font.Size:=45;
    
Canvas.Draw(py^, px^, pBtm^);

    
// Canvas.Pixels[yy + Round(rad * Cos(i))+(r div 3), xx+ Round(rad * Sin(i))] :=bitmap.Canvas.Pixels[yy,xx] ;
    // myCanvas.Pixels[yy + Round(rad * Cos(i))+(r div 2), xx+ Round(rad * Sin(i)+i div 2 )] := color;
    // canvas.Draw(yy  ,xx,bitmap) ;

  
end;

  
// end;

end; 
لعمل تأثير متحرك استخدم الكود ضمن تايمر أو لوب مع بوز او اي طريقة تناسبك
ليس الكوداحترافيا لكنه يعمل بكافاءة و اذا كان هناك اي تعديل للأفضل فلنتشارك كلنا
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم