6 votos

Puntos en una elipse

Para una aplicación, quiero distribuir equitativamente un cierto número de puntos en el perímetro de una elipse conocida, y, para dibujarlos, necesito saber, para cada punto, el ángulo de la línea que lo une al centro de la elipse .

He aquí un dibujo horrible de lo que debo conseguir: se conoce el número de los puntos, la distancia de los puntos de la elipse es constante (o al menos debería serlo) pero se desconoce (bueno, es circunferencia/número de puntos), se conocen los radios horizontal y vertical, busco la ángulos a0-an

ellipse

Ya sé que es un problema nada fácil, que no tiene una solución finita. El hecho es que no necesito la perfección en la distribución de los puntos, pero sí la rapidez en el cálculo del posicionamiento.

¿Existe una forma o una fórmula fácil que se aproxime a la solución real? ¿Algún altoritmo que permita implementarlo?

Gracias de antemano.

0 votos

Comienza aprendiendo las integrales elípticas de segundo tipo y cómo se relaciona con la excentricidad y la longitud de arco de una elipse.

0 votos

Gracias pero como he dicho necesito una aproximación, para una implementación de la app.

0 votos

¿Cómo de grande será la excentricidad? Una aproximación en serie de potencias podría funcionar, pero cuanto mayor sea la excentricidad, más términos necesitarás en la serie de potencias.

7voto

s01ipsist Puntos 1104

Para una excentricidad pequeña $e$ ,

\begin{align*} e^2 &= 1-\frac{b^2}{a^2}\\ \theta(t) &= t+\left( \frac{e^2}{8}+\frac{e^4}{16}+\frac{71e^6}{2048} \right) \sin 2t+ \left( \frac{5e^4}{256}+\frac{5e^6}{256} \right) \sin 4t+ \frac{29e^6}{6144} \sin 6t+O(e^{8}) \\ \begin{bmatrix} x \\ y \end{bmatrix} &= \begin{bmatrix} a\cos \theta(t) \\ b\sin \theta(t) \end{bmatrix} \end{align*}

el espaciamiento de la longitud del arco es aproximadamente igual para un espaciamiento uniforme de $t\in [0,2\pi]$ .

enter image description here

Véase también mi post más reciente aquí .

0 votos

Bonita fórmula. ¿Qué es t, es una longitud? Si es así, dado el número de puntos en lugar de la longitud, ¿puedo utilizar las aproximaciones de Ramanujan del perímetro de las elipses para encontrar t?

0 votos

Y también, perdón por mi ignorancia, ¿qué es O(e8)?

1 votos

$t$ es el ángulo corregido tal que la arclitud es proporcional a $t$ . $O(e^8)$ significa que los términos de error/resto tienen un orden de magnitud de $e^8$ (ver más en notación O grande .)

4voto

lhf Puntos 83572

He aquí un sencillo algoritmo que distribuye los puntos uniformemente en una elipse:

  1. Muestrear la elipse uniformemente según el ángulo utilizando la parametrización polar.

  2. Sustituye cada punto por el punto medio de sus vecinos.
    Proyecta el punto medio ortohogónicamente sobre la elipse.

  3. Repita el paso 2 según sea necesario.

enter image description here

0 votos

Adopté la otra solución, era más directa para mi noobbness, gracias de todos modos.

4voto

Vincent Puntos 5027

Tal vez el método del paralelogramo ¿se adapta a su propósito? Aquí está en acción:

parallelogram method

(Imagen de Usuario de Wikipedia Cmarm .)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X