#include<stdio.h>
#include "pic_turn.h"
/***************************************************
*
*三角函数值的定义
*
****************************************************/
#define SIN1 17 //sin1=0.01745240643728351
#define SIN2 36 //sin2=0.03489949670250097
#define SIN3 53 // sin3=0.05233595624294383
#define SIN4 72 // sin4=0.0697564737441253
#define SIN5 89 // sin5=0.08715574274765816
#define SIN6 107 // sin6=0.10452846326765346
#define SIN7 124 //sin7=0.12186934340514747
#define SIN8 142 //sin8=0.13917310096006544
#define SIN9 160 // sin9=0.15643446504023087
#define SIN10 178 //sin10=0.17364817766693033
#define SIN11 195 // sin11=0.1908089953765448
#define SIN12 212 //sin12=0.20791169081775931
#define SIN13 230 //sin13=0.22495105434386497
#define SIN14 247 //sin14=0.24192189559966773
#define SIN15 265 //sin15=0.25881904510252074
#define SIN16 282 //sin16=0.27563735581699916
#define SIN17 299 //sin17=0.2923717047227367
#define SIN18 316 //sin18=0.3090169943749474
#define SIN19 333 //sin19=0.3255681544571567
#define SIN20 350 //sin20=0.3420201433256687
#define SIN21 366 //sin21=0.35836794954530027
#define SIN22 384 //sin22=0.374606593415912
#define SIN23 400 //sin23=0.3907311284892737
#define SIN24 416 //sin24=0.40673664307580015
#define SIN25 423 //sin25=0.42261826174069944
#define SIN26 449// sin26=0.4383711467890774
#define SIN27 464 //sin27=0.45399049973954675
#define SIN28 480 //sin28=0.4694715627858908
#define SIN29 496 //sin29=0.48480962024633706
#define SIN30 512 //sin30=0.49999999999999994
#define SIN31 527 //sin31=0.5150380749100542
#define SIN32 542 //sin32=0.5299192642332049
#define SIN33 558 //sin33=0.544639035015027
#define SIN34 572 //sin34=0.5591929034707468
#define SIN35 588 //sin35=0.573576436351046
#define SIN36 602 //sin36=0.5877852522924731
#define SIN37 616 //sin37=0.6018150231520483
#define SIN38 630 //sin38=0.6156614753256583
#define SIN39 644 //sin39=0.6293203910498375
#define SIN40 658 //sin40=0.6427876096865392
#define SIN41 672 //sin41=0.6560590289905073
#define SIN42 685 //sin42=0.6691306063588582
#define SIN43 698 //sin43=0.6819983600624985
#define SIN44 711 //sin44=0.6946583704589972
#define SIN45 723 //sin45=0.7071067811865475
#define SIN46 736 //sin46=0.7193398003386511
#define SIN47 748 //sin47=0.7313537016191705
#define SIN48 761 //sin48=0.7431448254773941
#define SIN49 773 //sin49=0.7547095802227719
#define SIN50 784 //sin50=0.766044443118978
#define SIN51 796 //sin51=0.7771459614569708
#define SIN52 806 //sin52=0.7880107536067219
#define SIN53 818 //sin53=0.7986355100472928
#define SIN54 828 //sin54=0.8090169943749474
#define SIN55 839 //sin55=0.8191520442889918
#define SIN56 829 //sin56=0.8290375725550417
#define SIN57 848 //sin57=0.8386705679454239
#define SIN58 868 //sin58=0.848048096156426
#define SIN59 877 //sin59=0.8571673007021122
#define SIN60 886 //sin60=0.8660254037844386
#define SIN61 896 //sin61=0.8746197071393957
#define SIN62 904 //sin62=0.8829475928589269
#define SIN63 912 //sin63=0.8910065241883678
#define SIN64 920 //sin64=0.898794046299167
#define SIN65 928 //sin65=0.9063077870366499
#define SIN66 934 //sin66=0.9135454576426009
#define SIN67 943 //sin67=0.9205048534524404
#define SIN68 949 //sin68=0.9271838545667873
#define SIN69 955 //sin69=0.9335804264972017
#define SIN70 961 //sin70=0.9396926207859083
#define SIN71 967 //sin71=0.9455185755993167
#define SIN72 974 //sin72=0.9510565162951535
#define SIN73 978 //sin73=0.9563047559630354
#define SIN74 984 //sin74=0.9612616959383189
#define SIN75 989 //sin75=0.9659258262890683
#define SIN76 993 //sin76=0.9702957262759965
#define SIN77 997 //sin77=0.9743700647852352
#define SIN78 1001 //sin78=0.9781476007338057
#define SIN79 1005 //sin79=0.981627183447664
#define SIN80 1008 //sin80=0.984807753012208
#define SIN81 1011 //sin81=0.9876883405951378
#define SIN82 1013 //sin82=0.9902680687415704
#define SIN83 1017 //sin83=0.992546151641322
#define SIN84 1018 //sin84=0.9945218953682733
#define SIN85 1019 //sin85=0.9961946980917455
#define SIN86 1020 //sin86=0.9975640502598242
#define SIN87 1021 //sin87=0.9986295347545738
#define SIN88 1022 //sin88=0.9993908270190958
#define SIN89 1023 //sin89=0.9998476951563913
#define SIN90 1024 // sin90=1
#define MINLEN(x1,x2,x3) (x3>(x1>x2?x2:x1)?(x1>x2?x2:x1):x3)
#define MAXLEN(x1,x2,x3) (x3>(x1>x2?x1:x2)?x3:(x1>x2?x1:x2))
INT psin[360] =
{SIN1,SIN2,SIN3,SIN4,SIN5,SIN6,SIN7,SIN8,SIN9,SIN10,
SIN11,SIN12,SIN13,SIN14,SIN15,SIN16,SIN17,SIN18,SIN19,SIN20,
SIN21,SIN22,SIN23,SIN24,SIN25,SIN26,SIN27,SIN28,SIN29,SIN30,
SIN31,SIN32,SIN33,SIN34,SIN35,SIN36,SIN37,SIN38,SIN39,SIN40,
SIN41,SIN42,SIN43,SIN44,SIN45,SIN46,SIN47,SIN48,SIN49,SIN50,
SIN51,SIN52,SIN53,SIN54,SIN55,SIN56,SIN57,SIN58,SIN59,SIN60,
SIN61,SIN62,SIN63,SIN64,SIN65,SIN66,SIN67,SIN68,SIN69,SIN70,
SIN71,SIN72,SIN73,SIN74,SIN75,SIN76,SIN77,SIN78,SIN79,SIN80,
SIN81,SIN82,SIN83,SIN84,SIN85,SIN86,SIN87,SIN88,SIN89,SIN90,
SIN89,SIN88,SIN87,SIN86,SIN85,SIN84,SIN83,SIN82,SIN81,SIN80,
SIN79,SIN78,SIN77,SIN76,SIN75,SIN74,SIN73,SIN72,SIN71,SIN70,
SIN69,SIN68,SIN67,SIN66,SIN65,SIN64,SIN63,SIN62,SIN61,SIN60,
SIN59,SIN58,SIN57,SIN56,SIN55,SIN54,SIN53,SIN52,SIN51,SIN50,
SIN49,SIN48,SIN47,SIN46,SIN45,SIN44,SIN43,SIN42,SIN41,SIN40,
SIN39,SIN38,SIN37,SIN36,SIN35,SIN34,SIN33,SIN32,SIN31,SIN30,
SIN29,SIN28,SIN27,SIN26,SIN25,SIN24,SIN23,SIN22,SIN21,SIN20,
SIN19,SIN18,SIN17,SIN16,SIN15,SIN14,SIN13,SIN12,SIN11,SIN10,
SIN9,SIN8,SIN7,SIN6,SIN5,SIN4,SIN3,SIN2,SIN1,0,
-SIN1,-SIN2,-SIN3,-SIN4,-SIN5,-SIN6,-SIN7,-SIN8,-SIN9,-SIN10,
-SIN11,-SIN12,-SIN13,-SIN14,-SIN15,-SIN16,-SIN17,-SIN18,-SIN19,-SIN20,
-SIN21,-SIN22,-SIN23,-SIN24,-SIN25,-SIN26,-SIN27,-SIN28,-SIN29,-SIN30,
-SIN31,-SIN32,-SIN33,-SIN34,-SIN35,-SIN36,-SIN37,-SIN38,-SIN39,-SIN40,
-SIN41,-SIN42,-SIN43,-SIN44,-SIN45,-SIN46,-SIN47,-SIN48,-SIN49,-SIN50,
-SIN51,-SIN52,-SIN53,-SIN54,-SIN55,-SIN56,-SIN57,-SIN58,-SIN59,-SIN60,
-SIN61,-SIN62,-SIN63,-SIN64,-SIN65,-SIN66,-SIN67,-SIN68,-SIN69,-SIN70,
-SIN71,-SIN72,-SIN73,-SIN74,-SIN75,-SIN76,-SIN77,-SIN78,-SIN79,-SIN80,
-SIN81,-SIN82,-SIN83,-SIN84,-SIN85,-SIN86,-SIN87,-SIN88,-SIN89,-SIN90,
-SIN89,-SIN88,-SIN87,-SIN86,-SIN85,-SIN84,-SIN83,-SIN82,-SIN81,-SIN80,
-SIN79,-SIN78,-SIN77,-SIN76,-SIN75,-SIN74,-SIN73,-SIN72,-SIN71,-SIN70,
-SIN69,-SIN68,-SIN67,-SIN66,-SIN65,-SIN64,-SIN63,-SIN62,-SIN61,-SIN60,
-SIN59,-SIN58,-SIN57,-SIN56,-SIN55,-SIN54,-SIN53,-SIN52,-SIN51,-SIN50,
-SIN49,-SIN48,-SIN47,-SIN46,-SIN45,-SIN44,-SIN43,-SIN42,-SIN41,-SIN40,
-SIN39,-SIN38,-SIN37,-SIN36,-SIN35,-SIN34,-SIN33,-SIN32,-SIN31,-SIN30,
-SIN29,-SIN28,-SIN27,-SIN26,-SIN25,-SIN24,-SIN23,-SIN22,-SIN21,-SIN20,
-SIN19,-SIN18,-SIN17,-SIN16,-SIN15,-SIN14,-SIN13,-SIN12,-SIN11,-SIN10,
-SIN9,-SIN8,-SIN7,-SIN6,-SIN5,-SIN4,-SIN3,-SIN2,-SIN1,0};
INT pcos[360] =
{SIN89,SIN88,SIN87,SIN86,SIN85,SIN84,SIN83,SIN82,SIN81,SIN80,
SIN79,SIN78,SIN77,SIN76,SIN75,SIN74,SIN73,SIN72,SIN71,SIN70,
SIN69,SIN68,SIN67,SIN66,SIN65,SIN64,SIN63,SIN62,SIN61,SIN60,
SIN59,SIN58,SIN57,SIN56,SIN55,SIN54,SIN53,SIN52,SIN51,SIN50,
SIN49,SIN48,SIN47,SIN46,SIN45,SIN44,SIN43,SIN42,SIN41,SIN40,
SIN39,SIN38,SIN37,SIN36,SIN35,SIN34,SIN33,SIN32,SIN31,SIN30,
SIN29,SIN28,SIN27,SIN26,SIN25,SIN24,SIN23,SIN22,SIN21,SIN20,
SIN19,SIN18,SIN17,SIN16,SIN15,SIN14,SIN13,SIN12,SIN11,SIN10,
SIN9,SIN8,SIN7,SIN6,SIN5,SIN4,SIN3,SIN2,SIN1,0,
-SIN1,-SIN2,-SIN3,-SIN4,-SIN5,-SIN6,-SIN7,-SIN8,-SIN9,-SIN10,
-SIN11,-SIN12,-SIN13,-SIN14,-SIN15,-SIN16,-SIN17,-SIN18,-SIN19,-SIN20,
-SIN21,-SIN22,-SIN23,-SIN24,-SIN25,-SIN26,-SIN27,-SIN28,-SIN29,-SIN30,
-SIN31,-SIN32,-SIN33,-SIN34,-SIN35,-SIN36,-SIN37,-SIN38,-SIN39,-SIN40,
-SIN41,-SIN42,-SIN43,-SIN44,-SIN45,-SIN46,-SIN47,-SIN48,-SIN49,-SIN50,
-SIN51,-SIN52,-SIN53,