Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   alle Integerkoordinaten eines Kreises (https://www.delphipraxis.net/144996-alle-integerkoordinaten-eines-kreises.html)

Medium 22. Dez 2009 18:55

Re: alle Integerkoordinaten eines Kreises
 
[equote="Wikipedia sagt im ersten Absatz im Artikel 'Kreis' dazu:"]
Ein Kreis ist definiert als Menge [...] aller Punkte der euklidischen Ebene, deren Abstand von einem vorgegebenen Punkt M gleich einer festen positiven reellen Zahl r ist. Diese Definition entspricht dem Zeichnen eines Kreises mit dem Zirkel.

(Edit: Weiter unten heisst es dann noch)
Nach der gegebenen Definition ist ein Kreis eine Kurve, also ein eindimensionales Gebilde, und keine zweidimensionale Fläche. Da das Wort „Kreis“ aber oft ungenau für die eingeschlossene Fläche benutzt wird, verwendet man zur Verdeutlichung häufig die Begriffe Kreislinie oder Kreisrand anstatt Kreis – im Gegensatz zur Kreisfläche oder (geschlossenen) Kreisscheibe. Diese ist definiert als die Menge aller Punkte der Ebene, deren Abstand von M höchstens r ist. Das Innere dieser Fläche bezeichnet man als offene Kreisscheibe. Ihre Punkte haben von M einen Abstand kleiner als r.
[/equote]
So hab ich es auch gelernt, und bei meinen paar Jährchen grafischer Programmierung nie anders definiert gesehen. Man spricht ja auch von "Punkten im Kreis", statt von "Punkten auf dem Kreis" wenn von Punkten der Kreisfläche die Rede ist. (Bei Punkten auf dem Perimeter wird man die erste Variante weit häufiger antreffen.)

Wir sind hier übrigens alle Kumpels: "Du" statt "Sie" hat sich eingebürgert ;)

Delphi-Laie 22. Dez 2009 20:14

Re: alle Integerkoordinaten eines Kreises
 
Nun, ich lernte es anders, bestehe aber bei dieser letztlich Sopihisterei nicht darauf, daß meine Begrifflichkeiten korrekt sind. Letztlich sollte man, um Unklarheiten zu beseitigen und als Kompromißvorschlag, vielleicht generell von Kreisfläche und Kreislinie sprechen. Aber eine kleine Analogie erlaube ich mir dennoch zu strapazieren: Was ist z.B. ein Rechteck: Eine Umrandung (einer Fläche) oder diese Fläche selbst inkl. Randlinie(n)? :wink: In jeder mir bekannten Formelsammlung findet man Formeln/Gleichungen für den Flächeninhalt z.B. des Kreises oder Rechteckes, nie jedoch für die von den gleichnamigen Linien eingeschlossenen Flächen.

Die Wikipediaargumentation ist in einer Beziehung Unfug: Der Kreis - wenn man ihn denn als zweidimensionales Gebilde, also als Fläche annimmt - ist mitnichten die von der Kreisfläche eingeschlossene Punktmenge, sondern seine Punktmenge besteht aus dieser Punktmenge und der (Punktmenge der) Kreislinie.

Zitat:

Zitat von Medium
Man spricht ja auch von "Punkten im Kreis", statt von "Punkten auf dem Kreis" wenn von Punkten der Kreisfläche die Rede ist. (Bei Punkten auf dem Perimeter wird man die erste Variante weit häufiger antreffen.)

Für was soll das ein Argument sein?

Punkte können bei einer Fläche, die aus Sicht des Betrachters die Dimension null, also fehlende Dicke hat, nie (dar)"auf" liegen, völlig richtig. Im Kreis ist damit richtig. Innerhalb der Kreislinie schon nicht mehr, weil man damit die Punkte der Kreislinie ausschließt.

Medium 22. Dez 2009 21:04

Re: alle Integerkoordinaten eines Kreises
 
Ob nun die Kreislinie bei der Berechnung der Fläche dazu zählt oder nicht ist garnicht von Belang, da ihr Beitrag ohnehin =0 wäre. Die "Frage" an sich macht wenn überhaupt nur in diskretisierten Fällen Sinn. Die Korrektheit der Begrifflichkeiten... naja, ich hab das nicht angefangen ;) (Bin aber ein großer Freund möglichst präziser Ausdrucksweise, grad wenn es um Mathe und Programmieren geht, den Schuh zieh ich mir gern an.)

Ein Rechteck (an und für sich) ist im Übrigen genauso nur der Rand der Fläche die seine Kanten umschließen (also die Kanten selbst). Und dass es Formeln gibt, um die vom Rand eingeschlossene Fläche zu errechnen, ist noch lange kein Indiz dafür dass diese durch das Objekt unmittelbar beschrieben ist. Oder ist dein Garten auch eigentlich dein Zaun? (Oder die Grundfläche des Zaunes wenn du das lieber magst. (Ich bin mir fast sicher, dass da wieder einer einen Weg finden wird die Analogie zu behacken :D))

Mit dem "darauf" und "darin" wollte ich nur darauf hinaus, dass sogar in der intuitiven Alltagssprache die Unterscheidung richtig gemacht wird. Dazu braucht man auch keine 3. Dimension, da man bei Gleichheit nicht selten von "auf" (dem Wert, der Linie etc.) spricht, wenn ein Punkt Teil der betreffenden Menge ist. Dagegen spricht man von "in", wenn sich etwas innerhalb von Begrenzungen befindet. (Zugegeben, bei "Menge" wird "in" benutzt, vermutlich weil es hier anschaulicher ist.) Ich will das nicht unbedingt tiefer diskutieren (hätte aber auch keine Angst davor), da es nur der Versuch einer intuitiven sprachlichen Brücke war.

Was ich letztlich nur wollte: Die falsche Korrektur korrigieren, damit potentielle Leser des Threads sich nicht evtl. auch die nicht zutreffende Definition aneignen.

Wolfgang Mix 22. Dez 2009 21:23

Re: alle Integerkoordinaten eines Kreises
 
Da wir gerade bei Begriffsbestimmungen sind:
Was sind

Zitat:

alle Integerkoordinaten eines Kreises

Delphi-Laie 22. Dez 2009 21:24

Re: alle Integerkoordinaten eines Kreises
 
Medium, das ist auch (und gerade?) eine Frage der Exaktheit der Aussage(n) über eine bzw. mehrere Punktmengen. Der Flächeninhalt ändert sich nicht, wenn man die Begrenzungslinie subtrahiert (Mengesubtraktion), das Gebilde ist dennoch nicht mehr vollständig, so ist z.B. der Durchmesser infinitesimal geringer - ja, ja, als Grenzwertbetrachtung bleibt er natürlich gleich.

Zitat:

Zitat von Medium
Oder ist dein Garten auch eigentlich dein Zaun? (Oder die Grundfläche des Zaunes wenn du das lieber magst. (Ich bin mir fast sicher, dass da wieder einer einen Weg finden wird die Analogie zu behacken :D))

Ei gewiß! Zaun + Garten = Grunstück! Bauen Sie doch mal den Zaun gleich neben Ihrem Grundstück, damit aber eindeutig außerhalb Ihres Grundstückes!

Oder allgemeiner: Die Grenzen gehören ganz einfach mit dazu und sind nicht darum. Ein wenig, aber nicht allzusehr vom Thema abgewichen: begin und end (so wie auch repeat until u.ä.) gehören für mich zum Block mit dazu, und deshalb bin ich allergisch gegen das (zugegebenermaßen ziemlich weit verbreitete) Einrücken der Codezeilen innerhalb solcher Begrenzungen. Sogar in den neueren Delphi-Compilern scheint sich diese (m.E. Un-)Sitte eingebürgert zu haben. Alles Geschmackssache, in meinen Augen erschwert es aber die Lesbarkeit ein Quentchen, objektiv bläht es die Größe der Quellcodedateien unnötig ein wenig auf.

Wolfgang Mix 22. Dez 2009 22:41

Re: alle Integerkoordinaten eines Kreises
 
Da wir gerade bei Begriffsbestimmungen sind:
Was sind eigentlich
Zitat:

alle Integerkoordinaten eines Kreises
:?: :?: :?:

Medium 22. Dez 2009 23:30

Re: alle Integerkoordinaten eines Kreises
 
Ich "darf" meinen Zaun aber nur auf meinem Grundstück bauen :D. Nein, Witz beiseite - jetzt wird's zwar schon nahezu philosophisch, aber gut. Die Fläche wird unendlich gering kleiner, das kann man so stehen lassen ja. Die Frage ist dann nur: Wen juckt's? Also effektiv! Weil der Wert den ich nachher hinschreibe, der ist der selbe. Ob er nun aus einem Grenzwertprozess stammt, oder einer expliziten Formel macht im "Alltag" keinen Unterschied. Es mag vielleicht 1-3 Konstrukte oder Beweise geben bei denen das eine Rolle spielt, dann aber auch nur der Prozess, nicht der Wert.

