| Index: third_party/freetype2/src/src/tools/cordic.py
|
| diff --git a/third_party/freetype2/src/src/tools/cordic.py b/third_party/freetype2/src/src/tools/cordic.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..6742c90dfefb8ccd92cce7013b83125e0c055796
|
| --- /dev/null
|
| +++ b/third_party/freetype2/src/src/tools/cordic.py
|
| @@ -0,0 +1,33 @@
|
| +# compute arctangent table for CORDIC computations in fttrigon.c
|
| +import sys, math
|
| +
|
| +#units = 64*65536.0 # don't change !!
|
| +units = 180 * 2**16
|
| +scale = units/math.pi
|
| +shrink = 1.0
|
| +comma = ""
|
| +
|
| +print ""
|
| +print "table of arctan( 1/2^n ) for PI = " + repr(units/65536.0) + " units"
|
| +
|
| +for n in range(1,32):
|
| +
|
| + x = 0.5**n # tangent value
|
| +
|
| + angle = math.atan(x) # arctangent
|
| + angle2 = round(angle*scale) # arctangent in FT_Angle units
|
| +
|
| + if angle2 <= 0:
|
| + break
|
| +
|
| + sys.stdout.write( comma + repr( int(angle2) ) )
|
| + comma = ", "
|
| +
|
| + shrink /= math.sqrt( 1 + x*x )
|
| +
|
| +print
|
| +print "shrink factor = " + repr( shrink )
|
| +print "shrink factor 2 = " + repr( int( shrink * (2**32) ) )
|
| +print "expansion factor = " + repr( 1/shrink )
|
| +print ""
|
| +
|
|
|