SmtC: Show me the Code
Ole Peter Smith
Instituto de Matemática e Estatística
Universidade Federal de Goiás
http://www.olesmith.com.br

Ellipse
  • Super Ellipse*
Existe pessoas presos na rua.
E pessoas livres na cadeia.
É uma questão de conceito.
Mahatma Gandhi.
< Ellipse | Ellipse | Hiperbola >
  • Equation:
    [; \left( \frac{x-x_c}{a}\right)^n + \left( \frac{y-y_c}{b} \right)^n=1 ;]
  • [;n \in \mathbb{R};]
  • Parametrization:
    [; \left( \begin{array}{c} x(t)\\y(t) \end{array}\right) = \left( \begin{array}{c} x_c + a \cdot sgn(\cos(t))\cdot \cos^{2/n}{t}\\y_c + b \cdot sgn(\sin(t))\cdot\sin^{2/n}{t} \end{array}\right) ;]
Python Listing: SuperEllipse.py.
    self.n=3.0
    self.n2inv=2.0/self.n

    def sgn(t):
        if (t>=0.0):
            return 1.0
        else:
            return -1.0

    def Super_Ellipse(t):
        cost=cos(t)
        sint=cos(t)
        return self.C+Vector([
            self.a*self.sgn(cost)*( abs(cos(t) )**self.n2inv,
            self.b*self.sgn(cost)*( abs(sin(t) )**self.n2inv
        ])
< Ellipse | Ellipse | Hiperbola >
Messages:
0 secs.