📄 mather.py
字号:
#!/usr/bin/env python### autohint math table builder## Copyright 1996-2000 by# David Turner, Robert Wilhelm, and Werner Lemberg.## This file is part of the FreeType project, and may only be used, modified,# and distributed under the terms of the FreeType project license,# LICENSE.TXT. By continuing to use, modify, or distribute this file you# indicate that you have read the license and understand and accept it# fully.import mathag_pi = 256def print_arctan( atan_bits ): atan_base = 1 << atan_bits print " static AH_Angle ag_arctan[1L << AG_ATAN_BITS] =" print " {" count = 0 line = " " for n in range( atan_base ): comma = "," if ( n == atan_base - 1 ): comma = "" angle = math.atan( n * 1.0 / atan_base ) / math.pi * ag_pi line = line + " " + repr( int( angle + 0.5 ) ) + comma count = count + 1; if ( count == 8 ): count = 0 print line line = " " if ( count > 0 ): print line print " };"# This routine is not used currently.#def print_sines(): print " static FT_Fixed ah_sines[AG_HALF_PI + 1] =" print " {" count = 0 line = " " for n in range( ag_pi / 2 ): sinus = math.sin( n * math.pi / ag_pi ) line = line + " " + repr( int( 65536.0 * sinus ) ) + "," count = count + 1 if ( count == 8 ): count = 0 print line line = " " if ( count > 0 ): print line print " 65536" print " };"print_arctan( 8 )print# END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -