Einzelnen Beitrag anzeigen

stho

Registriert seit: 16. Sep 2009
Ort: 127.0.0.1
288 Beiträge
 
Delphi 2007 Professional
 
#6

AW: "Making Galaxies" von C++ nach Delphi

  Alt 18. Mär 2011, 05:52
Irgendwie kommt noch immer nicht das raus, was raus kommen soll >___<
hm... weiß jemand von euch wo jetzt der Fehler liegt?


Delphi-Quellcode:
  Procedure Func1;
    function FRandom(fStart, fEnd: Extended): Extended;
    begin
      randomize;
      result := fStart + (fEnd - fStart) * Random;
    end;

  const
    m_nArms = 3;
    nStars = 20000;
    fRadius = 800;
  var
    FArmAngle : Extended;
    FAngularSpread : Extended;
    I: Integer;
    fQ, fK, fR, fA, fX, fY : Extended;
    aBMP : TBitmap;
  begin

    aBMP := TBitmap.Create;
    aBMP.Width := 4000;
    aBMP.Height:= 4000;

    FArmAngle := (360 div m_nArms) * 360;// (360 / m_nArms) mod 360;
    FAngularSpread := 180 / (m_nArms * 2);


    for I := 1 to nStars do
    begin
      fR := FRandom(0.0, fRadius);
      fK := 1;

      fQ := IfThen(Random(2)=0, 1, -1) * FRandom(0.0, fAngularSpread);

      fA := (Random(m_nArms)+1) * fArmAngle; //(Random mod m_nArms) * fArmAngle;
      fX := fR * cos( DegToRad ( fA + fR * fK + fQ ) );
      fY := fR * sin( DegToRad ( fA + fR * fK + fQ ) );

      aBMP.Canvas.Pixels[Round(FX) + aBMP.Width div 2,
                         Round(FY) + aBMP.Height div 2] := clBlack;
    end;
    DeleteFile('C:\Test.bmp');
    aBMP.SaveToFile('C:\Test.bmp');
  end;
SIEHE ANHANG
Miniaturansicht angehängter Grafiken
unbenannt.jpg  
  Mit Zitat antworten Zitat