Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Beliebigen Punkt in einem Viereck berechnen (https://www.delphipraxis.net/135469-beliebigen-punkt-einem-viereck-berechnen.html)

hitzi 11. Jun 2009 12:57


Beliebigen Punkt in einem Viereck berechnen
 
Hallo,

ich habe die vier Eckpunkte gegeben. Wie kann ich nun daraus einen beliebigen Punkt im Viereck berechnen?

Viele Grüße

SimStar001 11. Jun 2009 13:12

Re: Beliebigen Punkt in einem Viereck berechnen
 
willst du wissen ob ein bestimmter punkt drin liegt, oder willste einfach einen punkte auch einer kante brechnen!?

Im prinzip beides sehr einfach!

Klaus01 11. Jun 2009 13:13

Re: Beliebigen Punkt in einem Viereck berechnen
 
.. willst Du feststellen ob der Punkt im Viereck liegt.

Bedingung dafür ist:

Code:
(Punkt.x > Viereck.left) and (Punkt.x < (Viereck.left + Viereck.width))
Für die Y Achse ist es ähnlich.

Grüße
Klaus

jfheins 11. Jun 2009 13:18

Re: Beliebigen Punkt in einem Viereck berechnen
 
Also meine erste Frage wäre ja gewesen, ob es ein allgemeines Viereck, ein Parallelogramm, ein Rechteck oder ein Quadrat ist ...

Ich glaube meine beiden Vorposter haben angenommen dass es sich zumindest um ein Rechteck handelt - dieser Fall wäre in der Tat sehr einfach.

Für ein allgeimenes Viereck ist das schon schwieriger ;)

nachti1505 11. Jun 2009 13:18

Re: Beliebigen Punkt in einem Viereck berechnen
 
Zitat:

Zitat von Klaus01
Bedingung dafür ist:

Code:
(Punkt.x > Viereck.left) and (Punkt.x < (Viereck.left + Viereck.width))

Leider nicht, du gehst davon aus, das das Viereck "gerade in der Ebene liegt". Sollte es jedoch gedreht - ähnlich einer Raute - sein, sind andere Überlegungen erforderlich.

hitzi 11. Jun 2009 13:29

Re: Beliebigen Punkt in einem Viereck berechnen
 
Es ist ein allgemeines (konvexes?) Viereck. Mir recht es nicht, ob ein Punkt sich in diesen Viereck befindet. Ich muss stattdessen die Koordinate des Punktes ermitteln. Ich dachte erst an eine Art der Verhältnisgleichung, aber ich bin mir nicht sicher, ob ich damit zum Ziel komme.

Ich habe für alle vier Eckpunkte die Koordinaten (x/y). Nur mal als Beispiel:
Delphi-Quellcode:
.     --------b
a------        |
|              |
|     z       |
 |             |
 |             |
  |           |
  |           |
  c-----------d
(der Punkt ist nur dazu da, die Formatierung zu erhalten)


a: x=0; y=7
b: x=15; y=8
c: x=2; y=0
d: x=14; y=0


Wie komm ich an die Koordinaten von z?

Apollonius 11. Jun 2009 13:30

Re: Beliebigen Punkt in einem Viereck berechnen
 
Wenn das Viereck konvex ist, liegt der Schwerpunkt, d.h. (a + b + c + d)/4, immer im Inneren des Vierecks.

Klaus01 11. Jun 2009 13:33

Re: Beliebigen Punkt in einem Viereck berechnen
 
.. Woher weißt Du denn, das sich ein Punkt im Viereck befindet?
Wie findest Du den Punkt?

Welche Koordinaten suchst Du, bezogen auf die Grenzen des Vierecks -
oder absolut?

Grüße
Klaus

jfheins 11. Jun 2009 13:35

Re: Beliebigen Punkt in einem Viereck berechnen
 
Zitat:

Zitat von Apollonius
Wenn das Viereck konvex ist, liegt der Schwerpunkt, d.h. (a + b + c + d)/4, immer im Inneren des Vierecks.

Der ist aber nicht besonders zufällig ...
Zitat:

Zitat von Klaus01
.. Woher weißt Du denn, das sich ein Punkt im Viereck befindet?
Wie findest Du den Punkt?

Er möchte ja gerade einen zufälligen Punkt bekommen, der im Viereck liegt!

Apollonius 11. Jun 2009 13:37

Re: Beliebigen Punkt in einem Viereck berechnen
 
Wer sprach von zufällig? Im Ausgangspost heißt es nur "beliebig".


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.
Seite 1 von 2  1 2      

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