Entwickler-Ecke

Open Source Projekte - Kreisinversion einer Kurve


Mathematiker - So 07.04.13 15:36
Titel: Kreisinversion einer Kurve
Hallo,
auf Anregung von user profile iconDelphi-Laie unter http://www.entwickler-ecke.de/viewtopic.php?t=111334 habe ich die Inversion einer Kurve (http://de.wikipedia.org/wiki/Inversion_(Geometrie)) an einem Kreis umgesetzt.

Die Gleichungen der Kurven können eingegeben oder in der Beispielliste ausgewählt werden. Der Kreis wird mit Mittelpunkt (mit Maus verschiebbar) und Radius angegeben.
Hat die Kurvengleichung einen Parameter P (bitte nur P als Parameter verwenden), dann kann wieder mit einer Animation die Änderung des Parameters nachvollzogen werden.

Und dieses Mal alles mit den Quelltexten, die natürlich wieder "katastrophal" sind. Aber es funktioniert. :wink:

Beste Grüße
Mathematiker

Rev 1: erste Änderungen durchgeführt, u.a. verschiedenen Möglichkeiten der Animation.


Delphi-Laie - So 07.04.13 16:53

Irgendetwas geht an (oder in?) Deinem Computer nicht mir rechten Dingen zu - wie kann man von einer vorgestellte Idee in so kurzer Zeit ein solch vorzeigbares komplexes Produkt (Programm) zaubern? Selbst, wenn es für alles mögliche schon Quellcodes gäbe, allein, das zusammenzustellen ist doch eine Arbeit von vielen Stunden?!

Die Animation scheint nicht immer zu laufen, aber ich habe es auch erstmal nur kurz getestet.

Was ich weiß, ist, daß Kreise immer Kreise in der Spiegelung bilden, das gilt auch für Geraden (die als Kreise mit unendlichem Radius/Durchmesser gelten können).

Besonders faszinierend wird es, wenn das zu spiegelnde Objekt in beiden Teilen der Ebene - im Kreis und außerhalb des Kreises sich befindet.

Wenn man eine Gerade einfach nur verschieben könnte - über den Kreis, an dem invertiert wird - müßte das ein phantastisches, phänomenales Ergebnis liefern.

Werde damit noch ein wenig spielen.

Dank & Gruß Delphi-Laie


Mathematiker - So 07.04.13 17:12

Hallo,
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
Die Animation scheint nicht immer zu laufen, aber ich habe es auch erstmal nur kurz getestet.

Die Animation geht nur, wenn ein Parameter P in den Gleichungen auftritt.
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
Wenn man eine Gerade einfach nur verschieben könnte - über den Kreis, an dem invertiert wird - müßte das ein phantastisches, phänomenales Ergebnis liefern.

Ich habe deshalb Kurven genommen, da dann auch jede Funktion gezeichnet werden kann. Dazu gibst Du X = K und Y = Funktionsterm (bitte statt X nun K verwenden) ein.
Mitunter muss dann der Kurvenbereich unter von ... bis noch erweitert werden.
Für eine Gerade habe ich zum Beispiel

Quelltext
1:
2:
3:
X = K
Y = 2*(X+P)
von -2*PI bis 2*PI

eingegeben.
Bei einer Animation wandert dann die Gerade über den Kreis.

Beste Grüße
Mathematiker


Delphi-Laie - So 07.04.13 17:29

So, jetzt muß ich wirklich ernst mit meiner Ankündigung machen: Mathematiker, Du bist für mich der Allergrößte! ;-)


Tranx - So 07.04.13 18:40

Vor allem, was er so alles aus der Mathematik herausholt. Seine SchülerInnen können stolz sein, so einen engagierten Lehrer zu haben!


Delphi-Laie - So 07.04.13 18:50

user profile iconTranx hat folgendes geschrieben Zum zitierten Posting springen:
Vor allem, was er so alles aus der Mathematik herausholt.


Ich würde eher sagen, was unser Mathematiker aus Delphi und seinen Programmierfähigkeiten herausholt.

user profile iconTranx hat folgendes geschrieben Zum zitierten Posting springen:
Seine SchülerInnen können stolz sein, so einen engagierten Lehrer zu haben!


Ach, seine Schüler nicht? Schade um diese geschlechtsbezogene Einseitigkeit.


Tranx - So 07.04.13 19:36

Ey, Hast Du das große I nicht gelesen. Das war bei mir damals das Kennzeichen für geschlechtsneutrale Bezeichnungen.


Mathematiker - So 07.04.13 19:43

Hallo,
wenn es jetzt schon geschlechtsneutral "Radfahrende" gibt, einigen wir uns auf "Unterrichtkörperlichbesuchende". :mrgreen:
"Unterrichtbesuchende" reicht nicht, da man das mit "Unterrichtgeistigbesuchende" verwechseln könnte. :D

Beste Grüße
Mathematiker


Delphi-Laie - So 07.04.13 20:18

user profile iconTranx hat folgendes geschrieben Zum zitierten Posting springen:
Ey, Hast Du das große I nicht gelesen. Das war bei mir damals das Kennzeichen für geschlechtsneutrale Bezeichnungen.


Ich kenne keinen geschlechtsneutralen Schüler. Jeder hat ein Geschlecht, und zwar entweder ein männliches oder ein weibliches! ;-)


Tranx - So 07.04.13 21:46

Ich habe nicht von geschlechtsneutralen Schülern geschreiben, sondern von Bezeichnungen. Es gibt ja auch nur Mitglieder und nicht Mitgliederinnen. Weil es das Mitglied heißt. Aber wir kommen echt vom Thema ab.


Delphi-Laie - So 07.04.13 21:51

user profile iconTranx hat folgendes geschrieben Zum zitierten Posting springen:
Ich habe nicht von geschlechtsneutralen Schülern geschreiben, sondern von Bezeichnungen. Es gibt ja auch nur Mitglieder und nicht Mitgliederinnen. Weil es das Mitglied heißt. Aber wir kommen echt vom Thema ab.


Richtig, das tun wir. Dennoch: Warum, zum Teufel, bezeichnest du Lebewesen mit Geschlecht geschlechtsneutral? Ich käme nicht im Traume darauf, jemandem sein Geschlecht zu unterschlagen.

Ergänzung: Meinetwegen lassen wir das, ich ziehe die Frage zurück. Sonst ziehe ich mir noch mehr Unbill (seitens) der Moderation zu.


Delphi-Laie - So 07.04.13 23:33

So, Mathematiker, dieses Programm noch etwas genauer untersucht, ich habe noch einige wenige Anregungen:

1. Wäre es nicht möglich, bei den vielen Kurven jeweils einen geeigneten Startparameter und auch die Darstelllung (Polarkoordinaten bzw. Parameterform), ggf. noch irgendwelche Startwerte, damit die Animation bei Druck auf den gleichnamigen Knopf sofort loslegen kann? Was man sieht, erklärt sich von allein, besonders, wenn es sich bewegt (so sind wir von der Evolution schließlich programmiert).

2. Könnte man den Kreis nicht auch noch in der Größe variabel machen? Zur Zeit ist er im Verhältnis zu einigen Kurven, die sich im Kreis befinden, recht groß, so daß das "Draußenliegende" dann ziemlich weit vom Kreis entfernt wird.

Wie Du aus einer Anregung innerhalb einiger Stunden ein solches Programm präsentieren konntest, dafür ist das Wort Verblüffung noch maßlos untertrieben. Gib endlich zu, daß Du eine Programmierabteilung unter Dir hast! ;-)

Seit ca. 20 Jahren kenne ich die Inversionen, aber zu einer Programmierung derselben konnte ich mich nie aufraffen. Hätte auch nach Monaten bei mir noch nicht so ausgesehen.

Mich hättest Du als Schüler schon ohne solche Programme auf der Seite der Mathematik gehabt. Mit solchen Programmen jedoch wäre ich als Schüler in endgültige Verzückung geraten. Was hast Du für Schüler, die sich nicht einmal von so etwas animieren, begeistern lassen?

Jedenfalls mein dickstes Lob dafür! Auch die Delphipraxis wäre wahrscheinlich begeistert (zumindest diejenigen, die wissen, worum es hierbei geht).

Gruß Delphi-Laie

