comment { Transformations developed by Joseph A. Maddry } jam-Kaleidogon { ; jam 010821 transform: ; Useful values float twopi = 2 * #pi ; zoom-related data float maxscrx = 2.0 /#magn float scaledradius = @radius * maxscrx / 2.0 if ( @star ) scaledradius = scaledradius / 2.0 endif ; star float starscale = scaledradius * @spikiness int sides = @polygon ; number of sides in polygon float vertexincrement = twopi / sides ; angle between successive vertices float polyangle = @rotation float starangle = vertexincrement/2.0 float symmetry = twopi / @sectors float halfangle = symmetry/2.0 float pixangle = 0.0, float pixmag = 0.0 ; original pixel position and magnitude float newpixangle = 0.0 ; angle after symmetry operations float tempx = 0.0, float tempy = 0.0 float newx = 0.0, float newy = 0.0 float tempc = 0.0, float temps = 0.0 ; the variables for defining the polygon boundary lines float slope = 0.0, float intercept = 0.0 float temp = 0.0 float verticallimit = 1.0e-12 ; deltaX < verticallimit marks a vertical line, no slope complex temppixel = (0,0), complex newpixel = (0,0) complex polypoint = (0,0) ; the intersection of the radius to #pixel and the polygon float polymag = 0.0 ; polypoint magnitude float polyptangle = 0.0 ; polypoint azimuth ; Angles and coordinates of polygon vertices complex V0 = complex V1 = complex V2 = complex V3 = (0,0) complex V4 = complex V5 = complex V6 = complex V7 = (0,0) complex V8 = complex V9 = complex V10 = complex V11 = (0,0) complex V12 = complex V13 = complex V14 = complex V15 = (0,0) complex V16 = complex V17 = (0,0) float v0angle = float v1angle = float v2angle = float v3angle = 0.0 float v4angle = float v5angle = float v6angle = float v7angle = 0.0 float v8angle = float v9angle = float v10angle = float v11angle = 0.0 float v12angle = float v13angle = float v14angle = float v15angle = 0.0 float v16angle = float v17angle = 0.0 ; Angles and coordinates for star vertices complex S0 = complex S1 = complex S2 = complex S3 = (0,0) complex S4 = complex S5 = complex S6 = complex S7 = (0,0) complex S8 = complex S9 = complex S10 = complex S11 = (0,0) complex S12 = complex S13 = complex S14 = complex S15 = (0,0) complex S16 = complex S17 = (0,0) float s0angle = float s1angle = float s2angle = float s3angle = 0.0 float s4angle = float s5angle = float s6angle = float s7angle = 0.0 float s8angle = float s9angle = float s10angle = float s11angle = 0.0 float s12angle = float s13angle = float s14angle = float s15angle = 0.0 float s16angle = float s17angle = 0.0 ; We're ready to begin ; Center pixel at origin if @screencenter temppixel = #pixel - #center else temppixel = #pixel - @pcenter endif ; @screencenter ; Undo any general screen rotation set on the Location tab tempx = real( temppixel ), tempy = imag( temppixel ) newx = tempx * cos( #angle ) + tempy * sin( #angle ) newy = tempy * cos( #angle ) - tempx * sin( #angle ) temppixel = newx + flip( newy ) ; determine where pixel lives pixangle = atan2( temppixel ) if ( pixangle < 0 ) pixangle = pixangle + twopi ; 0 <= pixangle <= 2*pi endif ; pixangle ; restrict pixel to the desired angular sliver for symmetry operations newpixangle = pixangle % symmetry ; 0 <= newpixangle < symmetry if ( @mode == 1 ) ; smooth coloring if ( newpixangle > halfangle ) newpixangle = symmetry - newpixangle endif ; newpixangle endif ; mode ; how big should new pixel be? pixmag = cabs( temppixel ) ; assign new pixel coordinates tempx = pixmag * cos( newpixangle ) tempy = pixmag * sin( newpixangle ) newpixel = tempx + flip(tempy) if ( @framed ) ; Calculate the rotation angle in radians that the polygon should be rotated from default polyangle = @rotation * twopi / 360 ; Make sure the polygon rotation is no larger than 360/sides (degrees) --- ; this condition simplifies checking where the radius to #pixel intersects ; the polygon polyangle = polyangle % vertexincrement ; We need the angular position of the vertices with respect to the origin v0angle = polyangle v1angle = v0angle + vertexincrement ; next vertex position, V1 v2angle = v1angle + vertexincrement ; next vertex position, V2 v3angle = v2angle + vertexincrement ; next vertex position, V3 v4angle = v3angle + vertexincrement ; next vertex position, V4 v5angle = v4angle + vertexincrement ; next vertex position, V5 v6angle = v5angle + vertexincrement ; next vertex position, V6 v7angle = v6angle + vertexincrement ; next vertex position, V7 v8angle = v7angle + vertexincrement ; next vertex position, V8 v9angle = v8angle + vertexincrement ; next vertex position, V9 v10angle = v9angle + vertexincrement ; next vertex position, V10 v11angle = v10angle + vertexincrement ; next vertex position, V11 v12angle = v11angle + vertexincrement ; next vertex position, V12 v13angle = v12angle + vertexincrement ; next vertex position, V13 v14angle = v13angle + vertexincrement ; next vertex position, V14 v15angle = v14angle + vertexincrement ; next vertex position, V15 v16angle = v15angle + vertexincrement ; next vertex position, V16 v17angle = v16angle + vertexincrement ; next vertex position, V17 ; Determine coordinates of polygon vertices, including polygon rotation tempx = scaledradius * cos(v0angle), tempy = scaledradius * sin(v0angle) V0 = tempx + flip(tempy) ; rotated V0 coords tempx = scaledradius * cos(v1angle), tempy = scaledradius * sin(v1angle) V1 = tempx + flip(tempy) ; polygon-rotated V1 coords tempx = scaledradius * cos(v2angle), tempy = scaledradius * sin(v2angle) V2 = tempx + flip(tempy) ; polygon-rotated V2 coords tempx = scaledradius * cos(v3angle), tempy = scaledradius * sin(v3angle) V3 = tempx + flip(tempy) ; polygon-rotated V3 coords tempx = scaledradius * cos(v4angle), tempy = scaledradius * sin(v4angle) V4 = tempx + flip(tempy) ; polygon-rotated V4 coords tempx = scaledradius * cos(v5angle), tempy = scaledradius * sin(v5angle) V5 = tempx + flip(tempy) ; polygon-rotated V5 coords tempx = scaledradius * cos(v6angle), tempy = scaledradius * sin(v6angle) V6 = tempx + flip(tempy) ; polygon-rotated V6 coords tempx = scaledradius * cos(v7angle), tempy = scaledradius * sin(v7angle) V7 = tempx + flip(tempy) ; polygon-rotated V7 coords tempx = scaledradius * cos(v8angle), tempy = scaledradius * sin(v8angle) V8 = tempx + flip(tempy) ; polygon-rotated V8 coords tempx = scaledradius * cos(v9angle), tempy = scaledradius * sin(v9angle) V9 = tempx + flip(tempy) ; polygon-rotated V9 coords tempx = scaledradius * cos(v10angle), tempy = scaledradius * sin(v10angle) V10 = tempx + flip(tempy) ; polygon-rotated V10 coords tempx = scaledradius * cos(v11angle), tempy = scaledradius * sin(v11angle) V11 = tempx + flip(tempy) ; polygon-rotated V11 coords tempx = scaledradius * cos(v12angle), tempy = scaledradius * sin(v12angle) V12 = tempx + flip(tempy) ; polygon-rotated V12 coords tempx = scaledradius * cos(v13angle), tempy = scaledradius * sin(v13angle) V13 = tempx + flip(tempy) ; polygon-rotated V13 coords tempx = scaledradius * cos(v14angle), tempy = scaledradius * sin(v14angle) V14 = tempx + flip(tempy) ; polygon-rotated V14 coords tempx = scaledradius * cos(v15angle), tempy = scaledradius * sin(v15angle) V15 = tempx + flip(tempy) ; polygon-rotated V15 coords tempx = scaledradius * cos(v16angle), tempy = scaledradius * sin(v16angle) V16 = tempx + flip(tempy) ; polygon-rotated V16 coords tempx = scaledradius * cos(v17angle), tempy = scaledradius * sin(v17angle) V17 = tempx + flip(tempy) ; polygon-rotated V17 coords ; Now do the same for the star vertices, if necessary if ( @star ) s0angle = starangle + polyangle s1angle = s0angle + vertexincrement ; next vertex position, S1 s2angle = s1angle + vertexincrement ; next vertex position, S2 s3angle = s2angle + vertexincrement ; next vertex position, S3 s4angle = s3angle + vertexincrement ; next vertex position, S4 s5angle = s4angle + vertexincrement ; next vertex position, S5 s6angle = s5angle + vertexincrement ; next vertex position, S6 s7angle = s6angle + vertexincrement ; next vertex position, S7 s8angle = s7angle + vertexincrement ; next vertex position, S8 s9angle = s8angle + vertexincrement ; next vertex position, S9 s10angle = s9angle + vertexincrement ; next vertex position, S10 s11angle = s10angle + vertexincrement ; next vertex position, S11 s12angle = s11angle + vertexincrement ; next vertex position, S12 s13angle = s12angle + vertexincrement ; next vertex position, S13 s14angle = s13angle + vertexincrement ; next vertex position, S14 s15angle = s14angle + vertexincrement ; next vertex position, S15 s16angle = s15angle + vertexincrement ; next vertex position, S16 s17angle = s16angle + vertexincrement ; next vertex position, S17 tempx = starscale * cos(s0angle), tempy = starscale * sin(s0angle) S0 = tempx + flip(tempy) ; rotated S0 coords tempx = starscale * cos(s1angle), tempy = starscale * sin(s1angle) S1 = tempx + flip(tempy) ; polygon-rotated S1 coords tempx = starscale * cos(s2angle), tempy = starscale * sin(s2angle) S2 = tempx + flip(tempy) ; polygon-rotated S2 coords tempx = starscale * cos(s3angle), tempy = starscale * sin(s3angle) S3 = tempx + flip(tempy) ; polygon-rotated S3 coords tempx = starscale * cos(s4angle), tempy = starscale * sin(s4angle) S4 = tempx + flip(tempy) ; polygon-rotated S4 coords tempx = starscale * cos(s5angle), tempy = starscale * sin(s5angle) S5 = tempx + flip(tempy) ; polygon-rotated S5 coords tempx = starscale * cos(s6angle), tempy = starscale * sin(s6angle) S6 = tempx + flip(tempy) ; polygon-rotated S6 coords tempx = starscale * cos(s7angle), tempy = starscale * sin(s7angle) S7 = tempx + flip(tempy) ; polygon-rotated S7 coords tempx = starscale * cos(s8angle), tempy = starscale * sin(s8angle) S8 = tempx + flip(tempy) ; polygon-rotated S8 coords tempx = starscale * cos(s9angle), tempy = starscale * sin(s9angle) S9 = tempx + flip(tempy) ; polygon-rotated S9 coords tempx = starscale * cos(s10angle), tempy = starscale * sin(s10angle) S10 = tempx + flip(tempy) ; polygon-rotated S10 coords tempx = starscale * cos(s11angle), tempy = starscale * sin(s11angle) S11 = tempx + flip(tempy) ; polygon-rotated S11 coords tempx = starscale * cos(s12angle), tempy = starscale * sin(s12angle) S12 = tempx + flip(tempy) ; polygon-rotated S12 coords tempx = starscale * cos(s13angle), tempy = starscale * sin(s13angle) S13 = tempx + flip(tempy) ; polygon-rotated S13 coords tempx = starscale * cos(s14angle), tempy = starscale * sin(s14angle) S14 = tempx + flip(tempy) ; polygon-rotated S14 coords tempx = starscale * cos(s15angle), tempy = starscale * sin(s15angle) S15 = tempx + flip(tempy) ; polygon-rotated S15 coords tempx = starscale * cos(s16angle), tempy = starscale * sin(s16angle) S16 = tempx + flip(tempy) ; polygon-rotated S16 coords tempx = starscale * cos(s17angle), tempy = starscale * sin(s17angle) S17 = tempx + flip(tempy) ; polygon-rotated S17 coords endif ; star ; Determine where pixangle is w/ respect to the vertices, and then prepare to ; determine the intersection point of the polygon boundary with the radial line ; between the origin and the current pixel if ( pixangle < v0angle ) pixangle = pixangle + twopi ; this way we can start with line V0-V1 or V0-S0 endif ; pixangle if ( !@star ) ; polygon, not star if ( pixangle <= v1angle ) ; pixel lies between V0 and V1 temp = real(V1) - real(V0) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V1) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V1) - imag(V0) )/temp intercept = imag(V1) - slope * real(V1) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v2angle ) ; pixel lies between V1 and V2 temp = real(V2) - real(V1) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V2) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V2) - imag(V1) )/temp intercept = imag(V2) - slope * real(V2) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v3angle ) ; pixel lies between V2 and V3 temp = real(V3) - real(V2) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V3) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V3) - imag(V2) )/temp intercept = imag(V3) - slope * real(V3) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v4angle ) ; pixel lies between V3 and V4 temp = real(V4) - real(V3) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V4) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V4) - imag(V3) )/temp intercept = imag(V4) - slope * real(V4) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v5angle ) ; pixel lies between V4 and V5 temp = real(V5) - real(V4) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V5) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V5) - imag(V4) )/temp intercept = imag(V5) - slope * real(V5) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v6angle ) ; pixel lies between V5 and V6 temp = real(V6) - real(V5) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V6) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V6) - imag(V5) )/temp intercept = imag(V6) - slope * real(V6) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v7angle ) ; pixel lies between V6 and V7 temp = real(V7) - real(V6) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V7) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V7) - imag(V6) )/temp intercept = imag(V7) - slope * real(V7) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v8angle ) ; pixel lies between V7 and V8 temp = real(V8) - real(V7) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V8) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V8) - imag(V7) )/temp intercept = imag(V8) - slope * real(V8) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v9angle ) ; pixel lies between V8 and V9 temp = real(V9) - real(V8) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V9) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V9) - imag(V8) )/temp intercept = imag(V9) - slope * real(V9) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v10angle ) ; pixel lies between V9 and V10 temp = real(V10) - real(V9) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V10) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V10) - imag(V9) )/temp intercept = imag(V10) - slope * real(V10) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v11angle ) ; pixel lies between V10 and V11 temp = real(V11) - real(V10) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V11) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V11) - imag(V10) )/temp intercept = imag(V11) - slope * real(V11) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v12angle ) ; pixel lies between V11 and V12 temp = real(V12) - real(V11) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V12) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V12) - imag(V11) )/temp intercept = imag(V12) - slope * real(V12) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v13angle ) ; pixel lies between V12 and V13 temp = real(V13) - real(V12) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V13) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V13) - imag(V12) )/temp intercept = imag(V13) - slope * real(V13) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v14angle ) ; pixel lies between V13 and V14 temp = real(V14) - real(V13) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V14) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V14) - imag(V13) )/temp intercept = imag(V14) - slope * real(V14) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v15angle ) ; pixel lies between V14 and V15 temp = real(V15) - real(V14) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V15) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V15) - imag(V14) )/temp intercept = imag(V15) - slope * real(V15) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v16angle ) ; pixel lies between V15 and V16 temp = real(V16) - real(V15) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V16) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V16) - imag(V15) )/temp intercept = imag(V16) - slope * real(V16) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v17angle ) ; pixel lies between V16 and V17 temp = real(V17) - real(V16) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V17) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V17) - imag(V16) )/temp intercept = imag(V17) - slope * real(V17) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp else ; pixel lies between V17 and V0 temp = real(V0) - real(V17) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V0) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V0) - imag(V17) )/temp intercept = imag(V0) - slope * real(V0) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp endif ; pixangle else ; star-shaped, not polygon if ( pixangle <= s0angle ) ; pixel lies between V0 and S0 temp = real(S0) - real(V0) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S0) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S0) - imag(V0) )/temp intercept = imag(S0) - slope * real(S0) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v1angle ) ; pixel lies between S0 and V1 temp = real(V1) - real(S0) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V1) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V1) - imag(S0) )/temp intercept = imag(V1) - slope * real(V1) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s1angle ) ; pixel lies between V1 and S1 temp = real(S1) - real(V1) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S1) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S1) - imag(V1) )/temp intercept = imag(S1) - slope * real(S1) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v2angle ) ; pixel lies between S1 and V2 temp = real(V2) - real(S1) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V2) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V2) - imag(S1) )/temp intercept = imag(V2) - slope * real(V2) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s2angle ) ; pixel lies between V2 and S2 temp = real(S2) - real(V2) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S2) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S2) - imag(V2) )/temp intercept = imag(S2) - slope * real(S2) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v3angle ) ; pixel lies between S2 and V3 temp = real(V3) - real(S2) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V3) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V3) - imag(S2) )/temp intercept = imag(V3) - slope * real(V3) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s3angle ) ; pixel lies between V3 and S3 temp = real(S3) - real(V3) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S3) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S3) - imag(V3) )/temp intercept = imag(S3) - slope * real(S3) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v4angle ) ; pixel lies between S3 and V4 temp = real(V4) - real(S3) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V4) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V4) - imag(S3) )/temp intercept = imag(V4) - slope * real(V4) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s4angle ) ; pixel lies between V4 and S4 temp = real(S4) - real(V4) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S4) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S4) - imag(V4) )/temp intercept = imag(S4) - slope * real(S4) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v5angle ) ; pixel lies between S4 and V5 temp = real(V5) - real(S4) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V5) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V5) - imag(S4) )/temp intercept = imag(V5) - slope * real(V5) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s5angle ) ; pixel lies between V5 and S5 temp = real(S5) - real(V5) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S5) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S5) - imag(V5) )/temp intercept = imag(S5) - slope * real(S5) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v6angle ) ; pixel lies between S5 and V6 temp = real(V6) - real(S5) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V6) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V6) - imag(S5) )/temp intercept = imag(V6) - slope * real(V6) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s6angle ) ; pixel lies between V6 and S6 temp = real(S6) - real(V6) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S6) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S6) - imag(V6) )/temp intercept = imag(S6) - slope * real(S6) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v7angle ) ; pixel lies between S6 and V7 temp = real(V7) - real(S6) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V7) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V7) - imag(S6) )/temp intercept = imag(V7) - slope * real(V7) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s7angle ) ; pixel lies between V7 and S7 temp = real(S7) - real(V7) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S7) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S7) - imag(V7) )/temp intercept = imag(S7) - slope * real(S7) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v8angle ) ; pixel lies between S7 and V8 temp = real(V8) - real(S7) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V8) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V8) - imag(S7) )/temp intercept = imag(V8) - slope * real(V8) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s8angle ) ; pixel lies between V8 and S8 temp = real(S8) - real(V8) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S8) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S8) - imag(V8) )/temp intercept = imag(S8) - slope * real(S8) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v9angle ) ; pixel lies between S8 and V9 temp = real(V9) - real(S8) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V9) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V9) - imag(S8) )/temp intercept = imag(V9) - slope * real(V9) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s9angle ) ; pixel lies between V9 and S9 temp = real(S9) - real(V9) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S9) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S9) - imag(V9) )/temp intercept = imag(S9) - slope * real(S9) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v10angle ) ; pixel lies between S9 and V10 temp = real(V10) - real(S9) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V10) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V10) - imag(S9) )/temp intercept = imag(V10) - slope * real(V10) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s10angle ) ; pixel lies between V10 and S10 temp = real(S10) - real(V10) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S10) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S10) - imag(V10) )/temp intercept = imag(S10) - slope * real(S10) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v11angle ) ; pixel lies between S10 and V11 temp = real(V11) - real(S10) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V11) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V11) - imag(S10) )/temp intercept = imag(V11) - slope * real(V11) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s11angle ) ; pixel lies between V11 and S11 temp = real(S11) - real(V11) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S11) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S11) - imag(V11) )/temp intercept = imag(S11) - slope * real(S11) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v12angle ) ; pixel lies between S11 and V12 temp = real(V12) - real(S11) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V12) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V12) - imag(S11) )/temp intercept = imag(V12) - slope * real(V12) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s12angle ) ; pixel lies between V12 and S12 temp = real(S12) - real(V12) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S12) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S12) - imag(V12) )/temp intercept = imag(S12) - slope * real(S12) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v13angle ) ; pixel lies between S12 and V13 temp = real(V13) - real(S12) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V13) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V13) - imag(S12) )/temp intercept = imag(V13) - slope * real(V13) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s13angle ) ; pixel lies between V13 and S13 temp = real(S13) - real(V13) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S13) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S13) - imag(V13) )/temp intercept = imag(S13) - slope * real(S13) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v14angle ) ; pixel lies between S13 and V14 temp = real(V14) - real(S13) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V14) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V14) - imag(S13) )/temp intercept = imag(V14) - slope * real(V14) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s14angle ) ; pixel lies between V14 and S14 temp = real(S14) - real(V14) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S14) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S14) - imag(V14) )/temp intercept = imag(S14) - slope * real(S14) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v15angle ) ; pixel lies between S14 and V15 temp = real(V15) - real(S14) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V15) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V15) - imag(S14) )/temp intercept = imag(V15) - slope * real(V15) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s15angle ) ; pixel lies between V15 and S15 temp = real(S15) - real(V15) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S15) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S15) - imag(V15) )/temp intercept = imag(S15) - slope * real(S15) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v16angle ) ; pixel lies between S15 and V16 temp = real(V16) - real(S15) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V16) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V16) - imag(S15) )/temp intercept = imag(V16) - slope * real(V16) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s16angle ) ; pixel lies between V16 and S16 temp = real(S16) - real(V16) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S16) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S16) - imag(V16) )/temp intercept = imag(S16) - slope * real(S16) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= v17angle ) ; pixel lies between S16 and V17 temp = real(V17) - real(S16) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V17) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V17) - imag(S16) )/temp intercept = imag(V17) - slope * real(V17) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp elseif ( pixangle <= s17angle ) ; pixel lies between V17 and S17 temp = real(S17) - real(V17) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(S17) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(S17) - imag(V17) )/temp intercept = imag(S17) - slope * real(S17) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp else ; pixel lies between S17 and V0 temp = real(V0) - real(V17) if ( abs(temp) < verticallimit ) ; vertical line tempx = real(V0) tempy = tempx * tan( pixangle ) else ; non-vertical line, so calculate slope & intercept slope = ( imag(V0) - imag(V17) )/temp intercept = imag(V0) - slope * real(V0) tempx = intercept / ( tan(pixangle) - slope ) tempy = slope * tempx + intercept endif ; temp endif ; pixangle endif ; star ; Now actually determine the intersection point of the polygon and the radius polypoint = tempx + flip(tempy) polymag = cabs( polypoint ) if ( @wavy ) polyptangle = atan2( polypoint ) if ( polyptangle < 0 ) polyptangle = polyptangle + twopi ; 0 <= polyptangle <= 2*pi endif ; polyptangle if ( @waveflav == 0 ) temp = @waveamp * sin( @wavefreq * polyptangle ) elseif ( @waveflav == 1 ) temp = sin( @wavefreq * polyptangle ) temp = @waveamp * @waveamp * temp * temp elseif ( @waveflav == 2 ) temp = @wavefreq * polyptangle tempc = cos( 5.0 * @secondfreq * temp ), temp = sin( 3.0 * temp ) temp = @waveamp * tempc * tempc * temp elseif ( @waveflav == 3 ) temp = @wavefreq * polyptangle temp = @waveamp * cos( 2.0 * @secondfreq * temp ) * sin( temp ) elseif ( @waveflav == 4 ) temp = @wavefreq * polyptangle tempc = cos( @secondfreq * temp ), temps = sin( temp ) temp = @waveamp * tempc * tempc * temps * temps * temps endif ; waveflav polymag = polymag + 0.1 * temp * polymag endif ; wavy if ( !@reversed ) if ( pixmag >= polymag ) #solid = TRUE endif ; pixmag elseif ( pixmag < polymag ) #solid = TRUE endif ; reversed endif ; framed ; Map the pixel value to its symmetrized position ; First, reapply general screen rotation set on the Location tab tempx = real(newpixel) * cos( #angle ) - imag(newpixel) * sin( #angle ) tempy = imag(newpixel) * cos( #angle ) + real(newpixel) * sin( #angle ) ; translate remapped pixel to original center location, and assign result if @screencenter #pixel = #center + tempx + flip( tempy ) else #pixel = @pcenter + tempx + flip( tempy ) endif ; @screencenter default: title = "Kaleidogon" param polygon caption = "Sides" default = 3 min = 3 max = 18 hint = "Number of sides in the polygon or points in the star (3-18)" endparam param rotation caption = "Rotation Angle" default = 0.0 max = 359.9 min = 0.0 hint = "Number of degrees polygon or star should be rotated from default position (0 - 359)" endparam param screencenter caption = "Use Screen Center?" default = TRUE hint = "If disabled, then the polygon/star may be positioned as desired \ using param 'Polygon/Star Center'" endparam param pcenter caption = "Polygon/Star Center" default = (0,0) hint = "Enter the coordinates for the center of the polygon or star" visible = !@screencenter endparam param radius caption = "Size" default = 1.5 hint = "Determines the size of the polygon of star; radius of circumscribing circle" endparam param sectors caption = "Sectors" default = 3 min = 1 max = 36 hint = "This parameter sets the N-fold symmetry axis; slice of screen repeated \ N times around center. (1-36)" endparam param mode caption = "Mode" enum = "discontinuous" "smooth" default = 0 endparam param framed caption = "Polygon Framing?" default = TRUE hint = "Disable framing to view full screen, enable to see polygons or stars" endparam param reversed caption = "Reversal?" default = FALSE hint = "If enabled, polygon or star interior is colored solid, rather than the exterior" endparam param wavy caption = "Wavy Edges?" default = FALSE hint = "If enabled, polygon or star sides will be wavy, not straight" endparam param wavefreq caption = "Wavy Frequency" default = 20.0 hint = "Sets the amount of waving; only active if 'Wavy Edges' is enabled" endparam param waveamp caption = "Wavy Amplitude" default = 0.75 hint = "Sets the size of the waving; only active if 'Wavy Edges' is enabled" endparam param waveflav caption = "Wave Flav" enum = "1" "2" "3" "4" "5" default = 0 hint = "Sets the type of wavy function used; flavor is only active if 'Wavy Edges' is enabled" endparam param secondfreq caption = "Secondary Frequency" default = 1.0 hint = "Additional wave frequency variable for wavy flavs '3', '4', and '5'" endparam param star caption = "Star-Shaped?" default = FALSE hint = "If enabled, frame will be a star rather than a polygon; 'Polygon Framing' must also be enabled" endparam param spikiness caption = "Star Spikiness" default = 2.0 hint = "Sets the length of the star's points; only active if 'Star-Shaped' is enabled" endparam } jam-Kaleidellipse { ; jam 010827 transform: ; Useful values float twopi = 2 * #pi ; zoom-related data float scaledradius = 1.8 * @radius / #magn float symmetry = twopi / @sectors float halfangle = symmetry/2.0 float pixangle = 0.0, float pixmag = 0.0 ; original pixel position and magnitude float newpixangle = 0.0 ; angle after symmetry operations float tempx = 0.0, float tempy = 0.0 float newx = 0.0, float newy = 0.0 float temp = 0.0, float tmp1 = 0.0, float tmp2 = 0.0 complex temppixel = (0,0), complex newpixel = (0,0) ; We're ready to begin ; Center pixel at origin if @screencenter temppixel = #pixel - #center else temppixel = #pixel - @pcenter endif ; @screencenter ; Undo any general screen rotation set on the Location tab tempx = real( temppixel ), tempy = imag( temppixel ) newx = tempx * cos( #angle ) + tempy * sin( #angle ) newy = tempy * cos( #angle ) - tempx * sin( #angle ) temppixel = newx + flip( newy ) ; determine where pixel lives pixangle = atan2( temppixel ) if ( pixangle < 0 ) pixangle = pixangle + twopi ; 0 <= pixangle <= 2*pi endif ; pixangle ; restrict pixel to the desired angular sliver for symmetry operations newpixangle = pixangle % symmetry ; 0 <= newpixangle < symmetry if ( @mode == 1 ) ; smooth coloring if ( newpixangle > halfangle ) newpixangle = symmetry - newpixangle endif ; newpixangle endif ; mode ; how big should new pixel be? pixmag = cabs( temppixel ) ; assign new pixel coordinates tempx = pixmag * cos( newpixangle ) tempy = pixmag * sin( newpixangle ) newpixel = tempx + flip(tempy) if ( @framed ) temppixel = temppixel * exp( flip( -@rotation * #pi /180 ) ) temppixel = real( temppixel ) / @a + flip( imag( temppixel ) / @b ) float polymag = 1.0 * scaledradius^@exponent if ( @wavy ) if ( @waveflav == 0 ) temp = @waveamp * sin( @wavefreq * pixangle ) elseif ( @waveflav == 1 ) temp = sin( @wavefreq * pixangle ) temp = @waveamp * @waveamp * temp * temp elseif ( @waveflav == 2 ) temp = @wavefreq * pixangle tmp1 = cos( 5.0 * @secondfreq * temp ), temp = sin( 3.0 * temp ) temp = @waveamp * tmp1 * tmp1 * temp elseif ( @waveflav == 3 ) temp = @wavefreq * pixangle temp = @waveamp * cos( 2.0 * @secondfreq * temp ) * sin( temp ) elseif ( @waveflav == 4 ) temp = @wavefreq * pixangle tmp1 = cos( @secondfreq * temp ), tmp2 = sin( temp ) temp = @waveamp * tmp1 * tmp1 * tmp2 * tmp2 * tmp2 endif ; waveflav polymag = polymag + 0.1 * temp * polymag endif ; wavy if ( !@reversed ) if ( ( abs(real(temppixel))^@exponent + abs(imag(temppixel))^@exponent ) >= polymag ) #solid = TRUE endif ; pixmag elseif ( ( abs(real(temppixel))^@exponent + abs(imag(temppixel))^@exponent ) < polymag ) #solid = TRUE endif ; reversed endif ; framed ; Map the pixel value to its symmetrized position ; First, reapply general screen rotation set on the Location tab tempx = real(newpixel) * cos( #angle ) - imag(newpixel) * sin( #angle ) tempy = imag(newpixel) * cos( #angle ) + real(newpixel) * sin( #angle ) ; translate remapped pixel to original center location, and assign result if @screencenter #pixel = #center + tempx + flip( tempy ) else #pixel = @pcenter + tempx + flip( tempy ) endif ; @screencenter default: title = "Kaleidellipse" param exponent caption = "Exponent" default = 2.0 hint = "Use 2 for ellipse, >2 for superellipse, <1 for asteroid, 1-2 for subellipse" endparam param radius caption = "Scale" default = 1.0 min = 0.0 hint = "Affects the overall size of the ellipse or shape" endparam param a caption = "Ellipse Width" default = 1.0 min = 0.0 hint = "Size in x-direction" endparam param b caption = "Ellipse Height" default = 0.5 min = 0.0 hint = "Size in y-direction" endparam param rotation caption = "Rotation Angle" default = 0.0 min = 0.0 max = 359.0 hint = "Amount of rotation from default position, in degrees (0-359)" endparam param screencenter caption = "Use Screen Center?" default = TRUE hint = "If disabled, then the ellipse may be positioned as desired \ using param 'Ellipse Center'" endparam param pcenter caption = "Ellipse Center" default = (0,0) hint = "Enter the coordinates for the center of the ellipse/astroid" visible = !@screencenter endparam param sectors caption = "Sectors" default = 3 min = 1 max = 36 hint = "This parameter sets the N-fold symmetry axis; slice of screen repeated \ N times around center. (1-36)" endparam param mode caption = "Mode" enum = "discontinuous" "smooth" default = 0 endparam param framed caption = "Ellipse Framing?" default = TRUE hint = "Disable framing to view full screen, enable to see ellipses or other shapes" endparam param reversed caption = "Reversal?" default = FALSE hint = "If enabled, ellipse interior is colored solid, rather than the exterior" endparam param wavy caption = "Wavy Edges?" default = FALSE hint = "If enabled, ellipse boundary will be wavy, not smooth" endparam param wavefreq caption = "Wavy Frequency" default = 20.0 hint = "Sets the amount of waving; only active if 'Wavy Edges' is enabled" endparam param waveamp caption = "Wavy Amplitude" default = 0.75 hint = "Sets the size of the waving; only active if 'Wavy Edges' is enabled" endparam param waveflav caption = "Wave Flav" enum = "1" "2" "3" "4" "5" default = 0 hint = "Sets the type of wavy function used; flavor is only active if 'Wavy Edges' is enabled" endparam param secondfreq caption = "Secondary Frequency" default = 1.0 hint = "Additional wave frequency variable for wavy flavs '3', '4', and '5'" endparam } jam-Panels { ; Divides the fractal up into sections, with all but the one active panel ; assigned to #solid. ; 170618 global: float panelwidth = float panelheight = 0.0 float xtemp = float ytemp = 0.0 int xlow = int xhigh = int ylow = int yhigh = 0 int bordersize2 = 2 * @bordersize int bordersize3 = 3 * @bordersize int bordersize4 = 4 * @bordersize int bordersize5 = 5 * @bordersize int bordersize6 = 6 * @bordersize int bordersize7 = 7 * @bordersize int bordersize8 = 8 * @bordersize int bordersize9 = 9 * @bordersize int bordersize10 = 10 * @bordersize int bordersize11 = 11 * @bordersize int bordersize12 = 12 * @bordersize int bordersize13 = 13 * @bordersize int bordersize14 = 14 * @bordersize int bordersize15 = 15 * @bordersize int bordersize16 = 16 * @bordersize int bordersize17 = 17 * @bordersize int bordersize18 = 18 * @bordersize int bordersize19 = 19 * @bordersize int bordersize20 = 20 * @bordersize int bordersize21 = 21 * @bordersize int bordersize22 = 22 * @bordersize int bordersize23 = 23 * @bordersize int bordersize24 = 24 * @bordersize int bordersize25 = 25 * @bordersize int bordersize26 = 26 * @bordersize if @numberpanels == 1 panelwidth = #width + 1 - bordersize2 panelheight = #height + 1 - bordersize2 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @numberpanels == 2 if @arrangement2 == "horizontal" ; left-right panels panelwidth = (#width + 1 - bordersize3)/2 panelheight = #height + 1 - bordersize2 if @activepanel2 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel2 == 2 ; right panel xtemp = bordersize2 + panelwidth endif ; @activepanel2 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement2 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize3)/2 if @activepanel2 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel2 == 2 ; bottom panel ytemp = bordersize2 + panelheight endif ; @activepanel2 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 endif ; @arrangement2 elseif @numberpanels == 3 if @arrangement3 == "horizontal" ; left-to-right panels panelwidth = (#width + 1 - bordersize4)/3 panelheight = #height + 1 - bordersize2 if @activepanel3 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel3 == 2 ; middle panel xtemp = bordersize2 + panelwidth elseif @activepanel3 == 3 ; right panel xtemp = bordersize3 + 2 * panelwidth endif ; @activepanel3 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement3 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize4)/3 if @activepanel3 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel3 == 2 ; middle panel ytemp = bordersize2 + panelheight elseif @activepanel3 == 3 ; bottom panel ytemp = bordersize3 + 2 * panelheight endif ; @activepanel3 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement3 == "2x1V" ; two left, one right panels panelwidth = (#width + 1 - bordersize3)/2 if @activepanel3 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize3)/2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel3 == 2 ; bottom left panel panelheight = (#height + 1 - bordersize2)/2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel3 == 3 ; right panel panelheight = #height + 1 - bordersize2 xtemp = bordersize2 + panelwidth ytemp = @bordersize endif ; @activepanel3 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement3 == "1x2V" ; one left, two right panels panelwidth = (#width + 1 - bordersize3)/2 if @activepanel3 == 1 ; left panel is visible panelheight = #height + 1 - bordersize2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel3 == 2 ; top right panel panelheight = (#height + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel3 == 3 ; bottom right panel panelheight = (#height + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel3 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement3 == "1x2H" ; one top, two bottom panels panelheight = (#height + 1 - bordersize3)/2 if @activepanel3 == 1 ; top panel is visible panelwidth = #width + 1 - bordersize2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel3 == 2 ; bottom left panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel3 == 3 ; bottom right panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel3 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement3 == "2x1H" ; two top, one bottom panels panelheight = (#height + 1 - bordersize3)/2 if @activepanel3 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize3)/2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel3 == 2 ; top right panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel3 == 3 ; bottom panel panelwidth = #width + 1 - bordersize2 xtemp = @bordersize ytemp = bordersize2 + panelheight endif ; @activepanel3 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 endif ; @arrangement3 elseif @numberpanels == 4 if @arrangement4 == "horizontal" ; left-to-right panels panelwidth = (#width + 1 - bordersize5)/4 panelheight = #height + 1 - bordersize2 if @activepanel4 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel4 == 2 ; middle left panel xtemp = bordersize2 + panelwidth elseif @activepanel4 == 3 ; middle right panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel4 == 4 ; right panel xtemp = bordersize4 + 3 * panelwidth endif ; @activepanel4 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement4 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize5)/4 if @activepanel4 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel4 == 2 ; middle top panel ytemp = bordersize2 + panelheight elseif @activepanel4 == 3 ; middle bottom panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel4 == 4 ; bottom panel ytemp = bordersize4 + 3 * panelheight endif ; @activepanel4 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement4 == "2x2" ; two left, two right panels panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize3)/2 if @activepanel4 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel4 == 2 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel4 == 3 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel4 == 4 ; bottom right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel4 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement4 == "3x1V" ; three left, one right panels panelwidth = (#width + 1 - bordersize3)/2 if @activepanel4 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel4 == 2 ; middle left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel4 == 3 ; bottom left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel4 == 4 ; right panel is visible panelheight = #height + 1 - bordersize2 xtemp = bordersize2 + panelwidth ytemp = @bordersize endif ; @activepanel4 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement4 == "1x3V" ; one left, three right panels panelwidth = (#width + 1 - bordersize3)/2 if @activepanel4 == 1 ; left panel is visible panelheight = #height + 1 - bordersize2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel4 == 2 ; top right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel4 == 3 ; middle right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel4 == 4 ; bottom right panel is visible panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel4 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement4 == "3x1H" ; three top, one bottom panels panelheight = (#height + 1 - bordersize3)/2 if @activepanel4 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel4 == 2 ; top middle panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel4 == 3 ; top right panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel4 == 4 ; bottom panel is visible panelwidth = #width + 1 - bordersize2 xtemp = @bordersize ytemp = bordersize2 + panelheight endif ; @activepanel4 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 elseif @arrangement4 == "1x3H" ; one top, three bottom panels panelheight = (#height + 1 - bordersize3)/2 if @activepanel4 == 1 ; top panel is visible panelwidth = #width + 1 - bordersize2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel4 == 2 ; bottom left panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel4 == 3 ; bottom middle panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel4 == 4 ; bottom right panel is visible panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel4 xlow = round(xtemp) ylow = round(ytemp) xhigh = round(xtemp + panelwidth) - 1 yhigh = round(ytemp + panelheight) - 1 endif ; @arrangement4 elseif @numberpanels == 5 if @arrangement5 == "horizontal" panelwidth = (#width + 1 - bordersize6)/5 panelheight = #height + 1 - bordersize2 if @activepanel5 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel5 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel5 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel5 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel5 == 5 ; rightmost panel xtemp = bordersize5 + 4 * panelwidth endif ; @activepanel5 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement5 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize6)/5 if @activepanel5 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel5 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel5 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel5 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel5 == 5 ; bottom panel ytemp = bordersize5 + 4 * panelheight endif ; @activepanel5 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement5 == "3x2H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel5 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel5 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel5 == 4 ; bottom left panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel5 == 5 ; bottom right panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "2x3H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel5 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize3)/2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; top right panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel5 == 3 ; bottom left panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel5 == 4 ; bottom middle panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel5 == 5 ; bottom right panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "2x3V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel5 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize3)/2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; bottom left panel panelheight = (#height + 1 - bordersize3)/2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel5 == 3 ; top right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel5 == 4 ; middle right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel5 == 5 ; bottom right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "3x2V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel5 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; middle left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel5 == 3 ; bottom left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel5 == 4 ; top right panel panelheight = (#height + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel5 == 5 ; bottom right panel panelheight = (#height + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "4x1V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel5 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel5 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel5 == 4 ; bottom left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel5 == 5 ; right panel panelheight = #height + 1 - bordersize2 xtemp = bordersize2 + panelwidth ytemp = @bordersize endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "1x4V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel5 == 1 ; left panel is visible panelheight = #height + 1 - bordersize2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; top right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel5 == 3 ; 2nd right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel5 == 4 ; 3rd right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel5 == 5 ; bottom right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "1x4H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel5 == 1 ; top panel is visible panelwidth = #width + 1 - bordersize2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; bottom left panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel5 == 3 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel5 == 4 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel5 == 5 ; bottom right panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement5 == "4x1H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel5 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = @bordersize elseif @activepanel5 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel5 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel5 == 4 ; top right panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel5 == 5 ; bottom panel panelwidth = #width + 1 - bordersize2 xtemp = @bordersize ytemp = bordersize2 + panelheight endif ; @activepanel5 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment5 elseif @numberpanels == 6 if @arrangement6 == "horizontal" ; left-to-right panels panelwidth = (#width + 1 - bordersize7)/6 panelheight = #height + 1 - bordersize2 if @activepanel6 == 1 ; leftmost panel is visible xtemp = @bordersize elseif @activepanel6 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel6 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel6 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel6 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel6 == 6 ; rightmost panel xtemp = bordersize6 + 5 * panelwidth endif ; @activepanel6 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement6 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize7)/6 if @activepanel6 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel6 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel6 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel6 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel6 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel6 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight endif ; @activepanel6 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement6 == "3x2H" panelwidth = (#width + 1 - bordersize4)/3 panelheight = (#height + 1 - bordersize3)/2 if @activepanel6 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel6 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel6 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel6 == 4 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel6 == 5 ; bottom middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel6 == 6 ; bottom right panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel6 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement6 == "3x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize4)/3 if @activepanel6 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel6 == 2 ; middle left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel6 == 3 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel6 == 4 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel6 == 5 ; middle right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel6 == 6 ; bottom right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel6 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment6 elseif @numberpanels == 7 if @arrangement7 == "horizontal" panelwidth = (#width + 1 - bordersize8)/7 panelheight = #height + 1 - bordersize2 if @activepanel7 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel7 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel7 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel7 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel7 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel7 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel7 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth endif ; @activepanel7 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement7 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize8)/7 if @activepanel7 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel7 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel7 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel7 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel7 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel7 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel7 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight endif ; @activepanel7 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement7 == "4x3H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel7 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = @bordersize elseif @activepanel7 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel7 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel7 == 4 ; 4th top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel7 == 5 ; bottom left panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel7 == 6 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel7 == 7 ; bottom right panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel7 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement7 == "3x4H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel7 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel7 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel7 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel7 == 4 ; bottom left panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel7 == 5 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel7 == 6 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel7 == 7 ; 4th bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel7 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement7 == "3x4V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel7 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel7 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel7 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel7 == 4 ; top right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel7 == 5 ; 2nd right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel7 == 6 ; 3rd right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel7 == 7 ; bottom right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel7 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement7 == "4x3V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel7 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = @bordersize elseif @activepanel7 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel7 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel7 == 4 ; 4th left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel7 == 5 ; top right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel7 == 6 ; 2nd right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel7 == 7 ; 3rd right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel7 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment7 elseif @numberpanels == 8 if @arrangement8 == "horizontal" panelwidth = (#width + 1 - bordersize9)/8 panelheight = #height + 1 - bordersize2 if @activepanel8 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel8 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel8 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel8 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel8 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel8 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel8 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel8 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth endif ; @activepanel8 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement8 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize9)/8 if @activepanel8 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel8 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel8 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel8 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel8 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel8 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel8 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight endif ; @activepanel8 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement8 == "4x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize5)/4 if @activepanel8 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel8 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel8 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel8 == 5 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel8 == 6 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 7 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 8 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel8 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement8 == "4x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize5)/4 if @activepanel8 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel8 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel8 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel8 == 5 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel8 == 6 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 7 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel8 == 8 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel8 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement8 == "5x3H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel8 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize6)/5 xtemp = @bordersize ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel8 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel8 == 4 ; 4th top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel8 == 5 ; 5th top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel8 == 6 ; bottom left panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel8 == 7 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 8 ; bottom right panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel8 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement8 == "3x5H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel8 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel8 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel8 == 4 ; bottom left panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel8 == 5 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 6 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 7 ; 4th bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 8 ; 5th bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel8 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement8 == "3x5V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel8 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel8 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel8 == 4 ; top right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel8 == 5 ; 2nd right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 6 ; 3rd right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel8 == 7 ; 4th right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel8 == 8 ; 5th right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight endif ; @activepanel8 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh =round( xtemp + panelwidth) - 1 elseif @arrangement8 == "5x3V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel8 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = @bordersize elseif @activepanel8 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel8 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel8 == 4 ; 4th left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel8 == 5 ; 5th left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel8 == 6 ; top right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel8 == 7 ; 2nd right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel8 == 8 ; 3rd right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel8 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment8 elseif @numberpanels == 9 if @arrangement9 == "horizontal" panelwidth = (#width + 1 - bordersize10)/9 panelheight = #height + 1 - bordersize2 if @activepanel9 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel9 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel9 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel9 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel9 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel9 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel9 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel9 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel9 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth endif ; @activepanel9 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement9 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize10)/9 if @activepanel9 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel9 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel9 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel9 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel9 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel9 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel9 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight endif ; @activepanel9 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement9 == "3x3" panelheight = (#height + 1 - bordersize4)/3 panelwidth = (#width + 1 - bordersize4)/3 if @activepanel9 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel9 == 4 ; 1st middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 5 ; 2nd middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 6 ; 3rd middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 7 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 8 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 9 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "7x2H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel9 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize8)/7 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel9 == 4 ; 4th top panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel9 == 5 ; 5th top panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel9 == 6 ; 6th top panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel9 == 7 ; 7th top panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel9 == 8 ; bottom left panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 9 ; bottom right panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "7x2V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel9 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 4 ; 4th left panel panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel9 == 5 ; 5th left panel panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel9 == 6 ; 6th left panel panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel9 == 7 ; 7th left panel panelheight = (#height + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel9 == 8 ; top right panel panelheight = (#height + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 9 ; 2nd right panel panelheight = (#height + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "2x7H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel9 == 1 ; bottom left panel is visible panelwidth = (#width + 1 - bordersize8)/7 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 2 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 3 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 4 ; 4th bottom panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 5 ; 5th bottom panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 6 ; 6th bottom panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 7 ; 7th bottom panel panelwidth = (#width + 1 - bordersize8)/7 xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 8 ; top left panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 9 ; top right panel panelwidth = (#width + 1 - bordersize3)/2 xtemp = bordersize2 + panelwidth ytemp = @bordersize endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "2x7V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel9 == 1 ; top right panel is visible panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd right panel panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 3 ; 3rd right panel panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 4 ; 4th right panel panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel9 == 5 ; 5th right panel panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel9 == 6 ; 6th right panel panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel9 == 7 ; 7th right panel panelheight = (#height + 1 - bordersize8)/7 xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel9 == 8 ; top left panel panelheight = (#height + 1 - bordersize3)/2 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 9 ; 2nd left panel panelheight = (#height + 1 - bordersize3)/2 xtemp = @bordersize ytemp = bordersize2 + panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "5x4H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel9 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize6)/5 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel9 == 4 ; 4th top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel9 == 5 ; 5th top panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel9 == 6 ; bottom left panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 7 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 8 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 9 ; bottom right panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "4x5H" panelheight = (#height + 1 - bordersize3)/2 if @activepanel9 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel9 == 4 ; 4th top panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel9 == 5 ; bottom left panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 6 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 7 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 8 ; 4th bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 9 ; 5th bottom panel panelwidth = (#width + 1 - bordersize6)/5 xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "4x5V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel9 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 4 ; 4th left panel panelheight = (#height + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel9 == 5 ; top right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 6 ; 2nd right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 7 ; 3rd right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 8 ; 4th right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel9 == 9 ; 5th right panel panelheight = (#height + 1 - bordersize6)/5 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement9 == "5x4V" panelwidth = (#width + 1 - bordersize3)/2 if @activepanel9 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = @bordersize elseif @activepanel9 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel9 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 4 ; 4th left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel9 == 5 ; 5th left panel panelheight = (#height + 1 - bordersize6)/5 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel9 == 6 ; top right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel9 == 7 ; 2nd right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel9 == 8 ; 3rd right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel9 == 9 ; 4th right panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel9 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment9 elseif @numberpanels == 10 if @arrangement10 == "horizontal" panelwidth = (#width + 1 - bordersize11)/10 panelheight = #height + 1 - bordersize2 if @activepanel10 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel10 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel10 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel10 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel10 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel10 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel10 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel10 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel10 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel10 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth endif ; @activepanel10 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement10 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize11)/10 if @activepanel10 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel10 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel10 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel10 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel10 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel10 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel10 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel10 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel10 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight endif ; @activepanel10 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement10 == "5x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize6)/5 if @activepanel10 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel10 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel10 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel10 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel10 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel10 == 6 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel10 == 7 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 8 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 9 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 10 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel10 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement10 == "5x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize6)/5 if @activepanel10 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel10 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel10 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel10 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel10 == 6 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel10 == 7 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 8 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 9 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel10 == 10 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight endif ; @activepanel10 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement10 == "3-4-3H" panelheight = (#height + 1 - bordersize4)/3 if @activepanel10 == 1 ; top left panel is visible panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel10 == 2 ; 2nd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel10 == 3 ; 3rd top panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel10 == 4 ; 1st middle panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel10 == 5 ; 2nd middle panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 6 ; 3rd middle panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 7 ; 4th middle panel panelwidth = (#width + 1 - bordersize5)/4 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 8 ; bottom left panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 9 ; 2nd bottom panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 10 ; 3rd bottom panel panelwidth = (#width + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel10 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement10 == "3-4-3V" panelwidth = (#width + 1 - bordersize4)/3 if @activepanel10 == 1 ; top left panel is visible panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = @bordersize elseif @activepanel10 == 2 ; 2nd left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel10 == 3 ; 3rd left panel panelheight = (#height + 1 - bordersize4)/3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 4 ; 1st middle panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel10 == 5 ; 2nd middle panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 6 ; 3rd middle panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel10 == 7 ; 4th middle panel panelheight = (#height + 1 - bordersize5)/4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel10 == 8 ; top right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel10 == 9 ; 2nd right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel10 == 10 ; 3rd right panel panelheight = (#height + 1 - bordersize4)/3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel10 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment10 elseif @numberpanels == 11 if @arrangement11 == "horizontal" panelwidth = (#width + 1 - bordersize12)/11 panelheight = #height + 1 - bordersize2 if @activepanel11 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel11 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel11 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel11 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel11 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel11 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel11 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel11 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel11 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel11 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel11 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth endif ; @activepanel11 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement11 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize12)/11 if @activepanel11 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel11 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel11 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel11 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel11 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel11 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel11 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel11 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel11 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel11 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel11 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight endif ; @activepanel11 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 endif ; @arranegment11 elseif @numberpanels == 12 if @arrangement12 == "horizontal" panelwidth = (#width + 1 - bordersize13)/12 panelheight = #height + 1 - bordersize2 if @activepanel12 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel12 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel12 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel12 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel12 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel12 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel12 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel12 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel12 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel12 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel12 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel12 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth endif ; @activepanel12 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement12 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize13)/12 if @activepanel12 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel12 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel12 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel12 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel12 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel12 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel12 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel12 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel12 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel12 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel12 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight endif ; @activepanel12 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement12 == "6x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize7)/6 if @activepanel12 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel12 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel12 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel12 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel12 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel12 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel12 == 7 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel12 == 8 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 9 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 10 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 11 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 12 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel12 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement12 == "6x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize7)/6 if @activepanel12 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel12 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel12 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel12 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel12 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel12 == 7 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel12 == 8 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 9 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 10 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel12 == 11 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel12 == 12 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight endif ; @activepanel12 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement12 == "4x3H" panelheight = (#height + 1 - bordersize4)/3 panelwidth = (#width + 1 - bordersize5)/4 if @activepanel12 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel12 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel12 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel12 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel12 == 5 ; 1st middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel12 == 6 ; 2nd middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 7 ; 3rd middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 8 ; 4th middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 9 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 10 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 11 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 12 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel12 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement12 == "4x3V" panelheight = (#height + 1 - bordersize5)/4 panelwidth = (#width + 1 - bordersize4)/3 if @activepanel12 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel12 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel12 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel12 == 4 ; 1st upper middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel12 == 5 ; 2nd upper middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 6 ; 3rd upper middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel12 == 7 ; 1st lower middle panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 8 ; 2nd lower middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 9 ; 3rd lower middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel12 == 10 ; bottom left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel12 == 11 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel12 == 12 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel12 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment12 elseif @numberpanels == 13 if @arrangement13 == "horizontal" panelwidth = (#width + 1 - bordersize14)/13 panelheight = #height + 1 - bordersize2 if @activepanel13 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel13 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel13 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel13 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel13 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel13 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel13 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel13 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel13 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel13 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel13 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel13 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel13 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth endif ; @activepanel13 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement13 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize14)/13 if @activepanel13 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel13 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel13 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel13 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel13 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel13 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel13 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel13 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel13 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel13 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel13 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel13 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel13 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight endif ; @activepanel13 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 endif ; @arranegment13 elseif @numberpanels == 14 if @arrangement14 == "horizontal" panelwidth = (#width + 1 - bordersize15)/14 panelheight = #height + 1 - bordersize2 if @activepanel14 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel14 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel14 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel14 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel14 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel14 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel14 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel14 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel14 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel14 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel14 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel14 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel14 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel14 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth endif ; @activepanel14 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement14 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize15)/14 if @activepanel14 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel14 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel14 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel14 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel14 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel14 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel14 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel14 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel14 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel14 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel14 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel14 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel14 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel14 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight endif ; @activepanel14 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement14 == "7x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize8)/7 if @activepanel14 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel14 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel14 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel14 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel14 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel14 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel14 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel14 == 8 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel14 == 9 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel14 == 10 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel14 == 11 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel14 == 12 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel14 == 13 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel14 == 14 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel14 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement14 == "7x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize8)/7 if @activepanel14 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel14 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel14 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel14 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel14 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel14 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel14 == 7 ; 7th left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel14 == 8 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel14 == 9 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel14 == 10 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel14 == 11 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel14 == 12 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel14 == 13 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel14 == 14 ; 7th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight endif ; @activepanel14 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment14 elseif @numberpanels == 15 if @arrangement15 == "horizontal" panelwidth = (#width + 1 - bordersize16)/15 panelheight = #height + 1 - bordersize2 if @activepanel15 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel15 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel15 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel15 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel15 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel15 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel15 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel15 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel15 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel15 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel15 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel15 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel15 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel15 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel15 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth endif ; @activepanel15 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement15 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize16)/15 if @activepanel15 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel15 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel15 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel15 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel15 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel15 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel15 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel15 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel15 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel15 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel15 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel15 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel15 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel15 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight endif ; @activepanel15 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement15 == "5x3H" panelheight = (#height + 1 - bordersize4)/3 panelwidth = (#width + 1 - bordersize6)/5 if @activepanel15 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel15 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel15 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel15 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel15 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel15 == 6 ; 1st middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel15 == 7 ; 2nd middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel15 == 8 ; 3rd middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel15 == 9 ; 4th middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel15 == 10 ; 5th middle panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel15 == 11 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 12 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 13 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 14 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 15 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel15 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement15 == "5x3V" panelheight = (#height + 1 - bordersize6)/5 panelwidth = (#width + 1 - bordersize4)/3 if @activepanel15 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel15 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel15 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel15 == 4 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel15 == 5 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel15 == 6 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel15 == 7 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 8 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 9 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel15 == 10 ; 1st panel row 4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel15 == 11 ; 2nd panel row 4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel15 == 12 ; 3rd panel row 4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel15 == 13 ; bottom left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel15 == 14 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel15 == 15 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight endif ; @activepanel15 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment15 elseif @numberpanels == 16 if @arrangement16 == "horizontal" panelwidth = (#width + 1 - bordersize17)/16 panelheight = #height + 1 - bordersize2 if @activepanel16 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel16 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel16 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel16 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel16 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel16 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel16 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel16 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel16 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel16 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel16 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel16 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel16 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel16 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel16 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel16 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth endif ; @activepanel16 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement16 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize17)/16 if @activepanel16 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel16 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel16 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel16 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel16 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel16 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel16 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel16 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel16 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel16 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel16 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel16 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel16 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel16 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel16 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight endif ; @activepanel16 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement16 == "4x4" panelheight = (#height + 1 - bordersize5)/4 panelwidth = (#width + 1 - bordersize5)/4 if @activepanel16 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel16 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel16 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel16 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel16 == 5 ; 1st panel 2nd row xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel16 == 6 ; 2nd panel 2nd row xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 7 ; 3rd panel 2nd row xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 8 ; 4th panel 2nd row xtemp = bordersize4 + 3 * panelheight ytemp = bordersize2 + panelheight elseif @activepanel16 == 9 ; 1st panel 3rd row xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 10 ; 2nd panel 3rd row xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 11 ; 3rd panel 3rd row xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 12 ; 4th panel 3rd row xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 13 ; bottom left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel16 == 14 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel16 == 15 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel16 == 16 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel16 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement16 == "8x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize9)/8 if @activepanel16 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel16 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel16 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel16 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel16 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel16 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel16 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel16 == 8 ; 8th top panel xtemp = bordersize8 + 7 * panelwidth ytemp = @bordersize elseif @activepanel16 == 9 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel16 == 10 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 11 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 12 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 13 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 14 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 15 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 16 ; 8th bottom panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel16 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement16 == "8x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize9)/8 if @activepanel16 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel16 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel16 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel16 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel16 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel16 == 7 ; 7th left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel16 == 8 ; 8th left panel xtemp = @bordersize ytemp = bordersize8 + 7 * panelheight elseif @activepanel16 == 9 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel16 == 10 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel16 == 11 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel16 == 12 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel16 == 13 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel16 == 14 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel16 == 15 ; 7th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel16 == 16 ; 8th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize8 + 7 * panelheight endif ; @activepanel16 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment16 elseif @numberpanels == 17 if @arrangement17 == "horizontal" panelwidth = (#width + 1 - bordersize18)/17 panelheight = #height + 1 - bordersize2 if @activepanel17 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel17 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel17 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel17 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel17 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel17 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel17 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel17 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel17 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel17 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel17 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel17 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel17 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel17 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel17 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel17 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel17 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth endif ; @activepanel17 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement17 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize18)/17 if @activepanel17 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel17 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel17 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel17 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel17 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel17 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel17 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel17 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel17 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel17 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel17 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel17 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel17 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel17 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel17 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel17 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel17 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight endif ; @activepanel17 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 endif ; @arranegment17 elseif @numberpanels == 18 if @arrangement18 == "horizontal" panelwidth = (#width + 1 - bordersize19)/18 panelheight = #height + 1 - bordersize2 if @activepanel18 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel18 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel18 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel18 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel18 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel18 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel18 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel18 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel18 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel18 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel18 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel18 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel18 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel18 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel18 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel18 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel18 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel18 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth endif ; @activepanel18 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement18 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize19)/18 if @activepanel18 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel18 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel18 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel18 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel18 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel18 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel18 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel18 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel18 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel18 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel18 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel18 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel18 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel18 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel18 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel18 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel18 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight endif ; @activepanel18 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement18 == "9x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize10)/9 if @activepanel18 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel18 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel18 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel18 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel18 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel18 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel18 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel18 == 8 ; 8th top panel xtemp = bordersize8 + 7 * panelwidth ytemp = @bordersize elseif @activepanel18 == 9 ; 9th top panel xtemp = bordersize9 + 8 * panelwidth ytemp = @bordersize elseif @activepanel18 == 10 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel18 == 11 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 12 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 13 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 14 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 15 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 16 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 17 ; 8th bottom panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 18 ; 9th bottom panel xtemp = bordersize9 + 8 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel18 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement18 == "9x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize10)/9 if @activepanel18 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel18 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel18 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel18 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel18 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel18 == 7 ; 7th left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel18 == 8 ; 8th left panel xtemp = @bordersize ytemp = bordersize8 + 7 * panelheight elseif @activepanel18 == 9 ; 9th left panel xtemp = @bordersize ytemp = bordersize9 + 8 * panelheight elseif @activepanel18 == 10 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel18 == 11 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 12 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 13 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel18 == 14 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel18 == 15 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel18 == 16 ; 7th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel18 == 17 ; 8th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize8 + 7 * panelheight elseif @activepanel18 == 18 ; 9th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize9 + 8 * panelheight endif ; @activepanel18 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement18 == "6x3H" panelheight = (#height + 1 - bordersize4)/3 panelwidth = (#width + 1 - bordersize7)/6 if @activepanel18 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel18 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel18 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel18 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel18 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel18 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel18 == 7 ; 1st middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel18 == 8 ; 2nd middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 9 ; 3rd middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 10 ; 4th middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 11 ; 5th middle panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 12 ; 6th middle panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 13 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 14 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 15 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 16 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 17 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 18 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel18 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement18 == "6x3V" panelheight = (#height + 1 - bordersize7)/6 panelwidth = (#width + 1 - bordersize4)/3 if @activepanel18 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel18 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel18 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel18 == 4 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel18 == 5 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 6 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel18 == 7 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 8 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 9 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel18 == 10 ; 1st panel row 4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel18 == 11 ; 2nd panel row 4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel18 == 12 ; 3rd panel row 4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel18 == 13 ; 1st panel row 5 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel18 == 14 ; 2nd panel row 5 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel18 == 15 ; 3rd panel row 5 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel18 == 16 ; bottom left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel18 == 17 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel18 == 18 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize6 + 5 * panelheight endif ; @activepanel18 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment18 elseif @numberpanels == 19 if @arrangement19 == "horizontal" panelwidth = (#width + 1 - bordersize20)/19 panelheight = #height + 1 - bordersize2 if @activepanel19 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel19 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel19 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel19 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel19 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel19 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel19 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel19 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel19 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel19 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel19 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel19 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel19 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel19 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel19 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel19 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel19 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel19 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel19 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth endif ; @activepanel19 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement19 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize20)/19 if @activepanel19 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel19 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel19 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel19 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel19 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel19 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel19 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel19 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel19 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel19 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel19 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel19 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel19 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel19 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel19 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel19 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel19 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel19 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel19 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight endif ; @activepanel19 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 endif ; @arranegment19 elseif @numberpanels == 20 if @arrangement20 == "horizontal" panelwidth = (#width + 1 - bordersize21)/20 panelheight = #height + 1 - bordersize2 if @activepanel20 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel20 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel20 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel20 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel20 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel20 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel20 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel20 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel20 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel20 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel20 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel20 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel20 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel20 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel20 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel20 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel20 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel20 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel20 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth elseif @activepanel20 == 20 ; 20th panel xtemp = bordersize20 + 19 * panelwidth endif ; @activepanel20 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement20 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize21)/20 if @activepanel20 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel20 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel20 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel20 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel20 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel20 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel20 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel20 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel20 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel20 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel20 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel20 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel20 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel20 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel20 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel20 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel20 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight elseif @activepanel20 == 20 ; 20th panel ytemp = bordersize20 + 19 * panelheight endif ; @activepanel20 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement20 == "10x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize11)/10 if @activepanel20 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel20 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel20 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel20 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel20 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel20 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel20 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel20 == 8 ; 8th top panel xtemp = bordersize8 + 7 * panelwidth ytemp = @bordersize elseif @activepanel20 == 9 ; 9th top panel xtemp = bordersize9 + 8 * panelwidth ytemp = @bordersize elseif @activepanel20 == 10 ; 10th top panel xtemp = bordersize10 + 9 * panelwidth ytemp = @bordersize elseif @activepanel20 == 11 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel20 == 12 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 13 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 14 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 15 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 16 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 17 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 18 ; 8th bottom panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 19 ; 9th bottom panel xtemp = bordersize9 + 8 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 20 ; 10th bottom panel xtemp = bordersize10 + 9 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel20 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement20 == "10x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize11)/10 if @activepanel20 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel20 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel20 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel20 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel20 == 7 ; 7th left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel20 == 8 ; 8th left panel xtemp = @bordersize ytemp = bordersize8 + 7 * panelheight elseif @activepanel20 == 9 ; 9th left panel xtemp = @bordersize ytemp = bordersize9 + 8 * panelheight elseif @activepanel20 == 10 ; 10th left panel xtemp = @bordersize ytemp = bordersize10 + 9 * panelheight elseif @activepanel20 == 11 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel20 == 12 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 13 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 14 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 15 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel20 == 16 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel20 == 17 ; 7th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel20 == 18 ; 8th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize8 + 7 * panelheight elseif @activepanel20 == 19 ; 9th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize9 + 8 * panelheight elseif @activepanel20 == 20 ; 10th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize10 + 9 * panelheight endif ; @activepanel20 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement20 == "5x4H" panelheight = (#height + 1 - bordersize5)/4 panelwidth = (#width + 1 - bordersize6)/5 if @activepanel20 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel20 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel20 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel20 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel20 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel20 == 6 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel20 == 7 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 8 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 9 ; 4th panel row 2 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 10 ; 5th panel row 2 xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 11 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 12 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 13 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 14 ; 4th panel row 3 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 15 ; 5th panel row 3 xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 16 ; bottom left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 17 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 18 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 19 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 20 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel20 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement20 == "5x4V" panelheight = (#height + 1 - bordersize6)/5 panelwidth = (#width + 1 - bordersize5)/4 if @activepanel20 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel20 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel20 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel20 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel20 == 5 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel20 == 6 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 7 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 8 ; 4th panel row 2 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel20 == 9 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 10 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 11 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 12 ; 4th panel row 3 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel20 == 13 ; 1st panel row 4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 14 ; 2nd panel row 4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 15 ; 3rd panel row 4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 16 ; 4th panel row 4 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel20 == 17 ; bottom left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel20 == 18 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel20 == 19 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel20 == 20 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize5 + 4 * panelheight endif ; @activepanel20 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment20 elseif @numberpanels == 21 if @arrangement21 == "horizontal" panelwidth = (#width + 1 - bordersize22)/21 panelheight = #height + 1 - bordersize2 if @activepanel21 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel21 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel21 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel21 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel21 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel21 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel21 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel21 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel21 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel21 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel21 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel21 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel21 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel21 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel21 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel21 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel21 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel21 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel21 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth elseif @activepanel21 == 20 ; 20th panel xtemp = bordersize20 + 19 * panelwidth elseif @activepanel21 == 21 ; 21st panel xtemp = bordersize21 + 20 * panelwidth endif ; @activepanel21 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement21 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize22)/21 if @activepanel21 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel21 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel21 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel21 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel21 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel21 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel21 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel21 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel21 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel21 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel21 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel21 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel21 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel21 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel21 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel21 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel21 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel21 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight elseif @activepanel21 == 20 ; 20th panel ytemp = bordersize20 + 19 * panelheight elseif @activepanel21 == 21 ; 21st panel ytemp = bordersize21 + 20 * panelheight endif ; @activepanel21 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement21 == "7x3H" panelheight = (#height + 1 - bordersize4)/3 panelwidth = (#width + 1 - bordersize8)/7 if @activepanel21 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel21 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel21 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel21 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel21 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel21 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel21 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel21 == 8 ; 1st middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel21 == 9 ; 2nd middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 10 ; 3rd middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 11 ; 4th middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 12 ; 5th middle panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 13 ; 6th middle panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 14 ; 7th middle panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 15 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 16 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 17 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 18 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 19 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 20 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 21 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel21 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement21 == "7x3V" panelheight = (#height + 1 - bordersize8)/7 panelwidth = (#width + 1 - bordersize4)/3 if @activepanel21 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel21 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel21 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel21 == 4 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel21 == 5 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 6 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel21 == 7 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 8 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 9 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel21 == 10 ; 1st panel row 4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel21 == 11 ; 2nd panel row 4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel21 == 12 ; 3rd panel row 4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel21 == 13 ; 1st panel row 5 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel21 == 14 ; 2nd panel row 5 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel21 == 15 ; 3rd panel row 5 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel21 == 16 ; 1st panel row 6 xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel21 == 17 ; 2nd panel row 6 xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel21 == 18 ; 3rd panel row 6 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel21 == 19 ; bottom left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel21 == 20 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel21 == 21 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize7 + 6 * panelheight endif ; @activepanel21 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment21 elseif @numberpanels == 22 if @arrangement22 == "horizontal" panelwidth = (#width + 1 - bordersize23)/22 panelheight = #height + 1 - bordersize2 if @activepanel22 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel22 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel22 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel22 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel22 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel22 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel22 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel22 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel22 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel22 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel22 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel22 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel22 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel22 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel22 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel22 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel22 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel22 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel22 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth elseif @activepanel22 == 20 ; 20th panel xtemp = bordersize20 + 19 * panelwidth elseif @activepanel22 == 21 ; 21st panel xtemp = bordersize21 + 20 * panelwidth elseif @activepanel22 == 22 ; 22nd panel xtemp = bordersize22 + 21 * panelwidth endif ; @activepanel22 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement22 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize23)/22 if @activepanel22 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel22 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel22 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel22 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel22 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel22 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel22 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel22 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel22 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel22 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel22 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel22 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel22 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel22 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel22 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel22 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel22 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel22 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel22 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight elseif @activepanel22 == 20 ; 20th panel ytemp = bordersize20 + 19 * panelheight elseif @activepanel22 == 21 ; 21st panel ytemp = bordersize21 + 20 * panelheight elseif @activepanel22 == 22 ; 22nd panel ytemp = bordersize22 + 21 * panelheight endif ; @activepanel22 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement22 == "11x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize12)/11 if @activepanel22 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel22 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel22 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel22 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel22 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel22 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel22 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel22 == 8 ; 8th top panel xtemp = bordersize8 + 7 * panelwidth ytemp = @bordersize elseif @activepanel22 == 9 ; 9th top panel xtemp = bordersize9 + 8 * panelwidth ytemp = @bordersize elseif @activepanel22 == 10 ; 10th top panel xtemp = bordersize10 + 9 * panelwidth ytemp = @bordersize elseif @activepanel22 == 11 ; 11th top panel xtemp = bordersize11 + 10 * panelwidth ytemp = @bordersize elseif @activepanel22 == 12 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel22 == 13 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 14 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 15 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 16 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 17 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 18 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 19 ; 8th bottom panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 20 ; 9th bottom panel xtemp = bordersize9 + 8 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 21 ; 10th bottom panel xtemp = bordersize10 + 9 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 22 ; 11th bottom panel xtemp = bordersize11 + 10 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel22 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement22 == "11x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize12)/11 if @activepanel22 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel22 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel22 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel22 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel22 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel22 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel22 == 7 ; 7th left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel22 == 8 ; 8th left panel xtemp = @bordersize ytemp = bordersize8 + 7 * panelheight elseif @activepanel22 == 9 ; 9th left panel xtemp = @bordersize ytemp = bordersize9 + 8 * panelheight elseif @activepanel22 == 10 ; 10th left panel xtemp = @bordersize ytemp = bordersize10 + 9 * panelheight elseif @activepanel22 == 11 ; 11th left panel xtemp = @bordersize ytemp = bordersize11 + 10 * panelheight elseif @activepanel22 == 12 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel22 == 13 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel22 == 14 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel22 == 15 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel22 == 16 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel22 == 17 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel22 == 18 ; 7th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel22 == 19 ; 8th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize8 + 7 * panelheight elseif @activepanel22 == 20 ; 9th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize9 + 8 * panelheight elseif @activepanel22 == 21 ; 10th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize10 + 9 * panelheight elseif @activepanel22 == 22 ; 11th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize11 + 10 * panelheight endif ; @activepanel22 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment22 elseif @numberpanels == 23 if @arrangement23 == "horizontal" panelwidth = (#width + 1 - bordersize24)/23 panelheight = #height + 1 - bordersize2 if @activepanel23 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel23 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel23 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel23 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel23 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel23 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel23 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel23 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel23 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel23 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel23 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel23 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel23 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel23 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel23 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel23 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel23 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel23 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel23 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth elseif @activepanel23 == 20 ; 20th panel xtemp = bordersize20 + 19 * panelwidth elseif @activepanel23 == 21 ; 21st panel xtemp = bordersize21 + 20 * panelwidth elseif @activepanel23 == 22 ; 22nd panel xtemp = bordersize22 + 21 * panelwidth elseif @activepanel23 == 23 ; 23rd panel xtemp = bordersize23 + 22 * panelwidth endif ; @activepanel23 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement23 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize24)/23 if @activepanel23 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel23 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel23 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel23 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel23 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel23 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel23 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel23 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel23 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel23 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel23 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel23 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel23 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel23 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel23 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel23 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel23 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel23 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel23 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight elseif @activepanel23 == 20 ; 20th panel ytemp = bordersize20 + 19 * panelheight elseif @activepanel23 == 21 ; 21st panel ytemp = bordersize21 + 20 * panelheight elseif @activepanel23 == 22 ; 22nd panel ytemp = bordersize22 + 21 * panelheight elseif @activepanel23 == 23 ; 23rd panel ytemp = bordersize23 + 22 * panelheight endif ; @activepanel23 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 endif ; @arranegment23 elseif @numberpanels == 24 if @arrangement24 == "horizontal" panelwidth = (#width + 1 - bordersize25)/24 panelheight = #height + 1 - bordersize2 if @activepanel24 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel24 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel24 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel24 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel24 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel24 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel24 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel24 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel24 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel24 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel24 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel24 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel24 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel24 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel24 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel24 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel24 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel24 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel24 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth elseif @activepanel24 == 20 ; 20th panel xtemp = bordersize20 + 19 * panelwidth elseif @activepanel24 == 21 ; 21st panel xtemp = bordersize21 + 20 * panelwidth elseif @activepanel24 == 22 ; 22nd panel xtemp = bordersize22 + 21 * panelwidth elseif @activepanel24 == 23 ; 23rd panel xtemp = bordersize23 + 22 * panelwidth elseif @activepanel24 == 24 ; 24th panel xtemp = bordersize24 + 23 * panelwidth endif ; @activepanel24 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement24 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize25)/24 if @activepanel24 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel24 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel24 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel24 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel24 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel24 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel24 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel24 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel24 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel24 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel24 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel24 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel24 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel24 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight elseif @activepanel24 == 20 ; 20th panel ytemp = bordersize20 + 19 * panelheight elseif @activepanel24 == 21 ; 21st panel ytemp = bordersize21 + 20 * panelheight elseif @activepanel24 == 22 ; 22nd panel ytemp = bordersize22 + 21 * panelheight elseif @activepanel24 == 23 ; 23rd panel ytemp = bordersize23 + 22 * panelheight elseif @activepanel24 == 24 ; 24th panel ytemp = bordersize24 + 23 * panelheight endif ; @activepanel24 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement24 == "12x2H" panelheight = (#height + 1 - bordersize3)/2 panelwidth = (#width + 1 - bordersize13)/12 if @activepanel24 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel24 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel24 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel24 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel24 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel24 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel24 == 8 ; 8th top panel xtemp = bordersize8 + 7 * panelwidth ytemp = @bordersize elseif @activepanel24 == 9 ; 9th top panel xtemp = bordersize9 + 8 * panelwidth ytemp = @bordersize elseif @activepanel24 == 10 ; 10th top panel xtemp = bordersize10 + 9 * panelwidth ytemp = @bordersize elseif @activepanel24 == 11 ; 11th top panel xtemp = bordersize11 + 10 * panelwidth ytemp = @bordersize elseif @activepanel24 == 12 ; 12th top panel xtemp = bordersize12 + 11 * panelwidth ytemp = @bordersize elseif @activepanel24 == 13 ; bottom left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel24 == 14 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 15 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 16 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 17 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 18 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 19 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 20 ; 8th bottom panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 21 ; 9th bottom panel xtemp = bordersize9 + 8 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 22 ; 10th bottom panel xtemp = bordersize10 + 9 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 23 ; 11th bottom panel xtemp = bordersize11 + 10 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 24 ; 12th bottom panel xtemp = bordersize12 + 11 * panelwidth ytemp = bordersize2 + panelheight endif ; @activepanel24 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement24 == "12x2V" panelwidth = (#width + 1 - bordersize3)/2 panelheight = (#height + 1 - bordersize13)/12 if @activepanel24 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd left panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel24 == 3 ; 3rd left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 4 ; 4th left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 5 ; 5th left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 6 ; 6th left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 7 ; 7th left panel xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel24 == 8 ; 8th left panel xtemp = @bordersize ytemp = bordersize8 + 7 * panelheight elseif @activepanel24 == 9 ; 9th left panel xtemp = @bordersize ytemp = bordersize9 + 8 * panelheight elseif @activepanel24 == 10 ; 10th left panel xtemp = @bordersize ytemp = bordersize10 + 9 * panelheight elseif @activepanel24 == 11 ; 11th left panel xtemp = @bordersize ytemp = bordersize11 + 10 * panelheight elseif @activepanel24 == 12 ; 12th left panel xtemp = @bordersize ytemp = bordersize12 + 11 * panelheight elseif @activepanel24 == 13 ; top right panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel24 == 14 ; 2nd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 15 ; 3rd right panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 16 ; 4th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 17 ; 5th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 18 ; 6th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 19 ; 7th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel24 == 20 ; 8th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize8 + 7 * panelheight elseif @activepanel24 == 21 ; 9th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize9 + 8 * panelheight elseif @activepanel24 == 22 ; 10th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize10 + 9 * panelheight elseif @activepanel24 == 23 ; 11th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize11 + 10 * panelheight elseif @activepanel24 == 24 ; 12th right panel xtemp = bordersize2 + panelwidth ytemp = bordersize12 + 11 * panelheight endif ; @activepanel24 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement24 == "8x3H" panelheight = (#height + 1 - bordersize4)/3 panelwidth = (#width + 1 - bordersize9)/8 if @activepanel24 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel24 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel24 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel24 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel24 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel24 == 7 ; 7th top panel xtemp = bordersize7 + 6 * panelwidth ytemp = @bordersize elseif @activepanel24 == 8 ; 8th top panel xtemp = bordersize8 + 7 * panelwidth ytemp = @bordersize elseif @activepanel24 == 9 ; 1st middle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel24 == 10 ; 2nd middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 11 ; 3rd middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 12 ; 4th middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 13 ; 5th middle panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 14 ; 6th middle panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 15 ; 7th middle panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 16 ; 8th middle panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 17 ; bottom left panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 18 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 19 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 20 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 21 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 22 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 23 ; 7th bottom panel xtemp = bordersize7 + 6 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 24 ; 8th bottom panel xtemp = bordersize8 + 7 * panelwidth ytemp = bordersize3 + 2 * panelheight endif ; @activepanel24 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement24 == "8x3V" panelheight = (#height + 1 - bordersize9)/8 panelwidth = (#width + 1 - bordersize4)/3 if @activepanel24 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel24 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel24 == 4 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel24 == 5 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 6 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 7 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 8 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 9 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 10 ; 1st panel row 4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 11 ; 2nd panel row 4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 12 ; 3rd panel row 4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 13 ; 1st panel row 5 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 14 ; 2nd panel row 5 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 15 ; 3rd panel row 5 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 16 ; 1st panel row 6 xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 17 ; 2nd panel row 6 xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 18 ; 3rd panel row 6 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 19 ; 1st panel row 7 xtemp = @bordersize ytemp = bordersize7 + 6 * panelheight elseif @activepanel24 == 20 ; 2nd panel row 7 xtemp = bordersize2 + panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel24 == 21 ; 3rd panel row 7 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize7 + 6 * panelheight elseif @activepanel24 == 22 ; bottom left panel xtemp = @bordersize ytemp = bordersize8 + 7 * panelheight elseif @activepanel24 == 23 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize8 + 7 * panelheight elseif @activepanel24 == 24 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize8 + 7 * panelheight endif ; @activepanel24 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement24 == "6x4H" panelheight = (#height + 1 - bordersize5)/4 panelwidth = (#width + 1 - bordersize7)/6 if @activepanel24 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel24 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel24 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel24 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel24 == 6 ; 6th top panel xtemp = bordersize6 + 5 * panelwidth ytemp = @bordersize elseif @activepanel24 == 7 ; 1st upper nmiddle panel xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel24 == 8 ; 2nd upper middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 9 ; 3rd upper middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 10 ; 4th upper middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 11 ; 5th upper middle panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 12 ; 6th upper middle panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 13 ; 1st lower nmiddle panel xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 14 ; 2nd lower middle panel xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 15 ; 3rd lower middle panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 16 ; 4th lower middle panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 17 ; 5th lower middle panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 18 ; 6th lower middle panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 19 ; bottom left panel xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 20 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 21 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 22 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 23 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 24 ; 6th bottom panel xtemp = bordersize6 + 5 * panelwidth ytemp = bordersize4 + 3 * panelheight endif ; @activepanel24 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 elseif @arrangement24 == "6x4V" panelheight = (#height + 1 - bordersize7)/6 panelwidth = (#width + 1 - bordersize5)/4 if @activepanel24 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel24 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel24 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel24 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel24 == 5 ; 1st panel row 2 xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel24 == 6 ; 2nd panel row 2 xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 7 ; 3rd panel row 2 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 8 ; 4th panel row 2 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel24 == 9 ; 1st panel row 3 xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 10 ; 2nd panel row 3 xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 11 ; 3rd panel row 3 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 12 ; 4th panel row 3 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel24 == 13 ; 1st panel row 4 xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 14 ; 2nd panel row 4 xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 15 ; 3rd panel row 4 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 16 ; 4th panel row 4 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel24 == 17 ; 1st panel row 5 xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 18 ; 2nd panel row 5 xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 19 ; 3rd panel row 5 xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 20 ; 4th panel row 5 xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel24 == 21 ; bottom left panel xtemp = @bordersize ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 22 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 23 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize6 + 5 * panelheight elseif @activepanel24 == 24 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize6 + 5 * panelheight endif ; @activepanel24 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment24 elseif @numberpanels == 25 if @arrangement25 == "horizontal" panelwidth = (#width + 1 - bordersize26)/25 panelheight = #height + 1 - bordersize2 if @activepanel25 == 1 ; left panel is visible xtemp = @bordersize elseif @activepanel25 == 2 ; 2nd panel xtemp = bordersize2 + panelwidth elseif @activepanel25 == 3 ; 3rd panel xtemp = bordersize3 + 2 * panelwidth elseif @activepanel25 == 4 ; 4th panel xtemp = bordersize4 + 3 * panelwidth elseif @activepanel25 == 5 ; 5th panel xtemp = bordersize5 + 4 * panelwidth elseif @activepanel25 == 6 ; 6th panel xtemp = bordersize6 + 5 * panelwidth elseif @activepanel25 == 7 ; 7th panel xtemp = bordersize7 + 6 * panelwidth elseif @activepanel25 == 8 ; 8th panel xtemp = bordersize8 + 7 * panelwidth elseif @activepanel25 == 9 ; 9th panel xtemp = bordersize9 + 8 * panelwidth elseif @activepanel25 == 10 ; 10th panel xtemp = bordersize10 + 9 * panelwidth elseif @activepanel25 == 11 ; 11th panel xtemp = bordersize11 + 10 * panelwidth elseif @activepanel25 == 12 ; 12th panel xtemp = bordersize12 + 11 * panelwidth elseif @activepanel25 == 13 ; 13th panel xtemp = bordersize13 + 12 * panelwidth elseif @activepanel25 == 14 ; 14th panel xtemp = bordersize14 + 13 * panelwidth elseif @activepanel25 == 15 ; 15th panel xtemp = bordersize15 + 14 * panelwidth elseif @activepanel25 == 16 ; 16th panel xtemp = bordersize16 + 15 * panelwidth elseif @activepanel25 == 17 ; 17th panel xtemp = bordersize17 + 16 * panelwidth elseif @activepanel25 == 18 ; 18th panel xtemp = bordersize18 + 17 * panelwidth elseif @activepanel25 == 19 ; 19th panel xtemp = bordersize19 + 18 * panelwidth elseif @activepanel25 == 20 ; 20th panel xtemp = bordersize20 + 19 * panelwidth elseif @activepanel25 == 21 ; 21st panel xtemp = bordersize21 + 20 * panelwidth elseif @activepanel25 == 22 ; 22nd panel xtemp = bordersize22 + 21 * panelwidth elseif @activepanel25 == 23 ; 23rd panel xtemp = bordersize23 + 22 * panelwidth elseif @activepanel25 == 24 ; 24th panel xtemp = bordersize24 + 23 * panelwidth elseif @activepanel25 == 25 ; 25th panel xtemp = bordersize25 + 24 * panelwidth endif ; @activepanel25 xlow = round(xtemp) xhigh = round(xtemp + panelwidth) - 1 ylow = @bordersize yhigh = round(ylow + panelheight) - 1 elseif @arrangement25 == "vertical" ; top-bottom panels panelwidth = #width + 1 - bordersize2 panelheight = (#height + 1 - bordersize26)/25 if @activepanel25 == 1 ; top panel is visible ytemp = @bordersize elseif @activepanel25 == 2 ; 2nd panel ytemp = bordersize2 + panelheight elseif @activepanel25 == 3 ; 3rd panel ytemp = bordersize3 + 2 * panelheight elseif @activepanel25 == 4 ; 4th panel ytemp = bordersize4 + 3 * panelheight elseif @activepanel25 == 5 ; 5th panel ytemp = bordersize5 + 4 * panelheight elseif @activepanel25 == 6 ; 6th panel ytemp = bordersize6 + 5 * panelheight elseif @activepanel25 == 7 ; 7th panel ytemp = bordersize7 + 6 * panelheight elseif @activepanel25 == 8 ; 8th panel ytemp = bordersize8 + 7 * panelheight elseif @activepanel25 == 9 ; 9th panel ytemp = bordersize9 + 8 * panelheight elseif @activepanel25 == 10 ; 10th panel ytemp = bordersize10 + 9 * panelheight elseif @activepanel25 == 11 ; 11th panel ytemp = bordersize11 + 10 * panelheight elseif @activepanel25 == 12 ; 12th panel ytemp = bordersize12 + 11 * panelheight elseif @activepanel25 == 13 ; 13th panel ytemp = bordersize13 + 12 * panelheight elseif @activepanel25 == 14 ; 14th panel ytemp = bordersize14 + 13 * panelheight elseif @activepanel25 == 15 ; 15th panel ytemp = bordersize15 + 14 * panelheight elseif @activepanel25 == 16 ; 16th panel ytemp = bordersize16 + 15 * panelheight elseif @activepanel25 == 17 ; 17th panel ytemp = bordersize17 + 16 * panelheight elseif @activepanel25 == 18 ; 18th panel ytemp = bordersize18 + 17 * panelheight elseif @activepanel25 == 19 ; 19th panel ytemp = bordersize19 + 18 * panelheight elseif @activepanel25 == 20 ; 20th panel ytemp = bordersize20 + 19 * panelheight elseif @activepanel25 == 21 ; 21st panel ytemp = bordersize21 + 20 * panelheight elseif @activepanel25 == 22 ; 22nd panel ytemp = bordersize22 + 21 * panelheight elseif @activepanel25 == 23 ; 23rd panel ytemp = bordersize23 + 22 * panelheight elseif @activepanel25 == 24 ; 24th panel ytemp = bordersize24 + 23 * panelheight elseif @activepanel25 == 25 ; 25th panel ytemp = bordersize25 + 24 * panelheight endif ; @activepanel25 ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xlow = @bordersize xhigh = round(xlow + panelwidth) - 1 elseif @arrangement25 == "5x5" panelheight = (#height + 1 - bordersize6)/5 panelwidth = (#width + 1 - bordersize6)/5 if @activepanel25 == 1 ; top left panel is visible xtemp = @bordersize ytemp = @bordersize elseif @activepanel25 == 2 ; 2nd top panel xtemp = bordersize2 + panelwidth ytemp = @bordersize elseif @activepanel25 == 3 ; 3rd top panel xtemp = bordersize3 + 2 * panelwidth ytemp = @bordersize elseif @activepanel25 == 4 ; 4th top panel xtemp = bordersize4 + 3 * panelwidth ytemp = @bordersize elseif @activepanel25 == 5 ; 5th top panel xtemp = bordersize5 + 4 * panelwidth ytemp = @bordersize elseif @activepanel25 == 6 ; 1st panel 2nd row xtemp = @bordersize ytemp = bordersize2 + panelheight elseif @activepanel25 == 7 ; 2nd panel 2nd row xtemp = bordersize2 + panelwidth ytemp = bordersize2 + panelheight elseif @activepanel25 == 8 ; 3rd panel 2nd row xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel25 == 9 ; 4th panel 2nd row xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel25 == 10 ; 5th panel 2nd row xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize2 + panelheight elseif @activepanel25 == 11 ; 1st panel 3rd row xtemp = @bordersize ytemp = bordersize3 + 2 * panelheight elseif @activepanel25 == 12 ; 2nd panel 3rd row xtemp = bordersize2 + panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel25 == 13 ; 3rd panel 3rd row xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel25 == 14 ; 4th panel 3rd row xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel25 == 15 ; 5th panel 3rd row xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize3 + 2 * panelheight elseif @activepanel25 == 16 ; 1st panel 4th row xtemp = @bordersize ytemp = bordersize4 + 3 * panelheight elseif @activepanel25 == 17 ; 2nd panel 4th row xtemp = bordersize2 + panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel25 == 18 ; 3rd panel 4th row xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel25 == 19 ; 4th panel 4th row xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel25 == 20 ; 5th panel 4th row xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize4 + 3 * panelheight elseif @activepanel25 == 21 ; bottom left panel xtemp = @bordersize ytemp = bordersize5 + 4 * panelheight elseif @activepanel25 == 22 ; 2nd bottom panel xtemp = bordersize2 + panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel25 == 23 ; 3rd bottom panel xtemp = bordersize3 + 2 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel25 == 24 ; 4th bottom panel xtemp = bordersize4 + 3 * panelwidth ytemp = bordersize5 + 4 * panelheight elseif @activepanel25 == 25 ; 5th bottom panel xtemp = bordersize5 + 4 * panelwidth ytemp = bordersize5 + 4 * panelheight endif ; @activepanel25 xlow = round(xtemp) ylow = round(ytemp) yhigh = round(ytemp + panelheight) - 1 xhigh = round(xtemp + panelwidth) - 1 endif ; @arranegment25 endif ; @numberpanels if @adjustborders xlow = xlow + @leftadjustment if xlow < 0 xlow = 0 endif ; xlow xhigh = xhigh + @rightadjustment if xhigh > #width xhigh = #width endif ; xhigh ylow = ylow + @topadjustment if ylow < 0 ylow = 0 endif ; ylow yhigh = yhigh + @bottomadjustment if yhigh > #height yhigh = #height endif ; yhigh endif ; @adjustborders transform: if @invert if ((#x >= xlow) && (#x <= xhigh) && (#y >= ylow) && (#y <= yhigh)) #solid = TRUE endif ; #x else if ((#x < xlow) || (#x > xhigh) || (#y < ylow) || (#y > yhigh)) #solid = TRUE endif ; #x endif ; @invert default: title = "Panels" param numberpanels caption = "Number of Panels" default = 2 min = 1 max = 25 hint = "This parameter determines into how many panels the image is divided \ (1-25)." endparam param arrangement2 caption = "Panel Arrangement" enum = "horizontal" "vertical" default = 0 hint = "This parameter determines whether the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 2 endparam param activepanel2 caption = "Active Panel" default = 1 min = 1 max = 2 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 2 endparam param arrangement3 caption = "Panel Arrangement" enum = "horizontal" "vertical" "2x1V" "1x2V" "1x2H" "2x1H" default = 0 hint = "This parameter determines whether the panels are arranged left-right \ or top-bottom. '2x1V' means two panels on the left, one larger panel on the right." visible = @numberpanels == 3 endparam param activepanel3 caption = "Active Panel" default = 1 min = 1 max = 3 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 3 endparam param arrangement4 caption = "Panel Arrangement" enum = "horizontal" "vertical" "2x2" "3x1V" "1x3V" "3x1H" "1x3H" default = 0 hint = "This parameter determines whether the panels are arranged left-right \ or top-bottom. '2x2' means two panels on the left, two panels on the right." visible = @numberpanels == 4 endparam param activepanel4 caption = "Active Panel" default = 1 min = 1 max = 4 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 4 endparam param arrangement5 caption = "Panel Arrangement" enum = "horizontal" "vertical" "3x2H" "2x3H" "2x3V" "3x2V" "4x1V" "1x4V" "4x1H" "1x4H" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 5 endparam param activepanel5 caption = "Active Panel" default = 1 min = 1 max = 5 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 5 endparam param arrangement6 caption = "Panel Arrangement" enum = "horizontal" "vertical" "3x2H" "3x2V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 6 endparam param activepanel6 caption = "Active Panel" default = 1 min = 1 max = 6 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 6 endparam param arrangement7 caption = "Panel Arrangement" enum = "horizontal" "vertical" "4x3H" "3x4H" "4x3V" "3x4V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 7 endparam param activepanel7 caption = "Active Panel" default = 1 min = 1 max = 7 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 7 endparam param arrangement8 caption = "Panel Arrangement" enum = "horizontal" "vertical" "4x2H" "4x2V" "5x3H" "5x3V" "3x5H" "3x5V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 8 endparam param activepanel8 caption = "Active Panel" default = 1 min = 1 max = 8 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 8 endparam param arrangement9 caption = "Panel Arrangement" enum = "horizontal" "vertical" "3x3" "7x2H" "7x2V" "2x7H" "2x7V" \ "5x4H" "5x4V" "4x5H" "4x5V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 9 endparam param activepanel9 caption = "Active Panel" default = 1 min = 1 max = 9 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 9 endparam param arrangement10 caption = "Panel Arrangement" enum = "horizontal" "vertical" "5x2H" "5x2V" "3-4-3H" "3-4-3V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 10 endparam param activepanel10 caption = "Active Panel" default = 1 min = 1 max = 10 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 10 endparam param arrangement11 caption = "Panel Arrangement" enum = "horizontal" "vertical" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 11 endparam param activepanel11 caption = "Active Panel" default = 1 min = 1 max = 11 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 11 endparam param arrangement12 caption = "Panel Arrangement" enum = "horizontal" "vertical" "6x2H" "6x2V" "4x3H" "4x3V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 12 endparam param activepanel12 caption = "Active Panel" default = 1 min = 1 max = 12 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 12 endparam param arrangement13 caption = "Panel Arrangement" enum = "horizontal" "vertical" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 13 endparam param activepanel13 caption = "Active Panel" default = 1 min = 1 max = 13 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 13 endparam param arrangement14 caption = "Panel Arrangement" enum = "horizontal" "vertical" "7x2H" "7x2V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 14 endparam param activepanel14 caption = "Active Panel" default = 1 min = 1 max = 14 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 14 endparam param arrangement15 caption = "Panel Arrangement" enum = "horizontal" "vertical" "5x3H" "5x3V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 15 endparam param activepanel15 caption = "Active Panel" default = 1 min = 1 max = 15 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 15 endparam param arrangement16 caption = "Panel Arrangement" enum = "horizontal" "vertical" "4x4" "8x2H" "8x2V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 16 endparam param activepanel16 caption = "Active Panel" default = 1 min = 1 max = 16 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 16 endparam param arrangement17 caption = "Panel Arrangement" enum = "horizontal" "vertical" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 17 endparam param activepanel17 caption = "Active Panel" default = 1 min = 1 max = 17 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 17 endparam param arrangement18 caption = "Panel Arrangement" enum = "horizontal" "vertical" "9x2H" "9x2V" "6x3H" "6x3V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 18 endparam param activepanel18 caption = "Active Panel" default = 1 min = 1 max = 18 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 18 endparam param arrangement19 caption = "Panel Arrangement" enum = "horizontal" "vertical" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 19 endparam param activepanel19 caption = "Active Panel" default = 1 min = 1 max = 19 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 19 endparam param arrangement20 caption = "Panel Arrangement" enum = "horizontal" "vertical" "10x2H" "10x2V" "5x4H" "5x4V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 20 endparam param activepanel20 caption = "Active Panel" default = 1 min = 1 max = 20 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 20 endparam param arrangement21 caption = "Panel Arrangement" enum = "horizontal" "vertical" "7x3H" "7x3V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 21 endparam param activepanel21 caption = "Active Panel" default = 1 min = 1 max = 21 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 21 endparam param arrangement22 caption = "Panel Arrangement" enum = "horizontal" "vertical" "11x2H" "11x2V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 22 endparam param activepanel22 caption = "Active Panel" default = 1 min = 1 max = 22 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 22 endparam param arrangement23 caption = "Panel Arrangement" enum = "horizontal" "vertical" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 23 endparam param activepanel23 caption = "Active Panel" default = 1 min = 1 max = 23 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 23 endparam param arrangement24 caption = "Panel Arrangement" enum = "horizontal" "vertical" "12x2H" "12x2V" "8x3H" "8x3V" "6x4H" "6x4V" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 24 endparam param activepanel24 caption = "Active Panel" default = 1 min = 1 max = 24 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 24 endparam param arrangement25 caption = "Panel Arrangement" enum = "horizontal" "vertical" "5x5" default = 0 hint = "This parameter determines how the panels are arranged left-right \ or top-bottom." visible = @numberpanels == 25 endparam param activepanel25 caption = "Active Panel" default = 1 min = 1 max = 25 hint = "This setting determines which of the panels will be visible (i.e., \ not colored the #solid color)." visible = @numberpanels == 25 endparam param bordersize caption = "Border Size" default = 10 min = 0 hint = "This parameter sets the size of the separator and border surrounding the \ panels, in pixels." endparam param adjustborders caption = "Adjust Borders?" default = FALSE hint = "If selected, the individual left, right, top, and bottom borders can be \ adjusted." endparam param leftadjustment caption = "Left Border Adjustment" default = 0 hint = "This parameter modifies (added to/subtracted from) the left side \ boundary of the border surrounding the panels, in pixels. Positive values \ enlarge panel, negative values contract it." visible = @adjustborders == TRUE endparam param rightadjustment caption = "Right Border Adjustment" default = 0 hint = "This parameter modifies (added to/subtracted from) the right side \ boundary of the border surrounding the panels, in pixels. Positive values \ enlarge panel, negative values contract it." visible = @adjustborders == TRUE endparam param topadjustment caption = "Top Border Adjustment" default = 0 hint = "This parameter modifies (added to/subtracted from) the top side \ boundary of the border surrounding the panels, in pixels. Positive values \ enlarge panel, negative values contract it." visible = @adjustborders == TRUE endparam param bottomadjustment caption = "Bottom Border Adjustment" default = 0 hint = "This parameter modifies (added to/subtracted from) the bottom side \ boundary of the border surrounding the panels, in pixels. Positive values \ enlarge panel, negative values contract it." visible = @adjustborders == TRUE endparam param invert caption = "Invert Solid Coloring?" default = FALSE hint = "If selected, the #solid and gradient colorings are reversed." endparam } ;jam-RoseDomain { ; Maps the screen onto a neighborhood surrounding a simple rose curve. ; jam 171016 ;global: ;float twopi = 2 * #pi ;float halfradius = @neighborradius/2 ;float diagonallength2 = sqr(#width) + sqr(#height) ; diagonal length squared ;float gtparam = 0.0 ; global parameter for main diagonal equation ;int gxintercept = int gyintercept = 0 ; perpendicular intercept on main diagonal ; for calculating max x- and y-deviations ;int deltaxmax = int deltaymax = 0 ; the max x- and y-deviations from the diagonal ; These values will be mapped to the max ; neighborhood half-radius ; determine the maximum x- and y-deviations from the main diagonal ; use as a test point the lower left screen pixel, (x0,y1) ; first determine the perpendicular intercept of the lower left screen pixel to the diagonal ;gtparam = sqr(#height)/diagonallength2 ;gxintercept = round(gtparam * #width) ; x-coordinate of the perpendicular intercept ;gyintercept = round(gtparam * #height) ; y-coordinate of the intercept point ;deltaxmax = abs(gxintercept) ; difference between the x-coords of the test and intercept points ;deltaymax = abs(gyintercept - #height) ; difference of the y-coords ;transform: ;int xintercept = int yintercept = 0 ; perpendicular intercept of current pixel to main diagonal ;complex newpixel = (0,0) ; coordinates of the rose curve corresponding to current pixel ;float radius = 0.0 ;float tparam = 0.0 ;int deltax = int deltay = 0 ; deviation of current pixel from main diagonal ; will be used to map into the curve neighborhood ;float fdeltax = float fdeltay = 0.0 ; ditto ; find closest point of main diagonal to current point ;tparam = ((#x * #width) + (#y * #height))/diagonallength2 ; 0 <= tparam <= 1 ;xintercept = round(tparam * #width) ;yintercept = round(tparam * #height) ; find deviation of current pixel from main diagonal ; the rose curve will be mapped to the main diagonal, other screen points to the adjacent neighborhood ;deltax = #x - xintercept ;deltay = #y - yintercept ;fdeltax = halfradius * deltax/deltaxmax ;fdeltay = halfradius * deltay/deltaymax ; remap tparam 0 <= tparam <= 2*pi and use this value to calculate the point on the rose curve ; corresponding to the intercept point ;tparam = tparam * twopi ; this becomes the azimuth angle for the rose equation ;radius = @scale * (1 + cos(@petalnumber * tparam)) ;newpixel = radius * exp(flip(tparam)) ; adjust the coordinates for any deviation from the diagonal ;newpixel = (real(newpixel) + fdeltax) + flip((imag(newpixel) + fdeltay)) ; assign this value to the current screen pixel ;#pixel = newpixel ;default: ; title = "Rose Domain" ;param petalnumber ; caption = "Number of Petals" ; default = 3 ; min = 2 ; max = 16 ; hint = "This parameter defines which rose curve to employ for the screen mapping." ;endparam ;param scale ; caption = "Curve Size" ; default = 0.5 ; hint = "This parameter defines the size of the rose curve." ;endparam ;param neighborradius ; caption = "Neighborhood Radius" ; default = 0.1 ; hint = "This parameter defines the size of the neighborhood enveloping the curve." ;endparam ;} jam-OTDistortion { ; jam 190222 ; Distorts to complex plane according to the relationship of the current ; pixel to a selected geometric shape. global: ; Common constants float twopi = 2.0 * #pi float halfpi = #pi/2 float degconversion = twopi/360 float onehalf = 1.0/2 float onethird = 1.0/3 float onefourth = 1.0/4 int numbervertices = 0 ; change to accomodate trap shape int cursality ; number of disjoint pieces for traps 1 & 2 -- change to accomodte trap shape int cincrement ; cursality increments float scratchfloat = 0.0 float scratchfloat2 = float scratchfloat3 = float scratchfloat4 = 0.0 int scratchint = int scratchint2 = 0 int glindex = 0 ; for loops in the global section int glindex2 = 0 ; global outer loop index int glindex3 = 0 ; extra index int maxvertices = 256 ; maximum number of vertices for the trap complex vertex[256] ; maximum number of vertices for the trap float xcoord[256] ; x-coordinates of vertices float ycoord[256] ; y-coordinates vertices int traparray ; the selected trap shape int unityroots ; for 'roots of unity' option bool singleroot ; flag for 'roots of unity' option int whichroot ; for 'roots of unity' option int collinearspots ; for 'collinear spots' option int squaresize ; for 'square array' option int triarraysize ; for 'triangular array' and some other array options int spiralsize ; for the 'polygonal spiral' options float shrink2 = onehalf, float shrink3 = onethird float ellipseH ; for 'superellipse' option float ellipseW float ellipseX float hypotroA ; for 'hypotrochoid' and 'epitrochoid' options float hypotroB float hypotroH float lissajdomain = 0.0 ; for 'lissajous 3' option lissajdomain = #pi * @lissadomain int numbercircles ; for 'nested circles', 'osculant circles' options if @trapshape == "line" traparray = 0 elseif @trapshape == "triangle" traparray = 1 elseif @trapshape == "isosceles" traparray = 2 elseif @trapshape == "3-asterisk" traparray = 3 elseif @trapshape == "3-star" traparray = 4 elseif @trapshape == "polytriangle" traparray = 5 elseif @trapshape == "trigram" traparray = 6 elseif @trapshape == "nested triangles" traparray = 7 elseif @trapshape == "nested triangle 2" traparray = 8 elseif @trapshape == "twisted triangles" traparray = 9 elseif @trapshape == "twisted triangle 2" traparray = 10 elseif @trapshape == "square" traparray = 11 elseif @trapshape == "square 2" traparray = 12 elseif @trapshape == "rhombus" traparray = 13 elseif @trapshape == "kite" traparray = 14 elseif @trapshape == "dart" traparray = 15 elseif @trapshape == "4-asterisk" traparray = 16 elseif @trapshape == "4-star" traparray = 17 elseif @trapshape == "flat 4-star" traparray = 18 elseif @trapshape == "bowtie" traparray = 19 elseif @trapshape == "windowpane" traparray = 20 elseif @trapshape == "tetragram" traparray = 21 elseif @trapshape == "nested squares" traparray = 22 elseif @trapshape == "nested square 2" traparray = 23 elseif @trapshape == "twisted squares" traparray = 24 elseif @trapshape == "twisted square 2" traparray = 25 elseif @trapshape == "windmill" traparray = 26 elseif @trapshape == "windmill 2" traparray = 27 elseif @trapshape == "pentagon" traparray = 28 elseif @trapshape == "pentagon 2" traparray = 29 elseif @trapshape == "pentagram" traparray = 30 elseif @trapshape == "pentagram 2" traparray = 31 elseif @trapshape == "pentagram 3" traparray = 32 elseif @trapshape == "pentagram 4" traparray = 33 elseif @trapshape == "5-asterisk" traparray = 34 elseif @trapshape == "5-star" traparray = 35 elseif @trapshape == "nested pentagons" traparray = 36 elseif @trapshape == "nested pentagon 2" traparray = 37 elseif @trapshape == "twisted pentagons" traparray = 38 elseif @trapshape == "twisted pentagon 2" traparray = 39 elseif @trapshape == "hexagon" traparray = 40 elseif @trapshape == "hexagon 2" traparray = 41 elseif @trapshape == "hexagram" traparray = 42 elseif @trapshape == "hexagram 2" traparray = 43 elseif @trapshape == "hexagram 3" traparray = 44 elseif @trapshape == "hexagram 4" traparray = 45 elseif @trapshape == "hexagram 5" traparray = 46 elseif @trapshape == "hexagram 6" traparray = 47 elseif @trapshape == "hexagram 7" traparray = 48 elseif @trapshape == "6-asterisk" traparray = 49 elseif @trapshape == "6-star" traparray = 50 elseif @trapshape == "nested hexagons" traparray = 51 elseif @trapshape == "nested hexagon 2" traparray = 52 elseif @trapshape == "twisted hexagons" traparray = 53 elseif @trapshape == "twisted hexagon 2" traparray = 54 elseif @trapshape == "hand" traparray = 55 elseif @trapshape == "zigzag-3" traparray = 56 elseif @trapshape == "zigzag-4" traparray = 57 elseif @trapshape == "zigzag-5" traparray = 58 elseif @trapshape == "zigzag-6" traparray = 59 elseif @trapshape == "zigzag-7" traparray = 60 elseif @trapshape == "sawtooth-1" traparray = 61 elseif @trapshape == "sawtooth-2" traparray = 62 elseif @trapshape == "sawtooth-3" traparray = 63 elseif @trapshape == "sawtooth-4" traparray = 64 elseif @trapshape == "5-star 2" traparray = 65 elseif @trapshape == "3-star 2" traparray = 66 elseif @trapshape == "tetragram 2" traparray = 67 elseif @trapshape == "pentagram 5" traparray = 68 elseif @trapshape == "4-star 2" traparray = 69 elseif @trapshape == "5-star 3" traparray = 70 elseif @trapshape == "6-star 2" traparray = 71 elseif @trapshape == "6-star 3" traparray = 72 elseif @trapshape == "square-1" traparray = 73 elseif @trapshape == "square-2" traparray = 74 elseif @trapshape == "square-3" traparray = 75 elseif @trapshape == "square-4" traparray = 76 elseif @trapshape == "heptagon" traparray = 77 elseif @trapshape == "heptagon 2" traparray = 78 elseif @trapshape == "heptagram" traparray = 79 elseif @trapshape == "heptagram 2" traparray = 80 elseif @trapshape == "heptagram 3" traparray = 81 elseif @trapshape == "heptagram 4" traparray = 82 elseif @trapshape == "heptagram 5" traparray = 83 elseif @trapshape == "heptagram 6" traparray = 84 elseif @trapshape == "heptagram 7" traparray = 85 elseif @trapshape == "7-asterisk" traparray = 86 elseif @trapshape == "7-star" traparray = 87 elseif @trapshape == "7-star 2" traparray = 88 elseif @trapshape == "nested heptagons" traparray = 89 elseif @trapshape == "nested heptagon 2" traparray = 90 elseif @trapshape == "twisted heptagons" traparray = 91 elseif @trapshape == "twisted heptagon 2" traparray = 92 elseif @trapshape == "peano curve" traparray = 93 elseif @trapshape == "octagon" traparray = 94 elseif @trapshape == "octagon 2" traparray = 95 elseif @trapshape == "octagram" traparray = 96 elseif @trapshape == "octagram 2" traparray = 97 elseif @trapshape == "octagram 3" traparray = 98 elseif @trapshape == "octagram 4" traparray = 99 elseif @trapshape == "octagram 5" traparray = 100 elseif @trapshape == "octagram 6" traparray = 101 elseif @trapshape == "octagram 7" traparray = 102 elseif @trapshape == "8-asterisk" traparray = 103 elseif @trapshape == "8-star" traparray = 104 elseif @trapshape == "8-star 2" traparray = 105 elseif @trapshape == "octagram 8" traparray = 106 elseif @trapshape == "octagram 9" traparray = 107 elseif @trapshape == "octagram 10" traparray = 108 elseif @trapshape == "roots of unity" traparray = 109 elseif @trapshape == "7-star 3" traparray = 110 elseif @trapshape == "lissajous 1" traparray = 111 elseif @trapshape == "nonagon" traparray = 112 elseif @trapshape == "nonagram" traparray = 113 elseif @trapshape == "nonagram 2" traparray = 114 elseif @trapshape == "nonagram 3" traparray = 115 elseif @trapshape == "nonagram 4" traparray = 116 elseif @trapshape == "nonagram 5" traparray = 117 elseif @trapshape == "nonagram 6" traparray = 118 elseif @trapshape == "9-star" traparray = 119 elseif @trapshape == "9-asterisk" traparray = 120 elseif @trapshape == "9-star 2" traparray = 121 elseif @trapshape == "9-star 3" traparray = 122 elseif @trapshape == "decagon" traparray = 123 elseif @trapshape == "10-asterisk" traparray = 124 elseif @trapshape == "decagram" traparray = 125 elseif @trapshape == "decagram 2" traparray = 126 elseif @trapshape == "decagram 3" traparray = 127 elseif @trapshape == "decagram 4" traparray = 128 elseif @trapshape == "10-star" traparray = 129 elseif @trapshape == "10-star 2" traparray = 130 elseif @trapshape == "10-star 3" traparray = 131 elseif @trapshape == "decagram 5" traparray = 132 elseif @trapshape == "lissajous 2" traparray = 133 elseif @trapshape == "collinear spots" traparray = 134 elseif @trapshape == "square array" traparray = 135 elseif @trapshape == "triangular array" traparray = 136 elseif @trapshape == "triangular spiral" traparray = 137 elseif @trapshape == "square spiral" traparray = 138 elseif @trapshape == "pentagonal array" traparray = 139 elseif @trapshape == "hexagonal array" traparray = 140 elseif @trapshape == "pentagonal spiral" traparray = 141 elseif @trapshape == "hexagonal spiral" traparray = 142 elseif @trapshape == "octagonal spiral" traparray = 143 elseif @trapshape == "superellipse" traparray = 144 elseif @trapshape == "hypotrochoid" traparray = 145 elseif @trapshape == "epitrochoid" traparray = 146 elseif @trapshape == "lissajous 3" traparray = 147 elseif @trapshape == "honeycomb" traparray = 148 elseif @trapshape == "nested circles" traparray = 149 elseif @trapshape == "osculant circles" traparray = 150 elseif @trapshape == "nonagram 7" traparray = 151 elseif @trapshape == "more polygons" if @morepolygons1 == "11-gon" traparray = 152 elseif @morepolygons1 == "11-gram 1" traparray = 153 elseif @morepolygons1 == "11-gram 2" traparray = 154 elseif @morepolygons1 == "11-gram 3" traparray = 155 elseif @morepolygons1 == "11-gram 4" traparray = 156 elseif @morepolygons1 == "11-star" traparray = 163 elseif @morepolygons1 == "11-star 2" traparray = 165 elseif @morepolygons1 == "11-asterisk" traparray = 164 elseif @morepolygons1 == "12-gon" traparray = 157 elseif @morepolygons1 == "12-gram 1" traparray = 158 elseif @morepolygons1 == "12-gram 2" traparray = 159 elseif @morepolygons1 == "12-gram 3" traparray = 160 elseif @morepolygons1 == "12-gram 4" traparray = 161 elseif @morepolygons1 == "12-gram 5" traparray = 162 elseif @morepolygons1 == "12-star" traparray = 166 elseif @morepolygons1 == "12-star 2" traparray = 167 elseif @morepolygons1 == "12-asterisk" traparray = 168 elseif @morepolygons1 == "13-gon" traparray = 189 elseif @morepolygons1 == "14-gon" traparray = 190 elseif @morepolygons1 == "15-gon" traparray = 191 elseif @morepolygons1 == "16-gon" traparray = 192 elseif @morepolygons1 == "13-asterisk" traparray = 193 elseif @morepolygons1 == "14-asterisk" traparray = 194 elseif @morepolygons1 == "15-asterisk" traparray = 195 elseif @morepolygons1 == "16-asterisk" traparray = 196 elseif @morepolygons1 == "13-star" traparray = 197 elseif @morepolygons1 == "14-star" traparray = 198 elseif @morepolygons1 == "15-star" traparray = 199 elseif @morepolygons1 == "16-star" traparray = 200 elseif @morepolygons1 == "11-rhombstar" traparray = 208 elseif @morepolygons1 == "12-rhombstar" traparray = 209 elseif @morepolygons1 == "13-rhombstar" traparray = 210 elseif @morepolygons1 == "14-rhombstar" traparray = 211 elseif @morepolygons1 == "15-rhombstar" traparray = 212 elseif @morepolygons1 == "16-rhombstar" traparray = 213 endif ; @morepolygons1 elseif @trapshape == "more spirolaterals" if @morespirolaterals1 == "1,1,1,2,3;1/2" traparray = 169 elseif @morespirolaterals1 == "1,1,2,1,3;1/2" traparray = 170 elseif @morespirolaterals1 == "1,1,2,2,4;1/2" traparray = 171 elseif @morespirolaterals1 == "1,1,4,5,4;1/2" traparray = 172 elseif @morespirolaterals1 == "1,2,2,2,5;1/2" traparray = 173 elseif @morespirolaterals1 == "1,2,5,3,5;1/2" traparray = 174 elseif @morespirolaterals1 == "2,2,1,4,3;1/2" traparray = 175 elseif @morespirolaterals1 == "2,2,4,4,3;1/2" traparray = 176 elseif @morespirolaterals1 == "2,3,5,3,2;1/2" traparray = 177 elseif @morespirolaterals1 == "1,6,6,6;1/4,1/4,-5/6" traparray = 178 elseif @morespirolaterals1 == "1,6,6,2;3/4,-1/4,-1/6" traparray = 179 elseif @morespirolaterals1 == "1,2,1,3;-4/5" traparray = 180 elseif @morespirolaterals1 == "1,2,1,3;-4/5,-4/5,0" traparray = 181 elseif @morespirolaterals1 == "1,2,1,3;-4/5,-1/5,-4/5" traparray = 182 elseif @morespirolaterals1 == "1,3;1/5,3/5,-1/5" traparray = 183 elseif @morespirolaterals1 == "1,2,3,3,2,1;5/6,1/6,1/6" traparray = 184 elseif @morespirolaterals1 == "1,1,3,1;-5/6,-1/6,3/7" traparray = 185 elseif @morespirolaterals1 == "1,1,3,1;-1/6,1/6,-3/7" traparray = 186 elseif @morespirolaterals1 == "1,1,3,1;5/6,1/6,4/7" traparray = 187 elseif @morespirolaterals1 == "1,3,1,4,2;-1/2,1/6" traparray = 188 endif ; @morespirolaterals1 elseif @trapshape == "3-rhombstar" traparray = 201 elseif @trapshape == "5-rhombstar" traparray = 202 elseif @trapshape == "6-rhombstar" traparray = 203 elseif @trapshape == "7-rhombstar" traparray = 204 elseif @trapshape == "8-rhombstar" traparray = 205 elseif @trapshape == "9-rhombstar" traparray = 206 elseif @trapshape == "10-rhombstar" traparray = 207 endif ; @trapshape if traparray == 0 ; "line" cursality = 1 numbervertices = 2 ; not a closed curve cincrement = 2 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.5,-0.5) vertex[1] = @nscale1 * (0.5,0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 1 ; "triangle" cursality = 1 numbervertices = 4 ; n + cursality for a closed curve cincrement = 4 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,1) vertex[1] = @nscale1 * (-scratchfloat + flip(-0.5)) vertex[2] = @nscale1 * (scratchfloat + flip(-0.5)) vertex[3] = @nscale1 * (0,1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 2 ; "isosceles" cursality = 1 numbervertices = 4 ; n + cursality for a closed curve cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @isocwidth * @nscale1 * (0.35,-1) vertex[1] = @isocheight * @nscale1 * (1,0) vertex[2] = @isocwidth * @nscale1 * (-0.35,-1) vertex[3] = @isocwidth * @nscale1 * (0.35,-1) if @fixisosceles vertex[1] = flip(vertex[1]) endif ; @fixisosceles glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 3 ; "3-asterisk" cursality = 3 numbervertices = 6 ; n + cursality for a closed curve cincrement = 2 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @leafAlength * @nscale1 * (0,1) vertex[2] = @nscale1 * (0,0) vertex[3] = @leafBlength * @nscale1 * (-scratchfloat + flip(-0.5)) vertex[4] = @nscale1 * (0,0) vertex[5] = @leafClength * @nscale1 * (scratchfloat + flip(-0.5)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 4 ; "3-star" cursality = 1 numbervertices = 7 ; n + cursality for a closed curve cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.33333333,0) vertex[1] = @starspikiness * @nscale1 * (0.75,1.29904) vertex[2] = @nscale1 * (-0.16666667,0.288675) vertex[3] = @starspikiness * @nscale1 * (-1.5,0) vertex[4] = @nscale1 * (-0.16666667,-0.288675) vertex[5] = @starspikiness * @nscale1 * (0.75,-1.29904) vertex[6] = @nscale1 * (0.33333333,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 66 ; "3-star 2" cursality = 1 numbervertices = 7 ; n + cursality for a closed curve cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.289778, 0.0776457) vertex[2] = @nscale1 * (-0.5,0.866025) vertex[3] = @nscale1 * (-0.212132, 0.212132) vertex[4] = @nscale1 * (-0.5, -0.866025) vertex[5] = @nscale1 * (-0.0776457, -0.289778) vertex[6] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 5 ; "polytriangle" cursality = 2 numbervertices = 8 ; n + cursality for a closed curve cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5, 0) vertex[1] = @nscale1 * (-0.25, 0.433013) vertex[2] = @nscale1 * (-0.25, -0.433013) vertex[3] = @nscale1 * (0.5,0) vertex[4] = @nscale1 * (0.5, 0.866025) vertex[5] = @nscale1 * (-1,0) vertex[6] = @nscale1 * (0.5, -0.866025) vertex[7] = @nscale1 * (0.5, 0.866025) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 6 ; "trigram" cursality = 1 numbervertices = 7 ; n + cursality for a closed curve cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.7, 0) vertex[1] = @nscale1 * (-0.34368,-1.55104) vertex[2] = @nscale1 * (-0.35,0.69282) vertex[3] = @nscale1 * (1.34718,0.435366) vertex[4] = @nscale1 * (-0.35,-0.69282) vertex[5] = @nscale1 * (-1.0035,1.11567) vertex[6] = @nscale1 * (0.7,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 7 ; "nested triangles" cursality = 2 numbervertices = 8 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.625, 1.08253) vertex[1] = @nscale1 * (-1.25, 0) vertex[2] = @nscale1 * (0.625, -1.08253) vertex[3] = @nscale1 * (0.625,1.08253) vertex[4] = @innerscale * @nscale1 * (0.1875,0.324755) vertex[5] = @innerscale * @nscale1 * (-0.375,0) vertex[6] = @innerscale * @nscale1 * (0.1875,-0.324755) vertex[7] = @innerscale * @nscale1 * (0.1875,0.324755) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 8 ; "nested triangle 2" cursality = 2 numbervertices = 8 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.625, 1.08253) vertex[1] = @nscale1 * (-1.25, 0) vertex[2] = @nscale1 * (0.625, -1.08253) vertex[3] = @nscale1 * (0.625,1.08253) vertex[4] = @innerscale * @nscale1 * (-0.118125,-0.24356625) vertex[5] = @innerscale * @nscale1 * (0.28125,0) vertex[6] = @innerscale * @nscale1 * (-0.118125,0.24356625) vertex[7] = @innerscale * @nscale1 * (-0.118125,-0.24356625) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 9 ; "twisted triangles" cursality = 4 numbervertices = 16 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.5,0.866025) vertex[2] = @nscale1 * (-0.5,-0.866025) vertex[3] = @nscale1 * (1,0) vertex[4] = @nscale1 * (-0.113341,0.642788) vertex[5] = @nscale1 * (-0.5,-0.41955) vertex[6] = @nscale1 * (0.613341,-0.223238) vertex[7] = @nscale1 * (-0.113341,0.642788) vertex[8] = @nscale1 * (-0.40033,-0.145708) vertex[9] = @nscale1 * (0.326352,-0.273842) vertex[10] = @nscale1 * (0.073978,0.41955) vertex[11] = @nscale1 * (-0.40033,-0.145708) vertex[12] = @nscale1 * (0.139033,-0.240812) vertex[13] = @nscale1 * (0.139033,0.240812) vertex[14] = @nscale1 * (-0.278066,0) vertex[15] = @nscale1 * (0.139033,-0.240812) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 10 ; "twisted triangle 2" cursality = 3 numbervertices = 12 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.5,0.866025) vertex[2] = @nscale1 * (-0.5,-0.866025) vertex[3] = @nscale1 * (1,0) vertex[4] = @nscale1 * (-0.0646021,0.614648) vertex[5] = @nscale1 * (-0.5,-0.363271) vertex[6] = @nscale1 * (0.564602,-0.251377) vertex[7] = @nscale1 * (-0.0646021,0.614648) vertex[8] = @nscale1 * (-0.373619,-0.0794152) vertex[9] = @nscale1 * (0.255585,-0.283856) vertex[10] = @nscale1 * (0.118034,0.363271) vertex[11] = @nscale1 * (-0.373619,-0.0794152) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 11 ; "square" cursality = 1 numbervertices = 5 ; n + cursality cincrement = 5 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0,1) vertex[2] = @nscale1 * (-1,0) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 12 ; "square 2" cursality = 6 numbervertices = 12 cincrement = 2 ; numbervertices/cursality vertex[0] = @nscale1 * (0.5,0.5) vertex[1] = @nscale1 * (-0.5,0.5) vertex[2] = @nscale1 * (-0.5,0.5) vertex[3] = @nscale1 * (-0.5,-0.5) vertex[4] = @nscale1 * (-0.5,-0.5) vertex[5] = @nscale1 * (0.5,-0.5) vertex[6] = @nscale1 * (0.5,-0.5) vertex[7] = @nscale1 * (0.5,0.5) vertex[8] = @nscale1 * (0.5,0.5) vertex[9] = @nscale1 * (-0.5,-0.5) vertex[10] = @nscale1 * (-0.5,0.5) vertex[11] = @nscale1 * (0.5,-0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 13 ; "rhombus" cursality = 1 numbervertices = 5 ; n + cursality cincrement = 5 ; numbervertices/cursality vertex[0] = @rhombheight * @nscale1 * (-1.5,0) vertex[1] = @rhombwidth * @nscale1 * (0,0.5) vertex[2] = @rhombheight * @nscale1 * (1.5,0) vertex[3] = @rhombwidth * @nscale1 * (0,-0.5) vertex[4] = @rhombheight * @nscale1 * (-1.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 14 ; "kite" cursality = 1 numbervertices = 5 ; n + cursality cincrement = 5 ; numbervertices/cursality vertex[0] = @kiteheight * @nscale1 * (0,1.25) vertex[1] = @kitewidth * @nscale1 * (-0.5,0.75) vertex[2] = @kiteheight * @nscale1 * (0,-1.25) vertex[3] = @kitewidth * @nscale1 * (0.5,0.75) vertex[4] = @kiteheight * @nscale1 * (0,1.25) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 15 ; "dart" cursality = 1 numbervertices = 5 ; n + cursality cincrement = 5 ; numbervertices/cursality vertex[0] = @dartheight * @nscale1 * (0,0.5) vertex[1] = @dartwidth * @nscale1 * (-0.5,1) vertex[2] = @dartheight * @nscale1 * (0,-1) vertex[3] = @dartwidth * @nscale1 * (0.5,1) vertex[4] = @dartheight * @nscale1 * (0,0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 16 ; "4-asterisk" cursality = 4 numbervertices = 8 ; n + cursality cincrement = 2 ; numbervertices/cursality vertex[0] = @nscale1 * (0,0) vertex[1] = @leafAlength * @nscale1 * (1,0) vertex[2] = @nscale1 * (0,0) vertex[3] = @leafBlength * @nscale1 * (0,1) vertex[4] = @nscale1 * (0,0) vertex[5] = @leafClength * @nscale1 * (-1,0) vertex[6] = @nscale1 * (0,0) vertex[7] = @leafDlength * @nscale1 * (0,-1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 17 ; "4-star" cursality = 1 numbervertices = 9 ; n + cursality cincrement = 9 ; numbervertices/cursality vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (1.06066, 1.06066) vertex[2] = @nscale1 * (0, 0.5) vertex[3] = @starspikiness * @nscale1 * (-1.06066, 1.06066) vertex[4] = @nscale1 * (-0.5, 0) vertex[5] = @starspikiness * @nscale1 * (-1.06066, -1.06066) vertex[6] = @nscale1 * (0, -0.5) vertex[7] = @starspikiness * @nscale1 * (1.06066, -1.06066) vertex[8] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 18 ; "flat 4-star" cursality = 1 numbervertices = 9 ; n + cursality cincrement = 9 ; numbervertices/cursality vertex[0] = @flat4height * @nscale1 * (0.5,0) vertex[1] = @flat4width * @nscale1 * (1.06066, 0.53033) vertex[2] = @flat4height * @nscale1 * (0, 0.25) vertex[3] = @flat4width * @nscale1 * (-1.06066, 0.53033) vertex[4] = @flat4height * @nscale1 * (-0.5, 0) vertex[5] = @flat4width * @nscale1 * (-1.06066, -0.53033) vertex[6] = @flat4height * @nscale1 * (0, -0.25) vertex[7] = @flat4width * @nscale1 * (1.06066, -0.53033) vertex[8] = @flat4height * @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 69 ; "4-star 2" cursality = 1 numbervertices = 9 ; n + cursality cincrement = 9 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.289778, 0.0776457) vertex[2] = @nscale1 * (0, 1) vertex[3] = @nscale1 * (-0.0776457, 0.289778) vertex[4] = @nscale1 * (-1, 0) vertex[5] = @nscale1 * (-0.289778, -0.0776457) vertex[6] = @nscale1 * (0, -1) vertex[7] = @nscale1 * (0.0776457, -0.289778) vertex[8] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 19 ; "bowtie" cursality = 1 numbervertices = 5 ; n + cursality cincrement = 5 ; numbervertices/cursality vertex[0] = @nscale1 * (0.5,0.5) vertex[1] = @nscale1 * (-0.5,-0.5) vertex[2] = @nscale1 * (-0.5,0.5) vertex[3] = @nscale1 * (0.5,-0.5) vertex[4] = @nscale1 * (0.5,0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 20 ; "windowpane" cursality = 6 numbervertices = 12 ; open figures (line segments) cincrement = 2 ; numbervertices/cursality vertex[0] = @nscale1 * (0.5,0.5) vertex[1] = @nscale1 * (-0.5,0.5) vertex[2] = @nscale1 * (0.5,0) vertex[3] = @nscale1 * (-0.5,0) vertex[4] = @nscale1 * (0.5,-0.5) vertex[5] = @nscale1 * (-0.5,-0.5) vertex[6] = @nscale1 * (0.5,0.5) vertex[7] = @nscale1 * (0.5,-0.5) vertex[8] = @nscale1 * (0,0.5) vertex[9] = @nscale1 * (0,-0.5) vertex[10] = @nscale1 * (-0.5,0.5) vertex[11] = @nscale1 * (-0.5,-0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 21 ; "tetragram" cursality = 1 numbervertices = 9 ; n + cursality for a closed curve cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.7, 0) vertex[1] = @nscale1 * (0.573427,-1.27718) vertex[2] = @nscale1 * (0,0.7) vertex[3] = @nscale1 * (-1.27718,-0.573427) vertex[4] = @nscale1 * (0.7,0) vertex[5] = @nscale1 * (-0.573427,1.27718) vertex[6] = @nscale1 * (0,-0.7) vertex[7] = @nscale1 * (1.27718,0.573427) vertex[8] = @nscale1 * (-0.7, 0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 67 ; "tetragram 2" cursality = 2 numbervertices = 10 ; n + cursality for a closed curve cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.207912, -0.978148) vertex[2] = @nscale1 * (-0.978148, -0.207912) vertex[3] = @nscale1 * (0.207912, 0.978148) vertex[4] = @nscale1 * (0.978148, 0.207912) vertex[5] = @nscale1 * (-0.207912, 0.978148) vertex[6] = @nscale1 * (0.978148, -0.207912) vertex[7] = @nscale1 * (0.207912, -0.978148) vertex[8] = @nscale1 * (-0.978148, 0.207912) vertex[9] = @nscale1 * (-0.207912, 0.978148) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 22 ; "nested squares" cursality = 2 numbervertices = 10 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1.2, 0) vertex[1] = @nscale1 * (0,1.2) vertex[2] = @nscale1 * (-1.2,0) vertex[3] = @nscale1 * (0,-1.2) vertex[4] = @nscale1 * (1.2,0) vertex[5] = @innerscale * @nscale1 * (0.75,0) vertex[6] = @innerscale * @nscale1 * (0,0.75) vertex[7] = @innerscale * @nscale1 * (-0.75,0) vertex[8] = @innerscale * @nscale1 * (0,-0.75) vertex[9] = @innerscale * @nscale1 * (0.75,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 23 ; "nested square 2" cursality = 2 numbervertices = 10 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1.2, 0) vertex[1] = @nscale1 * (0,1.2) vertex[2] = @nscale1 * (-1.2,0) vertex[3] = @nscale1 * (0,-1.2) vertex[4] = @nscale1 * (1.2,0) vertex[5] = @innerscale * @nscale1 * (0.35,0.35) vertex[6] = @innerscale * @nscale1 * (-0.35,0.35) vertex[7] = @innerscale * @nscale1 * (-0.35,-0.35) vertex[8] = @innerscale * @nscale1 * (0.35,-0.35) vertex[9] = @innerscale * @nscale1 * (0.35,0.35) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 24 ; "twisted squares" cursality = 3 numbervertices = 15 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0,1) vertex[2] = @nscale1 * (-1,0) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (1,0) vertex[5] = @nscale1 * (0.266846,0.733154) vertex[6] = @nscale1 * (-0.733154,0.266846) vertex[7] = @nscale1 * (-0.266846,-0.733154) vertex[8] = @nscale1 * (0.733154,-0.266846) vertex[9] = @nscale1 * (0.266846,0.733154) vertex[10] = @nscale1 * (-0.466308,0.391279) vertex[11] = @nscale1 * (-0.391279,-0.466308) vertex[12] = @nscale1 * (0.466308,-0.391279) vertex[13] = @nscale1 * (0.391279,0.466308) vertex[14] = @nscale1 * (-0.466308,0.391279) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 25 ; "twisted square 2" cursality = 4 numbervertices = 20 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0,1) vertex[2] = @nscale1 * (-1,0) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (1,0) vertex[5] = @nscale1 * (0.366025,0.633975) vertex[6] = @nscale1 * (-0.633975,0.366025) vertex[7] = @nscale1 * (-0.366025,-0.633975) vertex[8] = @nscale1 * (0.633975,-0.366025) vertex[9] = @nscale1 * (0.366025,0.633975) vertex[10] = @nscale1 * (-0.267949,0.464102) vertex[11] = @nscale1 * (-0.464102,-0.267949) vertex[12] = @nscale1 * (0.267949,-0.464102) vertex[13] = @nscale1 * (0.464102,0.267949) vertex[14] = @nscale1 * (-0.267949,0.464102) vertex[15] = @nscale1 * (-0.392305, 0) vertex[16] = @nscale1 * (0,-0.392305) vertex[17] = @nscale1 * (0.392305,0) vertex[18] = @nscale1 * (0,0.392305) vertex[19] = @nscale1 * (-0.392305,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 26 ; "windmill" cursality = 2 numbervertices = 10 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.965926, 0.258819) vertex[1] = @nscale1 * (-0.965926, 0.258819) vertex[2] = @nscale1 * (-0.965926, -0.258819) vertex[3] = @nscale1 * (0.965926, -0.258819) vertex[4] = @nscale1 * (0.965926, 0.258819) vertex[5] = @nscale1 * ((@windwidth * -0.258819) + flip(@windheight * 0.965926)) vertex[6] = @nscale1 * ((@windwidth * -0.258819) + flip(@windheight * -0.965926)) vertex[7] = @nscale1 * ((@windwidth * 0.258819) + flip(@windheight * -0.965926)) vertex[8] = @nscale1 * ((@windwidth * 0.258819) + flip(@windheight * 0.965926)) vertex[9] = @nscale1 * ((@windwidth * -0.258819) + flip(@windheight * 0.965926)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 27 ; "windmill 2" cursality = 2 numbervertices = 10 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.965926, 0.258819) vertex[1] = @nscale1 * (-0.965926, -0.258819) vertex[2] = @nscale1 * (-0.965926, 0.258819) vertex[3] = @nscale1 * (0.965926, -0.258819) vertex[4] = @nscale1 * (0.965926, 0.258819) vertex[5] = @nscale1 * ((@windwidth * -0.258819) + flip(@windheight * 0.965926)) vertex[6] = @nscale1 * ((@windwidth * 0.258819) + flip(@windheight * -0.965926)) vertex[7] = @nscale1 * ((@windwidth * -0.258819) + flip(@windheight * -0.965926)) vertex[8] = @nscale1 * ((@windwidth * 0.258819) + flip(@windheight * 0.965926)) vertex[9] = @nscale1 * ((@windwidth * -0.258819) + flip(@windheight * 0.965926)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 28 ; "pentagon" cursality = 1 numbervertices = 6 ; n + cursality cincrement = 6 ; numbervertices/cursality scratchfloat = 0.951056516295153572 scratchfloat2 = -0.809016994374947424 scratchfloat3 = 0.587785252292473129 scratchfloat4 = 0.309016994374947424 vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (scratchfloat4 + flip(scratchfloat)) vertex[2] = @nscale1 * (scratchfloat2 + flip(scratchfloat3)) vertex[3] = @nscale1 * (scratchfloat2 + flip(-scratchfloat3)) vertex[4] = @nscale1 * (scratchfloat4 + flip(-scratchfloat)) vertex[5] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 29 ; "pentagon 2" cursality = 5 numbervertices = 15 ; open pieces cincrement = 3 ; numbervertices/cursality scratchfloat = 0.951056516295153572 scratchfloat2 = -0.809016994374947424 scratchfloat3 = 0.587785252292473129 scratchfloat4 = 0.309016994374947424 vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (1,0) vertex[2] = @nscale1 * (scratchfloat4 + flip(scratchfloat)) vertex[3] = @nscale1 * (0,0) vertex[4] = @nscale1 * (scratchfloat4 + flip(scratchfloat)) vertex[5] = @nscale1 * (scratchfloat2 + flip(scratchfloat3)) vertex[6] = @nscale1 * (0,0) vertex[7] = @nscale1 * (scratchfloat2 + flip(scratchfloat3)) vertex[8] = @nscale1 * (scratchfloat2 + flip(-scratchfloat3)) vertex[9] = @nscale1 * (0,0) vertex[10] = @nscale1 * (scratchfloat2 + flip(-scratchfloat3)) vertex[11] = @nscale1 * (scratchfloat4 + flip(-scratchfloat)) vertex[12] = @nscale1 * (0,0) vertex[13] = @nscale1 * (scratchfloat4 + flip(-scratchfloat)) vertex[14] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 30 ; "pentagram" cursality = 1 numbervertices = 6 cincrement = 6 ; numbervertices/cursality scratchfloat = 0.951056516295153572 scratchfloat2 = -0.809016994374947424 scratchfloat3 = 0.587785252292473129 scratchfloat4 = 0.309016994374947424 vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (scratchfloat2 + flip(scratchfloat3)) vertex[2] = @nscale1 * (scratchfloat4 + flip(-scratchfloat)) vertex[3] = @nscale1 * (scratchfloat4 + flip(scratchfloat)) vertex[4] = @nscale1 * (scratchfloat2 + flip(-scratchfloat3)) vertex[5] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 31 ; "pentagram 2" cursality = 1 numbervertices = 11 ; 10 + cursality for closed figure cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (-0.48541,0.352671) vertex[1] = @nscale1 * (-0.488084,-1.09625) vertex[2] = @nscale1 * (0.18541,0.570634) vertex[3] = @nscale1 * (-1.19343,0.125434) vertex[4] = @nscale1 * (0.6,0) vertex[5] = @nscale1 * (-0.249494,1.17378) vertex[6] = @nscale1 * (0.18541,-0.570634) vertex[7] = @nscale1 * (1.03923,0.6) vertex[8] = @nscale1 * (-0.48541,-0.352671) vertex[9] = @nscale1 * (0.891774,-0.802957) vertex[10] = @nscale1 * (-0.48541,0.352671) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 32 ; "pentagram 3" cursality = 1 numbervertices = 11 ; 10 + cursality for closed figure cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (0.965926, 0.258819) vertex[1] = @nscale1 * (-0.62932, 0.777146) vertex[2] = @nscale1 * (-0.93358, 0.358368) vertex[3] = @nscale1 * (0.052336, -0.99863) vertex[4] = @nscale1 * (0.544639, -0.838671) vertex[5] = @nscale1 * (0.544639, 0.838671) vertex[6] = @nscale1 * (0.052336, 0.99863) vertex[7] = @nscale1 * (-0.93358, -0.358368) vertex[8] = @nscale1 * (-0.62932, -0.777146) vertex[9] = @nscale1 * (0.965926, -0.258819) vertex[10] = @nscale1 * (0.965926, 0.258819) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 33 ; "pentagram 4" cursality = 1 numbervertices = 11 ; 10 + cursality for closed figure cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (0.965926, 0.258819) vertex[1] = @nscale1 * (-0.93358, -0.358368) vertex[2] = @nscale1 * (-0.93358, 0.358368) vertex[3] = @nscale1 * (0.965926, -0.258819) vertex[4] = @nscale1 * (0.544639, -0.838671) vertex[5] = @nscale1 * (-0.62932, 0.777146) vertex[6] = @nscale1 * (0.052336, 0.99863) vertex[7] = @nscale1 * (0.052336, -0.99863) vertex[8] = @nscale1 * (-0.62932, -0.777146) vertex[9] = @nscale1 * (0.544639, 0.838671) vertex[10] = @nscale1 * (0.965926, 0.258819) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 68 ; "pentagram 5" cursality = 1 numbervertices = 11 ; 10 + cursality for closed figure cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.913545, -0.406737) vertex[2] = @nscale1 * (-0.913545, 0.406737) vertex[3] = @nscale1 * (0.978148, -0.207912) vertex[4] = @nscale1 * (0.5, -0.866025) vertex[5] = @nscale1 * (-0.669131, 0.743145) vertex[6] = @nscale1 * (0.104528, 0.994522) vertex[7] = @nscale1 * (0.104528, -0.994522) vertex[8] = @nscale1 * (-0.669131, -0.743145) vertex[9] = @nscale1 * (0.5, 0.866025) vertex[10] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 34 ; "5-asterisk" cursality = 5 numbervertices = 10 ; n + cursality cincrement = 2 ; numbervertices/cursality scratchfloat = 0.951056 ;516295153572 scratchfloat2 = -0.809016 ;994374947424 scratchfloat3 = 0.587785 ;252292473129 scratchfloat4 = 0.309016 ;994374947424 vertex[0] = @nscale1 * (0,0) vertex[1] = @leafAlength * @nscale1 * (1,0) vertex[2] = @nscale1 * (0,0) vertex[3] = @leafBlength * @nscale1 * (scratchfloat4 + flip(scratchfloat)) vertex[4] = @nscale1 * (0,0) vertex[5] = @leafClength * @nscale1 * (scratchfloat2 + flip(scratchfloat3)) vertex[6] = @nscale1 * (0,0) vertex[7] = @leafDlength * @nscale1 * (scratchfloat2 + flip(-scratchfloat3)) vertex[8] = @nscale1 * (0,0) vertex[9] = @leafElength * @nscale1 * (scratchfloat4 + flip(-scratchfloat)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 35 ; "5-star" cursality = 1 numbervertices = 11 ; n + cursality cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (0.625,0) vertex[1] = @starspikiness * @nscale1 * (1.01127,0.734732) vertex[2] = @nscale1 * (0.193136,0.59441) vertex[3] = @starspikiness * @nscale1 * (-0.386271,1.18882) vertex[4] = @nscale1 * (-0.505636,0.367366) vertex[5] = @starspikiness * @nscale1 * (-1.25,0) vertex[6] = @nscale1 * (-0.505636,-0.367366) vertex[7] = @starspikiness * @nscale1 * (-0.386271,-1.18882) vertex[8] = @nscale1 * (0.193136,-0.59441) vertex[9] = @starspikiness * @nscale1 * (1.01127,-0.734732) vertex[10] = @nscale1 * (0.625,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 65 ; "5-star 2" cursality = 1 numbervertices = 11 ; n + cursality cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5, 0) vertex[2] = @nscale1 * (0.309017, 0.951057) vertex[3] = @nscale1 * (0.154508, 0.475528) vertex[4] = @nscale1 * (-0.809017, 0.587785) vertex[5] = @nscale1 * (-0.404508, 0.293893) vertex[6] = @nscale1 * (-0.809017, -0.587785) vertex[7] = @nscale1 * (-0.404508, -0.293893) vertex[8] = @nscale1 * (0.309017, -0.951057) vertex[9] = @nscale1 * (0.154508, -0.475528) vertex[10] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 70 ; "5-star 3" cursality = 1 numbervertices = 11 ; n + cursality cincrement = 11 ; numbervertices/cursality vertex[0] = @nscale1 * (0.866025, 0.5) vertex[1] = @nscale1 * (0.433013, -0.25) vertex[2] = @nscale1 * (-0.207912, 0.978148) vertex[3] = @nscale1 * (0.371572, 0.334565) vertex[4] = @nscale1 * (-0.994522, 0.104528) vertex[5] = @nscale1 * (-0.203368, 0.456773) vertex[6] = @nscale1 * (-0.406737, -0.913545) vertex[7] = @nscale1 * (-0.497261, -0.0522642) vertex[8] = @nscale1 * (0.743145, -0.669131) vertex[9] = @nscale1 * (-0.103956, -0.489074) vertex[10] = @nscale1 * (0.866025, 0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 36 ; "nested pentagons" cursality = 2 numbervertices = 12 ; 10 + cursality cincrement = 6 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.309017,0.951057) vertex[2] = @nscale1 * (-0.809017,0.587785) vertex[3] = @nscale1 * (-0.809017,-0.587785) vertex[4] = @nscale1 * (0.309017,-0.951057) vertex[5] = @nscale1 * (1,0) vertex[6] = @innerscale * @nscale1 * (0.4,0) vertex[7] = @innerscale * @nscale1 * (0.123607,0.380423) vertex[8] = @innerscale * @nscale1 * (-0.323607,0.235114) vertex[9] = @innerscale * @nscale1 * (-0.323607,-0.235114) vertex[10] = @innerscale * @nscale1 * (0.123607,-0.380423) vertex[11] = @innerscale * @nscale1 * (0.4,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 37 ; "nested pentagon 2" cursality = 2 numbervertices = 12 ; 10 + cursality cincrement = 6 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.309017,0.951057) vertex[2] = @nscale1 * (-0.809017,0.587785) vertex[3] = @nscale1 * (-0.809017,-0.587785) vertex[4] = @nscale1 * (0.309017,-0.951057) vertex[5] = @nscale1 * (1,0) vertex[6] = @innerscale * @nscale1 * (0.323607,0.235114) vertex[7] = @innerscale * @nscale1 * (-0.123607,0.380423) vertex[8] = @innerscale * @nscale1 * (-0.4,0) vertex[9] = @innerscale * @nscale1 * (-0.123607,-0.380423) vertex[10] = @innerscale * @nscale1 * (0.323607,-0.235114) vertex[11] = @innerscale * @nscale1 * (0.323607,0.235114) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 38 ; "twisted pentagons" cursality = 3 numbervertices = 18 ; n + cursality for closed curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0.309017,0.951057) vertex[2] = @nscale1 * (-0.809017,0.587785) vertex[3] = @nscale1 * (-0.809017,-0.587785) vertex[4] = @nscale1 * (0.309017,-0.951057) vertex[5] = @nscale1 * (1,0) vertex[6] = @nscale1 * (0.553432,0.614648) vertex[7] = @nscale1 * (-0.413545,0.716282) vertex[8] = @nscale1 * (-0.809017,-0.171962) vertex[9] = @nscale1 * (-0.0864545,-0.82256) vertex[10] = @nscale1 * (0.755585,-0.336408) vertex[11] = @nscale1 * (0.553432,0.614648) vertex[12] = @nscale1 * (-0.0715058,0.680332) vertex[13] = @nscale1 * (-0.669131,0.142228) vertex[14] = @nscale1 * (-0.34204,-0.59243) vertex[15] = @nscale1 * (0.457738,-0.50837) vertex[16] = @nscale1 * (0.624938,0.27824) vertex[17] = @nscale1 * (-0.0715058,0.680332) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 39 ; "twisted pentagon 2" cursality = 4 numbervertices = 24 ; n + cursality for closed curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0.309017,0.951057) vertex[2] = @nscale1 * (-0.809017,0.587785) vertex[3] = @nscale1 * (-0.809017,-0.587785) vertex[4] = @nscale1 * (0.309017,-0.951057) vertex[5] = @nscale1 * (1,0) vertex[6] = @nscale1 * (0.553432,0.614648) vertex[7] = @nscale1 * (-0.413545,0.716282) vertex[8] = @nscale1 * (-0.809017,-0.171962) vertex[9] = @nscale1 * (-0.0864545,-0.82256) vertex[10] = @nscale1 * (0.755585,-0.336408) vertex[11] = @nscale1 * (0.553432,0.614648) vertex[12] = @nscale1 * (-0.0715058,0.680332) vertex[13] = @nscale1 * (-0.669131,0.142228) vertex[14] = @nscale1 * (-0.34204,-0.59243) vertex[15] = @nscale1 * (0.457738,-0.50837) vertex[16] = @nscale1 * (0.624938,0.27824) vertex[17] = @nscale1 * (-0.0715058,0.680332) vertex[18] = @nscale1 * (-0.457738,0.332566) vertex[19] = @nscale1 * (-0.457738,-0.332566) vertex[20] = @nscale1 * (0.174841,-0.538104) vertex[21] = @nscale1 * (0.565796,0) vertex[22] = @nscale1 * (0.174841,0.538104) vertex[23] = @nscale1 * (-0.457738,0.332566) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 40 ; "hexagon" cursality = 1 numbervertices = 7 ; n + cursality for closed curves cincrement = 7 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,1) vertex[1] = @nscale1 * (-scratchfloat + flip(0.5)) vertex[2] = @nscale1 * (-scratchfloat + flip(-0.5)) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (scratchfloat + flip(-0.5)) vertex[5] = @nscale1 * (scratchfloat + flip(0.5)) vertex[6] = @nscale1 * (0,1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 41 ; "hexagon 2" cursality = 6 numbervertices = 18 ; open curves cincrement = 3 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (0,1) vertex[2] = @nscale1 * (-scratchfloat + flip(0.5)) vertex[3] = @nscale1 * (0,0) vertex[4] = @nscale1 * (-scratchfloat + flip(0.5)) vertex[5] = @nscale1 * (-scratchfloat + flip(-0.5)) vertex[6] = @nscale1 * (0,0) vertex[7] = @nscale1 * (-scratchfloat + flip(-0.5)) vertex[8] = @nscale1 * (0,-1) vertex[9] = @nscale1 * (0,0) vertex[10] = @nscale1 * (0,-1) vertex[11] = @nscale1 * (scratchfloat + flip(-0.5)) vertex[12] = @nscale1 * (0,0) vertex[13] = @nscale1 * (scratchfloat + flip(-0.5)) vertex[14] = @nscale1 * (scratchfloat + flip(0.5)) vertex[15] = @nscale1 * (0,0) vertex[16] = @nscale1 * (scratchfloat + flip(0.5)) vertex[17] = @nscale1 * (0,1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 42 ; "hexagram" cursality = 2 numbervertices = 8 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,1) vertex[1] = @nscale1 * (-scratchfloat + flip(-0.5)) vertex[2] = @nscale1 * (scratchfloat + flip(-0.5)) vertex[3] = @nscale1 * (0,1) vertex[4] = @nscale1 * (-scratchfloat + flip(0.5)) vertex[5] = @nscale1 * (0,-1) vertex[6] = @nscale1 * (scratchfloat + flip(0.5)) vertex[7] = @nscale1 * (-scratchfloat + flip(0.5)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 43 ; "hexagram 2" cursality = 1 numbervertices = 7 ; n + cursality for closed curves cincrement = 7 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,1) vertex[1] = @nscale1 * (-scratchfloat + flip(-0.5)) vertex[2] = @nscale1 * (scratchfloat + flip(0.5)) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (-scratchfloat + flip(0.5)) vertex[5] = @nscale1 * (scratchfloat + flip(-0.5)) vertex[6] = @nscale1 * (0,1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 44 ; "hexagram 3" cursality = 1 numbervertices = 13 ; 10 + cursality for closed figure cincrement = 13 ; numbervertices/cursality vertex[0] = @nscale1 * (-0.3,0.519615) vertex[1] = @nscale1 * (-0.879474,-0.475947) vertex[2] = @nscale1 * (0.3,0.519615) vertex[3] = @nscale1 * (-0.851919,0.523673) vertex[4] = @nscale1 * (0.6,0) vertex[5] = @nscale1 * (0.0275543,0.99962) vertex[6] = @nscale1 * (0.3,-0.519615) vertex[7] = @nscale1 * (0.879474,0.475947) vertex[8] = @nscale1 * (-0.3,-0.519615) vertex[9] = @nscale1 * (0.851919,-0.523673) vertex[10] = @nscale1 * (-0.6,0) vertex[11] = @nscale1 * (-0.0275543,-0.99962) vertex[12] = @nscale1 * (-0.3,0.519615) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 45 ; "hexagram 4" cursality = 2 numbervertices = 14 ; 12 + cursality for closed figures cincrement = 7 ; numbervertices/cursality vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.309017, 0.951057) vertex[2] = @nscale1 * (-0.669131, 0.743145) vertex[3] = @nscale1 * (-0.669131, -0.743145) vertex[4] = @nscale1 * (-0.309017, -0.951057) vertex[5] = @nscale1 * (0.978148, -0.207912) vertex[6] = @nscale1 * (0.978148, 0.207912) vertex[7] = @nscale1 * (0.309017, 0.951057) vertex[8] = @nscale1 * (-0.978148, 0.207912) vertex[9] = @nscale1 * (-0.978148, -0.207912) vertex[10] = @nscale1 * (0.309017, -0.951057) vertex[11] = @nscale1 * (0.669131, -0.743145) vertex[12] = @nscale1 * (0.669131, 0.743145) vertex[13] = @nscale1 * (0.309017, 0.951057) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 46 ; "hexagram 5" cursality = 3 numbervertices = 15 ; 12 + cursality for closed figures cincrement = 5 ; numbervertices/cursality vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.978148, 0.207912) vertex[2] = @nscale1 * (-0.978148, -0.207912) vertex[3] = @nscale1 * (0.978148, -0.207912) vertex[4] = @nscale1 * (0.978148, 0.207912) vertex[5] = @nscale1 * (0.309017, 0.951057) vertex[6] = @nscale1 * (-0.669131, -0.743145) vertex[7] = @nscale1 * (-0.309017, -0.951057) vertex[8] = @nscale1 * (0.669131, 0.743145) vertex[9] = @nscale1 * (0.309017, 0.951057) vertex[10] = @nscale1 * (-0.669131, 0.743145) vertex[11] = @nscale1 * (0.309017, -0.951057) vertex[12] = @nscale1 * (0.669131, -0.743145) vertex[13] = @nscale1 * (-0.309017, 0.951057) vertex[14] = @nscale1 * (-0.669131, 0.743145) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 47 ; "hexagram 6" cursality = 3 numbervertices = 15 ; 12 + cursality for closed figures cincrement = 5 ; numbervertices/cursality vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.978148, -0.207912) vertex[2] = @nscale1 * (-0.978148, 0.207912) vertex[3] = @nscale1 * (0.978148, -0.207912) vertex[4] = @nscale1 * (0.978148, 0.207912) vertex[5] = @nscale1 * (0.309017, 0.951057) vertex[6] = @nscale1 * (-0.309017, -0.951057) vertex[7] = @nscale1 * (-0.669131, -0.743145) vertex[8] = @nscale1 * (0.669131, 0.743145) vertex[9] = @nscale1 * (0.309017, 0.951057) vertex[10] = @nscale1 * (-0.669131, 0.743145) vertex[11] = @nscale1 * (0.669131, -0.743145) vertex[12] = @nscale1 * (0.309017, -0.951057) vertex[13] = @nscale1 * (-0.309017, 0.951057) vertex[14] = @nscale1 * (-0.669131, 0.743145) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 48 ; "hexagram 7" cursality = 2 numbervertices = 14 ; 12 + cursality for closed figures cincrement = 7 ; numbervertices/cursality vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.978148, 0.207912) vertex[2] = @nscale1 * (-0.669131, 0.743145) vertex[3] = @nscale1 * (0.309017, -0.951057) vertex[4] = @nscale1 * (-0.309017, -0.951057) vertex[5] = @nscale1 * (0.669131, 0.743145) vertex[6] = @nscale1 * (0.978148, 0.207912) vertex[7] = @nscale1 * (0.309017, 0.951057) vertex[8] = @nscale1 * (-0.669131, -0.743145) vertex[9] = @nscale1 * (-0.978148, -0.207912) vertex[10] = @nscale1 * (0.978148, -0.207912) vertex[11] = @nscale1 * (0.669131, -0.743145) vertex[12] = @nscale1 * (-0.309017, 0.951057) vertex[13] = @nscale1 * (0.309017, 0.951057) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 49 ; "6-asterisk" cursality = 6 numbervertices = 12 ; n + cursality for closed curves cincrement = 2 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @leafAlength * @nscale1 * (0,1) vertex[2] = @nscale1 * (0,0) vertex[3] = @leafBlength * @nscale1 * (-scratchfloat + flip(0.5)) vertex[4] = @nscale1 * (0,0) vertex[5] = @leafClength * @nscale1 * (-scratchfloat + flip(-0.5)) vertex[6] = @nscale1 * (0,0) vertex[7] = @leafDlength * @nscale1 * (0,-1) vertex[8] = @nscale1 * (0,0) vertex[9] = @leafElength * @nscale1 * (scratchfloat + flip(-0.5)) vertex[10] = @nscale1 * (0,0) vertex[11] = @leafFlength * @nscale1 * (scratchfloat + flip(0.5)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 50 ; "6-star" cursality = 1 numbervertices = 13 ; n + cursality for closed curves cincrement = 13 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.7,0) vertex[1] = @starspikiness * @nscale1 * (1.08253,0.625) vertex[2] = @nscale1 * (0.35,0.606218) vertex[3] = @starspikiness * @nscale1 * (0,1.25) vertex[4] = @nscale1 * (-0.35,0.606218) vertex[5] = @starspikiness * @nscale1 * (-1.08253,0.625) vertex[6] = @nscale1 * (-0.7,0) vertex[7] = @starspikiness * @nscale1 * (-1.08253,-0.625) vertex[8] = @nscale1 * (-0.35,-0.606218) vertex[9] = @starspikiness * @nscale1 * (0,-1.125) vertex[10] = @nscale1 * (0.35,-0.606218) vertex[11] = @starspikiness * @nscale1 * (1.08253,-0.625) vertex[12] = @nscale1 * (0.7,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 71 ; "6-star 2" cursality = 1 numbervertices = 13 ; n + cursality for closed curves cincrement = 13 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5,0) vertex[2] = @nscale1 * (0.5, 0.866025) vertex[3] = @nscale1 * (0.25, 0.433013) vertex[4] = @nscale1 * (-0.5, 0.866025) vertex[5] = @nscale1 * (-0.25, 0.433013) vertex[6] = @nscale1 * (-1,0) vertex[7] = @nscale1 * (-0.5,0) vertex[8] = @nscale1 * (-0.5, -0.866025) vertex[9] = @nscale1 * (-0.25, -0.433013) vertex[10] = @nscale1 * (0.5, -0.866025) vertex[11] = @nscale1 * (0.25, -0.433013) vertex[12] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 72 ; "6-star 3" cursality = 1 numbervertices = 13 ; n + cursality for closed curves cincrement = 13 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.720775, 0.347107) vertex[1] = @nscale1 * (0.450484, -0.216942) vertex[2] = @nscale1 * (0.0597841, 0.797763) vertex[3] = @nscale1 * (0.413119, 0.28166) vertex[4] = @nscale1 * (-0.660991, 0.450656) vertex[5] = @nscale1 * (-0.037365, 0.498602) vertex[6] = @nscale1 * (-0.720775, -0.347107) vertex[7] = @nscale1 * (-0.450484, 0.216942) vertex[8] = @nscale1 * (-0.0597841, -0.797763) vertex[9] = @nscale1 * (-0.413119, -0.28166) vertex[10] = @nscale1 * (0.660991, -0.450656) vertex[11] = @nscale1 * (0.037365, -0.498602) vertex[12] = @nscale1 * (0.720775, 0.347107) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 51 ; "nested hexagons" cursality = 2 numbervertices = 14 ; 10 + cursality cincrement = 7 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5,0.866025) vertex[2] = @nscale1 * (-0.5,0.866025) vertex[3] = @nscale1 * (-1,0) vertex[4] = @nscale1 * (-0.5,-0.866025) vertex[5] = @nscale1 * (0.5,-0.866025) vertex[6] = @nscale1 * (1,0) vertex[7] = @innerscale * @nscale1 * (0.4,0) vertex[8] = @innerscale * @nscale1 * (0.2,0.34641) vertex[9] = @innerscale * @nscale1 * (-0.2,0.34641) vertex[10] = @innerscale * @nscale1 * (-0.4,0) vertex[11] = @innerscale * @nscale1 * (-0.2,-0.34641) vertex[12] = @nscale1 * (0.2,-0.34641) vertex[13] = @innerscale * @nscale1 * (0.4,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 52 ; "nested hexagon 2" cursality = 2 numbervertices = 14 ; 10 + cursality cincrement = 7 ; numbervertices/cursality vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5,0.866025) vertex[2] = @nscale1 * (-0.5,0.866025) vertex[3] = @nscale1 * (-1,0) vertex[4] = @nscale1 * (-0.5,-0.866025) vertex[5] = @nscale1 * (0.5,-0.866025) vertex[6] = @nscale1 * (1,0) vertex[7] = @innerscale * @nscale1 * (0.34641,0.2) vertex[8] = @innerscale * @nscale1 * (0,0.4) vertex[9] = @innerscale * @nscale1 * (-0.34641,0.2) vertex[10] = @innerscale * @nscale1 * (-0.34641,-0.2) vertex[11] = @innerscale * @nscale1 * (0,-0.4) vertex[12] = @nscale1 * (0.34641,-0.2) vertex[13] = @innerscale * @nscale1 * (0.34641,0.2) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 53 ; "twisted hexagons" cursality = 3 numbervertices = 21 ; n + cursality for closed curves cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0.5,0.866025) vertex[2] = @nscale1 * (-0.5,0.866025) vertex[3] = @nscale1 * (-1,0) vertex[4] = @nscale1 * (-0.5,-0.866025) vertex[5] = @nscale1 * (0.5,-0.866025) vertex[6] = @nscale1 * (1,0) vertex[7] = @nscale1 * (0.704489,0.511841) vertex[8] = @nscale1 * (-0.0910229,0.866025) vertex[9] = @nscale1 * (-0.795511,0.354185) vertex[10] = @nscale1 * (-0.704489,-0.511841) vertex[11] = @nscale1 * (0.0910229,-0.866025) vertex[12] = @nscale1 * (0.795511,-0.354185) vertex[13] = @nscale1 * (0.704489,0.511841) vertex[14] = @nscale1 * (0.234323,0.721172) vertex[15] = @nscale1 * (-0.507392,0.563516) vertex[16] = @nscale1 * (-0.741715,-0.157656) vertex[17] = @nscale1 * (-0.234323,-0.721172) vertex[18] = @nscale1 * (0.507392,-0.563516) vertex[19] = @nscale1 * (0.741715,0.157656) vertex[20] = @nscale1 * (0.234323,0.721172) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 54 ; "twisted hexagon 2" cursality = 4 numbervertices = 28 ; n + cursality for closed curves cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0.5,0.866025) vertex[2] = @nscale1 * (-0.5,0.866025) vertex[3] = @nscale1 * (-1,0) vertex[4] = @nscale1 * (-0.5,-0.866025) vertex[5] = @nscale1 * (0.5,-0.866025) vertex[6] = @nscale1 * (1,0) vertex[7] = @nscale1 * (0.673648, 0.565258) vertex[8] = @nscale1 * (-0.152704, 0.866025) vertex[9] = @nscale1 * (-0.826352, 0.300767) vertex[10] = @nscale1 * (-0.673648, -0.565258) vertex[11] = @nscale1 * (0.152704, -0.866025) vertex[12] = @nscale1 * (0.826352, -0.300767) vertex[13] = @nscale1 * (0.673648, 0.565258) vertex[14] = @nscale1 * (0.134285, 0.76157) vertex[15] = @nscale1 * (-0.592396, 0.497079) vertex[16] = @nscale1 * (-0.726682, -0.26449) vertex[17] = @nscale1 * (-0.134285, -0.76157) vertex[18] = @nscale1 * (0.592396, -0.497079) vertex[19] = @nscale1 * (0.726682, 0.26449) vertex[20] = @nscale1 * (0.134285, 0.76157) vertex[21] = @nscale1 * (-0.340022, 0.588936) vertex[22] = @nscale1 * (-0.680045, 0) vertex[23] = @nscale1 * (-0.340022, -0.588936) vertex[24] = @nscale1 * (0.340022, -0.588936) vertex[25] = @nscale1 * (0.680045, 0) vertex[26] = @nscale1 * (0.340022, 0.588936) vertex[27] = @nscale1 * (-0.340022, 0.588936) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 77 ; "heptagon" cursality = 1 numbervertices = 8 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.62349, 0.781831) vertex[2] = @nscale1 * (-0.222521, 0.974928) vertex[3] = @nscale1 * (-0.900969, 0.433884) vertex[4] = @nscale1 * (-0.900969, -0.433884) vertex[5] = @nscale1 * (-0.222521, -0.974928) vertex[6] = @nscale1 * (0.62349, -0.781831) vertex[7] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 78 ; "heptagon 2" cursality = 7 numbervertices = 21 ; open curves cincrement = 3 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (1,0) vertex[2] = @nscale1 * (0.62349, 0.781831) vertex[3] = @nscale1 * (0,0) vertex[4] = @nscale1 * (0.62349, 0.781831) vertex[5] = @nscale1 * (-0.222521, 0.974928) vertex[6] = @nscale1 * (0,0) vertex[7] = @nscale1 * (-0.222521, 0.974928) vertex[8] = @nscale1 * (-0.900969, 0.433884) vertex[9] = @nscale1 * (0,0) vertex[10] = @nscale1 * (-0.900969, 0.433884) vertex[11] = @nscale1 * (-0.900969, -0.433884) vertex[12] = @nscale1 * (0,0) vertex[13] = @nscale1 * (-0.900969, -0.433884) vertex[14] = @nscale1 * (-0.222521, -0.974928) vertex[15] = @nscale1 * (0,0) vertex[16] = @nscale1 * (-0.222521, -0.974928) vertex[17] = @nscale1 * (0.62349, -0.781831) vertex[18] = @nscale1 * (0,0) vertex[19] = @nscale1 * (0.62349, -0.781831) vertex[20] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 79 ; "heptagram" cursality = 1 numbervertices = 8 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.222521, 0.974928) vertex[2] = @nscale1 * (-0.900969, -0.433884) vertex[3] = @nscale1 * (0.62349, -0.781831) vertex[4] = @nscale1 * (0.62349, 0.781831) vertex[5] = @nscale1 * (-0.900969, 0.433884) vertex[6] = @nscale1 * (-0.222521, -0.974928) vertex[7] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 80 ; "heptagram 2" cursality = 1 numbervertices = 8 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.900969, 0.433884) vertex[2] = @nscale1 * (0.62349, -0.781831) vertex[3] = @nscale1 * (-0.222521, 0.974928) vertex[4] = @nscale1 * (-0.222521, -0.974928) vertex[5] = @nscale1 * (0.62349, 0.781831) vertex[6] = @nscale1 * (-0.900969, -0.433884) vertex[7] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 81 ; "heptagram 3" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.133513, 0.584957) vertex[1] = @nscale1 * (-0.995974, -0.0896393) vertex[2] = @nscale1 * (0.374094, 0.469099) vertex[3] = @nscale1 * (-0.691063, 0.722795) vertex[4] = @nscale1 * (0.6, 0) vertex[5] = @nscale1 * (0.134233, 0.99095) vertex[6] = @nscale1 * (0.374094, -0.469099) vertex[7] = @nscale1 * (0.858449, 0.512899) vertex[8] = @nscale1 * (-0.133513, -0.584957) vertex[9] = @nscale1 * (0.936235, -0.351375) vertex[10] = @nscale1 * (-0.540581, -0.26033) vertex[11] = @nscale1 * (0.309017, -0.951057) vertex[12] = @nscale1 * (-0.540581, 0.26033) vertex[13] = @nscale1 * (-0.550897, -0.834573) vertex[14] = @nscale1 * (-0.133513, 0.584957) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 82 ; "heptagram 4" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.0149594, 0.999888) vertex[2] = @nscale1 * (-0.420357, 0.907359) vertex[3] = @nscale1 * (-0.97149, -0.23708) vertex[4] = @nscale1 * (-0.791071, -0.611724) vertex[5] = @nscale1 * (0.447313, -0.894377) vertex[6] = @nscale1 * (0.772417, -0.635116) vertex[7] = @nscale1 * (0.772417, 0.635116) vertex[8] = @nscale1 * (0.447313, 0.894377) vertex[9] = @nscale1 * (-0.791071, 0.611724) vertex[10] = @nscale1 * (-0.97149, 0.23708) vertex[11] = @nscale1 * (-0.420357, -0.907359) vertex[12] = @nscale1 * (-0.0149594, -0.999888) vertex[13] = @nscale1 * (0.978148, -0.207912) vertex[14] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 83 ; "heptagram 5" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.791071, 0.611724) vertex[2] = @nscale1 * (-0.97149, 0.23708) vertex[3] = @nscale1 * (0.447313, -0.894377) vertex[4] = @nscale1 * (0.772417, -0.635116) vertex[5] = @nscale1 * (-0.0149594, 0.999888) vertex[6] = @nscale1 * (-0.420357, 0.907359) vertex[7] = @nscale1 * (-0.420357, -0.907359) vertex[8] = @nscale1 * (-0.0149594, -0.999888) vertex[9] = @nscale1 * (0.772417, 0.635116) vertex[10] = @nscale1 * (0.447313, 0.894377) vertex[11] = @nscale1 * (-0.97149, -0.23708) vertex[12] = @nscale1 * (-0.791071, -0.611724) vertex[13] = @nscale1 * (0.978148, -0.207912) vertex[14] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 84 ; "heptagram 6" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.791071, 0.611724) vertex[2] = @nscale1 * (-0.420357, 0.907359) vertex[3] = @nscale1 * (-0.420357, -0.907359) vertex[4] = @nscale1 * (-0.791071, -0.611724) vertex[5] = @nscale1 * (0.978148, -0.207912) vertex[6] = @nscale1 * (0.772417, -0.635116) vertex[7] = @nscale1 * (-0.0149594, 0.999888) vertex[8] = @nscale1 * (0.447313, 0.894377) vertex[9] = @nscale1 * (-0.97149, -0.23708) vertex[10] = @nscale1 * (-0.97149, 0.23708) vertex[11] = @nscale1 * (0.447313, -0.894377) vertex[12] = @nscale1 * (-0.0149594, -0.999888) vertex[13] = @nscale1 * (0.772417, 0.635116) vertex[14] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 85 ; "heptagram 7" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.97149, -0.23708) vertex[2] = @nscale1 * (-0.97149, 0.23708) vertex[3] = @nscale1 * (0.978148, -0.207912) vertex[4] = @nscale1 * (0.772417, -0.635116) vertex[5] = @nscale1 * (-0.791071, 0.611724) vertex[6] = @nscale1 * (-0.420357, 0.907359) vertex[7] = @nscale1 * (0.447313, -0.894377) vertex[8] = @nscale1 * (-0.0149594, -0.999888) vertex[9] = @nscale1 * (-0.0149594, 0.999888) vertex[10] = @nscale1 * (0.447313, 0.894377) vertex[11] = @nscale1 * (-0.420357, -0.907359) vertex[12] = @nscale1 * (-0.791071, -0.611724) vertex[13] = @nscale1 * (0.772417, 0.635116) vertex[14] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 86 ; "7-asterisk" cursality = 7 numbervertices = 14 ; n for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @leafAlength * @nscale1 * (1,0) vertex[2] = @nscale1 * (0,0) vertex[3] = @leafBlength * @nscale1 * (0.62349, 0.781831) vertex[4] = @nscale1 * (0,0) vertex[5] = @leafClength * @nscale1 * (-0.222521, 0.974928) vertex[6] = @nscale1 * (0,0) vertex[7] = @leafDlength * @nscale1 * (-0.900969, 0.433884) vertex[8] = @nscale1 * (0,0) vertex[9] = @leafElength * @nscale1 * (-0.900969, -0.433884) vertex[10] = @nscale1 * (0,0) vertex[11] = @leafFlength * @nscale1 * (-0.222521, -0.974928) vertex[12] = @nscale1 * (0,0) vertex[13] = @leafGlength * @nscale1 * (0.62349, -0.781831) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 87 ; "7-star" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (0.900969, 0.433884) vertex[2] = @nscale1 * (0.311745, 0.390916) vertex[3] = @starspikiness * @nscale1 * (0.222521, 0.974928) vertex[4] = @nscale1 * (-0.11126, 0.487464) vertex[5] = @starspikiness * @nscale1 * (-0.62349, 0.781831) vertex[6] = @nscale1 * (-0.450484, 0.216942) vertex[7] = @starspikiness * @nscale1 * (-1,0) vertex[8] = @nscale1 * (-0.450484, -0.216942) vertex[9] = @starspikiness * @nscale1 * (-0.62349, -0.781831) vertex[10] = @nscale1 * (-0.11126, -0.487464) vertex[11] = @starspikiness * @nscale1 * (0.222521, -0.974928) vertex[12] = @nscale1 * (0.311745, -0.390916) vertex[13] = @starspikiness * @nscale1 * (0.900969, -0.433884) vertex[14] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 88 ; "7-star 2" cursality = 1 numbervertices = 15 ; n + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5,0) vertex[2] = @nscale1 * (0.62349, 0.781831) vertex[3] = @nscale1 * (0.311745, 0.390916) vertex[4] = @nscale1 * (-0.222521, 0.974928) vertex[5] = @nscale1 * (-0.11126, 0.487464) vertex[6] = @nscale1 * (-0.900969, 0.433884) vertex[7] = @nscale1 * (-0.450484, 0.216942) vertex[8] = @nscale1 * (-0.900969, -0.433884) vertex[9] = @nscale1 * (-0.450484, -0.216942) vertex[10] = @nscale1 * (-0.222521, -0.974928) vertex[11] = @nscale1 * (-0.11126, -0.487464) vertex[12] = @nscale1 * (0.62349, -0.781831) vertex[13] = @nscale1 * (0.311745, -0.390916) vertex[14] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 110 ; "7-star 3" cursality = 1 numbervertices = 22 ; n + cursality for closed curves cincrement = 22 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.675727, 0.325413) vertex[2] = @nscale1 * (0.205644, 0.455753) vertex[3] = @nscale1 * (-0.222521, 0.974928) vertex[4] = @nscale1 * (-0.467617, 0.586374) vertex[5] = @nscale1 * (-0.490086, 0.0990731) vertex[6] = @nscale1 * (-0.900969, -0.433884) vertex[7] = @nscale1 * (-0.467617, -0.586374) vertex[8] = @nscale1 * (0.0124653, -0.499845) vertex[9] = @nscale1 * (0.62349, -0.781831) vertex[10] = @nscale1 * (0.675727, -0.325413) vertex[11] = @nscale1 * (0.484539, 0.123379) vertex[12] = @nscale1 * (0.62349, 0.781831) vertex[13] = @nscale1 * (0.166891, 0.731196) vertex[14] = @nscale1 * (-0.228105, 0.444936) vertex[15] = @nscale1 * (-0.900969, 0.433884) vertex[16] = @nscale1 * (-0.75, 0) vertex[17] = @nscale1 * (-0.383022, -0.321394) vertex[18] = @nscale1 * (-0.222521, -0.974928) vertex[19] = @nscale1 * (0.166891, -0.731196) vertex[20] = @nscale1 * (0.398566, -0.301902) vertex[21] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 89 ; "nested heptagons" cursality = 2 numbervertices = 16 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.62349, 0.781831) vertex[2] = @nscale1 * (-0.222521, 0.974928) vertex[3] = @nscale1 * (-0.900969, 0.433884) vertex[4] = @nscale1 * (-0.900969, -0.433884) vertex[5] = @nscale1 * (-0.222521, -0.974928) vertex[6] = @nscale1 * (0.62349, -0.781831) vertex[7] = @nscale1 * (1,0) vertex[8] = @innerscale * @nscale1 * (0.5,0) vertex[9] = @innerscale * @nscale1 * (0.311745, 0.390916) vertex[10] = @innerscale * @nscale1 * (-0.11126, 0.487464) vertex[11] = @innerscale * @nscale1 * (-0.450484, 0.216942) vertex[12] = @innerscale * @nscale1 * (-0.450484, -0.216942) vertex[13] = @innerscale * @nscale1 * (-0.11126, -0.487464) vertex[14] = @innerscale * @nscale1 * (0.311745, -0.390916) vertex[15] = @innerscale * @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 90 ; "nested heptagon 2" cursality = 2 numbervertices = 16 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.900969, 0.433884) vertex[1] = @nscale1 * (0.222521, 0.974928) vertex[2] = @nscale1 * (-0.62349, 0.781831) vertex[3] = @nscale1 * (-1,0) vertex[4] = @nscale1 * (-0.62349, -0.781831) vertex[5] = @nscale1 * (0.222521, -0.974928) vertex[6] = @nscale1 * (0.900969, -0.433884) vertex[7] = @nscale1 * (0.900969, 0.433884) vertex[8] = @innerscale * @nscale1 * (0.5,0) vertex[9] = @innerscale * @nscale1 * (0.311745, 0.390916) vertex[10] = @innerscale * @nscale1 * (-0.11126, 0.487464) vertex[11] = @innerscale * @nscale1 * (-0.450484, 0.216942) vertex[12] = @innerscale * @nscale1 * (-0.450484, -0.216942) vertex[13] = @innerscale * @nscale1 * (-0.11126, -0.487464) vertex[14] = @innerscale * @nscale1 * (0.311745, -0.390916) vertex[15] = @innerscale * @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 91 ; "twisted heptagons" cursality = 3 numbervertices = 24 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0.62349, 0.781831) vertex[2] = @nscale1 * (-0.222521, 0.974928) vertex[3] = @nscale1 * (-0.900969, 0.433884) vertex[4] = @nscale1 * (-0.900969, -0.433884) vertex[5] = @nscale1 * (-0.222521, -0.974928) vertex[6] = @nscale1 * (0.62349, -0.781831) vertex[7] = @nscale1 * (1,0) vertex[8] = @nscale1 * (0.887876, 0.232828) vertex[9] = @nscale1 * (0.371549, 0.839335) vertex[10] = @nscale1 * (-0.424562, 0.813806) vertex[11] = @nscale1 * (-0.900969, 0.175464) vertex[12] = @nscale1 * (-0.698928, -0.595006) vertex[13] = @nscale1 * (0.02942, -0.917424) vertex[14] = @nscale1 * (0.735614, -0.549003) vertex[15] = @nscale1 * (0.887876, 0.232828) vertex[16] = @nscale1 * (0.734114, 0.413445) vertex[17] = @nscale1 * (0.134468, 0.831733) vertex[18] = @nscale1 * (-0.566435, 0.623708) vertex[19] = @nscale1 * (-0.840801, -0.0539812) vertex[20] = @nscale1 * (-0.482027, -0.691022) vertex[21] = @nscale1 * (0.239724, -0.807709) vertex[22] = @nscale1 * (0.780957, -0.316175) vertex[23] = @nscale1 * (0.734114, 0.413445) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 92 ; "twisted heptagon 2" cursality = 5 numbervertices = 40 ; n + cursality for closed curves cincrement = 8 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1, 0) vertex[1] = @nscale1 * (0.62349, 0.781831) vertex[2] = @nscale1 * (-0.222521, 0.974928) vertex[3] = @nscale1 * (-0.900969, 0.433884) vertex[4] = @nscale1 * (-0.900969, -0.433884) vertex[5] = @nscale1 * (-0.222521, -0.974928) vertex[6] = @nscale1 * (0.62349, -0.781831) vertex[7] = @nscale1 * (1,0) vertex[8] = @nscale1 * (0.761342, 0.495579) vertex[9] = @nscale1 * (0.0872299, 0.904229) vertex[10] = @nscale1 * (-0.652568, 0.631977) vertex[11] = @nscale1 * (-0.900969, -0.116167) vertex[12] = @nscale1 * (-0.470922, -0.776835) vertex[13] = @nscale1 * (0.313739, -0.85253) vertex[14] = @nscale1 * (0.862148, -0.286253) vertex[15] = @nscale1 * (0.761342, 0.495579) vertex[16] = @nscale1 * (0.334043, 0.75461) vertex[17] = @nscale1 * (-0.381705, 0.731657) vertex[18] = @nscale1 * (-0.810022, 0.157752) vertex[19] = @nscale1 * (-0.628375, -0.534944) vertex[20] = @nscale1 * (0.0264502, -0.824816) vertex[21] = @nscale1 * (0.661358, -0.493585) vertex[22] = @nscale1 * (0.79825, 0.209326) vertex[23] = @nscale1 * (0.334043, 0.75461) vertex[24] = @nscale1 * (-0.119647, 0.740061) vertex[25] = @nscale1 * (-0.653202, 0.367876) vertex[26] = @nscale1 * (-0.694882, -0.281326) vertex[27] = @nscale1 * (-0.213302, -0.718685) vertex[28] = @nscale1 * (0.428899, -0.614859) vertex[29] = @nscale1 * (0.74813, -0.0480315) vertex[30] = @nscale1 * (0.504004, 0.554964) vertex[31] = @nscale1 * (-0.119647, 0.740061) vertex[32] = @nscale1 * (-0.457851, 0.504145) vertex[33] = @nscale1 * (-0.679621, -0.0436331) vertex[34] = @nscale1 * (-0.389623, -0.558554) vertex[35] = @nscale1 * (0.193769, -0.652873) vertex[36] = @nscale1 * (0.631249, -0.255565) vertex[37] = @nscale1 * (0.593386, 0.334189) vertex[38] = @nscale1 * (0.108691, 0.672291) vertex[39] = @nscale1 * (-0.457851, 0.504145) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 55 ; "hand" cursality = 5 numbervertices = 10 ; n + cursality for closed curves cincrement = 2 ; numbervertices/cursality scratchfloat = sqrt(3)/2 ; for some vertext coordinates ; initialize arrays vertex[0] = @nscale1 * (0,1) vertex[1] = @finger1length * @nscale1 * (-scratchfloat + flip(0.5)) vertex[2] = @nscale1 * (0,1) vertex[3] = @finger2length * @nscale1 * (-scratchfloat + flip(-0.5)) vertex[4] = @nscale1 * (0,1) vertex[5] = @finger3length * @nscale1 * (0,-1) vertex[6] = @nscale1 * (0,1) vertex[7] = @finger4length * @nscale1 * (scratchfloat + flip(-0.5)) vertex[8] = @nscale1 * (0,1) vertex[9] = @finger5length * @nscale1 * (scratchfloat + flip(0.5)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 111 ; "lissajous 1" cursality = 1 numbervertices = 77 ; n + cursality for closed curves cincrement = 77 ; numbervertices/cursality ; initialize arrays glindex = 0 scratchfloat = 0.0 scratchfloat2 = (3 * twopi + 0.2)/numbervertices while glindex < numbervertices xcoord[glindex] = @nscale1 * sin(0.66667 * scratchfloat) ycoord[glindex] = @nscale1 * sin(scratchfloat) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) scratchfloat = scratchfloat + scratchfloat2 glindex = glindex + 1 endwhile ; glindex elseif traparray == 133 ; "lissajous 2" cursality = 1 numbervertices = 77 ; n + cursality for closed curves cincrement = 77 ; numbervertices/cursality ; initialize arrays glindex = 0 scratchfloat = 0.0 scratchfloat2 = (4 * twopi + 0.2)/numbervertices while glindex < numbervertices xcoord[glindex] = @nscale1 * sin(0.75 * scratchfloat) ycoord[glindex] = @nscale1 * sin(scratchfloat) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) scratchfloat = scratchfloat + scratchfloat2 glindex = glindex + 1 endwhile ; glindex elseif traparray == 147 ; "lissajous 3" cursality = 1 numbervertices = 121 ; n + cursality for closed curves cincrement = 121 ; numbervertices/cursality ; initialize arrays scratchfloat = lissajdomain/121 ; angular domain increment glindex = 0 while glindex < numbervertices - 1 xcoord[glindex] = @nscale1 * (@lissaamp1 * cos(@lissafreq1*glindex*scratchfloat - @lissaphase1)) ycoord[glindex] = @nscale1 * (@lissaamp2 * cos(@lissafreq2*glindex*scratchfloat - @lissaphase2)) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex xcoord[glindex] = xcoord[0] ; close the curve ycoord[glindex] = ycoord[0] vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) if @lissaopen ; do not connect the first and last points of the curve numbervertices = numbervertices - 1 cincrement = cincrement - 1 endif ; lissaopen elseif traparray == 56 ; "zigzag-3" cursality = 1 numbervertices = 3 ; n for open curves cincrement = 3 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.8,-0.4) vertex[1] = @nscale1 * (0,0.4) vertex[2] = @nscale1 * (0.8,-0.4) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 57 ; "zigzag-4" cursality = 1 numbervertices = 4 ; n for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.9,-0.3) vertex[1] = @nscale1 * (-0.3,0.3) vertex[2] = @nscale1 * (0.3,-0.3) vertex[3] = @nscale1 * (0.9,0.3) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 58 ; "zigzag-5" cursality = 1 numbervertices = 5 ; n for open curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.8,0.2) vertex[1] = @nscale1 * (-0.4,-0.2) vertex[2] = @nscale1 * (0,0.2) vertex[3] = @nscale1 * (0.4,-0.2) vertex[4] = @nscale1 * (0.8,0.2) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 59 ; "zigzag-6" cursality = 1 numbervertices = 6 ; n for open curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-1,0.2) vertex[1] = @nscale1 * (-0.6,-0.2) vertex[2] = @nscale1 * (-0.2,0.2) vertex[3] = @nscale1 * (0.2,-0.2) vertex[4] = @nscale1 * (0.6,0.2) vertex[5] = @nscale1 * (1,-0.2) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 60 ; "zigzag-7" cursality = 1 numbervertices = 7 ; n for open curves cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.6,-0.1) vertex[1] = @nscale1 * (-0.4,0.1) vertex[2] = @nscale1 * (-0.2,-0.1) vertex[3] = @nscale1 * (0,0.1) vertex[4] = @nscale1 * (0.2,-0.1) vertex[5] = @nscale1 * (0.4,0.1) vertex[6] = @nscale1 * (0.6,-0.1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 61 ; "sawtooth-1" cursality = 1 numbervertices = 3 ; n for open curves cincrement = 3 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.1,-0.3) vertex[1] = @nscale1 * (0.1 + flip(@sawheight * 0.3)) vertex[2] = @nscale1 * (0.1,-0.3) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 62 ; "sawtooth-2" cursality = 1 numbervertices = 5 ; n for open curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.2,-0.3) vertex[1] = @sawheight * @nscale1 * (0,0.3) vertex[2] = @nscale1 * (0,-0.3) vertex[3] = @nscale1 * (0.2 + flip(@sawheight * 0.3)) vertex[4] = @nscale1 * (0.2,-0.3) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 63 ; "sawtooth-3" cursality = 1 numbervertices = 7 ; n for open curves cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.3,-0.3) vertex[1] = @nscale1 * (-0.1 + flip(@sawheight * 0.3)) vertex[2] = @nscale1 * (-0.1,-0.3) vertex[3] = @nscale1 * (0.1 + flip(@sawheight * 0.3)) vertex[4] = @nscale1 * (0.1,-0.3) vertex[5] = @nscale1 * (0.3 + flip(@sawheight * 0.3)) vertex[6] = @nscale1 * (0.3,-0.3) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 64 ; "sawtooth-4" cursality = 1 numbervertices = 9 ; n for open curves cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.4,-0.3) vertex[1] = @nscale1 * (-0.2 + flip(@sawheight * 0.3)) vertex[2] = @nscale1 * (-0.2,-0.3) vertex[3] = @sawheight * @nscale1 * (0,0.3) vertex[4] = @nscale1 * (0,-0.3) vertex[5] = @nscale1 * (0.2 + flip(@sawheight * 0.3)) vertex[6] = @nscale1 * (0.2,-0.3) vertex[7] = @nscale1 * (0.4 + flip(@sawheight * 0.3)) vertex[8] = @nscale1 * (0.4,-0.3) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 73 ; "square-1" cursality = 1 numbervertices = 6 ; n for open curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * ((@sqrwidth * -0.8) + flip(@sqrheight * -0.4)) vertex[1] = @nscale1 * ((@sqrwidth * -0.4) + flip(@sqrheight * -0.4)) vertex[2] = @nscale1 * ((@sqrwidth * -0.4) + flip(@sqrheight * 0.4)) vertex[3] = @nscale1 * ((@sqrwidth * 0.4) + flip(@sqrheight * 0.4)) vertex[4] = @nscale1 * ((@sqrwidth * 0.4) + flip(@sqrheight * -0.4)) vertex[5] = @nscale1 * ((@sqrwidth * 0.8) + flip(@sqrheight * -0.4)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 74 ; "square-2" cursality = 1 numbervertices = 10 ; n for open curves cincrement = 10 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * ((@sqrwidth * -0.8) + flip(@sqrheight * -0.2)) vertex[1] = @nscale1 * ((@sqrwidth * -0.6) + flip(@sqrheight * -0.2)) vertex[2] = @nscale1 * ((@sqrwidth * -0.6) + flip(@sqrheight * 0.2)) vertex[3] = @nscale1 * ((@sqrwidth * -0.2) + flip(@sqrheight * 0.2)) vertex[4] = @nscale1 * ((@sqrwidth * -0.2) + flip(@sqrheight * -0.2)) vertex[5] = @nscale1 * ((@sqrwidth * 0.2) + flip(@sqrheight * -0.2)) vertex[6] = @nscale1 * ((@sqrwidth * 0.2) + flip(@sqrheight * 0.2)) vertex[7] = @nscale1 * ((@sqrwidth * 0.6) + flip(@sqrheight * 0.2)) vertex[8] = @nscale1 * ((@sqrwidth * 0.6) + flip(@sqrheight * -0.2)) vertex[9] = @nscale1 * ((@sqrwidth * 0.8) + flip(@sqrheight * -0.2)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 75 ; "square-3" cursality = 1 numbervertices = 14 ; n for open curves cincrement = 14 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * ((@sqrwidth * -1.2) + flip(@sqrheight * -0.2)) vertex[1] = @nscale1 * ((@sqrwidth * -1) + flip(@sqrheight * -0.2)) vertex[2] = @nscale1 * ((@sqrwidth * -1) + flip(@sqrheight * 0.2)) vertex[3] = @nscale1 * ((@sqrwidth * -0.6) + flip(@sqrheight * 0.2)) vertex[4] = @nscale1 * ((@sqrwidth * -0.6) + flip(@sqrheight * -0.2)) vertex[5] = @nscale1 * ((@sqrwidth * -0.2) + flip(@sqrheight * -0.2)) vertex[6] = @nscale1 * ((@sqrwidth * -0.2) + flip(@sqrheight * 0.2)) vertex[7] = @nscale1 * ((@sqrwidth * 0.2) + flip(@sqrheight * 0.2)) vertex[8] = @nscale1 * ((@sqrwidth * 0.2) + flip(@sqrheight * -0.2)) vertex[9] = @nscale1 * ((@sqrwidth * 0.6) + flip(@sqrheight * -0.2)) vertex[10] = @nscale1 * ((@sqrwidth * 0.6) + flip(@sqrheight * 0.2)) vertex[11] = @nscale1 * ((@sqrwidth * 1) + flip(@sqrheight * 0.2)) vertex[12] = @nscale1 * ((@sqrwidth * 1) + flip(@sqrheight * -0.2)) vertex[13] = @nscale1 * ((@sqrwidth * 1.2) + flip(@sqrheight * -0.2)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 76 ; "square-4" cursality = 1 numbervertices = 18 ; n for open curves cincrement = 18 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * ((@sqrwidth * -1.6) + flip(@sqrheight * -0.2)) vertex[1] = @nscale1 * ((@sqrwidth * -1.4) + flip(@sqrheight * -0.2)) vertex[2] = @nscale1 * ((@sqrwidth * -1.4) + flip(@sqrheight * 0.2)) vertex[3] = @nscale1 * ((@sqrwidth * -1) + flip(@sqrheight * 0.2)) vertex[4] = @nscale1 * ((@sqrwidth * -1) + flip(@sqrheight * -0.2)) vertex[5] = @nscale1 * ((@sqrwidth * -0.6) + flip(@sqrheight * -0.2)) vertex[6] = @nscale1 * ((@sqrwidth * -0.6) + flip(@sqrheight * 0.2)) vertex[7] = @nscale1 * ((@sqrwidth * -0.2) + flip(@sqrheight * 0.2)) vertex[8] = @nscale1 * ((@sqrwidth * -0.2) + flip(@sqrheight * -0.2)) vertex[9] = @nscale1 * ((@sqrwidth * 0.2) + flip(@sqrheight * -0.2)) vertex[10] = @nscale1 * ((@sqrwidth * 0.2) + flip(@sqrheight * 0.2)) vertex[11] = @nscale1 * ((@sqrwidth * 0.6) + flip(@sqrheight * 0.2)) vertex[12] = @nscale1 * ((@sqrwidth * 0.6) + flip(@sqrheight * -0.2)) vertex[13] = @nscale1 * ((@sqrwidth * 1) + flip(@sqrheight * -0.2)) vertex[14] = @nscale1 * ((@sqrwidth * 1) + flip(@sqrheight * 0.2)) vertex[15] = @nscale1 * ((@sqrwidth * 1.4) + flip(@sqrheight * 0.2)) vertex[16] = @nscale1 * ((@sqrwidth * 1.4) + flip(@sqrheight * -0.2)) vertex[17] = @nscale1 * ((@sqrwidth * 1.6) + flip(@sqrheight * -0.2)) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 93 ; "peano curve" cursality = 1 numbervertices = 42 ; n for open curves cincrement = 42 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.6, -0.6) vertex[1] = @nscale1 * (-0.3,-0.6) vertex[2] = @nscale1 * (-0.3,-0.45) vertex[3] = @nscale1 * (-0.6,-0.45) vertex[4] = @nscale1 * (-0.6,-0.3) vertex[5] = @nscale1 * (0.15,-0.3) vertex[6] = @nscale1 * (0.15,-0.45) vertex[7] = @nscale1 * (-0.15,-0.45) vertex[8] = @nscale1 * (-0.15,-0.6) vertex[9] = @nscale1 * (0.6,-0.6) vertex[10] = @nscale1 * (0.6,-0.45) vertex[11] = @nscale1 * (0.3,-0.45) vertex[12] = @nscale1 * (0.3,-0.3) vertex[13] = @nscale1 * (0.6,-0.3) vertex[14] = @nscale1 * (0.6,-0.15) vertex[15] = @nscale1 * (0.3,-0.15) vertex[16] = @nscale1 * (0.3,0) vertex[17] = @nscale1 * (0.6,0) vertex[18] = @nscale1 * (0.6,0.15) vertex[19] = @nscale1 * (-0.15,0.15) vertex[20] = @nscale1 * (-0.15,0) vertex[21] = @nscale1 * (0.15,0) vertex[22] = @nscale1 * (0.15,-0.15) vertex[23] = @nscale1 * (-0.6,-0.15) vertex[24] = @nscale1 * (-0.6,0) vertex[25] = @nscale1 * (-0.3,0) vertex[26] = @nscale1 * (-0.3,0.15) vertex[27] = @nscale1 * (-0.6,0.15) vertex[28] = @nscale1 * (-0.6,0.3) vertex[29] = @nscale1 * (-0.3,0.3) vertex[30] = @nscale1 * (-0.3,0.45) vertex[31] = @nscale1 * (-0.6,0.45) vertex[32] = @nscale1 * (-0.6,0.6) vertex[33] = @nscale1 * (0.15,0.6) vertex[34] = @nscale1 * (0.15,0.45) vertex[35] = @nscale1 * (-0.15,0.45) vertex[36] = @nscale1 * (-0.15,0.3) vertex[37] = @nscale1 * (0.6,0.3) vertex[38] = @nscale1 * (0.6,0.45) vertex[39] = @nscale1 * (0.3,0.45) vertex[40] = @nscale1 * (0.3,0.6) vertex[41] = @nscale1 * (0.6,0.6) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 94 ; "octagon" cursality = 1 numbervertices = 9 ; n + cursality for closed curves cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.707107, 0.707107) vertex[2] = @nscale1 * (0,1) vertex[3] = @nscale1 * (-0.707107, 0.707107) vertex[4] = @nscale1 * (-1,0) vertex[5] = @nscale1 * (-0.707107, -0.707107) vertex[6] = @nscale1 * (0,-1) vertex[7] = @nscale1 * (0.707107, -0.707107) vertex[8] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 95 ; "octagon 2" cursality = 8 numbervertices = 24 ; open curves cincrement = 3 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (1,0) vertex[2] = @nscale1 * (0.707107, 0.707107) vertex[3] = @nscale1 * (0,0) vertex[4] = @nscale1 * (0.707107, 0.707107) vertex[5] = @nscale1 * (0,1) vertex[6] = @nscale1 * (0,0) vertex[7] = @nscale1 * (0,1) vertex[8] = @nscale1 * (-0.707107, 0.707107) vertex[9] = @nscale1 * (0,0) vertex[10] = @nscale1 * (-0.707107, 0.707107) vertex[11] = @nscale1 * (-1,0) vertex[12] = @nscale1 * (0,0) vertex[13] = @nscale1 * (-1,0) vertex[14] = @nscale1 * (-0.707107, -0.707107) vertex[15] = @nscale1 * (0,0) vertex[16] = @nscale1 * (-0.707107, -0.707107) vertex[17] = @nscale1 * (0,-1) vertex[18] = @nscale1 * (0,0) vertex[19] = @nscale1 * (0,-1) vertex[20] = @nscale1 * (0.707107, -0.707107) vertex[21] = @nscale1 * (0,0) vertex[22] = @nscale1 * (0.707107, -0.707107) vertex[23] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 96 ; "octagram" cursality = 2 numbervertices = 10 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0,1) vertex[2] = @nscale1 * (-1,0) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (1,0) vertex[5] = @nscale1 * (0.707107, 0.707107) vertex[6] = @nscale1 * (-0.707107, 0.707107) vertex[7] = @nscale1 * (-0.707107, -0.707107) vertex[8] = @nscale1 * (0.707107, -0.707107) vertex[9] = @nscale1 * (0.707107, 0.707107) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 97 ; "octagram 2" cursality = 1 numbervertices = 9 ; n + cursality for closed curves cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.707107, 0.707107) vertex[2] = @nscale1 * (0,-1) vertex[3] = @nscale1 * (0.707107, 0.707107) vertex[4] = @nscale1 * (-1,0) vertex[5] = @nscale1 * (0.707107, -0.707107) vertex[6] = @nscale1 * (0,1) vertex[7] = @nscale1 * (-0.707107, -0.707107) vertex[8] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 98 ; "octagram 3" cursality = 1 numbervertices = 17 ; n + cursality for closed curves cincrement = 17 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.424264, -0.424264) vertex[1] = @nscale1 * (0.834573, 0.550897) vertex[2] = @nscale1 * (0,-0.6) vertex[3] = @nscale1 * (0.979675, -0.200589) vertex[4] = @nscale1 * (-0.424264, -0.424264) vertex[5] = @nscale1 * (0.550897, -0.834573) vertex[6] = @nscale1 * (-0.6,0) vertex[7] = @nscale1 * (-0.200589, -0.979675) vertex[8] = @nscale1 * (-0.424264, 0.424264) vertex[9] = @nscale1 * (-0.834573, -0.550897) vertex[10] = @nscale1 * (0,0.6) vertex[11] = @nscale1 * (-0.979675, 0.200589) vertex[12] = @nscale1 * (0.424264, 0.424264) vertex[13] = @nscale1 * (-0.550897, 0.834573) vertex[14] = @nscale1 * (0.6,0) vertex[15] = @nscale1 * (0.200589, 0.979675) vertex[16] = @nscale1 * (0.424264, -0.424264) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 99 ; "octagram 4" cursality = 2 numbervertices = 18 ; n + cursality for closed curves cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (0.207912, 0.978148) vertex[2] = @nscale1 * (-0.207912, 0.978148) vertex[3] = @nscale1 * (-0.978148, 0.207912) vertex[4] = @nscale1 * (-0.978148, -0.207912) vertex[5] = @nscale1 * (-0.207912, -0.978148) vertex[6] = @nscale1 * (0.207912, -0.978148) vertex[7] = @nscale1 * (0.978148, -0.207912) vertex[8] = @nscale1 * (0.978148, 0.207912) vertex[9] = @nscale1 * (0.544639, 0.838671) vertex[10] = @nscale1 * (-0.544639, 0.838671) vertex[11] = @nscale1 * (-0.838671, 0.544639) vertex[12] = @nscale1 * (-0.838671, -0.544639) vertex[13] = @nscale1 * (-0.544639, -0.838671) vertex[14] = @nscale1 * (0.544639, -0.838671) vertex[15] = @nscale1 * (0.838671, -0.544639) vertex[16] = @nscale1 * (0.838671, 0.544639) vertex[17] = @nscale1 * (0.544639, 0.838671) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 100 ; "octagram 5" cursality = 1 numbervertices = 17 ; n + cursality for closed curves cincrement = 17 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.544639, 0.838671) vertex[2] = @nscale1 * (-0.838671, 0.544639) vertex[3] = @nscale1 * (-0.207912, -0.978148) vertex[4] = @nscale1 * (0.207912, -0.978148) vertex[5] = @nscale1 * (0.838671, 0.544639) vertex[6] = @nscale1 * (0.544639, 0.838671) vertex[7] = @nscale1 * (-0.978148, 0.207912) vertex[8] = @nscale1 * (-0.978148, -0.207912) vertex[9] = @nscale1 * (0.544639, -0.838671) vertex[10] = @nscale1 * (0.838671, -0.544639) vertex[11] = @nscale1 * (0.207912, 0.978148) vertex[12] = @nscale1 * (-0.207912, 0.978148) vertex[13] = @nscale1 * (-0.838671, -0.544639) vertex[14] = @nscale1 * (-0.544639, -0.838671) vertex[15] = @nscale1 * (0.978148, -0.207912) vertex[16] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 101 ; "octagram 6" cursality = 2 numbervertices = 18 ; n + cursality for closed curves cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.987688, 0.156434) vertex[1] = @nscale1 * (-0.587785, 0.809017) vertex[2] = @nscale1 * (-0.156434, 0.987688) vertex[3] = @nscale1 * (-0.809017, -0.587785) vertex[4] = @nscale1 * (-0.987688, -0.156434) vertex[5] = @nscale1 * (0.587785, -0.809017) vertex[6] = @nscale1 * (0.156434, -0.987688) vertex[7] = @nscale1 * (0.809017, 0.587785) vertex[8] = @nscale1 * (0.987688, 0.156434) vertex[9] = @nscale1 * (0.587785, 0.809017) vertex[10] = @nscale1 * (-0.987688, 0.156434) vertex[11] = @nscale1 * (-0.809017, 0.587785) vertex[12] = @nscale1 * (-0.156434, -0.987688) vertex[13] = @nscale1 * (-0.587785, -0.809017) vertex[14] = @nscale1 * (0.987688, -0.156434) vertex[15] = @nscale1 * (0.809017, -0.587785) vertex[16] = @nscale1 * (0.156434, 0.987688) vertex[17] = @nscale1 * (0.587785, 0.809017) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 102 ; "octagram 7" cursality = 1 numbervertices = 17 ; n + cursality for closed curves cincrement = 17 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.978148, 0.207912) vertex[1] = @nscale1 * (-0.978148, 0.207912) vertex[2] = @nscale1 * (-0.838671, 0.544639) vertex[3] = @nscale1 * (0.544639, -0.838671) vertex[4] = @nscale1 * (0.207912, -0.978148) vertex[5] = @nscale1 * (0.207912, 0.978148) vertex[6] = @nscale1 * (0.544639, 0.838671) vertex[7] = @nscale1 * (-0.838671, -0.544639) vertex[8] = @nscale1 * (-0.978148, -0.207912) vertex[9] = @nscale1 * (0.978148, -0.207912) vertex[10] = @nscale1 * (0.838671, -0.544639) vertex[11] = @nscale1 * (-0.544639, 0.838671) vertex[12] = @nscale1 * (-0.207912, 0.978148) vertex[13] = @nscale1 * (-0.207912, -0.978148) vertex[14] = @nscale1 * (-0.544639, -0.838671) vertex[15] = @nscale1 * (0.838671, 0.544639) vertex[16] = @nscale1 * (0.978148, 0.207912) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 103 ; "8-asterisk" cursality = 8 numbervertices = 16 ; n for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @leafAlength * @nscale1 * (1,0) vertex[2] = @nscale1 * (0,0) vertex[3] = @leafBlength * @nscale1 * (0.707107, 0.707107) vertex[4] = @nscale1 * (0,0) vertex[5] = @leafClength * @nscale1 * (0,1) vertex[6] = @nscale1 * (0,0) vertex[7] = @leafDlength * @nscale1 * (-0.707107, 0.707107) vertex[8] = @nscale1 * (0,0) vertex[9] = @leafElength * @nscale1 * (-1,0) vertex[10] = @nscale1 * (0,0) vertex[11] = @leafFlength * @nscale1 * (-0.707107, -0.707107) vertex[12] = @nscale1 * (0,0) vertex[13] = @leafGlength * @nscale1 * (0,-1) vertex[14] = @nscale1 * (0,0) vertex[15] = @leafHlength * @nscale1 * (0.707107, -0.707107) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 104 ; "8-star" cursality = 1 numbervertices = 17 ; n + cursality for closed curves cincrement = 17 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (0.92388, 0.382683) vertex[2] = @nscale1 * (0.353553, 0.353553) vertex[3] = @starspikiness * @nscale1 * (0.382683, 0.92388) vertex[4] = @nscale1 * (0,0.5) vertex[5] = @starspikiness * @nscale1 * (-0.382683, 0.92388) vertex[6] = @nscale1 * (-0.353553, 0.353553) vertex[7] = @starspikiness * @nscale1 * (-0.92388, 0.382683) vertex[8] = @nscale1 * (-0.5,0) vertex[9] = @starspikiness * @nscale1 * (-0.92388, -0.382683) vertex[10] = @nscale1 * (-0.353553, -0.353553) vertex[11] = @starspikiness * @nscale1 * (-0.382683, -0.92388) vertex[12] = @nscale1 * (0,-0.5) vertex[13] = @starspikiness * @nscale1 * (0.382683, -0.92388) vertex[14] = @nscale1 * (0.353553, -0.353553) vertex[15] = @starspikiness * @nscale1 * (0.92388, -0.382683) vertex[16] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 105 ; "8-star 2" cursality = 1 numbervertices = 17 ; n + cursality for closed curves cincrement = 17 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5,0) vertex[2] = @nscale1 * (0.707107, 0.707107) vertex[3] = @nscale1 * (0.353553, 0.353553) vertex[4] = @nscale1 * (0,1) vertex[5] = @nscale1 * (0,0.5) vertex[6] = @nscale1 * (-0.707107, 0.707107) vertex[7] = @nscale1 * (-0.353553, 0.353553) vertex[8] = @nscale1 * (-1,0) vertex[9] = @nscale1 * (-0.5,0) vertex[10] = @nscale1 * (-0.707107, -0.707107) vertex[11] = @nscale1 * (-0.353553, -0.353553) vertex[12] = @nscale1 * (0,-1) vertex[13] = @nscale1 * (0,-0.5) vertex[14] = @nscale1 * (0.707107, -0.707107) vertex[15] = @nscale1 * (0.353553, -0.353553) vertex[16] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 106 ; "octagram 8" cursality = 1 numbervertices = 9 ; n + cursality for closed curves cincrement = 9 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.707107, 0.707107) vertex[1] = @nscale1 * (-0.6667, 0) vertex[2] = @nscale1 * (0.707107, -0.707107) vertex[3] = @nscale1 * (0, 0.6667) vertex[4] = @nscale1 * (-0.707107, -0.707107) vertex[5] = @nscale1 * (0.6667, 0) vertex[6] = @nscale1 * (-0.707107, 0.707107) vertex[7] = @nscale1 * (0, -0.6667) vertex[8] = @nscale1 * (0.707107, 0.707107) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 107 ; "octagram 9" cursality = 4 numbervertices = 20 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.987688, 0.156434) vertex[1] = @nscale1 * (0.809017, 0.587785) vertex[2] = @nscale1 * (-0.809017, -0.587785) vertex[3] = @nscale1 * (-0.987688, -0.156434) vertex[4] = @nscale1 * (0.987688, 0.156434) vertex[5] = @nscale1 * (0.587785, 0.809017) vertex[6] = @nscale1 * (0.156434, 0.987688) vertex[7] = @nscale1 * (-0.156434, -0.987688) vertex[8] = @nscale1 * (-0.587785, -0.809017) vertex[9] = @nscale1 * (0.587785, 0.809017) vertex[10] = @nscale1 * (-0.156434, 0.987688) vertex[11] = @nscale1 * (-0.587785, 0.809017) vertex[12] = @nscale1 * (0.587785, -0.809017) vertex[13] = @nscale1 * (0.156434, -0.987688) vertex[14] = @nscale1 * (-0.156434, 0.987688) vertex[15] = @nscale1 * (-0.809017, 0.587785) vertex[16] = @nscale1 * (-0.987688, 0.156434) vertex[17] = @nscale1 * (0.987688, -0.156434) vertex[18] = @nscale1 * (0.809017, -0.587785) vertex[19] = @nscale1 * (-0.809017, 0.587785) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 108 ; "octagram 10" cursality = 4 numbervertices = 20 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.987688, 0.156434) vertex[1] = @nscale1 * (-0.809017, -0.587785) vertex[2] = @nscale1 * (-0.987688, -0.156434) vertex[3] = @nscale1 * (0.809017, 0.587785) vertex[4] = @nscale1 * (0.987688, 0.156434) vertex[5] = @nscale1 * (0.587785, 0.809017) vertex[6] = @nscale1 * (-0.156434, -0.987688) vertex[7] = @nscale1 * (-0.587785, -0.809017) vertex[8] = @nscale1 * (0.156434, 0.987688) vertex[9] = @nscale1 * (0.587785, 0.809017) vertex[10] = @nscale1 * (-0.156434, 0.987688) vertex[11] = @nscale1 * (0.587785, -0.809017) vertex[12] = @nscale1 * (0.156434, -0.987688) vertex[13] = @nscale1 * (-0.587785, 0.809017) vertex[14] = @nscale1 * (-0.156434, 0.987688) vertex[15] = @nscale1 * (-0.809017, 0.587785) vertex[16] = @nscale1 * (0.987688, -0.156434) vertex[17] = @nscale1 * (0.809017, -0.587785) vertex[18] = @nscale1 * (-0.987688, 0.156434) vertex[19] = @nscale1 * (-0.809017, 0.587785) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 109 ; "roots of unity" if @fixtrapbug singleroot = @singleroot1 unityroots = @unityroot1 whichroot = @whichroot1 if whichroot < 1 whichroot = 1 elseif whichroot > unityroots whichroot = unityroots endif ; whichroot endif ; @fixtrapbug if !singleroot ; plot all the roots cursality = unityroots numbervertices = unityroots ; single points, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / unityroots) ycoord[glindex] = @nscale1 * sin(glindex * twopi / unityroots) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex else ; plot only a single root cursality = 1 numbervertices = 1 ; single point, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(whichroot * twopi / unityroots) ycoord[glindex] = @nscale1 * sin(whichroot * twopi / unityroots) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex endif ; !singleroot[] elseif traparray == 112 ; "nonagon" cursality = 1 numbervertices = 10 ; vertices + cursality for closed curves cincrement = 10 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 9) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 9) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 113 ; "nonagram" cursality = 1 numbervertices = 10 ; vertices + cursality for closed curves cincrement = 10 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(2 * glindex * twopi / 9) ycoord[glindex] = @nscale1 * sin(2 * glindex * twopi / 9) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 114 ; "nonagram 2" cursality = 3 numbervertices = 12 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.5, 0.866025) vertex[2] = @nscale1 * (-0.5, -0.866025) vertex[3] = @nscale1 * (1,0) vertex[4] = @nscale1 * (0.766044, 0.642788) vertex[5] = @nscale1 * (-0.939693, 0.34202) vertex[6] = @nscale1 * (0.173648, -0.984808) vertex[7] = @nscale1 * (0.766044, 0.642788) vertex[8] = @nscale1 * (0.173648, 0.984808) vertex[9] = @nscale1 * (-0.939693, -0.34202) vertex[10] = @nscale1 * (0.766044, -0.642788) vertex[11] = @nscale1 * (0.173648, 0.984808) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 115 ; "nonagram 3" cursality = 1 numbervertices = 10 ; vertices + cursality for closed curves cincrement = 10 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(4 * glindex * twopi / 9) ycoord[glindex] = @nscale1 * sin(4 * glindex * twopi / 9) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 116 ; "nonagram 4" cursality = 1 numbervertices = 19 ; n + cursality for closed curves cincrement = 19 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.459627, -0.385673) vertex[1] = @nscale1 * (0.815028, 0.579421) vertex[2] = @nscale1 * (0.104189, -0.590885) vertex[3] = @nscale1 * (0.996793, -0.0800278) vertex[4] = @nscale1 * (-0.3, -0.519615) vertex[5] = @nscale1 * (0.712147, -0.702031) vertex[6] = @nscale1 * (-0.563816, -0.205212) vertex[7] = @nscale1 * (0.0942792, -0.995546) vertex[8] = @nscale1 * (-0.563816, 0.205212) vertex[9] = @nscale1 * (-0.567702, -0.823234) vertex[10] = @nscale1 * (-0.3, 0.519615) vertex[11] = @nscale1 * (-0.96405, -0.265722) vertex[12] = @nscale1 * (0.104189, 0.590885) vertex[13] = @nscale1 * (-0.909308, 0.416125) vertex[14] = @nscale1 * (0.459627, 0.385673) vertex[15] = @nscale1 * (-0.42909, 0.903262) vertex[16] = @nscale1 * (0.6, 0) vertex[17] = @nscale1 * (0.251903, 0.967752) vertex[18] = @nscale1 * (0.459627, -0.385673) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 117 ; "nonagram 5" cursality = 1 numbervertices = 19 ; n + cursality for closed curves cincrement = 19 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.992115, 0.125333) vertex[1] = @nscale1 * (-0.889416, 0.457098) vertex[2] = @nscale1 * (0.0488498, 0.998806) vertex[3] = @nscale1 * (-0.604599, -0.79653) vertex[4] = @nscale1 * (-0.975149, 0.221548) vertex[5] = @nscale1 * (0.679441, -0.73373) vertex[6] = @nscale1 * (-0.387516, -0.921863) vertex[7] = @nscale1 * (0.840567, 0.541708) vertex[8] = @nscale1 * (0.840567, -0.541708) vertex[9] = @nscale1 * (-0.387516, 0.921863) vertex[10] = @nscale1 * (0.679441, 0.73373) vertex[11] = @nscale1 * (-0.975149, -0.221548) vertex[12] = @nscale1 * (-0.604599, 0.79653) vertex[13] = @nscale1 * (0.0488498, -0.998806) vertex[14] = @nscale1 * (-0.889416, -0.457098) vertex[15] = @nscale1 * (0.992115, -0.125333) vertex[16] = @nscale1 * (0.295708, -0.955278) vertex[17] = @nscale1 * (0.295708, 0.955278) vertex[18] = @nscale1 * (0.992115, 0.125333) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 118 ; "nonagram 6" cursality = 1 numbervertices = 19 ; n + cursality for closed curves cincrement = 19 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.939693, 0.34202) vertex[1] = @nscale1 * (-0.766044, 0.642788) vertex[2] = @nscale1 * (-0.173648, 0.984808) vertex[3] = @nscale1 * (-0.766044, -0.642788) vertex[4] = @nscale1 * (-1,0) vertex[5] = @nscale1 * (0.5, -0.866025) vertex[6] = @nscale1 * (-0.173648, -0.984808) vertex[7] = @nscale1 * (0.939693, 0.34202) vertex[8] = @nscale1 * (0.939693, -0.34202) vertex[9] = @nscale1 * (-0.173648, 0.984808) vertex[10] = @nscale1 * (0.5, 0.866025) vertex[11] = @nscale1 * (-1,0) vertex[12] = @nscale1 * (-0.766044, 0.642788) vertex[13] = @nscale1 * (-0.173648, -0.984808) vertex[14] = @nscale1 * (-0.766044, -0.642788) vertex[15] = @nscale1 * (0.939693, -0.34202) vertex[16] = @nscale1 * (0.5, -0.866025) vertex[17] = @nscale1 * (0.5, 0.866025) vertex[18] = @nscale1 * (0.939693, 0.34202) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 151 ; "nonagram 7" cursality = 1 numbervertices = 10 ; n + cursality for closed curves cincrement = 10 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.704769, 0.256515) vertex[2] = @nscale1 * (0.383022, -0.321394) vertex[3] = @nscale1 * (-0.5, 0.866025) vertex[4] = @nscale1 * (0.130236, -0.738606) vertex[5] = @nscale1 * (0.0868241, 0.492404) vertex[6] = @nscale1 * (-0.5, -0.866025) vertex[7] = @nscale1 * (0.574533, 0.482091) vertex[8] = @nscale1 * (-0.469846, -0.17101) vertex[9] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 119 ; "9-star" cursality = 1 numbervertices = 19 ; n + cursality for closed curves cincrement = 19 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (0.939693, 0.34202) vertex[2] = @nscale1 * (0.383022, 0.321394) vertex[3] = @starspikiness * @nscale1 * (0.5, 0.866025) vertex[4] = @nscale1 * (0.0868241, 0.492404) vertex[5] = @starspikiness * @nscale1 * (-0.173648, 0.984808) vertex[6] = @nscale1 * (-0.25, 0.433013) vertex[7] = @starspikiness * @nscale1 * (-0.766044, 0.642788) vertex[8] = @nscale1 * (-0.469846, 0.17101) vertex[9] = @starspikiness * @nscale1 * (-1,0) vertex[10] = @nscale1 * (-0.469846, -0.17101) vertex[11] = @starspikiness * @nscale1 * (-0.766044, -0.642788) vertex[12] = @nscale1 * (-0.25, -0.433013) vertex[13] = @starspikiness * @nscale1 * (-0.173648, -0.984808) vertex[14] = @nscale1 * (0.0868241, -0.492404) vertex[15] = @starspikiness * @nscale1 * (0.5, -0.866025) vertex[16] = @nscale1 * (0.383022, -0.321394) vertex[17] = @starspikiness * @nscale1 * (0.939693, -0.34202) vertex[18] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 120 ; "9-asterisk" cursality = 9 numbervertices = 18 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 9) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 9) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) vertex[3] = @leafBlength * vertex[3] xcoord[3] = real(vertex[3]) ycoord[3] = imag(vertex[3]) vertex[5] = @leafClength * vertex[5] xcoord[5] = real(vertex[5]) ycoord[5] = imag(vertex[5]) vertex[7] = @leafDlength * vertex[7] xcoord[7] = real(vertex[7]) ycoord[7] = imag(vertex[7]) vertex[9] = @leafElength * vertex[9] xcoord[9] = real(vertex[9]) ycoord[9] = imag(vertex[9]) vertex[11] = @leafFlength * vertex[11] xcoord[11] = real(vertex[11]) ycoord[11] = imag(vertex[11]) vertex[13] = @leafGlength * vertex[13] xcoord[13] = real(vertex[13]) ycoord[13] = imag(vertex[13]) vertex[15] = @leafHlength * vertex[15] xcoord[15] = real(vertex[15]) ycoord[15] = imag(vertex[15]) vertex[17] = @leafIlength * vertex[17] xcoord[17] = real(vertex[17]) ycoord[17] = imag(vertex[17]) elseif traparray == 121 ; "9-star 2" cursality = 1 numbervertices = 19 ; n + cursality for closed curves cincrement = 19 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.965926, 0.258819) vertex[1] = @nscale1 * (-0.996195, -0.0871557) vertex[2] = @nscale1 * (-0.996195, 0.0871557) vertex[3] = @nscale1 * (0.965926, -0.258819) vertex[4] = @nscale1 * (0.906308, -0.422618) vertex[5] = @nscale1 * (-0.819152, 0.573576) vertex[6] = @nscale1 * (-0.707107, 0.707107) vertex[7] = @nscale1 * (0.573576, -0.819152) vertex[8] = @nscale1 * (0.422618, -0.906308) vertex[9] = @nscale1 * (-0.258819, 0.965926) vertex[10] = @nscale1 * (-0.0871557, 0.996195) vertex[11] = @nscale1 * (-0.0871557, -0.996195) vertex[12] = @nscale1 * (-0.258819, -0.965926) vertex[13] = @nscale1 * (0.422618, 0.906308) vertex[14] = @nscale1 * (0.573576, 0.819152) vertex[15] = @nscale1 * (-0.707107, -0.707107) vertex[16] = @nscale1 * (-0.819152, -0.573576) vertex[17] = @nscale1 * (0.906308, 0.422618) vertex[18] = @nscale1 * (0.965926, 0.258819) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 122 ; "9-star 3" cursality = 1 numbervertices = 19 ; n + cursality for closed curves cincrement = 19 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (01,0) vertex[1] = @nscale1 * (0.5,0) vertex[2] = @nscale1 * (0.766044, 0.642788) vertex[3] = @nscale1 * (0.383022, 0.321394) vertex[4] = @nscale1 * (0.173648, 0.984808) vertex[5] = @nscale1 * (0.0868241, 0.492404) vertex[6] = @nscale1 * (-0.5, 0.866025) vertex[7] = @nscale1 * (-0.25, 0.433013) vertex[8] = @nscale1 * (-0.939693, 0.34202) vertex[9] = @nscale1 * (-0.469846, 0.17101) vertex[10] = @nscale1 * (-0.939693, -0.34202) vertex[11] = @nscale1 * (-0.469846, -0.17101) vertex[12] = @nscale1 * (-0.5, -0.866025) vertex[13] = @nscale1 * (-0.25, -0.433013) vertex[14] = @nscale1 * (0.173648, -0.984808) vertex[15] = @nscale1 * (0.0868241, -0.492404) vertex[16] = @nscale1 * (0.766044, -0.642788) vertex[17] = @nscale1 * (0.383022, -0.321394) vertex[18] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 123 ; "decagon" cursality = 1 numbervertices = 11 ; vertices + cursality for closed curves cincrement = 11 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 10) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 10) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 124 ; "10-asterisk" cursality = 10 numbervertices = 20 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 10) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 10) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) vertex[3] = @leafBlength * vertex[3] xcoord[3] = real(vertex[3]) ycoord[3] = imag(vertex[3]) vertex[5] = @leafClength * vertex[5] xcoord[5] = real(vertex[5]) ycoord[5] = imag(vertex[5]) vertex[7] = @leafDlength * vertex[7] xcoord[7] = real(vertex[7]) ycoord[7] = imag(vertex[7]) vertex[9] = @leafElength * vertex[9] xcoord[9] = real(vertex[9]) ycoord[9] = imag(vertex[9]) vertex[11] = @leafFlength * vertex[11] xcoord[11] = real(vertex[11]) ycoord[11] = imag(vertex[11]) vertex[13] = @leafGlength * vertex[13] xcoord[13] = real(vertex[13]) ycoord[13] = imag(vertex[13]) vertex[15] = @leafHlength * vertex[15] xcoord[15] = real(vertex[15]) ycoord[15] = imag(vertex[15]) vertex[17] = @leafIlength * vertex[17] xcoord[17] = real(vertex[17]) ycoord[17] = imag(vertex[17]) vertex[19] = @leafJlength * vertex[19] xcoord[19] = real(vertex[19]) ycoord[19] = imag(vertex[19]) elseif traparray == 125 ; "decagram" cursality = 2 numbervertices = 12 ; n + cursality for closed curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.309017, 0.951057) vertex[2] = @nscale1 * (-0.809017, 0.587785) vertex[3] = @nscale1 * (-0.809017, -0.587785) vertex[4] = @nscale1 * (0.309017, -0.951057) vertex[5] = @nscale1 * (1,0) vertex[6] = @nscale1 * (0.809017, 0.587785) vertex[7] = @nscale1 * (-0.309017, 0.951057) vertex[8] = @nscale1 * (-1,0) vertex[9] = @nscale1 * (-0.309017, -0.951057) vertex[10] = @nscale1 * (0.809017, -0.587785) vertex[11] = @nscale1 * (0.809017, 0.587785) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 126 ; "decagram 2" cursality = 1 numbervertices = 11 ; vertices + cursality for closed curves cincrement = 11 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(3 * glindex * twopi / 10) ycoord[glindex] = @nscale1 * sin(3 * glindex * twopi / 10) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 127 ; "decagram 3" cursality = 2 numbervertices = 12 ; n + cursality for closed curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.809017, 0.587785) vertex[2] = @nscale1 * (0.309017, -0.951057) vertex[3] = @nscale1 * (0.309017, 0.951057) vertex[4] = @nscale1 * (-0.809017, -0.587785) vertex[5] = @nscale1 * (1,0) vertex[6] = @nscale1 * (0.809017, 0.587785) vertex[7] = @nscale1 * (-1,0) vertex[8] = @nscale1 * (0.809017, -0.587785) vertex[9] = @nscale1 * (-0.309017, 0.951057) vertex[10] = @nscale1 * (-0.309017, -0.951057) vertex[11] = @nscale1 * (0.809017, 0.587785) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 128 ; "decagram 4" cursality = 1 numbervertices = 11 ; n + cursality for closed curves cincrement = 11 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.809017, 0.587785) vertex[1] = @nscale1 * (-0.647214, 0.470228) vertex[2] = @nscale1 * (-0.309017, -0.951057) vertex[3] = @nscale1 * (0.8,0) vertex[4] = @nscale1 * (-0.309017, 0.951057) vertex[5] = @nscale1 * (-0.647214, -0.470228) vertex[6] = @nscale1 * (0.809017, -0.587785) vertex[7] = @nscale1 * (0.247214, 0.760845) vertex[8] = @nscale1 * (-1,0) vertex[9] = @nscale1 * (0.247214, -0.760845) vertex[10] = @nscale1 * (0.809017, 0.587785) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 129 ; "10-star" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (0.951057, 0.309017) vertex[2] = @nscale1 * (0.404508, 0.293893) vertex[3] = @starspikiness * @nscale1 * (0.587785, 0.809017) vertex[4] = @nscale1 * (0.154508, 0.475528) vertex[5] = @starspikiness * @nscale1 * (0,1) vertex[6] = @nscale1 * (-0.154508, 0.475528) vertex[7] = @starspikiness * @nscale1 * (-0.587785, 0.809017) vertex[8] = @nscale1 * (-0.404508, 0.293893) vertex[9] = @starspikiness * @nscale1 * (-0.951057, 0.309017) vertex[10] = @nscale1 * (-0.5,0) vertex[11] = @starspikiness * @nscale1 * (-0.951057, -0.309017) vertex[12] = @nscale1 * (-0.404508, -0.293893) vertex[13] = @starspikiness * @nscale1 * (-0.587785, -0.809017) vertex[14] = @nscale1 * (-0.154508, -0.475528) vertex[15] = @starspikiness * @nscale1 * (0,-1) vertex[16] = @nscale1 * (0.154508, -0.475528) vertex[17] = @starspikiness * @nscale1 * (0.587785, -0.809017) vertex[18] = @nscale1 * (0.404508, -0.293893) vertex[19] = @starspikiness * @nscale1 * (0.951057, -0.309017) vertex[20] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 130 ; "10-star 2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5,0) vertex[2] = @nscale1 * (0.809017, 0.587785) vertex[3] = @nscale1 * (0.404508, 0.293893) vertex[4] = @nscale1 * (0.309017, 0.951057) vertex[5] = @nscale1 * (0.154508, 0.475528) vertex[6] = @nscale1 * (-0.309017, 0.951057) vertex[7] = @nscale1 * (-0.154508, 0.475528) vertex[8] = @nscale1 * (-0.809017, 0.587785) vertex[9] = @nscale1 * (-0.404508, 0.293893) vertex[10] = @nscale1 * (-1,0) vertex[11] = @nscale1 * (-0.5,0) vertex[12] = @nscale1 * (-0.809017, -0.587785) vertex[13] = @nscale1 * (-0.404508, -0.293893) vertex[14] = @nscale1 * (-0.309017, -0.951057) vertex[15] = @nscale1 * (-0.154508, -0.475528) vertex[16] = @nscale1 * (0.309017, -0.951057) vertex[17] = @nscale1 * (0.154508, -0.475528) vertex[18] = @nscale1 * (0.809017, -0.587785) vertex[19] = @nscale1 * (0.404508, -0.293893) vertex[20] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 131 ; "10-star 3" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.707107, 0.707107) vertex[1] = @nscale1 * (0.494975, -0.494975) vertex[2] = @nscale1 * (0.156434, 0.987688) vertex[3] = @nscale1 * (0.691382, -0.109504) vertex[4] = @nscale1 * (-0.45399, 0.891007) vertex[5] = @nscale1 * (0.623705, 0.317793) vertex[6] = @nscale1 * (-0.891007, 0.45399) vertex[7] = @nscale1 * (0.317793, 0.623705) vertex[8] = @nscale1 * (-0.987688, -0.156434) vertex[9] = @nscale1 * (-0.109504, 0.691382) vertex[10] = @nscale1 * (-0.707107, -0.707107) vertex[11] = @nscale1 * (-0.494975, 0.494975) vertex[12] = @nscale1 * (-0.156434, -0.987688) vertex[13] = @nscale1 * (-0.691382, 0.109504) vertex[14] = @nscale1 * (0.45399, -0.891007) vertex[15] = @nscale1 * (-0.623705, -0.317793) vertex[16] = @nscale1 * (0.891007, -0.45399) vertex[17] = @nscale1 * (-0.317793, -0.623705) vertex[18] = @nscale1 * (0.987688, 0.156434) vertex[19] = @nscale1 * (0.109504, -0.691382) vertex[20] = @nscale1 * (0.707107, 0.707107) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 132 ; "decagram 5" cursality = 2 numbervertices = 22 ; n + cursality for closed curves cincrement = 11 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.987688, 0.156434) vertex[1] = @nscale1 * (-0.156434, 0.987688) vertex[2] = @nscale1 * (0.156434, 0.987688) vertex[3] = @nscale1 * (-0.987688, 0.156434) vertex[4] = @nscale1 * (-0.891007, 0.45399) vertex[5] = @nscale1 * (-0.45399, -0.891007) vertex[6] = @nscale1 * (-0.707107, -0.707107) vertex[7] = @nscale1 * (0.707107, -0.707107) vertex[8] = @nscale1 * (0.45399, -0.891007) vertex[9] = @nscale1 * (0.891007, 0.45399) vertex[10] = @nscale1 * (0.987688, 0.156434) vertex[11] = @nscale1 * (0.707107, 0.707107) vertex[12] = @nscale1 * (-0.707107, 0.707107) vertex[13] = @nscale1 * (-0.45399, 0.891007) vertex[14] = @nscale1 * (-0.891007, -0.45399) vertex[15] = @nscale1 * (-0.987688, -0.156434) vertex[16] = @nscale1 * (0.156434, -0.987688) vertex[17] = @nscale1 * (-0.156434, -0.987688) vertex[18] = @nscale1 * (0.987688, -0.156434) vertex[19] = @nscale1 * (0.891007, -0.45399) vertex[20] = @nscale1 * (0.45399, 0.891007) vertex[21] = @nscale1 * (0.707107, 0.707107) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 134 ; "collinear spots" if @fixtrapbug collinearspots = @collinearspot1 endif ; @fixtrapbug cursality = collinearspots numbervertices = collinearspots ; single points, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays glindex = 0 if numbervertices == 1 xcoord[glindex] = 0.0 ycoord[glindex] = 0.0 vertex[glindex] = (0,0) glindex = glindex + 1 else scratchfloat = @nscale1/(numbervertices - 1) xcoord[glindex] = -0.5 * @nscale1 ycoord[glindex] = 0.0 vertex[glindex] = (-0.5,0) * @nscale1 glindex = glindex + 1 while glindex < numbervertices xcoord[glindex] = xcoord[glindex - 1] + scratchfloat ycoord[glindex] = 0.0 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex endif ; numbervertices elseif traparray == 135 ; "square array" squaresize = @squarespot1 cursality = sqr(squaresize) numbervertices = cursality ; single points, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays scratchfloat = (1.5 * @nscale1)/(squaresize - 1) ; distance between adjacent points scratchfloat2 = @nscale1 * -0.75 ; starting x-coordinate (upper left of array) scratchfloat3 = @nscale1 * 0.75 ; starting y-coordinate (upper left of array) scratchint = 0 ; index for calculation of y-coordinate glindex = 0 while glindex <= numbervertices glindex3 = 0 while glindex3 < squaresize scratchint2 = glindex + glindex3 xcoord[scratchint2] = scratchfloat2 + scratchfloat * glindex3 ycoord[scratchint2] = scratchfloat3 - scratchfloat * scratchint vertex[scratchint2] = xcoord[scratchint2] + flip(ycoord[scratchint2]) glindex3 = glindex3 + 1 endwhile ; glindex3 glindex = glindex + squaresize scratchint = scratchint + 1 endwhile ; glindex elseif traparray == 136 ; "triangular array" if @fixtrapbug triarraysize = @triarray1 endif ; @fixtrapbug cursality = round(3*triarraysize*(triarraysize-1)/2 + 1) ; centered triangular numbers numbervertices = cursality ; single points, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (0.333333, 0) vertex[2] = @nscale1 * (-0.166667, 0.288675) vertex[3] = @nscale1 * (-0.166667, -0.288675) vertex[4] = @nscale1 * (0.666667, 0) vertex[5] = @nscale1 * (0.166667, 0.288675) vertex[6] = @nscale1 * (-0.333333, 0.57735) vertex[7] = @nscale1 * (-0.333333, 0) vertex[8] = @nscale1 * (-0.333333, -0.57735) vertex[9] = @nscale1 * (0.166667, -0.288675) vertex[10] = @nscale1 * (1,0) vertex[11] = @nscale1 * (0.5, 0.288675) vertex[12] = @nscale1 * (0., 0.57735) vertex[13] = @nscale1 * (-0.5, 0.866025) vertex[14] = @nscale1 * (-0.5, 0.288675) vertex[15] = @nscale1 * (-0.5, -0.288675) vertex[16] = @nscale1 * (-0.5, -0.866025) vertex[17] = @nscale1 * (0., -0.57735) vertex[18] = @nscale1 * (0.5, -0.288675) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 137 ; "triangular spiral" if @fixtrapbug spiralsize = @spiralorder1 endif ; @fixtrapbug cursality = 1 if spiralsize == 1 numbervertices = 4 cincrement = 4 ; numbervertices/cursality elseif spiralsize == 2 numbervertices = 7 cincrement = 7 elseif spiralsize == 3 numbervertices = 10 cincrement = 10 elseif spiralsize == 4 numbervertices = 13 cincrement = 13 endif ; spiralsize[] ; initialize arrays vertex[0] = shrink2 * @nscale1 * (0.3,0) vertex[1] = shrink2 * @nscale1 * (-0.2, 0.34641) vertex[2] = shrink2 * @nscale1 * (-0.3, -0.519615) vertex[3] = shrink2 * @nscale1 * (0.8,0) vertex[4] = shrink2 * @nscale1 * (-0.5, 0.866025) vertex[5] = shrink2 * @nscale1 * (-0.6, -1.03923) vertex[6] = shrink2 * @nscale1 * (1.4,0) vertex[7] = shrink2 * @nscale1 * (-0.8, 1.38564) vertex[8] = shrink2 * @nscale1 * (-0.9, -1.55885) vertex[9] = shrink2 * @nscale1 * (2,0) vertex[10] = shrink2 * @nscale1 * (-1.1, 1.90526) vertex[11] = shrink2 * @nscale1 * (-1.2, -2.07846) vertex[12] = shrink2 * @nscale1 * (2.6,0) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 138 ; "square spiral" if @fixtrapbug spiralsize = @spiralorder1 endif ; @fixtrapbug cursality = 1 if spiralsize == 1 numbervertices = 5 cincrement = 5 ; numbervertices/cursality elseif spiralsize == 2 numbervertices = 9 cincrement = 9 elseif spiralsize == 3 numbervertices = 13 cincrement = 13 elseif spiralsize == 4 numbervertices = 17 cincrement = 17 endif ; spiralsize[] ; initialize arrays vertex[0] = shrink2 * @nscale1 * (0.3,0) vertex[1] = shrink2 * @nscale1 * (0,0.4) vertex[2] = shrink2 * @nscale1 * (-0.6,0) vertex[3] = shrink2 * @nscale1 * (0,-0.8) vertex[4] = shrink2 * @nscale1 * (1,0) vertex[5] = shrink2 * @nscale1 * (0,1.2) vertex[6] = shrink2 * @nscale1 * (-1.4,0) vertex[7] = shrink2 * @nscale1 * (0,-1.6) vertex[8] = shrink2 * @nscale1 * (1.8,0) vertex[9] = shrink2 * @nscale1 * (0,2) vertex[10] = shrink2 * @nscale1 * (-2.2,0) vertex[11] = shrink2 * @nscale1 * (0,-2.4) vertex[12] = shrink2 * @nscale1 * (2.6,0) vertex[13] = shrink2 * @nscale1 * (0,2.8) vertex[14] = shrink2 * @nscale1 * (-3,0) vertex[15] = shrink2 * @nscale1 * (0,-3.2) vertex[16] = shrink2 * @nscale1 * (3.4,0) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 139 ; "pentagonal array" if @fixtrapbug triarraysize = @triarray1 endif ; @fixtrapbug scratchint = triarraysize - 1 cursality = round((5*sqr(scratchint)+(5*scratchint)+2)/2) ; centered pentagonal numbers numbervertices = cursality ; single points, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (0.333333, 0) vertex[2] = @nscale1 * (0.103006, 0.317019) vertex[3] = @nscale1 * (-0.269672, 0.195928) vertex[4] = @nscale1 * (-0.269672, -0.195928) vertex[5] = @nscale1 * (0.103006, -0.317019) vertex[6] = @nscale1 * (0.666667, 0) vertex[7] = @nscale1 * (0.436339, 0.317019) vertex[8] = @nscale1 * (0.206011, 0.634038) vertex[9] = @nscale1 * (-0.166667, 0.512947) vertex[10] = @nscale1 * (-0.539345, 0.391857) vertex[11] = @nscale1 * (-0.539345, 0) vertex[12] = @nscale1 * (-0.539345, -0.391857) vertex[13] = @nscale1 * (-0.166667, -0.512947) vertex[14] = @nscale1 * (0.206011, -0.634038) vertex[15] = @nscale1 * (0.436339, -0.317019) vertex[16] = @nscale1 * (1,0) vertex[17] = @nscale1 * (0.769672, 0.317019) vertex[18] = @nscale1 * (0.539345, 0.634038) vertex[19] = @nscale1 * (0.309017, 0.951057) vertex[20] = @nscale1 * (-0.063661, 0.829966) vertex[21] = @nscale1 * (-0.436339, 0.708876) vertex[22] = @nscale1 * (-0.809017, 0.587785) vertex[23] = @nscale1 * (-0.809017, 0.195928) vertex[24] = @nscale1 * (-0.809017, -0.195928) vertex[25] = @nscale1 * (-0.809017, -0.587785) vertex[26] = @nscale1 * (-0.436339, -0.708876) vertex[27] = @nscale1 * (-0.063661, -0.829966) vertex[28] = @nscale1 * (0.309017, -0.951057) vertex[29] = @nscale1 * (0.539345, -0.634038) vertex[30] = @nscale1 * (0.769672, -0.317019) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 140 ; "hexagonal array" if @fixtrapbug triarraysize = @triarray1 endif ; @fixtrapbug cursality = round(3*(triarraysize-1)*(triarraysize)+1) ; centered hexagonal numbers numbervertices = cursality ; single points, not line segments cincrement = 1 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0,0) vertex[1] = @nscale1 * (0.333333, 0) vertex[2] = @nscale1 * (0.166667, 0.288675) vertex[3] = @nscale1 * (-0.166667, 0.288675) vertex[4] = @nscale1 * (-0.333333, 0) vertex[5] = @nscale1 * (-0.166667, -0.288675) vertex[6] = @nscale1 * (0.166667, -0.288675) vertex[7] = @nscale1 * (0.666667, 0) vertex[8] = @nscale1 * (0.5, 0.288675) vertex[9] = @nscale1 * (0.333333, 0.57735) vertex[10] = @nscale1 * (0., 0.57735) vertex[11] = @nscale1 * (-0.333333, 0.57735) vertex[12] = @nscale1 * (-0.5, 0.288675) vertex[13] = @nscale1 * (-0.666667, 0) vertex[14] = @nscale1 * (-0.5, -0.288675) vertex[15] = @nscale1 * (-0.333333, -0.57735) vertex[16] = @nscale1 * (0., -0.57735) vertex[17] = @nscale1 * (0.333333, -0.57735) vertex[18] = @nscale1 * (0.5, -0.288675) vertex[19] = @nscale1 * (1,0) vertex[20] = @nscale1 * (0.833333, 0.288675) vertex[21] = @nscale1 * (0.666667, 0.57735) vertex[22] = @nscale1 * (0.5, 0.866025) vertex[23] = @nscale1 * (0.166667, 0.866025) vertex[24] = @nscale1 * (-0.5, 0.866025) vertex[25] = @nscale1 * (-0.666667, 0.57735) vertex[26] = @nscale1 * (-0.833333, 0.288675) vertex[27] = @nscale1 * (-1,0) vertex[28] = @nscale1 * (-0.833333, -0.288675) vertex[29] = @nscale1 * (-0.166667, 0.866025) vertex[30] = @nscale1 * (-0.666667, -0.57735) vertex[31] = @nscale1 * (-0.5, -0.866025) vertex[32] = @nscale1 * (-0.166667, -0.866025) vertex[33] = @nscale1 * (0.166667, -0.866025) vertex[34] = @nscale1 * (0.5, -0.866025) vertex[35] = @nscale1 * (0.666667, -0.57735) vertex[36] = @nscale1 * (0.833333, -0.288675) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 141 ; "pentagonal spiral" if @fixtrapbug spiralsize = @spiralorder1 endif ; @fixtrapbug cursality = 1 if spiralsize == 1 numbervertices = 6 cincrement = 6 ; numbervertices/cursality elseif spiralsize == 2 numbervertices = 11 cincrement = 11 elseif spiralsize == 3 numbervertices = 16 cincrement = 16 elseif spiralsize == 4 numbervertices = 21 cincrement = 21 endif ; spiralsize[] ; initialize arrays vertex[0] = shrink3 * @nscale1 * (0.3,0) vertex[1] = shrink3 * @nscale1 * (0.123607, 0.380423) vertex[2] = shrink3 * @nscale1 * (-0.48541, 0.352671) vertex[3] = shrink3 * @nscale1 * (-0.647214, -0.470228) vertex[4] = shrink3 * @nscale1 * (0.309017, -0.951057) vertex[5] = shrink3 * @nscale1 * (1.2,0) vertex[6] = shrink3 * @nscale1 * (0.432624, 1.33148) vertex[7] = shrink3 * @nscale1 * (-1.29443, 0.940456) vertex[8] = shrink3 * @nscale1 * (-1.45623, -1.05801) vertex[9] = shrink3 * @nscale1 * (0.618034, -1.90211) vertex[10] = shrink3 * @nscale1 * (2.2,0) vertex[11] = shrink3 * @nscale1 * (0.741641, 2.28254) vertex[12] = shrink3 * @nscale1 * (-2.10344, 1.52824) vertex[13] = shrink3 * @nscale1 * (-2.26525, -1.6458) vertex[14] = shrink3 * @nscale1 * (0.927051, -2.85317) vertex[15] = shrink3 * @nscale1 * (3.2,0) vertex[16] = shrink3 * @nscale1 * (1.05066, 3.23359) vertex[17] = shrink3 * @nscale1 * (-2.91246, 2.11603) vertex[18] = shrink3 * @nscale1 * (-3.07426, -2.23358) vertex[19] = shrink3 * @nscale1 * (1.23607, -3.80423) vertex[20] = shrink3 * @nscale1 * (4.2,0) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 142 ; "hexagonal spiral" if @fixtrapbug spiralsize = @spiralorder1 endif ; @fixtrapbug cursality = 1 if spiralsize == 1 numbervertices = 7 cincrement = 7 ; numbervertices/cursality elseif spiralsize == 2 numbervertices = 13 cincrement = 13 elseif spiralsize == 3 numbervertices = 19 cincrement = 19 elseif spiralsize == 4 numbervertices = 25 cincrement = 25 endif ; spiralsize[] ; initialize arrays vertex[0] = shrink3 * @nscale1 * (0.3,0) vertex[1] = shrink3 * @nscale1 * (0.2, 0.34641) vertex[2] = shrink3 * @nscale1 * (-0.3, 0.519615) vertex[3] = shrink3 * @nscale1 * (-0.8, 0) vertex[4] = shrink3 * @nscale1 * (-0.5, -0.866025) vertex[5] = shrink3 * @nscale1 * (0.6, -1.03923) vertex[6] = shrink3 * @nscale1 * (1.4,0) vertex[7] = shrink3 * @nscale1 * (0.8, 1.38564) vertex[8] = shrink3 * @nscale1 * (-0.9, 1.55885) vertex[9] = shrink3 * @nscale1 * (-2,0) vertex[10] = shrink3 * @nscale1 * (-1.1, -1.90526) vertex[11] = shrink3 * @nscale1 * (1.2, -2.07846) vertex[12] = shrink3 * @nscale1 * (2.6,0) vertex[13] = shrink3 * @nscale1 * (1.4, 2.42487) vertex[14] = shrink3 * @nscale1 * (-1.5, 2.59808) vertex[15] = shrink3 * @nscale1 * (-3.2,0) vertex[16] = shrink3 * @nscale1 * (-1.7, -2.94449) vertex[17] = shrink3 * @nscale1 * (1.8, -3.11769) vertex[18] = shrink3 * @nscale1 * (3.8,0) vertex[19] = shrink3 * @nscale1 * (2, 3.4641) vertex[20] = shrink3 * @nscale1 * (-2.1, 3.63731) vertex[21] = shrink3 * @nscale1 * (-4.4,0) vertex[22] = shrink3 * @nscale1 * (-2.3, -3.98372) vertex[23] = shrink3 * @nscale1 * (2.4, -4.15692) vertex[24] = shrink3 * @nscale1 * (5,0) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 143 ; "octagonal spiral" if @fixtrapbug spiralsize = @spiralorder1 endif ; @fixtrapbug cursality = 1 if spiralsize == 1 numbervertices = 9 cincrement = 9 ; numbervertices/cursality elseif spiralsize == 2 numbervertices = 17 cincrement = 17 elseif spiralsize == 3 numbervertices = 25 cincrement = 25 elseif spiralsize == 4 numbervertices = 33 cincrement = 33 endif ; spiralsize[] ; initialize arrays vertex[0] = shrink3 * @nscale1 * (0.3,0) vertex[1] = shrink3 * @nscale1 * (0.282843, 0.282843) vertex[2] = shrink3 * @nscale1 * (0,0.6) vertex[3] = shrink3 * @nscale1 * (-0.565685, 0.565685) vertex[4] = shrink3 * @nscale1 * (-1,0) vertex[5] = shrink3 * @nscale1 * (-0.848528, -0.848528) vertex[6] = shrink3 * @nscale1 * (0,-1.4) vertex[7] = shrink3 * @nscale1 * (1.13137, -1.13137) vertex[8] = shrink3 * @nscale1 * (1.8,0) vertex[9] = shrink3 * @nscale1 * (1.41421, 1.41421) vertex[10] = shrink3 * @nscale1 * (0,2.2) vertex[11] = shrink3 * @nscale1 * (-1.69706, 1.69706) vertex[12] = shrink3 * @nscale1 * (-2.6,0) vertex[13] = shrink3 * @nscale1 * (-1.9799, -1.9799) vertex[14] = shrink3 * @nscale1 * (0,-3) vertex[15] = shrink3 * @nscale1 * (2.26274, -2.26274) vertex[16] = shrink3 * @nscale1 * (3.4,0) vertex[17] = shrink3 * @nscale1 * (2.54558, 2.54558) vertex[18] = shrink3 * @nscale1 * (0,3.8) vertex[19] = shrink3 * @nscale1 * (-2.82843, 2.82843) vertex[20] = shrink3 * @nscale1 * (-4.2,0) vertex[21] = shrink3 * @nscale1 * (-3.11127, -3.11127) vertex[22] = shrink3 * @nscale1 * (0,-4.6) vertex[23] = shrink3 * @nscale1 * (3.39411, -3.39411) vertex[24] = shrink3 * @nscale1 * (5,0) vertex[25] = shrink3 * @nscale1 * (3.67696, 3.67696) vertex[26] = shrink3 * @nscale1 * (0,5.4) vertex[27] = shrink3 * @nscale1 * (-3.9598, 3.9598) vertex[28] = shrink3 * @nscale1 * (-5.8,0) vertex[29] = shrink3 * @nscale1 * (-4.24264, -4.24264) vertex[30] = shrink3 * @nscale1 * (0,-6.2) vertex[31] = shrink3 * @nscale1 * (4.52548, -4.52548) vertex[32] = shrink3 * @nscale1 * (6.6,0) glindex = 0 while glindex <= numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 144 ; "superellipse" if @fixtrapbug ellipseX = @ellipseexponent1 ellipseH = @ellipseheight1 ellipseW = @ellipsewidth1 endif ; @fixtrapbug cursality = 1 numbervertices = 72 ; open curve as plotted cincrement = 72 ; numbervertices/cursality scratchfloat = 2/ellipseX ; initialize arrays glindex = 0 while glindex < 18 xcoord[glindex] = @nscale1 * ellipseH * (cos(glindex * halfpi/18)^scratchfloat) ycoord[glindex] = @nscale1 * ellipseW * (sin(glindex * halfpi /18)^scratchfloat) glindex = glindex + 1 endwhile ; glindex glindex = 0 while glindex < 18 xcoord[glindex + 18] = -xcoord[17-glindex] ycoord[glindex + 18] = ycoord[17-glindex] glindex = glindex + 1 endwhile ; glindex glindex = 0 while glindex < 36 xcoord[glindex + 36] = xcoord[35-glindex] ycoord[glindex + 36] = -ycoord[35-glindex] glindex = glindex + 1 endwhile ; glindex glindex = 0 while glindex < 72 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 145 ; "hypotrochoid" if @fixtrapbug hypotroA = @hypotrochA1 hypotroB = @hypotrochB1 hypotroH = @hypotrochH1 endif ; @fixtrapbug cursality = 1 numbervertices = 101 ; vertices + cursality for closed curves cincrement = 101 ; numbervertices/cursality ; initialize arrays glindex = 0 scratchfloat = hypotroA - hypotroB scratchfloat2 = scratchfloat/hypotroB scratchfloat3 = twopi/100 while glindex < 101 xcoord[glindex] = @nscale1 * (scratchfloat * cos(glindex * scratchfloat3) + hypotroH * cos(scratchfloat2 * glindex * scratchfloat3)) ycoord[glindex] = @nscale1 * (scratchfloat * sin(glindex * scratchfloat3) - hypotroH * sin(scratchfloat2 * glindex * scratchfloat3)) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex xcoord[101] = xcoord[0] ycoord[101] = ycoord[0] vertex[101] = xcoord[101] + flip(ycoord[101]) elseif traparray == 146 ; "epitrochoid" if @fixtrapbug hypotroA = @hypotrochA1 hypotroB = @hypotrochB1 hypotroH = @hypotrochH1 endif ; @fixtrapbug cursality = 1 numbervertices = 101 ; vertices + cursality for closed curves cincrement = 101 ; numbervertices/cursality ; initialize arrays glindex = 0 scratchfloat = hypotroA + hypotroB scratchfloat2 = scratchfloat/hypotroB scratchfloat3 = twopi/100 while glindex < 101 xcoord[glindex] = @nscale1 * (scratchfloat * cos(glindex * scratchfloat3) - hypotroH * cos(scratchfloat2 * glindex * scratchfloat3)) ycoord[glindex] = @nscale1 * (scratchfloat * sin(glindex * scratchfloat3) - hypotroH * sin(scratchfloat2 * glindex * scratchfloat3)) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex xcoord[101] = xcoord[0] ycoord[101] = ycoord[0] vertex[101] = xcoord[101] + flip(ycoord[101]) elseif traparray == 148 ; "honeycomb" cursality = 6 numbervertices = 36 ; n for open curves cincrement = 6 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @nscale1 * (0.25, 0.433013) vertex[2] = @nscale1 * (0.5, 0.866026) vertex[3] = @nscale1 * (1., 0.866026) vertex[4] = @nscale1 * (1.25, 0.433013) vertex[5] = @nscale1 * (1,0) vertex[6] = @nscale1 * (0.25, 0.433013) vertex[7] = @nscale1 * (-0.25, 0.433013) vertex[8] = @nscale1 * (-0.5, 0.866026) vertex[9] = @nscale1 * (-0.25, 1.29904) vertex[10] = @nscale1 * (0.25, 1.29904) vertex[11] = @nscale1 * (0.5, 0.866026) vertex[12] = @nscale1 * (-0.25, 0.433013) vertex[13] = @nscale1 * (-0.5,0) vertex[14] = @nscale1 * (-1,0) vertex[15] = @nscale1 * (-1.25, 0.433013) vertex[16] = @nscale1 * (-1., 0.866026) vertex[17] = @nscale1 * (-0.5, 0.866026) vertex[18] = @nscale1 * (-0.5,0) vertex[19] = @nscale1 * (-0.25, -0.433013) vertex[20] = @nscale1 * (-0.5, -0.866026) vertex[21] = @nscale1 * (-1., -0.866026) vertex[22] = @nscale1 * (-1.25, -0.433013) vertex[23] = @nscale1 * (-1,0) vertex[24] = @nscale1 * (-0.25, -0.433013) vertex[25] = @nscale1 * (0.25, -0.433013) vertex[26] = @nscale1 * (0.5, -0.866026) vertex[27] = @nscale1 * (0.25, -1.29904) vertex[28] = @nscale1 * (-0.25, -1.29904) vertex[29] = @nscale1 * (-0.5, -0.866026) vertex[30] = @nscale1 * (0.25, -0.433013) vertex[31] = @nscale1 * (0.5,0) vertex[32] = @nscale1 * (1,0) vertex[33] = @nscale1 * (1.25, -0.433013) vertex[34] = @nscale1 * (1., -0.866026) vertex[35] = @nscale1 * (0.5, -0.866026) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 149 ; "nested circles" if @fixtrapbug numbercircles = @circlenum1 endif ; @fixtrapbug glindex3 = 0 if numbercircles == 2 cursality = 2 numbervertices = 120 cincrement = 60 ; numbervertices/cursality scratchfloat = twopi/59 ; angle increment, cincrement - 1 to close curve ; initialize arrays while glindex3 < 2 ; cursality scratchfloat2 = (glindex3+1)/2 * @nscale1 ; fixes radius of the various circles glindex = 0 while glindex < 60 ; cincrement scratchint = glindex3*60 + glindex ; saves a bit of redundant calculation xcoord[scratchint] = scratchfloat2 * cos(scratchfloat*glindex) ycoord[scratchint] = scratchfloat2 * sin(scratchfloat*glindex) vertex[scratchint] = xcoord[scratchint] + flip(ycoord[scratchint]) glindex = glindex + 1 endwhile ; glindex glindex3 = glindex3 + 1 endwhile ; glindex3 elseif numbercircles == 3 cursality = 3 numbervertices = 150 cincrement = 50 ; numbervertices/cursality scratchfloat = twopi/49 ; angle increment ; initialize arrays while glindex3 < 3 scratchfloat2 = (glindex3+1)/3 * @nscale1 ; fixes radius of the various circles glindex = 0 while glindex < 50 scratchint = glindex3*50 + glindex xcoord[scratchint] = scratchfloat2 * cos(scratchfloat*glindex) ycoord[scratchint] = scratchfloat2 * sin(scratchfloat*glindex) vertex[scratchint] = xcoord[scratchint] + flip(ycoord[scratchint]) glindex = glindex + 1 endwhile ; glindex glindex3 = glindex3 + 1 endwhile ; glindex3 elseif numbercircles == 4 cursality = 4 numbervertices = 200 cincrement = 50 ; numbervertices/cursality scratchfloat = twopi/49 ; angle increment ; initialize arrays while glindex3 < 4 scratchfloat2 = (glindex3+1)/4 * @nscale1 ; fixes radius of the various circles glindex = 0 while glindex < 50 scratchint = glindex3*50 + glindex xcoord[scratchint] = scratchfloat2 * cos(scratchfloat*glindex) ycoord[scratchint] = scratchfloat2 * sin(scratchfloat*glindex) vertex[scratchint] = xcoord[scratchint] + flip(ycoord[scratchint]) glindex = glindex + 1 endwhile ; glindex glindex3 = glindex3 + 1 endwhile ; glindex3 endif ; numbercircles[] elseif traparray == 150 ; "osculant circles" if @fixtrapbug numbercircles = @circlenum1 endif ; @fixtrapbug glindex3 = 0 if numbercircles == 2 cursality = 2 numbervertices = 120 cincrement = 60 ; numbervertices/cursality scratchfloat = twopi/59 ; angle increment, cincrement - 1 to close curve ; initialize arrays while glindex3 < 2 ; cursality scratchfloat2 = (glindex3+1)/2 * @nscale1 ; fixes radius of the various circles scratchfloat3 = @nscale1 - scratchfloat2 ; distance to translate current circle to touch largest circle glindex = 0 while glindex < 60 ; cincrement scratchint = glindex3*60 + glindex ; saves a bit of redundant calculation xcoord[scratchint] = scratchfloat2 * cos(scratchfloat*glindex) + scratchfloat3 ycoord[scratchint] = scratchfloat2 * sin(scratchfloat*glindex) vertex[scratchint] = xcoord[scratchint] + flip(ycoord[scratchint]) glindex = glindex + 1 endwhile ; glindex glindex3 = glindex3 + 1 endwhile ; glindex3 elseif numbercircles == 3 cursality = 3 numbervertices = 150 cincrement = 50 ; numbervertices/cursality scratchfloat = twopi/49 ; angle increment ; initialize arrays while glindex3 < 3 scratchfloat2 = (glindex3+1)/3 * @nscale1 ; fixes radius of the various circles scratchfloat3 = @nscale1 - scratchfloat2 ; distance to translate current circle to touch largest circle glindex = 0 while glindex < 50 scratchint = glindex3*50 + glindex xcoord[scratchint] = scratchfloat2 * cos(scratchfloat*glindex) + scratchfloat3 ycoord[scratchint] = scratchfloat2 * sin(scratchfloat*glindex) vertex[scratchint] = xcoord[scratchint] + flip(ycoord[scratchint]) glindex = glindex + 1 endwhile ; glindex glindex3 = glindex3 + 1 endwhile ; glindex3 elseif numbercircles == 4 cursality = 4 numbervertices = 200 cincrement = 50 ; numbervertices/cursality scratchfloat = twopi/49 ; angle increment ; initialize arrays while glindex3 < 4 scratchfloat2 = (glindex3+1)/4 * @nscale1 ; fixes radius of the various circles scratchfloat3 = @nscale1 - scratchfloat2 ; distance to translate current circle to touch largest circle glindex = 0 while glindex < 50 scratchint = glindex3*50 + glindex xcoord[scratchint] = scratchfloat2 * cos(scratchfloat*glindex) + scratchfloat3 ycoord[scratchint] = scratchfloat2 * sin(scratchfloat*glindex) vertex[scratchint] = xcoord[scratchint] + flip(ycoord[scratchint]) glindex = glindex + 1 endwhile ; glindex glindex3 = glindex3 + 1 endwhile ; glindex3 endif ; numbercircles[] elseif traparray == 152 ; "11-gon" cursality = 1 numbervertices = 12 ; vertices + cursality for closed curves cincrement = 12 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 11) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 11) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 157 ; "12-gon" cursality = 1 numbervertices = 13 ; vertices + cursality for closed curves cincrement = 13 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 12) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 12) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 153 ; "11-gram 1" cursality = 1 numbervertices = 12 ; n + cursality for closed curves cincrement = 12 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.415415, 0.909632) vertex[2] = @nscale1 * (-0.654861, 0.75575) vertex[3] = @nscale1 * (-0.959493, -0.281733) vertex[4] = @nscale1 * (-0.142315, -0.989821) vertex[5] = @nscale1 * (0.841254, -0.540641) vertex[6] = @nscale1 * (0.841254, 0.540641) vertex[7] = @nscale1 * (-0.142315, 0.989821) vertex[8] = @nscale1 * (-0.959493, 0.281733) vertex[9] = @nscale1 * (-0.654861, -0.75575) vertex[10] = @nscale1 * (0.415415, -0.909632) vertex[11] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 154 ; "11-gram 2" cursality = 1 numbervertices = 12 ; n + cursality for closed curves cincrement = 12 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.142315, 0.989821) vertex[2] = @nscale1 * (-0.959493, -0.281733) vertex[3] = @nscale1 * (0.415415, -0.909632) vertex[4] = @nscale1 * (0.841254, 0.540641) vertex[5] = @nscale1 * (-0.654861, 0.75575) vertex[6] = @nscale1 * (-0.654861, -0.75575) vertex[7] = @nscale1 * (0.841254, -0.540641) vertex[8] = @nscale1 * (0.415415, 0.909632) vertex[9] = @nscale1 * (-0.959493, 0.281733) vertex[10] = @nscale1 * (-0.142315, -0.989821) vertex[11] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 155 ; "11-gram 3" cursality = 1 numbervertices = 12 ; n + cursality for closed curves cincrement = 12 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.654861, 0.75575) vertex[2] = @nscale1 * (-0.142315, -0.989821) vertex[3] = @nscale1 * (0.841254, 0.540641) vertex[4] = @nscale1 * (-0.959493, 0.281733) vertex[5] = @nscale1 * (0.415415, -0.909632) vertex[6] = @nscale1 * (0.415415, 0.909632) vertex[7] = @nscale1 * (-0.959493, -0.281733) vertex[8] = @nscale1 * (0.841254, -0.540641) vertex[9] = @nscale1 * (-0.142315, 0.989821) vertex[10] = @nscale1 * (-0.654861, -0.75575) vertex[11] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 156 ; "11-gram 4" cursality = 1 numbervertices = 12 ; n + cursality for closed curves cincrement = 12 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.959493, 0.281733) vertex[2] = @nscale1 * (0.841254, -0.540641) vertex[3] = @nscale1 * (-0.654861, 0.75575) vertex[4] = @nscale1 * (0.415415, -0.909632) vertex[5] = @nscale1 * (-0.142315, 0.989821) vertex[6] = @nscale1 * (-0.142315, -0.989821) vertex[7] = @nscale1 * (0.415415, 0.909632) vertex[8] = @nscale1 * (-0.654861, -0.75575) vertex[9] = @nscale1 * (0.841254, 0.540641) vertex[10] = @nscale1 * (-0.959493, -0.281733) vertex[11] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 158 ; "12-gram 1" cursality = 2 numbervertices = 14 ; n + cursality for closed curves cincrement = 7 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0.5, 0.866025) vertex[2] = @nscale1 * (-0.5, 0.866025) vertex[3] = @nscale1 * (-1,0) vertex[4] = @nscale1 * (-0.5, -0.866025) vertex[5] = @nscale1 * (0.5, -0.866025) vertex[6] = @nscale1 * (1,0) vertex[7] = @nscale1 * (0.866025, 0.5) vertex[8] = @nscale1 * (0,1) vertex[9] = @nscale1 * (-0.866025, 0.5) vertex[10] = @nscale1 * (-0.866025, -0.5) vertex[11] = @nscale1 * (0,-1) vertex[12] = @nscale1 * (0.866025, -0.5) vertex[13] = @nscale1 * (0.866025, 0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 159 ; "12-gram 2" cursality = 3 numbervertices = 15 ; n + cursality for closed curves cincrement = 5 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (0,1) vertex[2] = @nscale1 * (-1,0) vertex[3] = @nscale1 * (0,-1) vertex[4] = @nscale1 * (1,0) vertex[5] = @nscale1 * (0.866025, 0.5) vertex[6] = @nscale1 * (-0.5, 0.866025) vertex[7] = @nscale1 * (-0.866025, -0.5) vertex[8] = @nscale1 * (0.5, -0.866025) vertex[9] = @nscale1 * (0.866025, 0.5) vertex[10] = @nscale1 * (0.5, 0.866025) vertex[11] = @nscale1 * (-0.866025, 0.5) vertex[12] = @nscale1 * (-0.5, -0.866025) vertex[13] = @nscale1 * (0.866025, -0.5) vertex[14] = @nscale1 * (0.5, 0.866025) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 160 ; "12-gram 3" cursality = 4 numbervertices = 16 ; n + cursality for closed curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.5, 0.866025) vertex[2] = @nscale1 * (-0.5, -0.866025) vertex[3] = @nscale1 * (1,0) vertex[4] = @nscale1 * (0.866025, 0.5) vertex[5] = @nscale1 * (-0.866025, 0.5) vertex[6] = @nscale1 * (0,-1) vertex[7] = @nscale1 * (0.866025, 0.5) vertex[8] = @nscale1 * (0.5, 0.866025) vertex[9] = @nscale1 * (-1,0) vertex[10] = @nscale1 * (0.5, -0.866025) vertex[11] = @nscale1 * (0.5, 0.866025) vertex[12] = @nscale1 * (0,1) vertex[13] = @nscale1 * (-0.866025, -0.5) vertex[14] = @nscale1 * (0.866025, -0.5) vertex[15] = @nscale1 * (0,1) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 161 ; "12-gram 4" cursality = 1 numbervertices = 13 ; n + cursality for closed curves cincrement = 13 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (1,0) vertex[1] = @nscale1 * (-0.866025, 0.5) vertex[2] = @nscale1 * (0.5, -0.866025) vertex[3] = @nscale1 * (0,1) vertex[4] = @nscale1 * (-0.5, -0.866025) vertex[5] = @nscale1 * (0.866025, 0.5) vertex[6] = @nscale1 * (-1,0) vertex[7] = @nscale1 * (0.866025, -0.5) vertex[8] = @nscale1 * (-0.5, 0.866025) vertex[9] = @nscale1 * (0,-1) vertex[10] = @nscale1 * (0.5, 0.866025) vertex[11] = @nscale1 * (-0.866025, -0.5) vertex[12] = @nscale1 * (1,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 162 ; "12-gram 5" cursality = 1 numbervertices = 13 ; n + cursality for closed curves cincrement = 13 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.866025, 0.5) vertex[1] = @nscale1 * (-0.375, -0.649519) vertex[2] = @nscale1 * (0,1) vertex[3] = @nscale1 * (0.375, -0.649519) vertex[4] = @nscale1 * (-0.866025, 0.5) vertex[5] = @nscale1 * (0.75,0) vertex[6] = @nscale1 * (-0.866025, -0.5) vertex[7] = @nscale1 * (0.375, 0.649519) vertex[8] = @nscale1 * (0,-1) vertex[9] = @nscale1 * (-0.375, 0.649519) vertex[10] = @nscale1 * (0.866025, -0.5) vertex[11] = @nscale1 * (-0.75,0) vertex[12] = @nscale1 * (0.866025, 0.5) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 163 ; "11-star" cursality = 1 numbervertices = 23 ; n + cursality for closed curves cincrement = 23 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (0.959493, 0.281733) vertex[2] = @nscale1 * (0.420627, 0.27032) vertex[3] = @starspikiness * @nscale1 * (0.654861, 0.75575) vertex[4] = @nscale1 * (0.207708, 0.454816) vertex[5] = @starspikiness * @nscale1 * (0.142315, 0.989821) vertex[6] = @nscale1 * (-0.0711574, 0.494911) vertex[7] = @starspikiness * @nscale1 * (-0.415415, 0.909632) vertex[8] = @nscale1 * (-0.32743, 0.377875) vertex[9] = @starspikiness * @nscale1 * (-0.841254, 0.540641) vertex[10] = @nscale1 * (-0.479746, 0.140866) vertex[11] = @starspikiness * @nscale1 * (-1,0) vertex[12] = @nscale1 * (-0.479746, -0.140866) vertex[13] = @starspikiness * @nscale1 * (-0.841254, -0.540641) vertex[14] = @nscale1 * (-0.32743, -0.377875) vertex[15] = @starspikiness * @nscale1 * (-0.415415, -0.909632) vertex[16] = @nscale1 * (-0.0711574, -0.494911) vertex[17] = @starspikiness * @nscale1 * (0.142315, -0.989821) vertex[18] = @nscale1 * (0.207708, -0.454816) vertex[19] = @starspikiness * @nscale1 * (0.654861, -0.75575) vertex[20] = @nscale1 * (0.420627, -0.27032) vertex[21] = @starspikiness * @nscale1 * (0.959493, -0.281733) vertex[22] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 165 ; "11-star 2" cursality = 1 numbervertices = 23 ; n + cursality for closed curves cincrement = 23 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @nscale1 * (1,0) vertex[2] = @nscale1 * (0.420627, 0.27032) vertex[3] = @nscale1 * (0.841254, 0.540641) vertex[4] = @nscale1 * (0.207708, 0.454816) vertex[5] = @nscale1 * (0.415415, 0.909632) vertex[6] = @nscale1 * (-0.0711574, 0.494911) vertex[7] = @nscale1 * (-0.142315, 0.989821) vertex[8] = @nscale1 * (-0.32743, 0.377875) vertex[9] = @nscale1 * (-0.654861, 0.75575) vertex[10] = @nscale1 * (-0.479746, 0.140866) vertex[11] = @nscale1 * (-0.959493, 0.281733) vertex[12] = @nscale1 * (-0.479746, -0.140866) vertex[13] = @nscale1 * (-0.959493, -0.281733) vertex[14] = @nscale1 * (-0.32743, -0.377875) vertex[15] = @nscale1 * (-0.654861, -0.75575) vertex[16] = @nscale1 * (-0.0711574, -0.494911) vertex[17] = @nscale1 * (-0.142315, -0.989821) vertex[18] = @nscale1 * (0.207708, -0.454816) vertex[19] = @nscale1 * (0.415415, -0.909632) vertex[20] = @nscale1 * (0.420627, -0.27032) vertex[21] = @nscale1 * (0.841254, -0.540641) vertex[22] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 164 ; "11-asterisk" cursality = 11 numbervertices = 22 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 11) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 11) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) vertex[3] = @leafBlength * vertex[3] xcoord[3] = real(vertex[3]) ycoord[3] = imag(vertex[3]) vertex[5] = @leafClength * vertex[5] xcoord[5] = real(vertex[5]) ycoord[5] = imag(vertex[5]) vertex[7] = @leafDlength * vertex[7] xcoord[7] = real(vertex[7]) ycoord[7] = imag(vertex[7]) vertex[9] = @leafElength * vertex[9] xcoord[9] = real(vertex[9]) ycoord[9] = imag(vertex[9]) vertex[11] = @leafFlength * vertex[11] xcoord[11] = real(vertex[11]) ycoord[11] = imag(vertex[11]) vertex[13] = @leafGlength * vertex[13] xcoord[13] = real(vertex[13]) ycoord[13] = imag(vertex[13]) vertex[15] = @leafHlength * vertex[15] xcoord[15] = real(vertex[15]) ycoord[15] = imag(vertex[15]) vertex[17] = @leafIlength * vertex[17] xcoord[17] = real(vertex[17]) ycoord[17] = imag(vertex[17]) vertex[19] = @leafJlength * vertex[19] xcoord[19] = real(vertex[19]) ycoord[19] = imag(vertex[19]) vertex[21] = @leafKlength * vertex[21] xcoord[21] = real(vertex[21]) ycoord[21] = imag(vertex[21]) elseif traparray == 166 ; "12-star" cursality = 1 numbervertices = 25 ; n + cursality for closed curves cincrement = 25 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @starspikiness * @nscale1 * (0.965926, 0.258819) vertex[2] = @nscale1 * (0.433013, 0.25) vertex[3] = @starspikiness * @nscale1 * (0.707107, 0.707107) vertex[4] = @nscale1 * (0.25, 0.433013) vertex[5] = @starspikiness * @nscale1 * (0.258819, 0.965926) vertex[6] = @nscale1 * (0,0.5) vertex[7] = @starspikiness * @nscale1 * (-0.258819, 0.965926) vertex[8] = @nscale1 * (-0.25, 0.433013) vertex[9] = @starspikiness * @nscale1 * (-0.707107, 0.707107) vertex[10] = @nscale1 * (-0.433013, 0.25) vertex[11] = @starspikiness * @nscale1 * (-0.965926, 0.258819) vertex[12] = @nscale1 * (-0.5, 0) vertex[13] = @starspikiness * @nscale1 * (-0.965926, -0.258819) vertex[14] = @nscale1 * (-0.433013, -0.25) vertex[15] = @starspikiness * @nscale1 * (-0.707107, -0.707107) vertex[16] = @nscale1 * (-0.25, -0.433013) vertex[17] = @starspikiness * @nscale1 * (-0.258819, -0.965926) vertex[18] = @nscale1 * (0,-0.5) vertex[19] = @starspikiness * @nscale1 * (0.258819, -0.965926) vertex[20] = @nscale1 * (0.25, -0.433013) vertex[21] = @starspikiness * @nscale1 * (0.707107, -0.707107) vertex[22] = @nscale1 * (0.433013, -0.25) vertex[23] = @starspikiness * @nscale1 * (0.965926, -0.258819) vertex[24] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 167 ; "12-star 2" cursality = 1 numbervertices = 25 ; n + cursality for closed curves cincrement = 25 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5,0) vertex[1] = @nscale1 * (1,0) vertex[2] = @nscale1 * (0.433013, 0.25) vertex[3] = @nscale1 * (0.866025, 0.5) vertex[4] = @nscale1 * (0.25, 0.433013) vertex[5] = @nscale1 * (0.5, 0.866025) vertex[6] = @nscale1 * (0,0.5) vertex[7] = @nscale1 * (0,1) vertex[8] = @nscale1 * (-0.25, 0.433013) vertex[9] = @nscale1 * (-0.5, 0.866025) vertex[10] = @nscale1 * (-0.433013, 0.25) vertex[11] = @nscale1 * (-0.866025, 0.5) vertex[12] = @nscale1 * (-0.5,0) vertex[13] = @nscale1 * (-1,0) vertex[14] = @nscale1 * (-0.433013, -0.25) vertex[15] = @nscale1 * (-0.866025, -0.5) vertex[16] = @nscale1 * (-0.25, -0.433013) vertex[17] = @nscale1 * (-0.5, -0.866025) vertex[18] = @nscale1 * (0,-0.5) vertex[19] = @nscale1 * (0,-1) vertex[20] = @nscale1 * (0.25, -0.433013) vertex[21] = @nscale1 * (0.5, -0.866025) vertex[22] = @nscale1 * (0.433013, -0.25) vertex[23] = @nscale1 * (0.866025, -0.5) vertex[24] = @nscale1 * (0.5,0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 168 ; "12-asterisk" cursality = 12 numbervertices = 24 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 12) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 12) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) vertex[3] = @leafBlength * vertex[3] xcoord[3] = real(vertex[3]) ycoord[3] = imag(vertex[3]) vertex[5] = @leafClength * vertex[5] xcoord[5] = real(vertex[5]) ycoord[5] = imag(vertex[5]) vertex[7] = @leafDlength * vertex[7] xcoord[7] = real(vertex[7]) ycoord[7] = imag(vertex[7]) vertex[9] = @leafElength * vertex[9] xcoord[9] = real(vertex[9]) ycoord[9] = imag(vertex[9]) vertex[11] = @leafFlength * vertex[11] xcoord[11] = real(vertex[11]) ycoord[11] = imag(vertex[11]) vertex[13] = @leafGlength * vertex[13] xcoord[13] = real(vertex[13]) ycoord[13] = imag(vertex[13]) vertex[15] = @leafHlength * vertex[15] xcoord[15] = real(vertex[15]) ycoord[15] = imag(vertex[15]) vertex[17] = @leafIlength * vertex[17] xcoord[17] = real(vertex[17]) ycoord[17] = imag(vertex[17]) vertex[19] = @leafJlength * vertex[19] xcoord[19] = real(vertex[19]) ycoord[19] = imag(vertex[19]) vertex[21] = @leafKlength * vertex[21] xcoord[21] = real(vertex[21]) ycoord[21] = imag(vertex[21]) vertex[23] = @leafLlength * vertex[23] xcoord[23] = real(vertex[23]) ycoord[23] = imag(vertex[23]) elseif traparray == 169 ; "1,1,1,2,3;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.5, -0.25) vertex[1] = @nscale1 * (-0.25, -0.25) vertex[2] = @nscale1 * (-0.25, 0) vertex[3] = @nscale1 * (-0.5, 0) vertex[4] = @nscale1 * (-0.5, -0.5) vertex[5] = @nscale1 * (0.25, -0.5) vertex[6] = @nscale1 * (0.25, -0.25) vertex[7] = @nscale1 * (0., -0.25) vertex[8] = @nscale1 * (0., -0.5) vertex[9] = @nscale1 * (0.5, -0.5) vertex[10] = @nscale1 * (0.5, 0.25) vertex[11] = @nscale1 * (0.25, 0.25) vertex[12] = @nscale1 * (0.25, 0) vertex[13] = @nscale1 * (0.5, 0) vertex[14] = @nscale1 * (0.5, 0.5) vertex[15] = @nscale1 * (-0.25, 0.5) vertex[16] = @nscale1 * (-0.25, 0.25) vertex[17] = @nscale1 * (0., 0.25) vertex[18] = @nscale1 * (0., 0.5) vertex[19] = @nscale1 * (-0.5, 0.5) vertex[20] = @nscale1 * (-0.5, -0.25) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 170 ; "1,1,2,1,3;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.25, -0.25) vertex[1] = @nscale1 * (0., -0.25) vertex[2] = @nscale1 * (0, 0) vertex[3] = @nscale1 * (-0.5, 0) vertex[4] = @nscale1 * (-0.5, -0.25) vertex[5] = @nscale1 * (0.25, -0.25) vertex[6] = @nscale1 * (0.25, 0) vertex[7] = @nscale1 * (0,0) vertex[8] = @nscale1 * (0, -0.5) vertex[9] = @nscale1 * (0.25, -0.5) vertex[10] = @nscale1 * (0.25, 0.25) vertex[11] = @nscale1 * (0., 0.25) vertex[12] = @nscale1 * (0, 0) vertex[13] = @nscale1 * (0.5, 0) vertex[14] = @nscale1 * (0.5, 0.25) vertex[15] = @nscale1 * (-0.25, 0.25) vertex[16] = @nscale1 * (-0.25, 0) vertex[17] = @nscale1 * (0., 0) vertex[18] = @nscale1 * (0., 0.5) vertex[19] = @nscale1 * (-0.25, 0.5) vertex[20] = @nscale1 * (-0.25, -0.25) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 171 ; "1,1,2,2,4;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.333333, -0.166667) vertex[1] = @nscale1 * (-0.166667, -0.166667) vertex[2] = @nscale1 * (-0.166667, 0) vertex[3] = @nscale1 * (-0.5, 0) vertex[4] = @nscale1 * (-0.5, -0.333333) vertex[5] = @nscale1 * (0.166667, -0.333333) vertex[6] = @nscale1 * (0.166667, -0.166667) vertex[7] = @nscale1 * (0., -0.166667) vertex[8] = @nscale1 * (0., -0.5) vertex[9] = @nscale1 * (0.333333, -0.5) vertex[10] = @nscale1 * (0.333333, 0.166667) vertex[11] = @nscale1 * (0.166667, 0.166667) vertex[12] = @nscale1 * (0.166667, 0) vertex[13] = @nscale1 * (0.5, 0) vertex[14] = @nscale1 * (0.5, 0.333333) vertex[15] = @nscale1 * (-0.166667, 0.333333) vertex[16] = @nscale1 * (-0.166667, 0.166667) vertex[17] = @nscale1 * (0., 0.166667) vertex[18] = @nscale1 * (0., 0.5) vertex[19] = @nscale1 * (-0.333333, 0.5) vertex[20] = @nscale1 * (-0.333333, -0.166667) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 172 ; "1,1,4,5,4;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.227273, 0.136364) vertex[1] = @nscale1 * (-0.136364, 0.136364) vertex[2] = @nscale1 * (-0.136364, 0.227273) vertex[3] = @nscale1 * (-0.5, 0.227273) vertex[4] = @nscale1 * (-0.5, -0.227273) vertex[5] = @nscale1 * (-0.136364, -0.227273) vertex[6] = @nscale1 * (-0.136364, -0.136364) vertex[7] = @nscale1 * (-0.227273, -0.136364) vertex[8] = @nscale1 * (-0.227273, -0.5) vertex[9] = @nscale1 * (0.227273, -0.5) vertex[10] = @nscale1 * (0.227273, -0.136364) vertex[11] = @nscale1 * (0.136364, -0.136364) vertex[12] = @nscale1 * (0.136364, -0.227273) vertex[13] = @nscale1 * (0.5, -0.227273) vertex[14] = @nscale1 * (0.5, 0.227273) vertex[15] = @nscale1 * (0.136364, 0.227273) vertex[16] = @nscale1 * (0.136364, 0.136364) vertex[17] = @nscale1 * (0.227273, 0.136364) vertex[18] = @nscale1 * (0.227273, 0.5) vertex[19] = @nscale1 * (-0.227273, 0.5) vertex[20] = @nscale1 * (-0.227273, 0.136364) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 173 ; "1,2,2,2,5;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.333333, -0.333333) vertex[1] = @nscale1 * (-0.166667, -0.333333) vertex[2] = @nscale1 * (-0.166667, 0) vertex[3] = @nscale1 * (-0.5, 0) vertex[4] = @nscale1 * (-0.5, -0.333333) vertex[5] = @nscale1 * (0.333333, -0.333333) vertex[6] = @nscale1 * (0.333333, -0.166667) vertex[7] = @nscale1 * (0., -0.166667) vertex[8] = @nscale1 * (0., -0.5) vertex[9] = @nscale1 * (0.333333, -0.5) vertex[10] = @nscale1 * (0.333333, 0.333333) vertex[11] = @nscale1 * (0.166667, 0.333333) vertex[12] = @nscale1 * (0.166667, 0) vertex[13] = @nscale1 * (0.5, 0) vertex[14] = @nscale1 * (0.5, 0.333333) vertex[15] = @nscale1 * (-0.333333, 0.333333) vertex[16] = @nscale1 * (-0.333333, 0.166667) vertex[17] = @nscale1 * (0., 0.166667) vertex[18] = @nscale1 * (0., 0.5) vertex[19] = @nscale1 * (-0.333333, 0.5) vertex[20] = @nscale1 * (-0.333333, -0.333333) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 174 ; "1,2,5,3,5;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.1,0) vertex[1] = @nscale1 * (0,0) vertex[2] = @nscale1 * (0,0.2) vertex[3] = @nscale1 * (-0.5, 0.2) vertex[4] = @nscale1 * (-0.5, -0.1) vertex[5] = @nscale1 * (0., -0.1) vertex[6] = @nscale1 * (0,0) vertex[7] = @nscale1 * (-0.2, 0) vertex[8] = @nscale1 * (-0.2, -0.5) vertex[9] = @nscale1 * (0.1, -0.5) vertex[10] = @nscale1 * (0.1, 0) vertex[11] = @nscale1 * (0,0) vertex[12] = @nscale1 * (0., -0.2) vertex[13] = @nscale1 * (0.5, -0.2) vertex[14] = @nscale1 * (0.5, 0.1) vertex[15] = @nscale1 * (0., 0.1) vertex[16] = @nscale1 * (0,0) vertex[17] = @nscale1 * (0.2, 0) vertex[18] = @nscale1 * (0.2, 0.5) vertex[19] = @nscale1 * (-0.1, 0.5) vertex[20] = @nscale1 * (-0.1, 0) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 175 ; "2,2,1,4,3;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0., -0.166667) vertex[1] = @nscale1 * (0.333333, -0.166667) vertex[2] = @nscale1 * (0.333333, 0.166667) vertex[3] = @nscale1 * (0.166667, 0.166667) vertex[4] = @nscale1 * (0.166667, -0.5) vertex[5] = @nscale1 * (0.666667, -0.5) vertex[6] = @nscale1 * (0.666667, -0.166667) vertex[7] = @nscale1 * (0.333333, -0.166667) vertex[8] = @nscale1 * (0.333333, -0.333333) vertex[9] = @nscale1 * (1., -0.333333) vertex[10] = @nscale1 * (1., 0.166667) vertex[11] = @nscale1 * (0.666667, 0.166667) vertex[12] = @nscale1 * (0.666667, -0.166667) vertex[13] = @nscale1 * (0.833333, -0.166667) vertex[14] = @nscale1 * (0.833333, 0.5) vertex[15] = @nscale1 * (0.333333, 0.5) vertex[16] = @nscale1 * (0.333333, 0.166667) vertex[17] = @nscale1 * (0.666667, 0.166667) vertex[18] = @nscale1 * (0.666667, 0.333333) vertex[19] = @nscale1 * (0., 0.333333) vertex[20] = @nscale1 * (0., -0.166667) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 176 ; "2,2,4,4,3;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.214286, 0.0714286) vertex[1] = @nscale1 * (0.0714286, 0.0714286) vertex[2] = @nscale1 * (0.0714286, 0.357143) vertex[3] = @nscale1 * (-0.5, 0.357143) vertex[4] = @nscale1 * (-0.5, -0.214286) vertex[5] = @nscale1 * (-0.0714286, -0.214286) vertex[6] = @nscale1 * (-0.0714286, 0.0714286) vertex[7] = @nscale1 * (-0.357143, 0.0714286) vertex[8] = @nscale1 * (-0.357143, -0.5) vertex[9] = @nscale1 * (0.214286, -0.5) vertex[10] = @nscale1 * (0.214286, -0.0714286) vertex[11] = @nscale1 * (-0.0714286, -0.0714286) vertex[12] = @nscale1 * (-0.0714286, -0.357143) vertex[13] = @nscale1 * (0.5, -0.357143) vertex[14] = @nscale1 * (0.5, 0.214286) vertex[15] = @nscale1 * (0.0714286, 0.214286) vertex[16] = @nscale1 * (0.0714286, -0.0714286) vertex[17] = @nscale1 * (0.357143, -0.0714286) vertex[18] = @nscale1 * (0.357143, 0.5) vertex[19] = @nscale1 * (-0.214286, 0.5) vertex[20] = @nscale1 * (-0.214286, 0.0714286) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 177 ; "2,3,5,3,2;1/2" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.5, -0.357143) vertex[1] = @nscale1 * (0.785714, -0.357143) vertex[2] = @nscale1 * (0.785714, 0.0714286) vertex[3] = @nscale1 * (0.0714286, 0.0714286) vertex[4] = @nscale1 * (0.0714286, -0.357143) vertex[5] = @nscale1 * (0.357143, -0.357143) vertex[6] = @nscale1 * (0.357143, -0.0714286) vertex[7] = @nscale1 * (-0.0714286, -0.0714286) vertex[8] = @nscale1 * (-0.0714286, -0.785714) vertex[9] = @nscale1 * (0.357143, -0.785714) vertex[10] = @nscale1 * (0.357143, -0.5) vertex[11] = @nscale1 * (0.0714286, -0.5) vertex[12] = @nscale1 * (0.0714286, -0.928571) vertex[13] = @nscale1 * (0.785714, -0.928571) vertex[14] = @nscale1 * (0.785714, -0.5) vertex[15] = @nscale1 * (0.5, -0.5) vertex[16] = @nscale1 * (0.5, -0.785714) vertex[17] = @nscale1 * (0.928571, -0.785714) vertex[18] = @nscale1 * (0.928571, -0.0714286) vertex[19] = @nscale1 * (0.5, -0.0714286) vertex[20] = @nscale1 * (0.5, -0.357143) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 178 ; "1,6,6,6;1/4,1/4,-5/6" cursality = 1 numbervertices = 37 ; n + cursality for closed curves cincrement = 37 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.166667, 0.2) vertex[1] = @nscale1 * (-0.133333, 0.2) vertex[2] = @nscale1 * (0.00808802, 0.341421) vertex[3] = @nscale1 * (0.00808802, 0.541421) vertex[4] = @nscale1 * (0.108088, 0.368216) vertex[5] = @nscale1 * (0.140286, 0.359589) vertex[6] = @nscale1 * (0.313491, 0.459589) vertex[7] = @nscale1 * (0.213491, 0.286384) vertex[8] = @nscale1 * (0.265254, 0.0931987) vertex[9] = @nscale1 * (0.294122, 0.0765321) vertex[10] = @nscale1 * (0.094122, 0.0765321) vertex[11] = @nscale1 * (-0.0472994, -0.0648893) vertex[12] = @nscale1 * (-0.0472994, -0.264889) vertex[13] = @nscale1 * (-0.0639661, -0.236022) vertex[14] = @nscale1 * (-0.257151, -0.184258) vertex[15] = @nscale1 * (-0.430356, -0.284258) vertex[16] = @nscale1 * (-0.330356, -0.111053) vertex[17] = @nscale1 * (-0.338984, -0.0788554) vertex[18] = @nscale1 * (-0.512189, 0.0211446) vertex[19] = @nscale1 * (-0.312189, 0.0211446) vertex[20] = @nscale1 * (-0.170767, 0.162566) vertex[21] = @nscale1 * (-0.170767, 0.195899) vertex[22] = @nscale1 * (-0.0707673, 0.0226942) vertex[23] = @nscale1 * (0.122418, -0.0290696) vertex[24] = @nscale1 * (0.295623, 0.0709304) vertex[25] = @nscale1 * (0.278956, 0.0420629) vertex[26] = @nscale1 * (0.33072, -0.151122) vertex[27] = @nscale1 * (0.503925, -0.251122) vertex[28] = @nscale1 * (0.303925, -0.251122) vertex[29] = @nscale1 * (0.280355, -0.274692) vertex[30] = @nscale1 * (0.280355, -0.474692) vertex[31] = @nscale1 * (0.180355, -0.301487) vertex[32] = @nscale1 * (-0.0128303, -0.249724) vertex[33] = @nscale1 * (-0.0416978, -0.26639) vertex[34] = @nscale1 * (0.0583022, -0.0931852) vertex[35] = @nscale1 * (0.00653841, 0.1) vertex[36] = @nscale1 * (-0.166667, 0.2) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 179 ; "1,6,6,1;3/4,-1/4,-1/6" cursality = 1 numbervertices = 37 ; n + cursality for closed curves cincrement = 37 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.235294, -0.470588) vertex[1] = @nscale1 * (-0.176471, -0.470588) vertex[2] = @nscale1 * (-0.426038, -0.221021) vertex[3] = @nscale1 * (-0.426038, 0.13192) vertex[4] = @nscale1 * (-0.484861, 0.0300347) vertex[5] = @nscale1 * (-0.428042, 0.0452593) vertex[6] = @nscale1 * (-0.122386, -0.131211) vertex[7] = @nscale1 * (-0.298857, 0.174445) vertex[8] = @nscale1 * (-0.329306, 0.0608065) vertex[9] = @nscale1 * (-0.380249, 0.0313947) vertex[10] = @nscale1 * (-0.0273074, 0.0313947) vertex[11] = @nscale1 * (-0.276875, 0.280962) vertex[12] = @nscale1 * (-0.276875, 0.398609) vertex[13] = @nscale1 * (-0.306286, 0.347666) vertex[14] = @nscale1 * (0.0346287, 0.439014) vertex[15] = @nscale1 * (0.340285, 0.262543) vertex[16] = @nscale1 * (0.281461, 0.364429) vertex[17] = @nscale1 * (0.266237, 0.30761) vertex[18] = @nscale1 * (-0.0394195, 0.131139) vertex[19] = @nscale1 * (0.313522, 0.131139) vertex[20] = @nscale1 * (0.230333, 0.214328) vertex[21] = @nscale1 * (0.230333, 0.273152) vertex[22] = @nscale1 * (0.0538621, -0.0325044) vertex[23] = @nscale1 * (0.394777, 0.0588435) vertex[24] = @nscale1 * (0.496662, 0.0000199788) vertex[25] = @nscale1 * (0.467251, 0.0509626) vertex[26] = @nscale1 * (0.375903, -0.289952) vertex[27] = @nscale1 * (0.0702468, -0.466423) vertex[28] = @nscale1 * (0.187894, -0.466423) vertex[29] = @nscale1 * (0.146299, -0.424828) vertex[30] = @nscale1 * (0.146299, -0.0718872) vertex[31] = @nscale1 * (-0.0301713, -0.377543) vertex[32] = @nscale1 * (0.083467, -0.347094) vertex[33] = @nscale1 * (0.13441, -0.376506) vertex[34] = @nscale1 * (-0.0420609, -0.0708497) vertex[35] = @nscale1 * (-0.133409, -0.411765) vertex[36] = @nscale1 * (-0.235294, -0.470588) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 180 ; "1,2,1,3;-4/5" cursality = 1 numbervertices = 21 ; n + cursality for closed curves cincrement = 21 ; numbervertices/cursality scratchfloat = 1/3 ; initialize arrays vertex[0] = @nscale1 * (-0.8, 1.5) * scratchfloat vertex[1] = @nscale1 * (0.2, 1.5) * scratchfloat vertex[2] = @nscale1 * (-1.41803, 0.324429) * scratchfloat vertex[3] = @nscale1 * (-1.10902, 1.27549) * scratchfloat vertex[4] = @nscale1 * (-0.181966, -1.57768) * scratchfloat vertex[5] = @nscale1 * (-0.990983, -0.989898) * scratchfloat vertex[6] = @nscale1 * (1.00902, -0.989898) * scratchfloat vertex[7] = @nscale1 * (0.2, -1.57768) * scratchfloat vertex[8] = @nscale1 * (1.12705, 1.27549) * scratchfloat vertex[9] = @nscale1 * (1.43607, 0.324429) * scratchfloat vertex[10] = @nscale1 * (-0.181966, 1.5) * scratchfloat vertex[11] = @nscale1 * (0.818034, 1.5) * scratchfloat vertex[12] = @nscale1 * (-1.60902, -0.263356) * scratchfloat vertex[13] = @nscale1 * (-1.3, 0.687701) * scratchfloat vertex[14] = @nscale1 * (-0.681966, -1.21441) * scratchfloat vertex[15] = @nscale1 * (-1.49098, -0.626627) * scratchfloat vertex[16] = @nscale1 * (1.50902, -0.626627) * scratchfloat vertex[17] = @nscale1 * (0.7, -1.21441) * scratchfloat vertex[18] = @nscale1 * (1.31803, 0.687701) * scratchfloat vertex[19] = @nscale1 * (1.62705, -0.263356) * scratchfloat vertex[20] = @nscale1 * (-0.8, 1.5) * scratchfloat glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 181 ; "1,2,1,3;-4/5,-4/5,0" cursality = 1 numbervertices = 61 ; n + cursality for closed curves cincrement = 61 ; numbervertices/cursality scratchfloat = 1/6 ; initialize arrays vertex[0] = @nscale1 * (0.0, 0.1) * scratchfloat vertex[1] = @nscale1 * (1, 0.1) * scratchfloat vertex[2] = @nscale1 * (-0.618034, -1.07557) * scratchfloat vertex[3] = @nscale1 * (-0.309017, -0.124514) * scratchfloat vertex[4] = @nscale1 * (0.618034, 2.72866) * scratchfloat vertex[5] = @nscale1 * (0.927051, 1.7776) * scratchfloat vertex[6] = @nscale1 * (-0.690983, 2.95317) * scratchfloat vertex[7] = @nscale1 * (-1.5, 3.54095) * scratchfloat vertex[8] = @nscale1 * (1.5, 3.54095) * scratchfloat vertex[9] = @nscale1 * (0.690983, 2.95317) * scratchfloat vertex[10] = @nscale1 * (-0.927051, 1.7776) * scratchfloat vertex[11] = @nscale1 * (-0.618034, 2.72866) * scratchfloat vertex[12] = @nscale1 * (0.309017, -0.124514) * scratchfloat vertex[13] = @nscale1 * (0.618034, -1.07557) * scratchfloat vertex[14] = @nscale1 * (-1., 0.1) * scratchfloat vertex[15] = @nscale1 * (0., 0.1) * scratchfloat vertex[16] = @nscale1 * (3., 0.1) * scratchfloat vertex[17] = @nscale1 * (2.19098, -0.487785) * scratchfloat vertex[18] = @nscale1 * (2.80902, 1.41433) * scratchfloat vertex[19] = @nscale1 * (3.11803, 2.36538) * scratchfloat vertex[20] = @nscale1 * (4.04508, -0.487785) * scratchfloat vertex[21] = @nscale1 * (3.23607, 0.1) * scratchfloat vertex[22] = @nscale1 * (1.61803, 1.27557) * scratchfloat vertex[23] = @nscale1 * (2.61803, 1.27557) * scratchfloat vertex[24] = @nscale1 * (0.190983, -0.487785) * scratchfloat vertex[25] = @nscale1 * (-0.618034, -1.07557) * scratchfloat vertex[26] = @nscale1 * (0., 0.826543) * scratchfloat vertex[27] = @nscale1 * (0.309017, -0.124514) * scratchfloat vertex[28] = @nscale1 * (1.23607, -2.97768) * scratchfloat vertex[29] = @nscale1 * (0.427051, -2.3899) * scratchfloat vertex[30] = @nscale1 * (2.42705, -2.3899) * scratchfloat vertex[31] = @nscale1 * (3.42705, -2.3899) * scratchfloat vertex[32] = @nscale1 * (1., -4.15325) * scratchfloat vertex[33] = @nscale1 * (1.30902, -3.2022) * scratchfloat vertex[34] = @nscale1 * (1.92705, -1.30008) * scratchfloat vertex[35] = @nscale1 * (2.23607, -2.25114) * scratchfloat vertex[36] = @nscale1 * (-0.190983, -0.487785) * scratchfloat vertex[37] = @nscale1 * (-1., 0.1) * scratchfloat vertex[38] = @nscale1 * (1., 0.1) * scratchfloat vertex[39] = @nscale1 * (0.190983, -0.487785) * scratchfloat vertex[40] = @nscale1 * (-2.23607, -2.25114) * scratchfloat vertex[41] = @nscale1 * (-1.92705, -1.30008) * scratchfloat vertex[42] = @nscale1 * (-1.30902, -3.2022) * scratchfloat vertex[43] = @nscale1 * (-1., -4.15325) * scratchfloat vertex[44] = @nscale1 * (-3.42705, -2.3899) * scratchfloat vertex[45] = @nscale1 * (-2.42705, -2.3899) * scratchfloat vertex[46] = @nscale1 * (-0.427051, -2.3899) * scratchfloat vertex[47] = @nscale1 * (-1.23607, -2.97768) * scratchfloat vertex[48] = @nscale1 * (-0.309017, -0.124514) * scratchfloat vertex[49] = @nscale1 * (0, 0.826543) * scratchfloat vertex[50] = @nscale1 * (0.618034, -1.07557) * scratchfloat vertex[51] = @nscale1 * (-0.190983, -0.487785) * scratchfloat vertex[52] = @nscale1 * (-2.61803, 1.27557) * scratchfloat vertex[53] = @nscale1 * (-1.61803, 1.27557) * scratchfloat vertex[54] = @nscale1 * (-3.23607, 0.1) * scratchfloat vertex[55] = @nscale1 * (-4.04508, -0.487785) * scratchfloat vertex[56] = @nscale1 * (-3.11803, 2.36538) * scratchfloat vertex[57] = @nscale1 * (-2.80902, 1.41433) * scratchfloat vertex[58] = @nscale1 * (-2.19098, -0.487785) * scratchfloat vertex[59] = @nscale1 * (-3., 0.1) * scratchfloat vertex[60] = @nscale1 * (0,0.1) * scratchfloat glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 182 ; "1,2,1,3;-4/5,-1/5,-4/5" cursality = 1 numbervertices = 61 ; n + cursality for closed curves cincrement = 61 ; numbervertices/cursality scratchfloat = 0.2 ; initialize arrays vertex[0] = @nscale1 * (-1.5, 2.6) * scratchfloat vertex[1] = @nscale1 * (-0.5, 2.6) * scratchfloat vertex[2] = @nscale1 * (-2.11803, 1.42443) * scratchfloat vertex[3] = @nscale1 * (-3.11803, 1.42443) * scratchfloat vertex[4] = @nscale1 * (-0.690983, 3.18779) * scratchfloat vertex[5] = @nscale1 * (-1., 2.23673) * scratchfloat vertex[6] = @nscale1 * (-2.61803, 1.06116) * scratchfloat vertex[7] = @nscale1 * (-2.30902, 2.01221) * scratchfloat vertex[8] = @nscale1 * (-1.38197, -0.840955) * scratchfloat vertex[9] = @nscale1 * (-1.69098, -1.79201) * scratchfloat vertex[10] = @nscale1 * (-2.30902, 0.110102) * scratchfloat vertex[11] = @nscale1 * (-1.5, -0.477684) * scratchfloat vertex[12] = @nscale1 * (-0.572949, -3.33085) * scratchfloat vertex[13] = @nscale1 * (-1.38197, -2.74307) * scratchfloat vertex[14] = @nscale1 * (0.618034, -2.74307) * scratchfloat vertex[15] = @nscale1 * (1.42705, -3.33085) * scratchfloat vertex[16] = @nscale1 * (-1.57295, -3.33085) * scratchfloat vertex[17] = @nscale1 * (-0.763932, -2.74307) * scratchfloat vertex[18] = @nscale1 * (1.23607, -2.74307) * scratchfloat vertex[19] = @nscale1 * (0.427051, -3.33085) * scratchfloat vertex[20] = @nscale1 * (1.3541, -0.477684) * scratchfloat vertex[21] = @nscale1 * (2.16312, 0.110102) * scratchfloat vertex[22] = @nscale1 * (1.54508, -1.79201) * scratchfloat vertex[23] = @nscale1 * (1.23607, -0.840955) * scratchfloat vertex[24] = @nscale1 * (2.16312, 2.01221) * scratchfloat vertex[25] = @nscale1 * (2.47214, 1.06116) * scratchfloat vertex[26] = @nscale1 * (0.854102, 2.23673) * scratchfloat vertex[27] = @nscale1 * (0.545085, 3.18779) * scratchfloat vertex[28] = @nscale1 * (2.97214, 1.42443) * scratchfloat vertex[29] = @nscale1 * (1.97214, 1.42443) * scratchfloat vertex[30] = @nscale1 * (0.354102, 2.6) * scratchfloat vertex[31] = @nscale1 * (1.3541, 2.6) * scratchfloat vertex[32] = @nscale1 * (-1.07295, 0.836644) * scratchfloat vertex[33] = @nscale1 * (-2.07295, 0.836644) * scratchfloat vertex[34] = @nscale1 * (-0.454915, 2.01221) * scratchfloat vertex[35] = @nscale1 * (-0.763932, 1.06116) * scratchfloat vertex[36] = @nscale1 * (-3.19098, -0.702198) * scratchfloat vertex[37] = @nscale1 * (-2.88197, 0.248859) * scratchfloat vertex[38] = @nscale1 * (-2.26393, -1.65325) * scratchfloat vertex[39] = @nscale1 * (-2.57295, -2.60431) * scratchfloat vertex[40] = @nscale1 * (-3.5, 0.248859) * scratchfloat vertex[41] = @nscale1 * (-2.69098, -0.338926) * scratchfloat vertex[42] = @nscale1 * (-2.07295, -2.24104) * scratchfloat vertex[43] = @nscale1 * (-2.88197, -1.65325) * scratchfloat vertex[44] = @nscale1 * (0.118034, -1.65325) * scratchfloat vertex[45] = @nscale1 * (0.927051, -2.24104) * scratchfloat vertex[46] = @nscale1 * (-1.07295, -2.24104) * scratchfloat vertex[47] = @nscale1 * (-0.263932, -1.65325) * scratchfloat vertex[48] = @nscale1 * (2.73607, -1.65325) * scratchfloat vertex[49] = @nscale1 * (1.92705, -2.24104) * scratchfloat vertex[50] = @nscale1 * (2.54508, -0.338926) * scratchfloat vertex[51] = @nscale1 * (3.3541, 0.248859) * scratchfloat vertex[52] = @nscale1 * (2.42705, -2.60431) * scratchfloat vertex[53] = @nscale1 * (2.11803, -1.65325) * scratchfloat vertex[54] = @nscale1 * (2.73607, 0.248859) * scratchfloat vertex[55] = @nscale1 * (3.04508, -0.702198) * scratchfloat vertex[56] = @nscale1 * (0.618034, 1.06116) * scratchfloat vertex[57] = @nscale1 * (0.309017, 2.01221) * scratchfloat vertex[58] = @nscale1 * (1.92705, 0.836644) * scratchfloat vertex[59] = @nscale1 * (0.927051, 0.836644) * scratchfloat vertex[60] = @nscale1 * (-1.5, 2.6) * scratchfloat glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 183 ; "1,3;1/5,3/5,-1/5" cursality = 1 numbervertices = 31 ; n + cursality for closed curves cincrement = 31 ; numbervertices/cursality scratchfloat = 0.2 ; initialize arrays vertex[0] = @nscale1 * (-0.5, -1.75) * scratchfloat vertex[1] = @nscale1 * (0.5, -1.75) * scratchfloat vertex[2] = @nscale1 * (2.92705, 0.0133558) * scratchfloat vertex[3] = @nscale1 * (2.11803, 0.601141) * scratchfloat vertex[4] = @nscale1 * (1.19098, 3.45431) * scratchfloat vertex[5] = @nscale1 * (0.381966, 4.0421) * scratchfloat vertex[6] = @nscale1 * (-0.545085, 1.18893) * scratchfloat vertex[7] = @nscale1 * (-1.3541, 0.601141) * scratchfloat vertex[8] = @nscale1 * (-2.28115, -2.25203) * scratchfloat vertex[9] = @nscale1 * (-1.28115, -2.25203) * scratchfloat vertex[10] = @nscale1 * (1.1459, -4.01538) * scratchfloat vertex[11] = @nscale1 * (2.1459, -4.01538) * scratchfloat vertex[12] = @nscale1 * (1.21885, -1.16221) * scratchfloat vertex[13] = @nscale1 * (1.52786, -0.211158) * scratchfloat vertex[14] = @nscale1 * (0.600813, 2.64201) * scratchfloat vertex[15] = @nscale1 * (-0.208204, 2.05423) * scratchfloat vertex[16] = @nscale1 * (-3.2082, 2.05423) * scratchfloat vertex[17] = @nscale1 * (-4.01722, 1.46644) * scratchfloat vertex[18] = @nscale1 * (-1.59017, -0.296915) * scratchfloat vertex[19] = @nscale1 * (-1.28115, -1.24797) * scratchfloat vertex[20] = @nscale1 * (1.1459, -3.01133) * scratchfloat vertex[21] = @nscale1 * (1.45492, -2.06027) * scratchfloat vertex[22] = @nscale1 * (3.88197, -0.296915) * scratchfloat vertex[23] = @nscale1 * (4.19098, 0.654142) * scratchfloat vertex[24] = @nscale1 * (1.19098, 0.654142) * scratchfloat vertex[25] = @nscale1 * (0.381966, 1.24193) * scratchfloat vertex[26] = @nscale1 * (-2.61803, 1.24193) * scratchfloat vertex[27] = @nscale1 * (-2.30902, 0.29087) * scratchfloat vertex[28] = @nscale1 * (-3.23607, -2.5623) * scratchfloat vertex[29] = @nscale1 * (-2.92705, -3.51336) * scratchfloat vertex[30] = @nscale1 * (-0.5, -1.75) * scratchfloat glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 184 ; "1,2,3,3,2,1;5/6,1/6,1/6" cursality = 1 numbervertices = 37 ; n + cursality for closed curves cincrement = 37 ; numbervertices/cursality ; initialize arrays scratchfloat = 2/3 vertex[0] = @nscale1 * (0.333333, 0.638889) * scratchfloat vertex[1] = @nscale1 * (0.555556, 0.638889) * scratchfloat vertex[2] = @nscale1 * (0.170655, 0.861111) * scratchfloat vertex[3] = @nscale1 * (-0.496011, 0.861111) * scratchfloat vertex[4] = @nscale1 * (-1.07336, 0.527778) * scratchfloat vertex[5] = @nscale1 * (-0.628917, 0.527778) * scratchfloat vertex[6] = @nscale1 * (-0.436467, 0.638889) * scratchfloat vertex[7] = @nscale1 * (-0.325356, 0.831339) * scratchfloat vertex[8] = @nscale1 * (-0.710256, 0.609117) * scratchfloat vertex[9] = @nscale1 * (-1.04359, 0.0317665) * scratchfloat vertex[10] = @nscale1 * (-1.04359, -0.6349) * scratchfloat vertex[11] = @nscale1 * (-0.821367, -0.25) * scratchfloat vertex[12] = @nscale1 * (-0.821367, -0.0277778) * scratchfloat vertex[13] = @nscale1 * (-0.932478, 0.164672) * scratchfloat vertex[14] = @nscale1 * (-0.932478, -0.279772) * scratchfloat vertex[15] = @nscale1 * (-0.599145, -0.857122) * scratchfloat vertex[16] = @nscale1 * (-0.0217947, -1.19046) * scratchfloat vertex[17] = @nscale1 * (-0.244017, -0.805556) * scratchfloat vertex[18] = @nscale1 * (-0.436467, -0.694444) * scratchfloat vertex[19] = @nscale1 * (-0.658689, -0.694444) * scratchfloat vertex[20] = @nscale1 * (-0.273789, -0.916667) * scratchfloat vertex[21] = @nscale1 * (0.392878, -0.916667) * scratchfloat vertex[22] = @nscale1 * (0.970228, -0.583333) * scratchfloat vertex[23] = @nscale1 * (0.525783, -0.583333) * scratchfloat vertex[24] = @nscale1 * (0.333333, -0.694444) * scratchfloat vertex[25] = @nscale1 * (0.222222, -0.886895) * scratchfloat vertex[26] = @nscale1 * (0.607122, -0.664672) * scratchfloat vertex[27] = @nscale1 * (0.940456, -0.087322) * scratchfloat vertex[28] = @nscale1 * (0.940456, 0.579345) * scratchfloat vertex[29] = @nscale1 * (0.718234, 0.194444) * scratchfloat vertex[30] = @nscale1 * (0.718234, -0.0277778) * scratchfloat vertex[31] = @nscale1 * (0.829345, -0.220228) * scratchfloat vertex[32] = @nscale1 * (0.829345, 0.224217) * scratchfloat vertex[33] = @nscale1 * (0.496011, 0.801567) * scratchfloat vertex[34] = @nscale1 * (-0.081339, 1.1349) * scratchfloat vertex[35] = @nscale1 * (0.140883, 0.75) * scratchfloat vertex[36] = @nscale1 * (0.333333, 0.638889) * scratchfloat glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 185 ; "1,1,3,1;-5/6,-1/6,3/7" cursality = 1 numbervertices = 85 ; n + cursality for closed curves cincrement = 85 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.625, -0.625) vertex[1] = @nscale1 * (0.791667, -0.625) vertex[2] = @nscale1 * (0.647329, -0.708333) vertex[3] = @nscale1 * (0.147329, -0.708333) vertex[4] = @nscale1 * (0.110242, -0.870821) vertex[5] = @nscale1 * (0.0611164, -0.711559) vertex[6] = @nscale1 * (0.0982032, -0.549071) vertex[7] = @nscale1 * (-0.352281, -0.332129) vertex[8] = @nscale1 * (-0.186081, -0.319674) vertex[9] = @nscale1 * (-0.0359191, -0.391988) vertex[10] = @nscale1 * (0.0679959, -0.261683) vertex[11] = @nscale1 * (-0.00652525, -0.756098) vertex[12] = @nscale1 * (-0.11044, -0.886404) vertex[13] = @nscale1 * (-0.00652525, -1.01671) vertex[14] = @nscale1 * (-0.161671, -0.955819) vertex[15] = @nscale1 * (-0.473416, -0.564903) vertex[16] = @nscale1 * (-0.623577, -0.637217) vertex[17] = @nscale1 * (-0.529691, -0.499511) vertex[18] = @nscale1 * (-0.379529, -0.427197) vertex[19] = @nscale1 * (-0.49079, 0.0602674) vertex[20] = @nscale1 * (-0.377427, -0.0619079) vertex[21] = @nscale1 * (-0.340341, -0.224396) vertex[22] = @nscale1 * (-0.173674, -0.224396) vertex[23] = @nscale1 * (-0.606687, -0.474396) vertex[24] = @nscale1 * (-0.773353, -0.474396) vertex[25] = @nscale1 * (-0.81044, -0.636884) vertex[26] = @nscale1 * (-0.859566, -0.477622) vertex[27] = @nscale1 * (-0.748306, 0.00984221) vertex[28] = @nscale1 * (-0.898467, 0.0821562) vertex[29] = @nscale1 * (-0.732266, 0.0946112) vertex[30] = @nscale1 * (-0.582105, 0.0222972) vertex[31] = @nscale1 * (-0.27036, 0.413213) vertex[32] = @nscale1 * (-0.2952, 0.248408) vertex[33] = @nscale1 * (-0.399115, 0.118103) vertex[34] = @nscale1 * (-0.2952, -0.0122027) vertex[35] = @nscale1 * (-0.760637, 0.170468) vertex[36] = @nscale1 * (-0.864552, 0.300773) vertex[37] = @nscale1 * (-1.01471, 0.228459) vertex[38] = @nscale1 * (-0.920827, 0.366166) vertex[39] = @nscale1 * (-0.470343, 0.583107) vertex[40] = @nscale1 * (-0.507429, 0.745595) vertex[41] = @nscale1 * (-0.394067, 0.62342) vertex[42] = @nscale1 * (-0.35698, 0.460932) vertex[43] = @nscale1 * (0.14302, 0.460932) vertex[44] = @nscale1 * (-0.00131804, 0.377599) vertex[45] = @nscale1 * (-0.167985, 0.377599) vertex[46] = @nscale1 * (-0.205072, 0.215111) vertex[47] = @nscale1 * (-0.352449, 0.692897) vertex[48] = @nscale1 * (-0.315362, 0.855385) vertex[49] = @nscale1 * (-0.465524, 0.927699) vertex[50] = @nscale1 * (-0.299323, 0.940154) vertex[51] = @nscale1 * (0.151161, 0.723212) vertex[52] = @nscale1 * (0.255076, 0.853518) vertex[53] = @nscale1 * (0.230236, 0.688712) vertex[54] = @nscale1 * (0.126321, 0.558407) vertex[55] = @nscale1 * (0.438066, 0.167491) vertex[56] = @nscale1 * (0.28292, 0.228382) vertex[57] = @nscale1 * (0.179005, 0.358687) vertex[58] = @nscale1 * (0.0288437, 0.286373) vertex[59] = @nscale1 * (0.310504, 0.699492) vertex[60] = @nscale1 * (0.460665, 0.771806) vertex[61] = @nscale1 * (0.423578, 0.934294) vertex[62] = @nscale1 * (0.536941, 0.812119) vertex[63] = @nscale1 * (0.648201, 0.324655) vertex[64] = @nscale1 * (0.814868, 0.324655) vertex[65] = @nscale1 * (0.67053, 0.241322) vertex[66] = @nscale1 * (0.503863, 0.241322) vertex[67] = @nscale1 * (0.392603, -0.246142) vertex[68] = @nscale1 * (0.343477, -0.0868802) vertex[69] = @nscale1 * (0.380564, 0.0756078) vertex[70] = @nscale1 * (0.230402, 0.147922) vertex[71] = @nscale1 * (0.729004, 0.185287) vertex[72] = @nscale1 * (0.879166, 0.112973) vertex[73] = @nscale1 * (0.983081, 0.243278) vertex[74] = @nscale1 * (0.95824, 0.078473) vertex[75] = @nscale1 * (0.646496, -0.312443) vertex[76] = @nscale1 * (0.750411, -0.442748) vertex[77] = @nscale1 * (0.595265, -0.381858) vertex[78] = @nscale1 * (0.49135, -0.251553) vertex[79] = @nscale1 * (0.0408655, -0.468494) vertex[80] = @nscale1 * (0.134752, -0.330788) vertex[81] = @nscale1 * (0.284914, -0.258474) vertex[82] = @nscale1 * (0.247827, -0.0959861) vertex[83] = @nscale1 * (0.587913, -0.462512) vertex[84] = @nscale1 * (0.625, -0.625) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 186 ; "1,1,3,1;-1/6,1/6,-3/7" cursality = 1 numbervertices = 85 ; n + cursality for closed curves cincrement = 85 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0., 0.183333) vertex[1] = @nscale1 * (0.133333, 0.183333) vertex[2] = @nscale1 * (0.248803, 0.116667) vertex[3] = @nscale1 * (0.648803, 0.116667) vertex[4] = @nscale1 * (0.678473, -0.0133237) vertex[5] = @nscale1 * (0.639172, -0.140733) vertex[6] = @nscale1 * (0.668842, -0.270724) vertex[7] = @nscale1 * (0.308454, -0.444277) vertex[8] = @nscale1 * (0.175494, -0.434313) vertex[9] = @nscale1 * (0.0553644, -0.492164) vertex[10] = @nscale1 * (-0.0277676, -0.38792) vertex[11] = @nscale1 * (-0.0873845, 0.00761206) vertex[12] = @nscale1 * (-0.170516, 0.111856) vertex[13] = @nscale1 * (-0.0873845, 0.2161) vertex[14] = @nscale1 * (0.036732, 0.264813) vertex[15] = @nscale1 * (0.286128, 0.577545) vertex[16] = @nscale1 * (0.406257, 0.519694) vertex[17] = @nscale1 * (0.481366, 0.409529) vertex[18] = @nscale1 * (0.601496, 0.351678) vertex[19] = @nscale1 * (0.512487, -0.0382935) vertex[20] = @nscale1 * (0.421798, -0.136034) vertex[21] = @nscale1 * (0.392128, -0.266024) vertex[22] = @nscale1 * (0.258795, -0.266024) vertex[23] = @nscale1 * (-0.0876154, -0.0660241) vertex[24] = @nscale1 * (-0.220949, -0.0660241) vertex[25] = @nscale1 * (-0.250618, 0.0639663) vertex[26] = @nscale1 * (-0.211318, 0.191376) vertex[27] = @nscale1 * (-0.300326, 0.581347) vertex[28] = @nscale1 * (-0.180197, 0.639198) vertex[29] = @nscale1 * (-0.0472362, 0.629234) vertex[30] = @nscale1 * (0.072893, 0.687085) vertex[31] = @nscale1 * (0.322289, 0.374353) vertex[32] = @nscale1 * (0.342161, 0.242509) vertex[33] = @nscale1 * (0.425293, 0.138265) vertex[34] = @nscale1 * (0.342161, 0.0340204) vertex[35] = @nscale1 * (-0.0301883, -0.112116) vertex[36] = @nscale1 * (-0.11332, -0.21636) vertex[37] = @nscale1 * (-0.233449, -0.158509) vertex[38] = @nscale1 * (-0.308559, -0.0483439) vertex[39] = @nscale1 * (-0.668946, 0.12521) vertex[40] = @nscale1 * (-0.639277, 0.2552) vertex[41] = @nscale1 * (-0.548587, 0.35294) vertex[42] = @nscale1 * (-0.518918, 0.482931) vertex[43] = @nscale1 * (-0.118918, 0.482931) vertex[44] = @nscale1 * (-0.00344766, 0.416264) vertex[45] = @nscale1 * (0.129886, 0.416264) vertex[46] = @nscale1 * (0.159555, 0.286274) vertex[47] = @nscale1 * (0.0416531, -0.0959556) vertex[48] = @nscale1 * (0.0713225, -0.225946) vertex[49] = @nscale1 * (-0.0488067, -0.283797) vertex[50] = @nscale1 * (-0.181767, -0.273833) vertex[51] = @nscale1 * (-0.542155, -0.447387) vertex[52] = @nscale1 * (-0.625287, -0.343142) vertex[53] = @nscale1 * (-0.645159, -0.211298) vertex[54] = @nscale1 * (-0.728291, -0.107054) vertex[55] = @nscale1 * (-0.478895, 0.205678) vertex[56] = @nscale1 * (-0.354779, 0.254391) vertex[57] = @nscale1 * (-0.271647, 0.358635) vertex[58] = @nscale1 * (-0.151517, 0.300784) vertex[59] = @nscale1 * (0.0738106, -0.0297118) vertex[60] = @nscale1 * (0.19394, -0.087563) vertex[61] = @nscale1 * (0.16427, -0.217553) vertex[62] = @nscale1 * (0.0735807, -0.315294) vertex[63] = @nscale1 * (-0.0154277, -0.705265) vertex[64] = @nscale1 * (-0.148761, -0.705265) vertex[65] = @nscale1 * (-0.264231, -0.638598) vertex[66] = @nscale1 * (-0.397564, -0.638598) vertex[67] = @nscale1 * (-0.486573, -0.248627) vertex[68] = @nscale1 * (-0.447272, -0.121217) vertex[69] = @nscale1 * (-0.476942, 0.00877312) vertex[70] = @nscale1 * (-0.356812, 0.0666243) vertex[71] = @nscale1 * (0.0420691, 0.0367322) vertex[72] = @nscale1 * (0.162198, 0.0945834) vertex[73] = @nscale1 * (0.24533, -0.00966079) vertex[74] = @nscale1 * (0.265203, -0.141505) vertex[75] = @nscale1 * (0.514599, -0.454237) vertex[76] = @nscale1 * (0.431467, -0.558482) vertex[77] = @nscale1 * (0.30735, -0.607194) vertex[78] = @nscale1 * (0.224218, -0.711438) vertex[79] = @nscale1 * (-0.136169, -0.537885) vertex[80] = @nscale1 * (-0.211279, -0.427719) vertex[81] = @nscale1 * (-0.331408, -0.369868) vertex[82] = @nscale1 * (-0.301739, -0.239878) vertex[83] = @nscale1 * (-0.0296695, 0.0533429) vertex[84] = @nscale1 * (0., 0.183333) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 187 ; "1,1,3,1;5/6,1/6,4/7" cursality = 1 numbervertices = 85 ; n + cursality for closed curves cincrement = 85 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (-0.15625, 0.46875) vertex[1] = @nscale1 * (-0.03125, 0.46875) vertex[2] = @nscale1 * (-0.139503, 0.53125) vertex[3] = @nscale1 * (-0.514503, 0.53125) vertex[4] = @nscale1 * (-0.486688, 0.409384) vertex[5] = @nscale1 * (-0.449844, 0.528831) vertex[6] = @nscale1 * (-0.477659, 0.650697) vertex[7] = @nscale1 * (-0.815522, 0.48799) vertex[8] = @nscale1 * (-0.690872, 0.478649) vertex[9] = @nscale1 * (-0.578251, 0.532884) vertex[10] = @nscale1 * (-0.656187, 0.630613) vertex[11] = @nscale1 * (-0.600296, 0.259802) vertex[12] = @nscale1 * (-0.52236, 0.162073) vertex[13] = @nscale1 * (-0.444423, 0.259802) vertex[14] = @nscale1 * (-0.560783, 0.214134) vertex[15] = @nscale1 * (-0.794591, -0.0790527) vertex[16] = @nscale1 * (-0.68197, -0.133288) vertex[17] = @nscale1 * (-0.752385, -0.0300083) vertex[18] = @nscale1 * (-0.865006, 0.0242272) vertex[19] = @nscale1 * (-0.948452, -0.341371) vertex[20] = @nscale1 * (-0.86343, -0.249739) vertex[21] = @nscale1 * (-0.835615, -0.127873) vertex[22] = @nscale1 * (-0.960615, -0.127873) vertex[23] = @nscale1 * (-0.635855, -0.315373) vertex[24] = @nscale1 * (-0.510855, -0.315373) vertex[25] = @nscale1 * (-0.538671, -0.193507) vertex[26] = @nscale1 * (-0.575515, -0.312954) vertex[27] = @nscale1 * (-0.49207, -0.678552) vertex[28] = @nscale1 * (-0.379449, -0.624316) vertex[29] = @nscale1 * (-0.504099, -0.614975) vertex[30] = @nscale1 * (-0.61672, -0.669211) vertex[31] = @nscale1 * (-0.382911, -0.962397) vertex[32] = @nscale1 * (-0.401542, -0.838794) vertex[33] = @nscale1 * (-0.479478, -0.741065) vertex[34] = @nscale1 * (-0.557414, -0.838794) vertex[35] = @nscale1 * (-0.208337, -0.701791) vertex[36] = @nscale1 * (-0.1304, -0.604062) vertex[37] = @nscale1 * (-0.243021, -0.549826) vertex[38] = @nscale1 * (-0.172606, -0.653106) vertex[39] = @nscale1 * (0.165257, -0.815813) vertex[40] = @nscale1 * (0.193072, -0.693947) vertex[41] = @nscale1 * (0.10805, -0.785578) vertex[42] = @nscale1 * (0.0802354, -0.907444) vertex[43] = @nscale1 * (0.455235, -0.907444) vertex[44] = @nscale1 * (0.346982, -0.844944) vertex[45] = @nscale1 * (0.221982, -0.844944) vertex[46] = @nscale1 * (0.249797, -0.96681) vertex[47] = @nscale1 * (0.36033, -0.60847) vertex[48] = @nscale1 * (0.332515, -0.486604) vertex[49] = @nscale1 * (0.219894, -0.54084) vertex[50] = @nscale1 * (0.344545, -0.550181) vertex[51] = @nscale1 * (0.682408, -0.387475) vertex[52] = @nscale1 * (0.604472, -0.289746) vertex[53] = @nscale1 * (0.623102, -0.413349) vertex[54] = @nscale1 * (0.701038, -0.511078) vertex[55] = @nscale1 * (0.934847, -0.217892) vertex[56] = @nscale1 * (0.818488, -0.263559) vertex[57] = @nscale1 * (0.740552, -0.361288) vertex[58] = @nscale1 * (0.853173, -0.415524) vertex[59] = @nscale1 * (0.641928, -0.105684) vertex[60] = @nscale1 * (0.529307, -0.0514486) vertex[61] = @nscale1 * (0.501491, -0.173315) vertex[62] = @nscale1 * (0.586513, -0.0816831) vertex[63] = @nscale1 * (0.669958, 0.283915) vertex[64] = @nscale1 * (0.544958, 0.283915) vertex[65] = @nscale1 * (0.653212, 0.221415) vertex[66] = @nscale1 * (0.778212, 0.221415) vertex[67] = @nscale1 * (0.694766, 0.587013) vertex[68] = @nscale1 * (0.657922, 0.467566) vertex[69] = @nscale1 * (0.685737, 0.3457) vertex[70] = @nscale1 * (0.798358, 0.399936) vertex[71] = @nscale1 * (0.424407, 0.427959) vertex[72] = @nscale1 * (0.311786, 0.373724) vertex[73] = @nscale1 * (0.389722, 0.275995) vertex[74] = @nscale1 * (0.371091, 0.399599) vertex[75] = @nscale1 * (0.137283, 0.692786) vertex[76] = @nscale1 * (0.0593465, 0.595057) vertex[77] = @nscale1 * (0.175706, 0.640724) vertex[78] = @nscale1 * (0.253642, 0.738453) vertex[79] = @nscale1 * (-0.0842213, 0.90116) vertex[80] = @nscale1 * (-0.0138063, 0.79788) vertex[81] = @nscale1 * (0.0988148, 0.743644) vertex[82] = @nscale1 * (0.12663, 0.86551) vertex[83] = @nscale1 * (-0.128435, 0.590616) vertex[84] = @nscale1 * (-0.15625, 0.46875) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 188 ; "1,3,1,4,2;-1/2,1/6" cursality = 1 numbervertices = 73 ; n + cursality for closed curves cincrement = 73 ; numbervertices/cursality ; initialize arrays vertex[0] = @nscale1 * (0.290323, 0.870968) vertex[1] = @nscale1 * (0.419355, 0.870968) vertex[2] = @nscale1 * (0.419355, 0.483871) vertex[3] = @nscale1 * (0.483871, 0.372126) vertex[4] = @nscale1 * (0.0368901, 0.114061) vertex[5] = @nscale1 * (-0.0921421, -0.109429) vertex[6] = @nscale1 * (-0.203887, -0.0449131) vertex[7] = @nscale1 * (-0.590984, -0.0449131) vertex[8] = @nscale1 * (-0.590984, 0.0841192) vertex[9] = @nscale1 * (-0.849049, 0.5311) vertex[10] = @nscale1 * (-0.625558, 0.660132) vertex[11] = @nscale1 * (-0.561042, 0.771878) vertex[12] = @nscale1 * (-0.225806, 0.578329) vertex[13] = @nscale1 * (-0.0967742, 0.578329) vertex[14] = @nscale1 * (-0.0967742, 0.0622001) vertex[15] = @nscale1 * (0.0322581, -0.16129) vertex[16] = @nscale1 * (-0.0794871, -0.225806) vertex[17] = @nscale1 * (-0.273036, -0.561042) vertex[18] = @nscale1 * (-0.384781, -0.496526) vertex[19] = @nscale1 * (-0.90091, -0.496526) vertex[20] = @nscale1 * (-0.90091, -0.238461) vertex[21] = @nscale1 * (-0.965426, -0.126716) vertex[22] = @nscale1 * (-0.63019, 0.0668322) vertex[23] = @nscale1 * (-0.565674, 0.178577) vertex[24] = @nscale1 * (-0.118693, -0.0794871) vertex[25] = @nscale1 * (0.139371, -0.0794871) vertex[26] = @nscale1 * (0.139371, -0.208519) vertex[27] = @nscale1 * (0.33292, -0.543755) vertex[28] = @nscale1 * (0.221174, -0.608271) vertex[29] = @nscale1 * (-0.0368901, -1.05525) vertex[30] = @nscale1 * (-0.260381, -0.92622) vertex[31] = @nscale1 * (-0.389413, -0.92622) vertex[32] = @nscale1 * (-0.389413, -0.539123) vertex[33] = @nscale1 * (-0.453929, -0.427378) vertex[34] = @nscale1 * (-0.00694807, -0.169313) vertex[35] = @nscale1 * (0.122084, 0.0541772) vertex[36] = @nscale1 * (0.233829, -0.010339) vertex[37] = @nscale1 * (0.620926, -0.010339) vertex[38] = @nscale1 * (0.620926, -0.139371) vertex[39] = @nscale1 * (0.878991, -0.586352) vertex[40] = @nscale1 * (0.6555, -0.715384) vertex[41] = @nscale1 * (0.590984, -0.82713) vertex[42] = @nscale1 * (0.255748, -0.633581) vertex[43] = @nscale1 * (0.126716, -0.633581) vertex[44] = @nscale1 * (0.126716, -0.117452) vertex[45] = @nscale1 * (-0.00231602, 0.106038) vertex[46] = @nscale1 * (0.109429, 0.170554) vertex[47] = @nscale1 * (0.302978, 0.50579) vertex[48] = @nscale1 * (0.414723, 0.441274) vertex[49] = @nscale1 * (0.930852, 0.441274) vertex[50] = @nscale1 * (0.930852, 0.183209) vertex[51] = @nscale1 * (0.995368, 0.0714642) vertex[52] = @nscale1 * (0.660132, -0.122084) vertex[53] = @nscale1 * (0.595616, -0.233829) vertex[54] = @nscale1 * (0.148635, 0.0242351) vertex[55] = @nscale1 * (-0.109429, 0.0242351) vertex[56] = @nscale1 * (-0.109429, 0.153267) vertex[57] = @nscale1 * (-0.302978, 0.488503) vertex[58] = @nscale1 * (-0.191232, 0.553019) vertex[59] = @nscale1 * (0.0668322, 1.) vertex[60] = @nscale1 * (0.290323, 0.870968) vertex[61] = @nscale1 * (0.419355, 0.870968) vertex[62] = @nscale1 * (0.419355, 0.483871) vertex[63] = @nscale1 * (0.483871, 0.372126) vertex[64] = @nscale1 * (0.0368901, 0.114061) vertex[65] = @nscale1 * (-0.0921421, -0.109429) vertex[66] = @nscale1 * (-0.203887, -0.0449131) vertex[67] = @nscale1 * (-0.590984, -0.0449131) vertex[68] = @nscale1 * (-0.590984, 0.0841192) vertex[69] = @nscale1 * (-0.849049, 0.5311) vertex[70] = @nscale1 * (-0.625558, 0.660132) vertex[71] = @nscale1 * (-0.561042, 0.771878) vertex[72] = @nscale1 * (-0.225806, 0.578329) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 189 ; "13-gon" cursality = 1 numbervertices = 14 ; vertices + cursality for closed curves cincrement = 14 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 13) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 13) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 190 ; "14-gon" cursality = 1 numbervertices = 15 ; vertices + cursality for closed curves cincrement = 15 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 14) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 14) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 191 ; "15-gon" cursality = 1 numbervertices = 16 ; vertices + cursality for closed curves cincrement = 16 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 15) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 15) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 192 ; "16-gon" cursality = 1 numbervertices = 17 ; vertices + cursality for closed curves cincrement = 17 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices xcoord[glindex] = @nscale1 * cos(glindex * twopi / 16) ycoord[glindex] = @nscale1 * sin(glindex * twopi / 16) vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 193 ; "13-asterisk" cursality = 13 numbervertices = 26 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 13) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 13) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) elseif traparray == 194 ; "14-asterisk" cursality = 14 numbervertices = 28 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 14) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 14) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) elseif traparray == 195 ; "15-asterisk" cursality = 15 numbervertices = 30 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 15) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 15) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) elseif traparray == 196 ; "16-asterisk" cursality = 16 numbervertices = 32 ; vertices only for open curves cincrement = 2 ; numbervertices/cursality ; initialize arrays glindex = 0 while glindex < numbervertices vertex[glindex] = (0,0) xcoord[glindex + 1] = @nscale1 * cos(glindex * #pi / 16) ycoord[glindex + 1] = @nscale1 * sin(glindex * #pi / 16) glindex = glindex + 1 vertex[glindex] = xcoord[glindex] + flip(ycoord[glindex]) glindex = glindex + 1 endwhile ; glindex vertex[1] = @leafAlength * vertex[1] xcoord[1] = real(vertex[1]) ycoord[1] = imag(vertex[1]) elseif traparray == 197 ; "13-star" cursality = 1 numbervertices = 27 ; n + cursality for closed curves cincrement = 27 ; numbervertices/cursality ; initialize arrays vertex[ 0] = @nscale1 * (0.5, 0.) vertex[ 1] = @starspikiness * @nscale1 * (0.970942, 0.239316) vertex[ 2] = @nscale1 * (0.442728, 0.232362) vertex[ 3] = @starspikiness * @nscale1 * (0.748511, 0.663123) vertex[ 4] = @nscale1 * (0.284032, 0.411492) vertex[ 5] = @starspikiness * @nscale1 * (0.354605, 0.935016) vertex[ 6] = @nscale1 * (0.0602683, 0.496354) vertex[ 7] = @starspikiness * @nscale1 * (-0.120537, 0.992709) vertex[ 8] = @nscale1 * (-0.177302, 0.467508) vertex[ 9] = @starspikiness * @nscale1 * (-0.568065, 0.822984) vertex[ 10] = @nscale1 * (-0.374255, 0.331561) vertex[ 11] = @starspikiness * @nscale1 * (-0.885456, 0.464723) vertex[ 12] = @nscale1 * (-0.485471, 0.119658) vertex[ 13] = @starspikiness * @nscale1 * (-1., 0.) vertex[ 14] = @nscale1 * (-0.485471, -0.119658) vertex[ 15] = @starspikiness * @nscale1 * (-0.885456, -0.464723) vertex[ 16] = @nscale1 * (-0.374255, -0.331561) vertex[ 17] = @starspikiness * @nscale1 * (-0.568065, -0.822984) vertex[ 18] = @nscale1 * (-0.177302, -0.467508) vertex[ 19] = @starspikiness * @nscale1 * (-0.120537, -0.992709) vertex[ 20] = @nscale1 * (0.0602683, -0.496354) vertex[ 21] = @starspikiness * @nscale1 * (0.354605, -0.935016) vertex[ 22] = @nscale1 * (0.284032, -0.411492) vertex[ 23] = @starspikiness * @nscale1 * (0.748511, -0.663123) vertex[ 24] = @nscale1 * (0.442728, -0.232362) vertex[ 25] = @starspikiness * @nscale1 * (0.970942, -0.239316) vertex[ 26] = @nscale1 * (0.5, 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 198 ; "14-star" cursality = 1 numbervertices = 29 ; n + cursality for closed curves cincrement = 29 ; numbervertices/cursality ; initialize arrays vertex[ 0] = @nscale1 * (0.5, 0.) vertex[ 1] = @starspikiness * @nscale1 * (0.974928, 0.222521) vertex[ 2] = @nscale1 * (0.450484, 0.216942) vertex[ 3] = @starspikiness * @nscale1 * (0.781831, 0.62349) vertex[ 4] = @nscale1 * (0.311745, 0.390916) vertex[ 5] = @starspikiness * @nscale1 * (0.433884, 0.900969) vertex[ 6] = @nscale1 * (0.11126, 0.487464) vertex[ 7] = @starspikiness * @nscale1 * (0., 1.) vertex[ 8] = @nscale1 * (-0.11126, 0.487464) vertex[ 9] = @starspikiness * @nscale1 * (-0.433884, 0.900969) vertex[ 10] = @nscale1 * (-0.311745, 0.390916) vertex[ 11] = @starspikiness * @nscale1 * (-0.781831, 0.62349) vertex[ 12] = @nscale1 * (-0.450484, 0.216942) vertex[ 13] = @starspikiness * @nscale1 * (-0.974928, 0.222521) vertex[ 14] = @nscale1 * (-0.5, 0.) vertex[ 15] = @starspikiness * @nscale1 * (-0.974928, -0.222521) vertex[ 16] = @nscale1 * (-0.450484, -0.216942) vertex[ 17] = @starspikiness * @nscale1 * (-0.781831, -0.62349) vertex[ 18] = @nscale1 * (-0.311745, -0.390916) vertex[ 19] = @starspikiness * @nscale1 * (-0.433884, -0.900969) vertex[ 20] = @nscale1 * (-0.11126, -0.487464) vertex[ 21] = @starspikiness * @nscale1 * (0., -1.) vertex[ 22] = @nscale1 * (0.11126, -0.487464) vertex[ 23] = @starspikiness * @nscale1 * (0.433884, -0.900969) vertex[ 24] = @nscale1 * (0.311745, -0.390916) vertex[ 25] = @starspikiness * @nscale1 * (0.781831, -0.62349) vertex[ 26] = @nscale1 * (0.450484, -0.216942) vertex[ 27] = @starspikiness * @nscale1 * (0.974928, -0.222521) vertex[ 28] = @nscale1 * (0.5, 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 199 ; "15-star" cursality = 1 numbervertices = 31 ; n + cursality for closed curves cincrement = 31 ; numbervertices/cursality ; initialize arrays vertex[ 0] = @nscale1 * (0.5, 0.) vertex[ 1] = @starspikiness * @nscale1 * (0.978148, 0.207912) vertex[ 2] = @nscale1 * (0.456773, 0.203368) vertex[ 3] = @starspikiness * @nscale1 * (0.809017, 0.587785) vertex[ 4] = @nscale1 * (0.334565, 0.371572) vertex[ 5] = @starspikiness * @nscale1 * (0.5, 0.866025) vertex[ 6] = @nscale1 * (0.154508, 0.475528) vertex[ 7] = @starspikiness * @nscale1 * (0.104528, 0.994522) vertex[ 8] = @nscale1 * (-0.0522642, 0.497261) vertex[ 9] = @starspikiness * @nscale1 * (-0.309017, 0.951057) vertex[ 10] = @nscale1 * (-0.25, 0.433013) vertex[ 11] = @starspikiness * @nscale1 * (-0.669131, 0.743145) vertex[ 12] = @nscale1 * (-0.404508, 0.293893) vertex[ 13] = @starspikiness * @nscale1 * (-0.913545, 0.406737) vertex[ 14] = @nscale1 * (-0.489074, 0.103956) vertex[ 15] = @starspikiness * @nscale1 * (-1., 0.) vertex[ 16] = @nscale1 * (-0.489074, -0.103956) vertex[ 17] = @starspikiness * @nscale1 * (-0.913545, -0.406737) vertex[ 18] = @nscale1 * (-0.404508, -0.293893) vertex[ 19] = @starspikiness * @nscale1 * (-0.669131, -0.743145) vertex[ 20] = @nscale1 * (-0.25, -0.433013) vertex[ 21] = @starspikiness * @nscale1 * (-0.309017, -0.951057) vertex[ 22] = @nscale1 * (-0.0522642, -0.497261) vertex[ 23] = @starspikiness * @nscale1 * (0.104528, -0.994522) vertex[ 24] = @nscale1 * (0.154508, -0.475528) vertex[ 25] = @starspikiness * @nscale1 * (0.5, -0.866025) vertex[ 26] = @nscale1 * (0.334565, -0.371572) vertex[ 27] = @starspikiness * @nscale1 * (0.809017, -0.587785) vertex[ 28] = @nscale1 * (0.456773, -0.203368) vertex[ 29] = @starspikiness * @nscale1 * (0.978148, -0.207912) vertex[ 30] = @nscale1 * (0.5, 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 200 ; "16-star" cursality = 1 numbervertices = 33 ; n + cursality for closed curves cincrement = 33 ; numbervertices/cursality ; initialize arrays vertex[ 0] = @nscale1 * (0.5, 0.) vertex[ 1] = @starspikiness * @nscale1 * (0.980785, 0.19509) vertex[ 2] = @nscale1 * (0.46194, 0.191342) vertex[ 3] = @starspikiness * @nscale1 * (0.83147, 0.55557) vertex[ 4] = @nscale1 * (0.353553, 0.353553) vertex[ 5] = @starspikiness * @nscale1 * (0.55557, 0.83147) vertex[ 6] = @nscale1 * (0.191342, 0.46194) vertex[ 7] = @starspikiness * @nscale1 * (0.19509, 0.980785) vertex[ 8] = @nscale1 * (0., 0.5) vertex[ 9] = @starspikiness * @nscale1 * (-0.19509, 0.980785) vertex[ 10] = @nscale1 * (-0.191342, 0.46194) vertex[ 11] = @starspikiness * @nscale1 * (-0.55557, 0.83147) vertex[ 12] = @nscale1 * (-0.353553, 0.353553) vertex[ 13] = @starspikiness * @nscale1 * (-0.83147, 0.55557) vertex[ 14] = @nscale1 * (-0.46194, 0.191342) vertex[ 15] = @starspikiness * @nscale1 * (-0.980785, 0.19509) vertex[ 16] = @nscale1 * (-0.5, 0.) vertex[ 17] = @starspikiness * @nscale1 * (-0.980785, -0.19509) vertex[ 18] = @nscale1 * (-0.46194, -0.191342) vertex[ 19] = @starspikiness * @nscale1 * (-0.83147, -0.55557) vertex[ 20] = @nscale1 * (-0.353553, -0.353553) vertex[ 21] = @starspikiness * @nscale1 * (-0.55557, -0.83147) vertex[ 22] = @nscale1 * (-0.191342, -0.46194) vertex[ 23] = @starspikiness * @nscale1 * (-0.19509, -0.980785) vertex[ 24] = @nscale1 * (0., -0.5) vertex[ 25] = @starspikiness * @nscale1 * (0.19509, -0.980785) vertex[ 26] = @nscale1 * (0.191342, -0.46194) vertex[ 27] = @starspikiness * @nscale1 * (0.55557, -0.83147) vertex[ 28] = @nscale1 * (0.353553, -0.353553) vertex[ 29] = @starspikiness * @nscale1 * (0.83147, -0.55557) vertex[ 30] = @nscale1 * (0.46194, -0.191342) vertex[ 31] = @starspikiness * @nscale1 * (0.980785, -0.19509) vertex[ 32] = @nscale1 * (0.5, 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 201 ; "3-rhombstar" cursality = 3 numbervertices = 12 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.75 * @nscale1 * (1., 0.) vertex[ 1] = 0.75 * @nscale1 * (0.5, 0.866025) vertex[ 2] = 0.75 * @nscale1 * (-0.5, 0.866025) vertex[ 3] = 0.75 * @nscale1 * (0., 0.) vertex[ 4] = 0.75 * @nscale1 * (-0.5, -0.866025) vertex[ 5] = 0.75 * @nscale1 * (0.5, -0.866025) vertex[ 6] = 0.75 * @nscale1 * (1., 0.) vertex[ 7] = 0.75 * @nscale1 * (0., 0.) vertex[ 8] = 0.75 * @nscale1 * (-0.5, 0.866025) vertex[ 9] = 0.75 * @nscale1 * (-1., 0.) vertex[ 10] =0.75 * @nscale1 * (-0.5, -0.866025) vertex[ 11] = 0.75 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 202 ; "5-rhombstar" cursality = 5 numbervertices = 20 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.5 * @nscale1 * (1.15, 0.) vertex[ 1] = 0.5 * @nscale1 * (1.45902, 0.951057) vertex[ 2] = 0.5 * @nscale1 * (0.459017, 0.951057) vertex[ 3] = 0.5 * @nscale1 * (0.15, 0.) vertex[ 4] = 0.5 * @nscale1 * (0.459017, -0.951057) vertex[ 5] = 0.5 * @nscale1 * (1.45902, -0.951057) vertex[ 6] = 0.5 * @nscale1 * (1.15, 0.) vertex[ 7] = 0.5 * @nscale1 * (0.15, 0.) vertex[ 8] = 0.5 * @nscale1 * (-0.659017, -0.587785) vertex[ 9] = 0.5 * @nscale1 * (-0.35, -1.53884) vertex[ 10] = 0.5 * @nscale1 * (0.459017, -0.951057) vertex[ 11] = 0.5 * @nscale1 * (0.15, 0.) vertex[ 12] = 0.5 * @nscale1 * (-0.659017, 0.587785) vertex[ 13] = 0.5 * @nscale1 * (-1.46803, 0.) vertex[ 14] = 0.5 * @nscale1 * (-0.659017, -0.587785) vertex[ 15] = 0.5 * @nscale1 * (0.15, 0.) vertex[ 16] = 0.5 * @nscale1 * (0.459017, 0.951057) vertex[ 17] = 0.5 * @nscale1 * (-0.35, 1.53884) vertex[ 18] = 0.5 * @nscale1 * (-0.659017, 0.587785) vertex[ 19] = 0.5 * @nscale1 * (0.15, 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 203 ; "6-rhombstar" cursality = 6 numbervertices = 24 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.5 * @nscale1 * (1., 0.) vertex[ 1] = 0.5 * @nscale1 * (1.5, 0.866025) vertex[ 2] = 0.5 * @nscale1 * (0.5, 0.866025) vertex[ 3] = 0.5 * @nscale1 * (0., 0.) vertex[ 4] = 0.5 * @nscale1 * (0.5, -0.866025) vertex[ 5] = 0.5 * @nscale1 * (1.5, -0.866025) vertex[ 6] = 0.5 * @nscale1 * (1., 0.) vertex[ 7] = 0.5 * @nscale1 * (0., 0.) vertex[ 8] = 0.5 * @nscale1 * (-0.5, -0.866025) vertex[ 9] = 0.5 * @nscale1 * (0., -1.73205) vertex[ 10] = 0.5 * @nscale1 * (0.5, -0.866025) vertex[ 11] = 0.5 * @nscale1 * (0., 0.) vertex[ 12] = 0.5 * @nscale1 * (-1., 0.) vertex[ 13] = 0.5 * @nscale1 * (-1.5, -0.866025) vertex[ 14] = 0.5 * @nscale1 * (-0.5, -0.866025) vertex[ 15] = 0.5 * @nscale1 * (0., 0.) vertex[ 16] = 0.5 * @nscale1 * (-0.5, 0.866025) vertex[ 17] = 0.5 * @nscale1 * (-1.5, 0.866025) vertex[ 18] = 0.5 * @nscale1 * (-1., 0.) vertex[ 19] = 0.5 * @nscale1 * (0., 0.) vertex[ 20] = 0.5 * @nscale1 * (0.5, 0.866025) vertex[ 21] = 0.5 * @nscale1 * (0., 1.73205) vertex[ 22] = 0.5 * @nscale1 * (-0.5, 0.866025) vertex[ 23] = 0.5 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 204 ; "7-rhombstar" cursality = 7 numbervertices = 28 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.5 * @nscale1 * (1., 0.) vertex[ 1] = 0.5 * @nscale1 * (1.62349, 0.781831) vertex[ 2] = 0.5 * @nscale1 * (0.62349, 0.781831) vertex[ 3] = 0.5 * @nscale1 * (0., 0.) vertex[ 4] = 0.5 * @nscale1 * (0.62349, -0.781831) vertex[ 5] = 0.5 * @nscale1 * (1.62349, -0.781831) vertex[ 6] = 0.5 * @nscale1 * (1., 0.) vertex[ 7] = 0.5 * @nscale1 * (0., 0.) vertex[ 8] = 0.5 * @nscale1 * (-0.222521, -0.974928) vertex[ 9] = 0.5 * @nscale1 * (0.400969, -1.75676) vertex[ 10] = 0.5 * @nscale1 * (0.62349, -0.781831) vertex[ 11] = 0.5 * @nscale1 * (0., 0.) vertex[ 12] = 0.5 * @nscale1 * (-0.900969, -0.433884) vertex[ 13] = 0.5 * @nscale1 * (-1.12349, -1.40881) vertex[ 14] = 0.5 * @nscale1 * (-0.222521, -0.974928) vertex[ 15] = 0.5 * @nscale1 * (0., 0.) vertex[ 16] = 0.5 * @nscale1 * (-0.900969, 0.433884) vertex[ 17] = 0.5 * @nscale1 * (-1.80194, 0.) vertex[ 18] = 0.5 * @nscale1 * (-0.900969, -0.433884) vertex[ 19] = 0.5 * @nscale1 * (0., 0.) vertex[ 20] = 0.5 * @nscale1 * (-0.222521, 0.974928) vertex[ 21] = 0.5 * @nscale1 * (-1.12349, 1.40881) vertex[ 22] = 0.5 * @nscale1 * (-0.900969, 0.433884) vertex[ 23] = 0.5 * @nscale1 * (0., 0.) vertex[ 24] = 0.5 * @nscale1 * (0.62349, 0.781831) vertex[ 25] = 0.5 * @nscale1 * (0.400969, 1.75676) vertex[ 26] = 0.5 * @nscale1 * (-0.222521, 0.974928) vertex[ 27] = 0.5 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 205 ; "8-rhombstar" cursality = 8 numbervertices = 32 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.5 * @nscale1 * (1., 0.) vertex[ 1] = 0.5 * @nscale1 * (1.70711, 0.707107) vertex[ 2] = 0.5 * @nscale1 * (0.707107, 0.707107) vertex[ 3] = 0.5 * @nscale1 * (0., 0.) vertex[ 4] = 0.5 * @nscale1 * (0.707107, -0.707107) vertex[ 5] = 0.5 * @nscale1 * (1.70711, -0.707107) vertex[ 6] = 0.5 * @nscale1 * (1., 0.) vertex[ 7] = 0.5 * @nscale1 * (0., 0.) vertex[ 8] = 0.5 * @nscale1 * (0., -1.) vertex[ 9] = 0.5 * @nscale1 * (0.707107, -1.70711) vertex[ 10] = 0.5 * @nscale1 * (0.707107, -0.707107) vertex[ 11] = 0.5 * @nscale1 * (0., 0.) vertex[ 12] = 0.5 * @nscale1 * (-0.707107, -0.707107) vertex[ 13] = 0.5 * @nscale1 * (-0.707107, -1.70711) vertex[ 14] = 0.5 * @nscale1 * (0., -1.) vertex[ 15] = 0.5 * @nscale1 * (0., 0.) vertex[ 16] = 0.5 * @nscale1 * (-1., 0.) vertex[ 17] = 0.5 * @nscale1 * (-1.70711, -0.707107) vertex[ 18] = 0.5 * @nscale1 * (-0.707107, -0.707107) vertex[ 19] = 0.5 * @nscale1 * (0., 0.) vertex[ 20] = 0.5 * @nscale1 * (-0.707107, 0.707107) vertex[ 21] = 0.5 * @nscale1 * (-1.70711, 0.707107) vertex[ 22] = 0.5 * @nscale1 * (-1., 0.) vertex[ 23] = 0.5 * @nscale1 * (0., 0.) vertex[ 24] = 0.5 * @nscale1 * (0., 1.) vertex[ 25] = 0.5 * @nscale1 * (-0.707107, 1.70711) vertex[ 26] = 0.5 * @nscale1 * (-0.707107, 0.707107) vertex[ 27] = 0.5 * @nscale1 * (0., 0.) vertex[ 28] = 0.5 * @nscale1 * (0.707107, 0.707107) vertex[ 29] = 0.5 * @nscale1 * (0.707107, 1.70711) vertex[ 30] = 0.5 * @nscale1 * (0., 1.) vertex[ 31] = 0.5 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 206 ; "9-rhombstar" cursality = 9 numbervertices = 36 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.76604, 0.642788) vertex[ 2] = 0.4 * @nscale1 * (0.766044, 0.642788) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.766044, -0.642788) vertex[ 5] = 0.4 * @nscale1 * (1.76604, -0.642788) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.173648, -0.984808) vertex[ 9] = 0.4 * @nscale1 * (0.939693, -1.6276) vertex[ 10] = 0.4 * @nscale1 * (0.766044, -0.642788) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (-0.5, -0.866025) vertex[ 13] = 0.4 * @nscale1 * (-0.326352, -1.85083) vertex[ 14] = 0.4 * @nscale1 * (0.173648, -0.984808) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.939693, -0.34202) vertex[ 17] = 0.4 * @nscale1 * (-1.43969, -1.20805) vertex[ 18] = 0.4 * @nscale1 * (-0.5, -0.866025) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.939693, 0.34202) vertex[ 21] = 0.4 * @nscale1 * (-1.87939, 0.) vertex[ 22] = 0.4 * @nscale1 * (-0.939693, -0.34202) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.5, 0.866025) vertex[ 25] = 0.4 * @nscale1 * (-1.43969, 1.20805) vertex[ 26] = 0.4 * @nscale1 * (-0.939693, 0.34202) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (0.173648, 0.984808) vertex[ 29] = 0.4 * @nscale1 * (-0.326352, 1.85083) vertex[ 30] = 0.4 * @nscale1 * (-0.5, 0.866025) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (0.766044, 0.642788) vertex[ 33] = 0.4 * @nscale1 * (0.939693, 1.6276) vertex[ 34] = 0.4 * @nscale1 * (0.173648, 0.984808) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 207 ; "10-rhombstar" cursality = 10 numbervertices = 40 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.80902, 0.587785) vertex[ 2] = 0.4 * @nscale1 * (0.809017, 0.587785) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.809017, -0.587785) vertex[ 5] = 0.4 * @nscale1 * (1.80902, -0.587785) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.309017, -0.951057) vertex[ 9] = 0.4 * @nscale1 * (1.11803, -1.53884) vertex[ 10] = 0.4 * @nscale1 * (0.809017, -0.587785) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (-0.309017, -0.951057) vertex[ 13] = 0.4 * @nscale1 * (0., -1.90211) vertex[ 14] = 0.4 * @nscale1 * (0.309017, -0.951057) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.809017, -0.587785) vertex[ 17] = 0.4 * @nscale1 * (-1.11803, -1.53884) vertex[ 18] = 0.4 * @nscale1 * (-0.309017, -0.951057) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-1., 0.) vertex[ 21] = 0.4 * @nscale1 * (-1.80902, -0.587785) vertex[ 22] = 0.4 * @nscale1 * (-0.809017, -0.587785) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.809017, 0.587785) vertex[ 25] = 0.4 * @nscale1 * (-1.80902, 0.587785) vertex[ 26] = 0.4 * @nscale1 * (-1., 0.) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-0.309017, 0.951057) vertex[ 29] = 0.4 * @nscale1 * (-1.11803, 1.53884) vertex[ 30] = 0.4 * @nscale1 * (-0.809017, 0.587785) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (0.309017, 0.951057) vertex[ 33] = 0.4 * @nscale1 * (0., 1.90211) vertex[ 34] = 0.4 * @nscale1 * (-0.309017, 0.951057) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (0.809017, 0.587785) vertex[ 37] = 0.4 * @nscale1 * (1.11803, 1.53884) vertex[ 38] = 0.4 * @nscale1 * (0.309017, 0.951057) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 208 ; "11-rhombstar" cursality = 11 numbervertices = 44 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.84125, 0.540641) vertex[ 2] = 0.4 * @nscale1 * (0.841254, 0.540641) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.841254, -0.540641) vertex[ 5] = 0.4 * @nscale1 * (1.84125, -0.540641) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.415415, -0.909632) vertex[ 9] = 0.4 * @nscale1 * (1.25667, -1.45027) vertex[ 10] = 0.4 * @nscale1 * (0.841254, -0.540641) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (-0.142315, -0.989821) vertex[ 13] = 0.4 * @nscale1 * (0.2731, -1.89945) vertex[ 14] = 0.4 * @nscale1 * (0.415415, -0.909632) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.654861, -0.75575) vertex[ 17] = 0.4 * @nscale1 * (-0.797176, -1.74557) vertex[ 18] = 0.4 * @nscale1 * (-0.142315, -0.989821) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.959493, -0.281733) vertex[ 21] = 0.4 * @nscale1 * (-1.61435, -1.03748) vertex[ 22] = 0.4 * @nscale1 * (-0.654861, -0.75575) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.959493, 0.281733) vertex[ 25] = 0.4 * @nscale1 * (-1.91899, 0.) vertex[ 26] = 0.4 * @nscale1 * (-0.959493, -0.281733) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-0.654861, 0.75575) vertex[ 29] = 0.4 * @nscale1 * (-1.61435, 1.03748) vertex[ 30] = 0.4 * @nscale1 * (-0.959493, 0.281733) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (-0.142315, 0.989821) vertex[ 33] = 0.4 * @nscale1 * (-0.797176, 1.74557) vertex[ 34] = 0.4 * @nscale1 * (-0.654861, 0.75575) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (0.415415, 0.909632) vertex[ 37] = 0.4 * @nscale1 * (0.2731, 1.89945) vertex[ 38] = 0.4 * @nscale1 * (-0.142315, 0.989821) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) vertex[ 40] = 0.4 * @nscale1 * (0.841254, 0.540641) vertex[ 41] = 0.4 * @nscale1 * (1.25667, 1.45027) vertex[ 42] = 0.4 * @nscale1 * (0.415415, 0.909632) vertex[ 43] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 209 ; "12-rhombstar" cursality = 12 numbervertices = 48 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.86603, 0.5) vertex[ 2] = 0.4 * @nscale1 * (0.866025, 0.5) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.866025, -0.5) vertex[ 5] = 0.4 * @nscale1 * (1.86603, -0.5) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.5, -0.866025) vertex[ 9] = 0.4 * @nscale1 * (1.36603, -1.36603) vertex[ 10] = 0.4 * @nscale1 * (0.866025, -0.5) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (0., -1.) vertex[ 13] = 0.4 * @nscale1 * (0.5, -1.86603) vertex[ 14] = 0.4 * @nscale1 * (0.5, -0.866025) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.5, -0.866025) vertex[ 17] = 0.4 * @nscale1 * (-0.5, -1.86603) vertex[ 18] = 0.4 * @nscale1 * (0., -1.) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.866025, -0.5) vertex[ 21] = 0.4 * @nscale1 * (-1.36603, -1.36603) vertex[ 22] = 0.4 * @nscale1 * (-0.5, -0.866025) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-1., 0.) vertex[ 25] = 0.4 * @nscale1 * (-1.86603, -0.5) vertex[ 26] = 0.4 * @nscale1 * (-0.866025, -0.5) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-0.866025, 0.5) vertex[ 29] = 0.4 * @nscale1 * (-1.86603, 0.5) vertex[ 30] = 0.4 * @nscale1 * (-1., 0.) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (-0.5, 0.866025) vertex[ 33] = 0.4 * @nscale1 * (-1.36603, 1.36603) vertex[ 34] = 0.4 * @nscale1 * (-0.866025, 0.5) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (0., 1.) vertex[ 37] = 0.4 * @nscale1 * (-0.5, 1.86603) vertex[ 38] = 0.4 * @nscale1 * (-0.5, 0.866025) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) vertex[ 40] = 0.4 * @nscale1 * (0.5, 0.866025) vertex[ 41] = 0.4 * @nscale1 * (0.5, 1.86603) vertex[ 42] = 0.4 * @nscale1 * (0., 1.) vertex[ 43] = 0.4 * @nscale1 * (0., 0.) vertex[ 44] = 0.4 * @nscale1 * (0.866025, 0.5) vertex[ 45] = 0.4 * @nscale1 * (1.36603, 1.36603) vertex[ 46] = 0.4 * @nscale1 * (0.5, 0.866025) vertex[ 47] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 210 ; "13-rhombstar" cursality = 13 numbervertices = 52 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.88546, 0.464723) vertex[ 2] = 0.4 * @nscale1 * (0.885456, 0.464723) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.885456, -0.464723) vertex[ 5] = 0.4 * @nscale1 * (1.88546, -0.464723) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.568065, -0.822984) vertex[ 9] = 0.4 * @nscale1 * (1.45352, -1.28771) vertex[ 10] = 0.4 * @nscale1 * (0.885456, -0.464723) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (0.120537, -0.992709) vertex[ 13] = 0.4 * @nscale1 * (0.688601, -1.81569) vertex[ 14] = 0.4 * @nscale1 * (0.568065, -0.822984) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.354605, -0.935016) vertex[ 17] = 0.4 * @nscale1 * (-0.234068, -1.92773) vertex[ 18] = 0.4 * @nscale1 * (0.120537, -0.992709) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.748511, -0.663123) vertex[ 21] = 0.4 * @nscale1 * (-1.10312, -1.59814) vertex[ 22] = 0.4 * @nscale1 * (-0.354605, -0.935016) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.970942, -0.239316) vertex[ 25] = 0.4 * @nscale1 * (-1.71945, -0.902438) vertex[ 26] = 0.4 * @nscale1 * (-0.748511, -0.663123) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-0.970942, 0.239316) vertex[ 29] = 0.4 * @nscale1 * (-1.94188, 0.) vertex[ 30] = 0.4 * @nscale1 * (-0.970942, -0.239316) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (-0.748511, 0.663123) vertex[ 33] = 0.4 * @nscale1 * (-1.71945, 0.902438) vertex[ 34] = 0.4 * @nscale1 * (-0.970942, 0.239316) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (-0.354605, 0.935016) vertex[ 37] = 0.4 * @nscale1 * (-1.10312, 1.59814) vertex[ 38] = 0.4 * @nscale1 * (-0.748511, 0.663123) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) vertex[ 40] = 0.4 * @nscale1 * (0.120537, 0.992709) vertex[ 41] = 0.4 * @nscale1 * (-0.234068, 1.92773) vertex[ 42] = 0.4 * @nscale1 * (-0.354605, 0.935016) vertex[ 43] = 0.4 * @nscale1 * (0., 0.) vertex[ 44] = 0.4 * @nscale1 * (0.568065, 0.822984) vertex[ 45] = 0.4 * @nscale1 * (0.688601, 1.81569) vertex[ 46] = 0.4 * @nscale1 * (0.120537, 0.992709) vertex[ 47] = 0.4 * @nscale1 * (0., 0.) vertex[ 48] = 0.4 * @nscale1 * (0.885456, 0.464723) vertex[ 49] = 0.4 * @nscale1 * (1.45352, 1.28771) vertex[ 50] = 0.4 * @nscale1 * (0.568065, 0.822984) vertex[ 51] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 211 ; "14-rhombstar" cursality = 14 numbervertices = 56 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.90097, 0.433884) vertex[ 2] = 0.4 * @nscale1 * (0.900969, 0.433884) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.900969, -0.433884) vertex[ 5] = 0.4 * @nscale1 * (1.90097, -0.433884) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.62349, -0.781831) vertex[ 9] = 0.4 * @nscale1 * (1.52446, -1.21572) vertex[ 10] = 0.4 * @nscale1 * (0.900969, -0.433884) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (0.222521, -0.974928) vertex[ 13] = 0.4 * @nscale1 * (0.846011, -1.75676) vertex[ 14] = 0.4 * @nscale1 * (0.62349, -0.781831) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.222521, -0.974928) vertex[ 17] = 0.4 * @nscale1 * (0., -1.94986) vertex[ 18] = 0.4 * @nscale1 * (0.222521, -0.974928) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.62349, -0.781831) vertex[ 21] = 0.4 * @nscale1 * (-0.846011, -1.75676) vertex[ 22] = 0.4 * @nscale1 * (-0.222521, -0.974928) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.900969, -0.433884) vertex[ 25] = 0.4 * @nscale1 * (-1.52446, -1.21572) vertex[ 26] = 0.4 * @nscale1 * (-0.62349, -0.781831) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-1., 0.) vertex[ 29] = 0.4 * @nscale1 * (-1.90097, -0.433884) vertex[ 30] = 0.4 * @nscale1 * (-0.900969, -0.433884) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (-0.900969, 0.433884) vertex[ 33] = 0.4 * @nscale1 * (-1.90097, 0.433884) vertex[ 34] = 0.4 * @nscale1 * (-1., 0.) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (-0.62349, 0.781831) vertex[ 37] = 0.4 * @nscale1 * (-1.52446, 1.21572) vertex[ 38] = 0.4 * @nscale1 * (-0.900969, 0.433884) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) vertex[ 40] = 0.4 * @nscale1 * (-0.222521, 0.974928) vertex[ 41] = 0.4 * @nscale1 * (-0.846011, 1.75676) vertex[ 42] = 0.4 * @nscale1 * (-0.62349, 0.781831) vertex[ 43] = 0.4 * @nscale1 * (0., 0.) vertex[ 44] = 0.4 * @nscale1 * (0.222521, 0.974928) vertex[ 45] = 0.4 * @nscale1 * (0., 1.94986) vertex[ 46] = 0.4 * @nscale1 * (-0.222521, 0.974928) vertex[ 47] = 0.4 * @nscale1 * (0., 0.) vertex[ 48] = 0.4 * @nscale1 * (0.62349, 0.781831) vertex[ 49] = 0.4 * @nscale1 * (0.846011, 1.75676) vertex[ 50] = 0.4 * @nscale1 * (0.222521, 0.974928) vertex[ 51] = 0.4 * @nscale1 * (0., 0.) vertex[ 52] = 0.4 * @nscale1 * (0.900969, 0.433884) vertex[ 53] = 0.4 * @nscale1 * (1.52446, 1.21572) vertex[ 54] = 0.4 * @nscale1 * (0.62349, 0.781831) vertex[ 55] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 212 ; "15-rhombstar" cursality = 15 numbervertices = 60 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.91355, 0.406737) vertex[ 2] = 0.4 * @nscale1 * (0.913545, 0.406737) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.913545, -0.406737) vertex[ 5] = 0.4 * @nscale1 * (1.91355, -0.406737) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.669131, -0.743145) vertex[ 9] = 0.4 * @nscale1 * (1.58268, -1.14988) vertex[ 10] = 0.4 * @nscale1 * (0.913545, -0.406737) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (0.309017, -0.951057) vertex[ 13] = 0.4 * @nscale1 * (0.978148, -1.6942) vertex[ 14] = 0.4 * @nscale1 * (0.669131, -0.743145) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (-0.104528, -0.994522) vertex[ 17] = 0.4 * @nscale1 * (0.204489, -1.94558) vertex[ 18] = 0.4 * @nscale1 * (0.309017, -0.951057) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.5, -0.866025) vertex[ 21] = 0.4 * @nscale1 * (-0.604528, -1.86055) vertex[ 22] = 0.4 * @nscale1 * (-0.104528, -0.994522) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.809017, -0.587785) vertex[ 25] = 0.4 * @nscale1 * (-1.30902, -1.45381) vertex[ 26] = 0.4 * @nscale1 * (-0.5, -0.866025) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-0.978148, -0.207912) vertex[ 29] = 0.4 * @nscale1 * (-1.78716, -0.795697) vertex[ 30] = 0.4 * @nscale1 * (-0.809017, -0.587785) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (-0.978148, 0.207912) vertex[ 33] = 0.4 * @nscale1 * (-1.9563, 0.) vertex[ 34] = 0.4 * @nscale1 * (-0.978148, -0.207912) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (-0.809017, 0.587785) vertex[ 37] = 0.4 * @nscale1 * (-1.78716, 0.795697) vertex[ 38] = 0.4 * @nscale1 * (-0.978148, 0.207912) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) vertex[ 40] = 0.4 * @nscale1 * (-0.5, 0.866025) vertex[ 41] = 0.4 * @nscale1 * (-1.30902, 1.45381) vertex[ 42] = 0.4 * @nscale1 * (-0.809017, 0.587785) vertex[ 43] = 0.4 * @nscale1 * (0., 0.) vertex[ 44] = 0.4 * @nscale1 * (-0.104528, 0.994522) vertex[ 45] = 0.4 * @nscale1 * (-0.604528, 1.86055) vertex[ 46] = 0.4 * @nscale1 * (-0.5, 0.866025) vertex[ 47] = 0.4 * @nscale1 * (0., 0.) vertex[ 48] = 0.4 * @nscale1 * (0.309017, 0.951057) vertex[ 49] = 0.4 * @nscale1 * (0.204489, 1.94558) vertex[ 50] = 0.4 * @nscale1 * (-0.104528, 0.994522) vertex[ 51] = 0.4 * @nscale1 * (0., 0.) vertex[ 52] = 0.4 * @nscale1 * (0.669131, 0.743145) vertex[ 53] = 0.4 * @nscale1 * (0.978148, 1.6942) vertex[ 54] = 0.4 * @nscale1 * (0.309017, 0.951057) vertex[ 55] = 0.4 * @nscale1 * (0., 0.) vertex[ 56] = 0.4 * @nscale1 * (0.913545, 0.406737) vertex[ 57] = 0.4 * @nscale1 * (1.58268, 1.14988) vertex[ 58] = 0.4 * @nscale1 * (0.669131, 0.743145) vertex[ 59] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex elseif traparray == 213 ; "16-rhombstar" cursality = 16 numbervertices = 64 ; vertices only for open curves cincrement = 4 ; numbervertices/cursality ; initialize arrays vertex[ 0] = 0.4 * @nscale1 * (1., 0.) vertex[ 1] = 0.4 * @nscale1 * (1.92388, 0.382683) vertex[ 2] = 0.4 * @nscale1 * (0.92388, 0.382683) vertex[ 3] = 0.4 * @nscale1 * (0., 0.) vertex[ 4] = 0.4 * @nscale1 * (0.92388, -0.382683) vertex[ 5] = 0.4 * @nscale1 * (1.92388, -0.382683) vertex[ 6] = 0.4 * @nscale1 * (1., 0.) vertex[ 7] = 0.4 * @nscale1 * (0., 0.) vertex[ 8] = 0.4 * @nscale1 * (0.707107, -0.707107) vertex[ 9] = 0.4 * @nscale1 * (1.63099, -1.08979) vertex[ 10] = 0.4 * @nscale1 * (0.92388, -0.382683) vertex[ 11] = 0.4 * @nscale1 * (0., 0.) vertex[ 12] = 0.4 * @nscale1 * (0.382683, -0.92388) vertex[ 13] = 0.4 * @nscale1 * (1.08979, -1.63099) vertex[ 14] = 0.4 * @nscale1 * (0.707107, -0.707107) vertex[ 15] = 0.4 * @nscale1 * (0., 0.) vertex[ 16] = 0.4 * @nscale1 * (0., -1.) vertex[ 17] = 0.4 * @nscale1 * (0.382683, -1.92388) vertex[ 18] = 0.4 * @nscale1 * (0.382683, -0.92388) vertex[ 19] = 0.4 * @nscale1 * (0., 0.) vertex[ 20] = 0.4 * @nscale1 * (-0.382683, -0.92388) vertex[ 21] = 0.4 * @nscale1 * (-0.382683, -1.92388) vertex[ 22] = 0.4 * @nscale1 * (0., -1.) vertex[ 23] = 0.4 * @nscale1 * (0., 0.) vertex[ 24] = 0.4 * @nscale1 * (-0.707107, -0.707107) vertex[ 25] = 0.4 * @nscale1 * (-1.08979, -1.63099) vertex[ 26] = 0.4 * @nscale1 * (-0.382683, -0.92388) vertex[ 27] = 0.4 * @nscale1 * (0., 0.) vertex[ 28] = 0.4 * @nscale1 * (-0.92388, -0.382683) vertex[ 29] = 0.4 * @nscale1 * (-1.63099, -1.08979) vertex[ 30] = 0.4 * @nscale1 * (-0.707107, -0.707107) vertex[ 31] = 0.4 * @nscale1 * (0., 0.) vertex[ 32] = 0.4 * @nscale1 * (-1., 0.) vertex[ 33] = 0.4 * @nscale1 * (-1.92388, -0.382683) vertex[ 34] = 0.4 * @nscale1 * (-0.92388, -0.382683) vertex[ 35] = 0.4 * @nscale1 * (0., 0.) vertex[ 36] = 0.4 * @nscale1 * (-0.92388, 0.382683) vertex[ 37] = 0.4 * @nscale1 * (-1.92388, 0.382683) vertex[ 38] = 0.4 * @nscale1 * (-1., 0.) vertex[ 39] = 0.4 * @nscale1 * (0., 0.) vertex[ 40] = 0.4 * @nscale1 * (-0.707107, 0.707107) vertex[ 41] = 0.4 * @nscale1 * (-1.63099, 1.08979) vertex[ 42] = 0.4 * @nscale1 * (-0.92388, 0.382683) vertex[ 43] = 0.4 * @nscale1 * (0., 0.) vertex[ 44] = 0.4 * @nscale1 * (-0.382683, 0.92388) vertex[ 45] = 0.4 * @nscale1 * (-1.08979, 1.63099) vertex[ 46] = 0.4 * @nscale1 * (-0.707107, 0.707107) vertex[ 47] = 0.4 * @nscale1 * (0., 0.) vertex[ 48] = 0.4 * @nscale1 * (0., 1.) vertex[ 49] = 0.4 * @nscale1 * (-0.382683, 1.92388) vertex[ 50] = 0.4 * @nscale1 * (-0.382683, 0.92388) vertex[ 51] = 0.4 * @nscale1 * (0., 0.) vertex[ 52] = 0.4 * @nscale1 * (0.382683, 0.92388) vertex[ 53] = 0.4 * @nscale1 * (0.382683, 1.92388) vertex[ 54] = 0.4 * @nscale1 * (0., 1.) vertex[ 55] = 0.4 * @nscale1 * (0., 0.) vertex[ 56] = 0.4 * @nscale1 * (0.707107, 0.707107) vertex[ 57] = 0.4 * @nscale1 * (1.08979, 1.63099) vertex[ 58] = 0.4 * @nscale1 * (0.382683, 0.92388) vertex[ 59] = 0.4 * @nscale1 * (0., 0.) vertex[ 60] = 0.4 * @nscale1 * (0.92388, 0.382683) vertex[ 61] = 0.4 * @nscale1 * (1.63099, 1.08979) vertex[ 62] = 0.4 * @nscale1 * (0.707107, 0.707107) vertex[ 63] = 0.4 * @nscale1 * (0., 0.) glindex = 0 while glindex < numbervertices xcoord[glindex] = real(vertex[glindex]) ycoord[glindex] = imag(vertex[glindex]) glindex = glindex + 1 endwhile ; glindex endif ; traparray transform: complex pixtemp = (0,0) complex testpt = complex minpt = complex maxpt = complex intersectpt = (0,0) float xtest = float ytest = 0.0 float tparam = 0.0 ; for parametric representation of line segments float disttemp = float seglength = 0.0 ; temp storage, length of current line segment float distmin = 1e20 ; initialize minimum distance to a high value int lindex = int lindex2 = 0 ; loop indices int cindex = 0 ; cursality index int maxlindex = 0 int oindex = 0 ; outer loop index if @mode == "maximum" distmin = -1e20 endif ; @mode float rotation = @rotate * degconversion if ( rotation < 0 ) rotation = rotation + twopi endif ; rotation pixtemp = #pixel ; First, center #pixel on the trap center pixtemp = pixtemp - @center ; Compute rotated #pixel if rotation != 0.0 pixtemp = pixtemp * exp(flip(rotation)) endif ; rotation ; now, find the closest point of the distorting shape to the current, modified pixel testpt = pixtemp xtest = real(testpt), ytest = imag(testpt) ; test #pixel (i.e., pixtemp) against the various line segments defining the trap shape cindex = 0 if cincrement != 1 ; test distance to each line segment while cindex < cursality lindex = cindex * cincrement, lindex2 = lindex + 1 maxlindex = (cindex + 1) * cincrement while lindex2 < maxlindex ; determine length of current line segment seglength = sqr(xcoord[lindex] - xcoord[lindex2]) + sqr(ycoord[lindex] - \ ycoord[lindex2]) ; now determine the parameter t for which the current #z is closest to ; the line containing the current line segment tparam = ((xtest - xcoord[lindex]) * (xcoord[lindex2] - xcoord[lindex]) + \ (ytest - ycoord[lindex]) * (ycoord[lindex2] - ycoord[lindex]))/seglength if tparam < 0.0 ; the intersect lies off the line segment, beyond the first vertex ; so return the distance to the first segment endpoint disttemp = sqr(xtest - xcoord[lindex]) + sqr(ytest - ycoord[lindex]) intersectpt = vertex[lindex] elseif tparam > 1.0 ; the intersect lies off the segment beyond the second vertex ; so return distance to the second segment endpoint disttemp = sqr(xtest - xcoord[lindex2]) + sqr(ytest - ycoord[lindex2]) intersectpt = vertex[lindex2] else ; #z lies on a line that intersects the current line segment perpendicularly ; to the closest point intersectpt = xcoord[lindex] + tparam * (xcoord[lindex2] - xcoord[lindex]) + \ flip(ycoord[lindex] + tparam * (ycoord[lindex2] - ycoord[lindex])) disttemp = sqr(xtest - real(intersectpt)) + sqr(ytest - imag(intersectpt)) endif ; tparam if @mode == "minimum" if disttemp < distmin distmin = disttemp minpt = intersectpt endif ; disttemp else if disttemp > distmin distmin = disttemp minpt = intersectpt ; really a maxpt endif ; disttemp endif ; @mode ; increment the loop indices lindex = lindex + 1 lindex2 = lindex2 + 1 endwhile ; lindex2 cindex = cindex + 1 endwhile ; cindex else ; cincrement = 1 --- return distance to individual points, not line segments while cindex < cursality disttemp = sqr(xtest - xcoord[cindex]) + sqr(ytest - ycoord[cindex]) intersectpt = vertex[cindex] if @mode == "minimum" if disttemp < distmin distmin = disttemp minpt = intersectpt endif ; disttemp else if disttemp > distmin distmin = disttemp minpt = intersectpt ; really a maxpt endif ; disttemp endif ; @mode ; increment the loop indices cindex = cindex + 1 endwhile ; cindex endif ; cincrement xtest = @xstrength * real(minpt) + (1 - @xstrength) * real(#pixel) ytest = @ystrength * imag(minpt) + (1 - @ystrength) * imag(#pixel) #pixel = xtest + flip(ytest) default: title = "Shape Distortion" param xstrength caption = "Real Distortion Strength" default = 0.1 hint = "At 0.0, there is no distorion in the x (real) coordinate; at 1.0, \ the pixel x-coordinate corresponds to the real coordinate of the \ nearest point of the selected distorting shape." endparam param ystrength caption = "Imag Distortion Strength" default = 0.1 hint = "At 0.0, there is no distorion in the y (imag) coordinate; at 1.0, \ the pixel y-coordinate corresponds to the imaginary coordinate of the \ nearest point of the selected distorting shape." endparam param mode caption = "Mode" enum = "minimum" "maximum" default = 0 hint = "This parameter determines whether the closest or furthest point on the \ distorting shape is used to perturb the #pixel coordinates." endparam param trapshape caption = "Distortion Shape" enum = "line" "triangle" "isosceles" "3-asterisk" "3-star" "3-star 2" \ "polytriangle" "trigram" "nested triangles" "nested triangle 2" \ "twisted triangles" "twisted triangle 2" "3-rhombstar" \ "square" "square 2" "rhombus" "kite" "dart" "4-asterisk" \ "4-star" "flat 4-star" "4-star 2" "bowtie" "windowpane" "tetragram" "tetragram 2" \ "nested squares" "nested square 2" "twisted squares" \ "twisted square 2" "windmill" "windmill 2" \ "pentagon" "pentagon 2" "pentagram" "pentagram 2" "pentagram 3" \ "pentagram 4" "pentagram 5" "5-asterisk" "5-star" "5-star 2" "5-star 3" "nested pentagons" \ "nested pentagon 2" "twisted pentagons" "twisted pentagon 2" "5-rhombstar" \ "hexagon" "hexagon 2" "hexagram" "hexagram 2" "hexagram 3" \ "hexagram 4" "hexagram 5" "hexagram 6" "hexagram 7" "honeycomb" \ "6-asterisk" "6-star" "6-star 2" "6-star 3" "nested hexagons" "nested hexagon 2" \ "twisted hexagons" "twisted hexagon 2" "6-rhombstar" \ "zigzag-3" "zigzag-4" "zigzag-5" "zigzag-6" "zigzag-7" \ "sawtooth-1" "sawtooth-2" "sawtooth-3" "sawtooth-4" \ "square-1" "square-2" "square-3" "square-4" "peano curve" "roots of unity" \ "hand" "lissajous 1" "lissajous 2" "lissajous 3" "superellipse" "hypotrochoid" "epitrochoid" \ "collinear spots" "triangular array" "square array" "pentagonal array" "hexagonal array" \ "triangular spiral" "square spiral" "pentagonal spiral" "hexagonal spiral" "octagonal spiral" \ "nested circles" "osculant circles" \ "heptagon" "heptagon 2" "heptagram" "heptagram 2" "heptagram 3" "heptagram 4" \ "heptagram 5" "heptagram 6" "heptagram 7" "7-asterisk" "7-star" "7-star 2" "7-star 3" \ "nested heptagons" "nested heptagon 2" "twisted heptagons" "twisted heptagon 2" "7-rhombstar" \ "octagon" "octagon 2" "octagram" "octagram 2" "octagram 3" \ "octagram 4" "octagram 5" "octagram 6" "octagram 7" "octagram 8" \ "octagram 9" "octagram 10" "8-asterisk" "8-star" "8-star 2" "8-rhombstar" \ "nonagon" "nonagram" "nonagram 2" "nonagram 3" "nonagram 4" "nonagram 5" \ "nonagram 6" "nonagram 7" "9-asterisk" "9-star" "9-star 2" "9-star 3" "9-rhombstar" \ "decagon" "decagram" "decagram 2" "decagram 3" "decagram 4" "decagram 5" "10-asterisk" "10-star" \ "10-star 2" "10-star 3" "10-rhombstar" "more polygons" "more spirolaterals" default = 0 hint = "This parameter determines what geometrical figure to use for the #pixel distortion." endparam param morepolygons1 caption = "Polygon Shape" enum = "11-gon" "11-gram 1" "11-gram 2" "11-gram 3" "11-gram 4" "11-star" \ "11-star 2" "11-rhombstar" "11-asterisk" \ "12-gon" "12-gram 1" "12-gram 2" "12-gram 3" "12-gram 4" "12-gram 5" "12-star" \ "12-star 2" "12-rhombstar" "12-asterisk" \ "13-gon" "13-star" "13-rhombstar" "13-asterisk" "14-gon" "14-star" "14-rhombstar" "14-asterisk" \ "15-gon" "15-star" "15-rhombstar" "15-asterisk" \ "16-gon" "16-star" "16-rhombstar" "16-asterisk" default = 0 hint = "If 'Distortion Shape' is set to 'more polygons', this parameter determines which \ polygon shape to use to perturb the #pixel coordinates." visible = @trapshape == "more polygons" endparam param morespirolaterals1 caption = "Spirolateral Shape" enum = "1,1,1,2,3;1/2" "1,6,6,6;1/4,1/4,-5/6" "1,1,2,1,3;1/2" "1,1,2,2,4;1/2" "1,1,4,5,4;1/2" "1,2,2,2,5;1/2" \ "1,2,5,3,5;1/2" "2,2,1,4,3;1/2" "2,2,4,4,3;1/2" "2,3,5,3,2;1/2" \ "1,6,6,2;3/4,-1/4,-1/6" "1,2,1,3;-4/5" "1,2,1,3;-4/5,-4/5,0" "1,2,1,3;-4/5,-1/5,-4/5" "1,3;1/5,3/5,-1/5" \ "1,2,3,3,2,1;5/6,1/6,1/6" "1,1,3,1;-5/6,-1/6,3/7" "1,1,3,1;-1/6,1/6,-3/7" "1,1,3,1;5/6,1/6,4/7" \ "1,3,1,4,2;-1/2,1/6" default = 0 hint = "If 'Distortion Shape' is set to 'more spirolaterals', this parameter determines which \ shape to use to perturb the #pixel coordinates. Some of these settings may require reducing \ the trap size parameter." visible = @trapshape == "more spirolaterals" endparam param fixtrapbug caption = "Fix Shape Bug?" default = TRUE hint = "If enabled, an error in an early version of this formula that affected the rendering of \ some of the distorting shapes will be corrected. Disable to recover the original version." visible = ((@trapshape == "square array") || (@trapshape == "roots of unity") || (@trapshape == \ "superellipse") || (@trapshape == "hypotrochoid") || (@trapshape == "epitrochoid") || \ (@trapshape == "collinear spots") || (@trapshape == "triangular array") || (@trapshape == \ "pentagonal array") || (@trapshape == "hexagonal array") || (@trapshape == "triangular spiral") \ || (@trapshape == "square spiral") || (@trapshape == "pentagonal spiral") || (@trapshape == \ "hexagonal spiral") || (@trapshape == "octagonal spiral") || (@trapshape == "nested circles") || \ (@trapshape == "osculant circles")) endparam param nscale1 caption = "Shape Scale" default = 1.5 hint = "This parameter fixes the overall size of the distorting shape." endparam param rotate caption = "Rotation Angle" default = 0.0 min = -179.98 max = 359.98 hint = "Number of degrees (0-359) that the distorting shape should be rotated from its default position" endparam param center caption = "Center" default = (0,0) hint = "Enter coordinates of center of the distorting shape." endparam param isocheight caption = "Isosceles Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'isosceles', then this setting \ determines the height of the isosceles triangle." visible = @trapshape == "isosceles" endparam param isocwidth caption = "Isosceles Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'isosceles', then this setting \ determines the width of the isosceles triangle base." visible = @trapshape == "isosceles" endparam param fixisosceles caption = "Fix Isosceles Bug?" default = FALSE hint = "If enabled and 'Distortion Shape' is set to 'isosceles', then this \ setting corrects a bug in the scaling of the isosceles triangle." visible = @trapshape == "isosceles" endparam param leafAlength caption = "Leaf 1 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '3-asterisk', '4-asterisk', etc., \ then this setting adjusts the length of the 1st leaflet." visible = ((@trapshape == "3-asterisk") || (@trapshape == "4-asterisk") || \ (@trapshape == "5-asterisk") || (@trapshape == "6-asterisk") || (@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafBlength caption = "Leaf 2 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '3-asterisk', '4-asterisk', etc., \ then this setting adjusts the length of the 2nd leaflet." visible = ((@trapshape == "3-asterisk") || (@trapshape == "4-asterisk") || \ (@trapshape == "5-asterisk") || (@trapshape == "6-asterisk") || (@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafClength caption = "Leaf 3 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '3-asterisk', '4-asterisk', etc., \ then this setting adjusts the length of the 3rd leaflet." visible = ((@trapshape == "3-asterisk") || (@trapshape == "4-asterisk") || \ (@trapshape == "5-asterisk") || (@trapshape == "6-asterisk") || (@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafDlength caption = "Leaf 4 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '4-asterisk', '5-asterisk', etc., \ then this setting adjusts the length of the 4th leaflet." visible = ((@trapshape == "4-asterisk") || \ (@trapshape == "5-asterisk") || (@trapshape == "6-asterisk") || (@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafElength caption = "Leaf 5 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '5-asterisk', '6-asterisk', etc., \ then this setting adjusts the length of the 5th leaflet." visible = ((@trapshape == "5-asterisk") || (@trapshape == "6-asterisk") || (@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafFlength caption = "Leaf 6 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '6-asterisk', '7-asterisk', etc., \ then this setting adjusts the length of the 6th leaflet." visible = ((@trapshape == "6-asterisk") || (@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafGlength caption = "Leaf 7 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '7-asterisk', etc., \ then this setting adjusts the length of the 7th leaflet." visible = ((@trapshape == "7-asterisk") || \ (@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafHlength caption = "Leaf 8 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '8-asterisk', etc., \ then this setting adjusts the length of the 8th leaflet." visible = ((@trapshape == "8-asterisk")|| (@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafIlength caption = "Leaf 9 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '9-asterisk', etc., \ then this setting adjusts the length of the 9th leaflet." visible = ((@trapshape == "9-asterisk") || (@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafJlength caption = "Leaf 10 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to '10-asterisk', etc., \ then this setting adjusts the length of the 10th leaflet." visible = ((@trapshape == "10-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafKlength caption = "Leaf 11 Length" default = 1.0 hint = "If the Distortion Shape is set to '11-asterisk', etc., \ then this setting adjusts the length of the 11th leaflet." visible = ((@trapshape == "more polygons" && @morepolygons1 == "11-asterisk") || \ (@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param leafLlength caption = "Leaf 12 Length" default = 1.0 hint = "If the Distortion Shape is set to '12-asterisk', \ then this setting adjusts the length of the 12th leaflet." visible = ((@trapshape == "more polygons" && @morepolygons1 == "12-asterisk")) endparam param starspikiness caption = "Star Spikiness" default = 0.75 hint = "If parameter 'Distortion Shape' is set to '3-star', '4-star', etc., \ then this setting determines the length of the star points." visible = ((@trapshape == "3-star") || (@trapshape == "4-star") || \ (@trapshape == "5-star") || (@trapshape == "6-star") || (@trapshape == "7-star") || (@trapshape == "8-star") \ || (@trapshape == "9-star") || (@trapshape == "10-star") || (@trapshape == "more polygons" && @morepolygons1 == "11-star") \ || (@trapshape == "more polygons" && @morepolygons1 == "12-star")) endparam param innerscale caption = "Inner Scale" default = 1.0 hint = "If parameter 'Distortion Shape' is set to one of the 'nested' options, \ then this setting adjusts the size of the inner polygon." visible = ((@trapshape == "nested triangles") || (@trapshape == "nested \ triangle 2") || (@trapshape == "nested squares") || (@trapshape == \ "nested square 2") || (@trapshape == "nested pentagons") || \ (@trapshape == "nested pentagon 2") || (@trapshape == "nested \ hexagons") || (@trapshape == "nested heptagons") || (@trapshape == "nested heptagon 2") || \ (@trapshape == "nested hexagon 2")) endparam param rhombheight caption = "Rhombus Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'rhombus', then this setting \ determines its relative height." visible =(@trapshape == "rhombus") endparam param rhombwidth caption = "Rhombus Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'rhombus', then this setting \ determines its relative height." visible = (@trapshape == "rhombus") endparam param kiteheight caption = "Kite Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'kite', then this setting \ determines its relative height." visible = (@trapshape == "kite") endparam param kitewidth caption = "Kite Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'kite', then this setting \ determines its relative height." visible = (@trapshape == "kite") endparam param dartheight caption = "Dart Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'dart', then this setting \ determines its relative height." visible = (@trapshape == "dart") endparam param dartwidth caption = "Dart Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'dart', then this setting \ determines its relative height." visible = (@trapshape == "dart") endparam param flat4height caption = "Flat Star Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'flat 4-star', then this setting \ determines its relative height." visible = (@trapshape == "flat 4-star") endparam param flat4width caption = "Flat Star Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'flat 4-star', then this setting \ determines its relative height." visible = (@trapshape == "flat 4-star") endparam param finger1length caption = "Finger 1 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'hand', \ then this setting adjusts the length of the 1st finger." visible = (@trapshape == "hand") endparam param finger2length caption = "Finger 2 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'hand', \ then this setting adjusts the length of the 2nd finger." visible = (@trapshape == "hand" ) endparam param finger3length caption = "Finger 3 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'hand', \ then this setting adjusts the length of the 3rd finger." visible = (@trapshape == "hand") endparam param finger4length caption = "Finger 4 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'hand', \ then this setting adjusts the length of the 4th finger." visible = (@trapshape == "hand") endparam param finger5length caption = "Finger 5 Length" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'hand', \ then this setting adjusts the length of the 5th finger." visible = (@trapshape == "hand") endparam param sawheight caption = "Sawtooth Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to a 'sawtooth' option, \ then this setting adjusts the relative height of the wave." visible = ((@trapshape == "sawtooth-1") || (@trapshape == "sawtooth-2") \ || (@trapshape == "sawtooth-3") || (@trapshape == "sawtooth-4")) endparam param windheight caption = "Windblade Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'Windmill', then this setting \ adjusts the height of one of the windmill blades." visible = ((@trapshape == "windmill") || (@trapshape == "windmill 2")) endparam param windwidth caption = "Windblade Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'Windmill', then this setting \ adjusts the width of one of the windmill blades." visible = ((@trapshape == "windmill") || (@trapshape == "windmill 2")) endparam param sqrheight caption = "Squarewave Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'square-1' etc, then this setting \ adjusts the height of the square wave." visible = ((@trapshape == "square-1") || (@trapshape == "square-2") || (@trapshape == "square-3") || (@trapshape == "square-4")) endparam param sqrwidth caption = "Squarewave Width" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'square-1' etc, then this setting \ adjusts the width of the square wave." visible = ((@trapshape == "square-1") || (@trapshape == "square-2") || (@trapshape == "square-3") || (@trapshape == "square-4")) endparam param unityroot1 caption = "How Many Roots?" default = 5 min = 1 max = 16 hint = "If parameter 'Distortion Shape' is set to 'roots of unity', \ then this setting determines which set of roots to use (1-16)." visible = @trapshape == "roots of unity" endparam param singleroot1 caption = "Single Root?" default = FALSE hint = "If parameter 'Distortion Shape' is set to 'roots of unity', \ enabling this setting allows the use of just one of the roots \ as the trap, instead of using the entire set of roots." visible = @trapshape == "roots of unity" endparam param whichroot1 caption = "Which Root?" default = 1 min = 1 max = 16 hint = "If parameter 'Distortion Shape' is set to 'roots of unity' and \ 'Single Root' is enabled, then this setting determines which root to use \ (1-up to the max set by param 'How Many Roots')." visible = (@trapshape == "roots of unity" && @singleroot1) endparam param collinearspot1 caption = "How Many Spots?" default = 4 min = 1 max = 16 hint = "If parameter 'Distortion Shape' is set to 'collinear spots', \ then this setting determines the number of points to use (1-16)." visible = @trapshape == "collinear spots" endparam param squarespot1 caption = "Array Size?" default = 4 min = 2 max = 6 hint = "If parameter 'Distortion Shape' is set to 'square array', \ then this setting determines the array size (2-6)." visible = @trapshape == "square array" endparam param triarray1 caption = "Array Order?" default = 2 min = 2 max = 4 hint = "If parameter 'Distortion Shape' is set to 'triangular array', pentagonal array' etc. \ then this setting determines the array size (2-4)." visible = (@trapshape == "triangular array" || @trapshape == "pentagonal array" || @trapshape == "hexagonal array") endparam param spiralorder1 caption = "Spiral Order?" default = 2 min = 1 max = 4 hint = "If parameter 'Distortion Shape' is set to 'triangular spiral', 'square spiral', etc. \ then this setting determines the number of spiral windings (1-4)." visible = (@trapshape == "triangular spiral" || @trapshape == "square spiral" || \ @trapshape == "pentagonal spiral" || @trapshape == "hexagonal spiral" || @trapshape == "octagonal spiral") endparam param ellipseexponent1 caption = "SE1 Exponent" default = 2.5 hint = "If parameter 'Distortion Shape' is set to 'superellipse', then this parameter \ determines the exponent used for the trap." visible = (@trapshape == "superellipse") endparam param ellipseheight1 caption = "SE1 Height" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'superellipse', then this setting \ adjusts the height of the trap." visible = (@trapshape == "superellipse") endparam param ellipsewidth1 caption = "SE1 Width" default = 0.6 hint = "If parameter 'Distortion Shape' is set to 'superellipse', then this setting \ adjusts the width of the trap." visible = (@trapshape == "superellipse") endparam param hypotrochA1 caption = "Hypotro1 RadA" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'hypotrochoid' or 'epitrochoid', then this parameter \ is the radius of the fixed circle." visible = ((@trapshape == "hypotrochoid") || (@trapshape == "epitrochoid")) endparam param hypotrochB1 caption = "Hypotro1 RadB" default = 0.25 hint = "If parameter 'Distortion Shape' is set to 'hypotrochoid' or 'epitrochoid', then this parameter \ is the radius of the rolling circle. Try RadA/RadB a rational number." visible = ((@trapshape == "hypotrochoid") || (@trapshape == "epitrochoid")) endparam param hypotrochH1 caption = "Hypotro1 DistH" default = 1.25 hint = "If parameter 'Distortion Shape' is set to 'hypotrochoid' or 'epitrochoid', then this parameter \ is the distance of the point from the rolling circle center." visible = ((@trapshape == "hypotrochoid") || (@trapshape == "epitrochoid")) endparam param lissaamp1 caption = "Lissa1 Amplitude" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the amplitude of the first cosine function." visible = (@trapshape == "lissajous 3") endparam param lissafreq1 caption = "Lissa1 Frequency" default = 2.0 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the frequency of the first cosine function." visible = (@trapshape == "lissajous 3") endparam param lissaphase1 caption = "Lissa1 Phase" default = 0.0 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the phase of the first cosine function." visible = (@trapshape == "lissajous 3") endparam param lissaamp2 caption = "Lissa2 Amplitude" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the amplitude of the first cosine function." visible = (@trapshape == "lissajous 3") endparam param lissafreq2 caption = "Lissa2 Frequency" default = 4.0 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the frequency of the first cosine function." visible = (@trapshape == "lissajous 3") endparam param lissaphase2 caption = "Lissa2 Phase" default = 0.52359877559829887307710723054658 ; pi/6 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the phase of the first cosine function." visible = (@trapshape == "lissajous 3") endparam param lissadomain caption = "Lissa Domain" default = 1.0 hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then this parameter \ is the domain of the cosine functions, in multiples of pi." visible = (@trapshape == "lissajous 3") endparam param lissaopen caption = "Open Lissajous?" default = FALSE hint = "If parameter 'Distortion Shape' is set to 'lissajous 3', then enabling this parameter \ leaves the ends of the lissajous curve unconnected." visible = (@trapshape == "lissajous 3") endparam param circlenum1 caption = "Circle #" default = 2 min = 2 max = 4 hint = "If 'Distortion Shape' is set to 'nested circles' or 'osculant circles', then this setting fixes the number of circles (2-4)." visible = ((@trapshape == "nested circles") || (@trapshape == "osculant circles")) endparam }