Cono recto

Ubique el cursor en el punto y arrastre, de ese modo podrá visualizar el cono con 
 sus distintas alturas, radios o perspectivas.

a = 352 (slider from 3 to 1000, step 1)
A = (2.8517434210526353, -4.459046052631608)
B = (5.155526315789478, -2.2554276315789705)
lista1 = Sequence(Segment[Rotate[A, 360° * i / a, B], Rotate[A, 360° * (i + 1) / a, B]], i, 1, a)
b = OrthogonalLine(B, xAxis)
C = Point(b)
lista2 = Sequence(Segment[C, Rotate[A, 360° * i / a, B]], i, 1, a)
d = Segment(B, C)
f = Circle(B, A)
D = Point(f)
c = Segment(B, D)
e = Segment(D, C)