Ergänzung: 2. Nehme ich zurück, ist ja schon vorhanden....völlig übersehen zunächst.
Ergänzung 2: Kleine Ergonomieverbesserungsanregung: Schaltet man zwischen Parameterform und Polarkoordinaten hin und her, wird die Darstellung nicht automatisch umgeschaltet. Könnte m.E. passieren.
Ergänzung 3: Vielleicht könnte man auch bei den Kurven, die keinen Parameter haben, die also nicht animiert werden können, den "Button Animation/Abbruch" auf disable umschalten, damit man nicht nach Versuch und Irrtum experimentieren muß? Dann wäre im Gegenzug ein mit der Maus zoom- und/oder verschiebbarer Invertierungskreis (zoombar an der Peripherie, verschiebbar über seinen Mittelpunkt) analog der Verschiebbarkeit in Deinem Dreiecksprogramm phantastisch, müßte ebenfalls beeindruckende Ergebnisse erzielen, weil auch eine flüssige Animation, ein Filmchen dabei entsteht. Ganz schlau bin ich noch nicht geworden, was die Umschaltung zwischen Polarkoordinaten und Parameterform für einen Hintergrund hat (auch wenn ich beides vom Grundsatz her kenne).


ssb-blume - Mo 08.04.13 09:12

Hallo,
bei mir war das ganze mal (vor sehr langer Zeit) "Konforme Abbildung" oder irre ich mich da?
Der Zweck einer solchen ist:
Berechne mal die Spannungen in einem Tunnel (zur Ermittlung von Bewehrug uä.)! das geht wunderbar mit einer konformen Abbildung, denn da wird alles was, innerhalb des Kreises ist, nach außen gespiegelt (sprich es wird dann aus einem Loch ein rundes Ding)und dann ist es sehr leicht..

Hansi


Mathematiker - Mo 08.04.13 10:35

Hallo Delphi-Laie,
vielen Dank für die vielen Hinweise. Ich habe die ersten Änderungen vorgenommen.
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
Wäre es nicht möglich, bei den vielen Kurven jeweils einen geeigneten Startparameter und auch die Darstelllung (Polarkoordinaten bzw. Parameterform), ggf. noch irgendwelche Startwerte, damit die Animation bei Druck auf den gleichnamigen Knopf sofort loslegen kann?

Die Animationsmöglichkeiten habe ich erweitert. Außer dem Parameter können der Kreisradius, die Abszisse des Mittelpunktes und dessen Ordinate verändert werden.
Wählst Du eine vordefinierte Kurve aus, wird automatisch getestet, ob ein Parameter vorhanden ist und die Animationsmöglichkeit eingestellt.
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
Was hast Du für Schüler, die sich nicht einmal von so etwas animieren, begeistern lassen?

Nun ja, Schülerschelte bringt nicht unbedingt etwas. Aber die Zeiten haben sich verändert. Selbst mit bunten, sich bewegenden Bildern von wunderschönen Fraktalen gewinnt man nicht mehr viel.
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
Auch die Delphipraxis wäre wahrscheinlich begeistert (zumindest diejenigen, die wissen, worum es hierbei geht).

Die EE wird mein Hauptforum bleiben. Der Umgangston und die Leute sind hier netter. In der DP werde ich vielleicht ab und an etwas vorstellen. Im Moment denke ich, eher nicht. :?
user profile iconDelphi-Laie hat folgendes geschrieben Zum zitierten Posting springen:
Ganz schlau bin ich noch nicht geworden, was die Umschaltung zwischen Polarkoordinaten und Parameterform für einen Hintergrund hat (auch wenn ich beides vom Grundsatz her kenne).

Einige Kurvengleichungen kann man besser in Polarkoordinatenform angeben. Deshalb habe ich diese Umschaltmöglichkeit.

Hallo ssb-blume,
user profile iconssb-blume hat folgendes geschrieben Zum zitierten Posting springen:
bei mir war das ganze mal (vor sehr langer Zeit) "Konforme Abbildung" oder irre ich mich da?

Ich kenne konforme, d.h. winkeltreue, Abbildungen von den komplexen Zahlen. Genauer weiß ich es aber nicht, ob konforme Abbildung und Kreisinversion näher verwandt sind. Es sieht zumindest so aus.

Beste Grüße
Mathematiker