Jetzt darf ich aber auch mal: Codeblockbegrenzer haben nicht die "Masse" 0, weshalb es da einen effektiven Unterschied macht ob ich's dazu nehme oder nicht. Die Anzahl gebrauchter Zeilen (bzw. Tokens) ändert sich ja - anders als bei einer geometrischen Figur die Fläche. Token sind schließlich auch quasi "diskret" (oder genauer: Die Menge der Tokens ist abzählbar (und endlich, macht hier aber nix)).

Zur Einrückung sag ich lieber nichts, da sind wir wohl auch sehr extrem unterschiedlicher Meinung, aber das gehört hier nun endgültig nicht mehr hin :)

Fakt ist und bleibt: Gerade, Kreis, Rechteck, Ellipse, Polygon, etc. sind "Kurven" (nicht alle stetig und differenzierbar, klar), und haben als solche nur eine Länge, die Figuren an sich beschreiben keine Fläche. Ob und wie man dann die eingeschlossene Fläche interpretiert, hat damit primär nichts zu tun. Die kann ja gerne auch den Perimeter beinhalten - dieser bleibt davon ja erstmal unberührt, solang man ihn nicht umdefiniert. Im R³ z.B. schiebt sich das alles dann eine Dimension hoch: Kugeln haben kein Volumen, sie haben eine (Ober-)Fläche. Aber innerhalb dieser befindet sich ein definiertes Volumen dass ich berechnen kann. Und wenn man sich die allgemeine Definition einer Kugelformel mal anschaut, unterstützt sie das genau so wie die Kreisformeln. Beide bedingen "Abstand = r", nicht etwa "Abstand <= r" (was ja auch keine Gleichung mehr wäre). Da kannst du glauben und philosophieren was du magst, das ist heutzutage der Konsens in der Geometrie, und somit so lange als "Wahrheit" zu behandeln bis jemand einen geprüften und anerkannten Gegenbeweis aufstellt. So und nicht anders läuft das in Naturwissenschaften nun mal.


(Tut mir leid wenn ich hier jetzt im Thread so klugscheisserig rüber komme, aber das kann man echt so nicht stehen lassen sonst. :cheers:)

Achso! Wolfgang zeigt so schnippsend auf :) "Integerkoordinaten eines Kreises" ist eigentlich Käse, ja. Im Zusammenhang war's hier aber zumindest sehr gut vermutbar was gemeint ist. ("Integerkoordinaten" für sich genommen ist aber okay, es sind halt ganzzahlige Koordinaten auf Denglisch.)

Delphi-Narr 23. Dez 2009 18:34

Re: alle Integerkoordinaten eines Kreises
 
Alle Integerkoordinaten eines Kreises sind
nach einer Fassung nach alle Integerkoordinaten, die auf der Kreislinie liegen oder
nach der zweiten Fassung alle Integerkoordinaten der Kreisfläche und der Kreislinie zusammen.

Integerkoordianten selbst sind entweder gerundete Realkoordinaten oder nur ein Teil alle Punkte im Kreis.
Bei Delphi ist die zweite Methode wohl besser, da sonst eine unendliche Schleife durchlaufen wird, da jedes Gebilde unendlich viele Punkte umfasst.

Ich meinte in meiner Formulierung die Kreisfläche und die Kreislinie, diese war jedoch nicht zwingend für mich, da ich nur ungefähre Werte brauchte...

Wolfgang Mix 23. Dez 2009 18:47

Re: alle Integerkoordinaten eines Kreises
 
Ich veruche, das 'mal meiner Frau zu erklären, vielleicht
versteht die das, die denkt da praktischer als ich :)

[Edit] Der Umfang im Einheitskreis ist ungefähr 6,28 (real), der Durchmesser 2
oder eine Anzahl von Pixeln (Integer), und was definierst Dü?
Erstes macht nicht viel Sinn, weil zu weinig Integerwerte (0 .. 6) [/Edit]

Delphi-Narr 23. Dez 2009 19:13

Re: alle Integerkoordinaten eines Kreises
 
Ja, das wären dann nur 6 Werte... Ich brauch das aber nur ungefähr. Das andere Shape hat ja keine Koordinaten von 14,243632 sondern nur Integerkoordinaten. Und die will ich ja vergleichen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:17 Uhr.
Seite 3 von 4     123 4      

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