AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi prüfen ob punkt sich im kreis befindet
Thema durchsuchen
Ansicht
Themen-Optionen

prüfen ob punkt sich im kreis befindet

Ein Thema von glkgereon · begonnen am 15. Sep 2004 · letzter Beitrag vom 19. Sep 2004
Antwort Antwort
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#1

prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 16:04
hi
einige werden es erraten haben, ja ich will mir eine monte-carlo-simulation machen

dazu muss man ja prüfen, ob ein punkt im kreis is (oder eben nicht)
ich wollte es mit nem viertelkreis machen

hab irgendwo gehört, man müsste sinus*cosinus und dann wenn >1 dann isses drin, wenn <1, dann halt nit oder so....

weiss das einer genau?
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 16:06
[dp]monte* *carlo*[/dp]
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#3

Re: prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 16:28
also um ehrlich zu sein finde ich in den beiträgen nichts, wo dieses problem besprochen wird, und den einen qt kapier ich nicht
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#4

Re: prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 16:37
Delphi-Quellcode:
function IsPointInCircle(point, center : TPoint; radius:double): boolean;
var
   distance2 : double;
begin
   // Berechnung des Abstands des Punktes vom Mittelpunkt nach Pythagoras
   distance2 := Sqr(point.x-center.x) + Sqr(point.y-center.y);
   // das Wurzelziehen sparen wir uns, stattdessen wird der Radius ebenfalls quadriert

   result := (distance2 <= Sqr(radius));
end;
Und jetzt das Ganze als Einzeiler (zwecks Performance und Vermeidung von Rundungsfehlern):
Delphi-Quellcode:
function IsPointInCircle(point, center : TPoint; radius:double): boolean;
begin
   // Berechnung des Abstands des Punktes vom Mittelpunkt nach Pythagoras
   // das Wurzelziehen sparen wir uns, stattdessen wird der Radius ebenfalls quadriert
   result := ((Sqr(point.x-center.x) + Sqr(point.y-center.y)) <= Sqr(radius));
end;
Andreas
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#5

Re: prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 17:51
Hi,

1. Vermeide Sinus, Cosinus, Wurzelziehen, alles sehr erchenaufwendig un hier überflüsssig
2. Pythagoras ist ein guter Ansatz.
3. Die Umformungen nochmal überprüfen

Grüsse
Woki
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 17:57
Hi woki,

Zitat von woki:
2. Pythagoras ist ein guter Ansatz.
shmias Lösung funktioniert (bei mir) einwandfrei, Ansätze brauchts also nicht mehr
@glkbkk: wenn du nur einen viertelkreis willst, dann musst du die Koordinaten relativ zum Mittelpunkt betrachten, falls es sich bei den Winkeln um 0-90, 90-180 usw. handelt. Falls es nicht die Viertelkreise sind, kommst du um Trig-Funktionen nicht herum..

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#7

Re: prüfen ob punkt sich im kreis befindet

  Alt 15. Sep 2004, 17:59
danke...

klar:

if sqr(x)+sqr(y)<sqr(radius) das is die lösung!!!
danke fürs stichwort
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#8

Re: prüfen ob punkt sich im kreis befindet

  Alt 19. Sep 2004, 12:07
Zitat von alcaeus:
Hi woki,

Zitat von woki:
2. Pythagoras ist ein guter Ansatz.
shmias Lösung funktioniert (bei mir) einwandfrei, Ansätze brauchts also nicht mehr
nun, das soll sie wohl auch, hatte beim lesen sqr und sqrt verwechselt.

Grüsse
Woki
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 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