[ascoders] Punkt auf Linie finden mit ggb. Abstand zu einer Ellipse

  • From: André Michelle <am@xxxxxxxxxxxxxxxxxx>
  • To: <ascoders@xxxxxxxxxxxxx>
  • Date: Wed, 4 Feb 2004 13:26:48 +0100

hi,


es geht um Kollisionen mit Ellipsen(-segmenten). Die mathische
Aufgabenstellung konnte ich jetzt herausextrahieren:

Gegeben:
Linie p0,p1
Ellipse x,y,rx,ry

Gesucht ist der Punkt auf einer Linie, der den Abstand X zu einer Ellipse
hat.

Folgendes konnte ich bisher selber lösen:
Punkte auf Ellipse:
px = Math.cos( t ) * rx;
py = Math.sin( t ) * ry;

Normalenvektor dazu:
 var nx =  Math.cos( t) * ry;
 var ny =  Math.sin( t) * rx;
 var len = Math.sqrt( nx * nx + ny * ny );
 nx /= len;
 ny /= len;

Jetzt kommt die große Umstellung der Gleichung, wo ich erstmal passen muss.
Ich denke, jetzt muss ich den Normalen Vektor mit dem gewünschten Abstand
multiplizieren und mit der Linie gleichsetzen.
Dabei erhalte ich 0,1 oder 2 Lösungen für "t" als Winkel.


Kann das jemand schneller als ich erfassen und mir helfen ?

http://andre-michelle.com/files/temp/ellipse_distance_line.swf
http://andre-michelle.com/files/temp/ellipse_distance_line.fla < strukturlos
:O)


--
aM

------------------------------------------------------
Archiv   : //www.freelists.org/archives/ascoders/
Optionen : //www.freelists.org/list/ascoders
------------------------------------------------------

Other related posts: