Entwickler-Ecke
Open Source Projekte - Polyederdarstellung (500 konvexe und nichtkonvexe, OpenGL)
Mathematiker - Sa 25.08.12 08:19
Titel: Polyederdarstellung (500 konvexe und nichtkonvexe, OpenGL)
Hallo,
nach dem ich unter
http://www.entwickler-ecke.de/viewtopic.php?t=110040 sehr viele Hilfe für die Darstellung der Polyeder mit OpenGL erhalten habe, stelle ich jetzt das ganze Programm als OpenSource vor.
Die Idee, Lichteffekte zu nutzen, habe ich erst einmal fallen gelassen, da die Ergebnisse nicht überzeugend sind. Ich glaube, die Polyeder sind mit den bunten Flächen besser zu erkennen.
In der Liste befinden sich im Moment über 200 Körper, darunter alle platonischen, archimedischen und catalanschen Polyeder, sehr viele Johnson-Polyeder und weitere interessante Gebilde, vor allem Sternpolyeder, die ich besonders reizvoll finde.
In der nächsten Zeit werde ich die Liste auch noch erweitern.
Die Eckpunktkoordinaten und die Punktbezeichnungen der Seitenflächen befinden sich in den zwei Res-Dateien. Deren Struktur und die Möglichkeit des Auslesens der Daten kann im Quelltext nachgelesen werden.
Eingestellt werden können die Größe der Darstellung, die Rotationsgeschwindigkeit, die Rotationsachsen und ein weißer oder schwarzer Hntergrund. Der Menüpunkt "Koordinaten" schaltet die Anzeige der Eckpunktkoordinaten und der Seitenflächen an und aus.
Viel Spaß beim Testen und evtl. hat der eine oder andere noch ein paar Hinweise oder Wünsche.
Beste Grüße
Mathematiker
Rev 1: Nach Xions Hinweis auf Z-Fighting werden Sternpolygonflächen vorerst nur mit einer Farbe gefüllt.
Rev 2: 250 Polyeder, darunter alle 92 Johnson-Polyeder, zwei neue Rhombensterne, Drehung des Körpers mit Maus möglich.
Rev 3: 300 Polyeder und zwei neue Darstellungsmodi.
Rev 4: Fehler bei schwarzem Hintergrund und Gittermodell beseitigt.
Rev 5: 16 weitere Polyeder.
Rev 6: jetzt 400 Polyeder enthalten.
Rev 7: Spezielle Polyederarten können jetzt vorausgewählt werden.
Rev 8: jetzt 500 Polyeder, darunter Antiprismen, Polygrammprismen und -Pyramiden, Deltaeder und weitere uniforme Polyeder
Rev 9: 520 Polyeder, Bezeichnungen geändert
Delphi-Laie - Sa 25.08.12 11:36
Einige Körper kannte ich bis dato noch gar nicht.
Anscheinend ist dieses Programm die vervollständigte Nachfolgeversion des in der o.g. Diskussion vorgestellten und allmählich perfektionierten Programmes. Warum dann hier ein erneutes Thema?
Feine Leistung! Sollte man mal den Schüler finden, der davon nicht beeindruckt ist und wenigstens kurzzeitig den Hauch einer Sympathie gegenüber seinem (fast jedermanns) "Lieblingsfach" verspürt.
Mathematiker - Sa 25.08.12 11:51
Delphi-Laie hat folgendes geschrieben : |
Anscheinend ist dieses Programm die vervollständigte Nachfolgeversion des in der o.g. Diskussion vorgestellten und allmählich perfektionierten Programmes. Warum dann hier ein erneutes Thema? |
Ursprünglich ging es ja im alten Thema um das Problem der Lichteffekte. Da dies (für mich) vorerst abgehakt ist, war ich mir nicht ganz sicher, was ich machen soll. Eigentlich sollte es ein Open Source Programm sein.
Ich habe mir gedacht, dass man im alten Thread kaum nach Beispielprogrammen sucht. Zwei Threads zum scheinbar gleichen Thema sind ziemlich blöd, ich weiß.
Ich bin jetzt noch unschlüssig, ob es richtig war, das Thema an anderer Stelle nochmals zu eröffnen. :nixweiss: :nixweiss: :nixweiss: ...
Delphi-Laie hat folgendes geschrieben : |
Sollte man mal den Schüler finden, der davon nicht beeindruckt ist und wenigstens kurzzeitig den Hauch einer Sympathie gegenüber seinem (fast jedermanns) "Lieblingsfach" verspürt. |
Ja es ist so, mathematische Gebilde sind wunderschön! Und vor allem sind solche Körper ein Superbeispiel dafür, dass Mathematik zu den kreativsten Bereichen des menschlichen Denkens gehört. Derjenige, der die Idee hatte, auf einen Rhombendreißigflächner verschiedene Pyramiden aufzusetzen, so dass solche Körper wie RS2, RS5 oder RS36 entstehen, ist meiner Meinung nach genial.
Geht es um schöne Mathematik, komme ich ins Schwärmen. :D
Einer meiner Lieblingssprüche:
"Das entscheidende Kriterium ist Schönheit; für hässliche Mathematik ist auf dieser Welt kein beständiger Platz." (Godrey Harold Hardy, 1877-1947)
Beste Grüße
Mathematiker
Martok - So 26.08.12 00:32
Mathematiker hat folgendes geschrieben : |
Ursprünglich ging es ja im alten Thema um das Problem der Lichteffekte. Da dies (für mich) vorerst abgehakt ist, war ich mir nicht ganz sicher, was ich machen soll. Eigentlich sollte es ein Open Source Programm sein.
Ich habe mir gedacht, dass man im alten Thread kaum nach Beispielprogrammen sucht. Zwei Threads zum scheinbar gleichen Thema sind ziemlich blöd, ich weiß.
Ich bin jetzt noch unschlüssig, ob es richtig war, das Thema an anderer Stelle nochmals zu eröffnen. :nixweiss: :nixweiss: :nixweiss: ... |
Ja, das passt schon so :zustimm:
Das eine war ja eine Fragestellung, die etwas Off-Topic geworden ist, das hier ist die Projektvorstellung ohne Programmierprobleme.
Mathematiker - Mo 27.08.12 12:51
Hallo,
in der Variante 3 des Programms (siehe erster Eintrag) habe ich versucht, die Darstellung der Polyeder auch als Gittermodell und außerdem mit zusätzlich hervorgehobenen Kanten zu realisieren.
Auf meinem Computer sieht es relativ gut aus. Vielleicht könnte jemand mal überprüfen, ob dies auch auf anderen PCs funktioniert. Danke.
Beste Grüße
Mathematiker
Mathematiker - So 11.11.12 19:39
Hallo,
nach über zwei Monaten Pause habe ich mein Polyederprogramm wieder hervorgeholt und 16 neue Polyeder ergänzt.
Es wäre schön, wenn jemand von Euch eine kleine Rückmeldung geben könnte, ob die Darstellung der Polyeder als Gittermodell und mit zusätzlich hervorgehobenen Kanten auch auf anderen Systemen funktioniert. Danke.
Wenn alles ok ist, werde ich (geplant) auf 400 verschiedene Polyeder erweitern.
Beste Grüße
Mathematiker
ub60 - Mo 12.11.12 20:37
Ich freue mich immer wieder, wenn Du zu viel Zeit hast und so schöne Sachen zum "Spielen" bastelst :D.
Die Polyeder funktionieren alle gut, lediglich der Z12-Stern flackert etwas an den Berührungs- bzw. Durchdringungskanten.
Mathematiker - Mo 12.11.12 20:59
Hallo Ub60,
ub60 hat folgendes geschrieben : |
Die Polyeder funktionieren alle gut, lediglich der Z12-Stern flackert etwas an den Berührungs- bzw. Durchdringungskanten. |
Dank für den Test. Den Z12 sehe ich mir noch einmal genauer an. Das Schwierige bei diesem ist, dass an den Durchdringungsstellen tatsächlich mehrere Seitenflächen "übereinander" liegen.
Auf jeden Fall werde ich jetzt einige Polyeder mehr aufnehmen. Ziel sind 400, vielleicht auch mehr.
Beste Grüße
Mathematiker
Tranx - Mo 12.11.12 21:19
Allein schon die jetzige Vielfalt ist beeindruckend. Man sieht, Mathe ist eben nicht nur ein dröges Thema. Da ist schon ne Menge toller Sachen mit zu machen. Und das ganze mit einer sehr guten Umsetzung.
Alle Achtung!
Mathematiker - Di 13.11.12 21:30
Hallo,
Tranx hat folgendes geschrieben : |
Und das ganze mit einer sehr guten Umsetzung. Alle Achtung! |
Danke.
Wie angekündigt habe ich die Polyederzahl auf 400 erhöht. Weitere, vorwiegend nicht konvexe Sternpolyeder und Toroide, werde ich in den nächsten Tagen ergänzen.
Exe und Quelltext sind jetzt als Zip-Datei getrennt, da sie zusammen langsam groß werden.
Beste Grüße
Mathematiker
Mathematiker - So 29.12.13 12:04
Hallo,
auf Anregung von
Delphi-Laie können jetzt spezielle Polyederarten vorausgewählt werden. Dadurch wird es natürlich übersichtlicher.
Allerdings habe ich so gemerkt, dass vor allem viele uniforme Polyeder noch fehlen. Das heißt also wieder Arbeit.
Beste Grüße
Mathematiker
Delphi-Laie - So 29.12.13 12:15
Lässig, danke!
Es ist mal wieder eine Verbesserung in einem Umfange, die mein kühnstes Horoskop vorauszusehen nicht imstande (oder nicht couragiert genug) war.
Daß Du auf diese Weise bemerktest, daß noch welche fehlen: Ordnung (oder, im Wissenschaftsjargon, Systematik) ist eben das halbe Leben! ;-)
Delphi-Laie - So 29.12.13 13:46
Auch auf die Gefahr hin, ein wenig lästig zu sein, 1-2 Anregungen habe ich noch, nämlich die Kategorien
1. "Deltaeder" und
2. ggf. auch "Antiprismen" (oder -prismata?)
hinzuzufügen. Es kann natürlich sein, daß Deltaeder neben der gemeinsamen Eigenschaft, von gleichseitigen Dreiecken begrenzt zu werden, keine weitere gemeinsame herausragende mathematische Eigenschaft haben, das weiß ich nicht. Edit: Es sind laut wikipedia sogar "zueinander kongruente gleichseitige Dreicke"....
Mathematiker - So 29.12.13 15:50
Hallo,
Delphi-Laie hat folgendes geschrieben : |
...
1. "Deltaeder" und
2. ggf. auch "Antiprismen" (oder -prismata?) |
In Revision 8 schon erledigt. Die Antiprismen (in der Mathe heißt es wirklich Prismen) sind bei den Prismen enthalten.
Zusätzlich habe ich Polygrammprismen und -pyramiden sowie einige (noch nicht alle) uniforme Polyeder ergänzt. Insgesamt sind es jetzt 500 Polyeder.
Beste Grüße
Mathematiker
Delphi-Laie - So 29.12.13 19:06
Phantastisch...allmählich wird das Programm eine vollständige und dazu ungemein anschauliche Polyeder-Datenbank.
Kleinigkeiten fielen mir noch auf:
1. Nur etwas sprachliches: Wenn die "halbregulären" (so nennst Du sie nicht) Polyeder Archimedische sind (müßte das nicht großgeschrieben werden?), dann haben m.E. die weitaus edleren regulären die Bezeichnung "Platonisch" m.E. doch geradezu verdient (immerhin ist platonisch auch die reinste Form der Liebe ;-) ). "Regulär" und "Platonisch" passen allerdings nicht gemeinsam auf den Registerreiter, erst recht nicht "halbregulär" und "Archimedisch".
2. Maximiert zoomen (der Button ist bedienbar) bringt nichts, die Polyedergraphik profitiert davon nicht mit einer Vergrößerung, lediglich die Registerreiter sind dann ggf. alle hintereinander bzw. in Reihe. Mir ist natürlich klar, daß eine vollzoombare Graphik vom Programmieraufwand her deutlich aufwendiger ist.
Weiter so!
Gruß Delphi-Laie
Mathematiker - So 29.12.13 19:38
Hallo,
Delphi-Laie hat folgendes geschrieben : |
1. Nur etwas sprachliches: Wenn die "halbregulären" (so nennst Du sie nicht) Polyeder Archimedische sind (müßte das nicht großgeschrieben werden?), ... |
Und schon sind wir wieder bei der "neuen" Rechtschreibung. :wink:
Ich habe es auf Platonisch, Archimedisch und Catalanisch geändert. Sieht auch besser aus.
Die Keplerschen Sternpolyeder habe ich deshalb aus den regulären, jetzt Platonischen, herausgenommen.
Delphi-Laie hat folgendes geschrieben : |
2. Maximiert zoomen (der Button ist bedienbar) bringt nichts, die Polyedergraphik profitiert davon nicht mit einer Vergrößerung, lediglich die Registerreiter sind dann ggf. alle hintereinander bzw. in Reihe. |
Das verstehe ich nicht. Bei mir wird die Darstellung deutlich größer.
Aber so einen Effekt kenne ich. Unter Vista durfte die Fenstergröße einen bestimmten Wert nicht überschreiten, sonst ging gar nichts mehr. Unter Win 7 und Win 8/8.1 funktioniert es bei mir.
Ich werde noch einmal sehen, was ich machen kann.
Beste Grüße
Mathematiker
Delphi-Laie - So 29.12.13 20:44
Mathematiker hat folgendes geschrieben : |
Das verstehe ich nicht. |
Ich auch nicht (mehr).
Mathematiker hat folgendes geschrieben : |
Bei mir wird die Darstellung deutlich größer |
Bei mir nämlich jetzt auch. Vorher, als ich das Phänomen bemängelte, war es in Windows 2000, jetzt in XP ist es problemlos zoom-, ja maximierbar, inkl. Inhalt.
Wundert mich vor allem deshalb, weil beide Betriebsprogramme graphisch doch recht ähnlich sind, nicht nur bezüglich der Bedienelemente, sondern vermutlich auch mit gleicher oder ähnlicher "engine".
Allmählich wird das Programm wirklich perfekt.
Delphi-Laie - Mo 30.12.13 18:46
Die neueste Version ist nunmehr auch unter einem meiner Windows 2000 frei zoom-/skalierbar. Irgendetwas scheinst Du da doch noch verändert zu haben, denn das alte (Fehl-)Verhalten ist nunmehr beseitgt.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!