Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   [OS] Metaballs-About Preview (https://www.delphipraxis.net/150745-%5Bos%5D-metaballs-about-preview.html)

himitsu 16. Mai 2010 12:12

Re: [OS] Metaballs-About Preview
 
Einfache Lösung:

Erzeuge diesen Dialog erst, wenn er benötigt wird.
Man muß nicht alles sofort beim Programmstart automatisch von Delphi erzeugen lassen, so daß es die meißte Zeit sinnlos im Hintergrund rumliegt/arbeitet.
( Wir haben heutzutage ja genug RAM, aber muß man diesen denn immer sinnlos verschwenden? Vorallem bei soetwas, welches eigentlich fast nie angezeigt wird. )

Den Dialog, bzw. die Form in den Projektoptionen => Formulare nach "verfügbare Formulare" verschieben
und dann diesen manuell aufrufen, wenn er angezeigt werden soll.
Delphi-Quellcode:
var Dialog: TMyAboutDialog;

Dialog := TMyAboutDialog.Create(Self);
try
  Dialog.ShowModal;
finally
  Dialog.Free;
end;
oder
Delphi-Quellcode:
with TMyAboutDialog.Create(Self) do
  try
    ShowModal;
  finally
    Free;
  end;

turboPASCAL 16. Mai 2010 15:10

Re: [OS] Metaballs-About Preview
 
...oder man sehe sich "MetaballsDemoVCL v2.Exe&Source.zip" an. ;)

Dracoon 10. Aug 2010 09:59

AW: [OS] Metaballs-About Preview
 
kann ich die metaballs auch in ihrer grösse ändern ?
hab mal bissel versucht im code, aber bekomme nur die grösse vom rand geändert.

turboPASCAL 10. Aug 2010 10:19

AW: [OS] Metaballs-About Preview
 
Ja, aber nur bei dem Erstellen:

Delphi-Quellcode:
procedure TAboutForm.FormCreate(Sender: TObject);
var
  myAboutText: TStringlist;
begin
  // ...

  MetaBalls := TMetaballs.Create(Self.Handle, PaintBox1.BoundsRect);
  try
    MetaBalls.SrinkX := 82;
    MetaBalls.SrinkY := 46;

  // ...
Verändere also die Grösse der PaintBox.

himitsu 10. Aug 2010 10:21

AW: [OS] Metaballs-About Preview
 
Über die Variablen d und m in TMetaballs.Calc werden die Pixel um die Metabals berechnet und zusammen mit den m-Vergleichen in den nachfolgenden IFs wird die Größe (der sichtbare Bereich) vorgegeben ... gößere Zahlen = kleinere Bälle.

Und vergiß nicht die Berechnung für die Randkollision anzupasen.

turboPASCAL 10. Aug 2010 10:27

AW: [OS] Metaballs-About Preview
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

... kann ich die metaballs ...
:wall: Lesen und richtig lesen ...

Zitat:

Zitat von himitsu (Beitrag 1040746)
Über die Variablen d und m in TMetaballs.Calc werden die Pixel um die Metabals berechnet und zusammen mit den m-Vergleich in den nachfolgenden IFs

Genau.

Delphi-Quellcode:
// ...

  MetaBalls := TMetaballs.Create(Self.Handle, PaintBox1.BoundsRect, 5); // <-<< geändert, 5 = Anzahl der MetaBälle
  try
    MetaBalls.SrinkX := 20;               // <-<< Abstand zum BoundsRect ("Bande")
    MetaBalls.SrinkY := 20;

    MetaBalls.BorderColor := clRed;       // <-<< neu
    MetaBalls.InnerColor := clRed;        // <-<< wird nicht genutzt !

    MetaBalls.MBallsSize := 0.0025;       // <-<< neu
    MetaBalls.MBallsBorderSize := 0.0005; // <-<< neu

    //...


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz