GLE Example: super-ellipse.gle

[PDF file]

 


! Graphical representation of Piet Hein's superellipse

size 8 10.5

set cap round just tc hei 0.5 font rm

amove 4 5 
begin origin                     ! Sets the origin of the ellipse at (10,9) 
   a = 3.75; b = 4.75            ! a and b represent the excentricity of the ellipse
   begin clip
      amove -a -b                ! Draws the box that represents the limit as n tends to    
      begin path clip stroke
         box 2*a 2*b             ! infinity
      end path 
      for n=0.5 to 5 step 0.25   ! n is the exponent of the ellipse 
         for i=0 to 360          ! Calculates the radial distance from the x and y
            ang = torad(i)
            c = abs(cos(ang))
            s = abs(sin(ang))
            ax = (c/a)^n         ! ax is the projection of the radial coordinate along the x axis
            ay = (s/b)^n         ! ay is the same along the y axis
            z = 1/(ax+ay)^(1/n) 
            if i = 0 then 
               amove z*cos(ang) z*sin(ang) 
            else 
               aline z*cos(ang) z*sin(ang)
            end if 
         next i 
      next n
   end clip
end origin

amove pagewidth()/2 pageheight()-0.15
write "Piet Hein's superellipse"

set just cc
amove pagewidth()/2 5
tex "\large $|\frac{x}{a}|^n + |\frac{y}{b}|^n = 1$"

 

[Return to examples page]