Einzelnen Beitrag anzeigen

DerManu

Registriert seit: 19. Mär 2007
2 Beiträge
 
#23

Re: Ist ein Punkt in einem Polygon

  Alt 20. Mär 2007, 22:32
Zitat von Amateurprofi:
Polygondaten liegen i.d.R. nicht als Singles vor sondern als Integers.
Die Umstellung auf Singles sollte deshalb innerhalb der Funktion erfolgen.
Für prüfungen auf z.b. der 2D programmoberfläche mit mauscursor stimmt das zweifellos. Meine PtInPoly-prüfung jedoch findet zukünftig in einer "zoombaren" umgebung statt, in der u.a. punkte mit single-genauigkeit dargestellt/gesetzt/usw. werden können. Da wird dann eine so zu sagen mathematische genauigkeit gebraucht.

Zitat von Amateurprofi:
und:
Scheint nicht richtig zu arbeiten.
Die im anhängenden Bild rot markierten Punkte werden falsch erkannt.
Jap, da hast du recht. Wenn man das so fies hinbiegt, dass der strahl genau auf einen poly-punkt schießt, geht's schief
Ich denke eine relativ sinnvolle abhilfe wäre, den strahl per zufall in eine richtung zu schicken und zu prüfen, ob einer der polygonpunkte auf ihm liegt, also die geradengleichung erfüllbar ist. Falls ja, einfach einen neuen vektor zufällig generieren.

Für meine einsatzzwecke genügt das bisherige aber, da es praktisch wohl nie vorkommen wird, dass der benutzer es schafft mit der maus auf alle 7 stellen des singles exakt auf die höhe eines punktes des polygons zu kommen (hoffentlich ).

Vielen Dank für die Kritik,
Manu
  Mit Zitat antworten Zitat