Ich habe eine Klasse "Point" erstellt und ich möchte die kürzeste Entfernung zwischen einem bestimmten Punkt und einer Linie (gekennzeichnet durch 2 andere Punkte) berechnen, alle Punkte sind bekannt . Ich habe versucht, diese Formel zu verwenden: | Ax + By + C |/sqrt (A^2 + B^2), aber ich vermasselte und wurde mehr durch die Minute verwirrt (meistens wegen der Matheformeln :() ...Python 3.5.2: Entfernung von einem Punkt zu einer Linie
Ich fand einige Aufstellungsorte, in denen Leute diese Frage auch stellten , aber es war auch nicht für Python oder es war in einem 3D-System nicht 2D ...
Unter meiner Klasse ist:
class Point:
def __init__(self,initx,inity):
self.x = initx
self.y = inity
def getX(self):
return self.x
def getY(self):
return self.y
def __str__(self):
return "x=" + str(self.x) + ", y=" + str(self.y)
def distance_from_point(self,the_other_point):
dx = the_other_point.getX() - self.x
dy = the_other_point.getY() - self.y
def slope(self,other_point):
if self.x - other_point.getX() == 0 :
return 0
else:
panta = (self.y - other_point.getY())/ (self.x - other_point.getX())
return panta
Kann mir jemand helfen, eine eigene Funktion oder ein Schreib Methode, die das tut, was ich will? Ich habe für 2 Stunden versucht und ich kann es nicht herausfinden ...
Meinst du eine unendliche Linie, die diese zwei Punkte schneidet, oder eine Linie, die sich zwischen ihnen erstreckt, aber nicht weiter reicht? – Basic
Ich stimme für das Schließen dieser Frage als Off-Topic, da es sich nicht um eine Programmierfrage handelt. Versuchen Sie http://math.stackexchange.com –
@EliKorvigo: Yo, fand ich die mathematischen Formeln auch, aber das Problem war, es in Python zu übersetzen. Auch wer die Fläche eines Dreiecks und die Fläche eines Vierecks berechnen möchte (indem man es in zwei Dreiecke aufteilt) - was ich als nächstes mache - braucht das. – ROBlackSnail