Delphi-PRAXiS

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)

turboPASCAL 25. Apr 2010 22:45


[OS] Metaballs-About Preview
 
Liste der Anhänge anzeigen (Anzahl: 3)
Aus diesem Thread: Metaballs (opengl) !? entstand ein kleines Projekt.

Valle 26. Apr 2010 05:35

Re: [OS] Metaballs-About Preview
 
Hi! :hi:

Coole Animation, sehr interessant was man so aus Canvas rausholen kann. (Zumindest wenn du noch Canvas verwendest, wie du es im verlinkten Thread getan hast) Sieht wirklich klasse aus! :-) Btw: "Autor" schreibt man "author" im Englischen - und klein in dem Kontext. :-)

Liebe Grüße,
Valle *gäähhn*

lbccaleb 26. Apr 2010 06:14

Re: [OS] Metaballs-About Preview
 
Zitat:

Zitat von Valle
Btw: "Autor" schreibt man "author" im Englischen - und klein in dem Kontext. :-)

Wenn wir schon bei Rechtchreibfehler sind, dann solltest vllt. "witeout" in "without" umändern :lol:


Aber schicker About dialog....

TUX_der_Pinguin 26. Apr 2010 07:20

Re: [OS] Metaballs-About Preview
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

ich wollte mir gerade mal dein Projekt ansehen und dazu wollte ich die Anhänge herunterladen, bei der Datei
"MetaballsDemo nonVCL.exe" hat mein Viren Scanner angeschlagen folgendes wurde gemeldet.

http://www2.spackenz.de/~schwabbel/download/GDATA.JPG

www.virustotal.com Ergebnis

Ich vermute mal es liegt eine Falschmeldung vor, aber sicher ist sicher. Bei der 2. Datei wird nichts gemeldet.

mfg

TUX

Matze 26. Apr 2010 07:54

Re: [OS] Metaballs-About Preview
 
Irgendwie fasziniert mich das Dingens.

Edit: Hier gibt's das ganze übrigens auch in einer 3D-Version (Delphi + OpenGL)

turboPASCAL 26. Apr 2010 16:22

Re: [OS] Metaballs-About Preview
 
@Valle, lbccaleb
ja, alles Schlechtschreibungsfehler...

@TUX_der_Pinguin,
GData meldet einen Verdacht der aber nicht Wahr ist.
Das liegt am Aufbau der nonVCL-Exe.

Die "Animation" läuft über Bitmaps und Canvas, bzw. direktem Zugriff auf den Pointer der
Bitmappixel.

Per Opengl wollt ich es nicht machen. Wo wäre denn dann der Spass geblieben...

@DP,
Zitat:

Allgemeiner Fehler
Ran into problems sending Mail. Response: 535 5.7.0 Error: authentication failed
Huch, authentication failed ?

lbccaleb 26. Apr 2010 17:47

Re: [OS] Metaballs-About Preview
 
Ahh, das ja alles Nebensache, Hauptsache ist doch, dass die Metaballs gut aussehen, und das tun Sie. Für mich könnten Sie nur noch nen bissel schneller sein.

Dracoon 7. Mai 2010 22:29

Re: [OS] Metaballs-About Preview
 
Danke dir " turboPASCAL " =)

@lbccaleb kannst du bei zeile 89 anpassen.

Delphi-Quellcode:
{Richtung * Geschwindigkeit}
FMetaball[i].vx := (Random(2) * 2 - 1) + (Random * 0.5 + 0.5);
FMetaball[i].vy := (Random(2) * 2 - 1) + (Random * 0.5 + 0.5);
und bei zeile 196, kannst du einstellen wie nah die metaballs an den rand des fensters kommen.
Delphi-Quellcode:
procedure TForm1.TimerMetaballTimer(Sender: TObject);
const
  bx = 80;
  by = 40;
var
  i: Integer;
gibts da die möglichkeit die metaballs auch in größe und farbe anzupassen? für ein about window sind die 3 doch recht groß :)
farbe z.b über einen timer der alle paar sekunden selbst wechselt.

blackfin 7. Mai 2010 23:38

Re: [OS] Metaballs-About Preview
 
Das ist ja mal der Hammer!

Echt cooles Teil! Und die Musik ist auch toll! :) :dance: :dance: :dance:

Hut ab! :cheer: :cheer:

Dracoon 16. Mai 2010 11:29

Re: [OS] Metaballs-About Preview
 
ein prob hab ich damit aber noch.
da ich das als aboutwindow mit einbinden möchte,
sollte der text und die animation auch erst dann starten wenn das about fenster aufgerufen wird.

aber der text und die animation laufen im hintergrund mit sobald du das programm startest.

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 15:46 Uhr.

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