polígonos Estrelados

Na ventá da esquerda podes mover os esvaradores n e m, para ter os distintos polígonos regulares e os posibles polígonos estrelados e tamén as estrelas
Tamén se indica se é un polígono estrelado, se é unha estrela ou se se trata dun polígono equivalente.
Na ventá da dereita podes seleccionar ver o polígono regular ou non, tamén podes mover o punto azul para cambiar a posición do polígono

Polígono Regular

Se n/m é reducible teríamos o 
polígono equivalente: 

O polígono n/m é o mesmo que n/(n-m),
 xa que o polígono estrelado que se obtén 
unindo vértices nun sentido 
e no contrario é o mesmo.

P = (3.741212762506263, 0.5637767631434629)
n = 8 (slider from 5 to 31, step 1)
m = 2 (slider from 2 to n - 2, step 1)
v: {m}
A = Intersect(xAxis, yAxis)
vert = Sequence(Rotate[P, ((i * 2) * π / n)], i, 1, (n * (Max[v] + 1)))
c = Circle(A, P)
n_v = Length(v)
segmentos = Sequence(Sequence[Segment[Element[vert, 1 + (Element[v, k] * i)], Element[vert, 1 + ((1 + i) * Element[v, k])]], i, 0, LCM[n, Element[v, k]]], k, 1, n_v)
polígono1 = Polygon(vert)
a: n / m
texto1: "" + (LaTeX[If[GCD[n, m]  <  2, "\text{Polígono regular estrelado }", "\text{NON é un polígono regular estrelado }"]]) + " \frac{" + (LaTeX[n]) + "}{" + (LaTeX[m]) + "}"
b: n - m
d = false
e = GCD(n, m)
f: n / e
g: m / e
texto3: "\frac{" + (LaTeX[n]) + "}{" + (LaTeX[m]) + "}=\frac{" + (LaTeX[f]) + "}{" + (LaTeX[g]) + "}"
texto5: "\frac{" + (LaTeX[n]) + "}{" + (LaTeX[m]) + "}=\frac{" + (LaTeX[n]) + "}{" + (LaTeX[b]) + "}"