Advertisement
Guest User

TiltRotate in Sequence

a guest
Mar 18th, 2014
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. TiltRotate:^FCentreX=120.0;^FCentreY=140.0;^FMagX=32.0;^FMagY=24.0;^FTiltMag=50.0;^FRotaMag=50.0;
  2.  
  3. [TiltRotate]
  4.  
  5. set _FDegToRad as #F1.0 / #F57.29578
  6. set _FXMin as #F-20.0
  7. set _FXMax as #F20.0
  8. set _FYMin as #F-20.0
  9. set _FYMax as #F20.0
  10. set _FZMin as #F-20.0
  11. set _FZMax as #F20.0
  12. set _FXLines as #F10.0
  13. set _FXSublines as #F10.0
  14. set _FYLines as #F10.0
  15. set _FYSublines as #F10.0
  16.  
  17. set _FTilt as *FTiltSensor * ^FTiltMag
  18. set _FRota as *FRotaSensor * ^FRotaMag
  19.  
  20. set _FRadTilt as _FTilt * _FDegToRad
  21. set _FCosTilt from RadCos _FRadTilt
  22. set _FSinTilt from RadSin _FRadTilt
  23. set _FRadRota as _FRota * _FDegToRad
  24. set _FCosRota from RadCos _FRadRota
  25. set _FSinRota from RadSin _FRadRota
  26. set _FXMean as _FXMax + _FXMin
  27. set _FXMean as _FXMean / #F2.0
  28. set _FYMean as _FYMax + _FYMin
  29. set _FYMean as _FYMean / #F2.0
  30. set _FZMean as _FZMax + _FZMin
  31. set _FZMean as _FZMean / #F2.0
  32. set _FXDiff as _FXMax - _FXMin
  33. set _FYDiff as _FYMax - _FYMin
  34. set _FZDiff as _FZMax - _FZMin
  35.  
  36. set _FXStep as _FXLines - #F1.0
  37. set _FXStep as _FXDiff / _FXStep
  38. set _FXSubstep as _FXSublines - #F1.0
  39. set _FXSubstep as _FXDiff / _FXSubstep
  40.  
  41. set _FYStep as _FYLines - #F1.0
  42. set _FYStep as _FYDiff / _FYStep
  43. set _FYSubstep as _FYSublines - #F1.0
  44. set _FYSubstep as _FYDiff / _FYSubstep
  45.  
  46. set _FXMaxx as _FXMax + #F0.1
  47. set _FYMaxx as _FYMax + #F0.1
  48.  
  49. step _FY from _FYMin to _FYMaxx increment _FYStep
  50. step _FX from _FXMin to _FXMaxx increment _FXSubstep
  51. if _FX == _FXMin
  52. gosub Calculate
  53. endif
  54. copy _FXPlot to _PLast.X
  55. copy _FYPlot to _PLast.Y
  56. gosub Calculate
  57. copy _FXPlot to _PThis.X
  58. copy _FYPlot to _PThis.Y
  59. call DrawLine _PLast _PThis #C0,255,0
  60. endstep
  61. endstep
  62.  
  63. step _FX from _FXMin to _FXMaxx increment _FXStep
  64. step _FY from _FYMin to _FYMaxx increment _FYSubstep
  65. if _FY == _FYMin
  66. gosub Calculate
  67. endif
  68. copy _FXPlot to _PLast.X
  69. copy _FYPlot to _PLast.Y
  70. gosub Calculate
  71. copy _FXPlot to _PThis.X
  72. copy _FYPlot to _PThis.Y
  73. call DrawLine _PLast _PThis #C0,255,255
  74. endstep
  75. endstep
  76.  
  77. sub Calculate
  78. set _FZX as _FX * _FX
  79. set _FZY as _FY * _FY
  80. set _FZ as _FZX + _FZY
  81. set _FZ from SquareRoot _FZ
  82. set _FZ from RadSin _FZ
  83. set _FZ2 as _FZ - _FZMean
  84. set _FZ2 as _FZ2 / _FZDiff
  85. set _FX2 as _FX - _FXMean
  86. set _FX2 as _FX2 / _FXDiff
  87. set _FY2 as _FY - _FYMean
  88. set _FY2 as _FY2 / _FYDiff
  89. set _FX3X as _FX2 * _FCosRota
  90. set _FX3Y as _FY2 * _FSinRota
  91. set _FX3 as _FX3X - _FX3Y
  92. set _FY3X as _FX2 * _FSinRota
  93. set _FY3Y as _FY2 * _FCosRota
  94. set _FY3Z as _FZ2 * _FCosTilt
  95. set _FY3XY as _FY3X + _FY3Y
  96. set _FY3S as _FY3XY * _FSinTilt
  97. set _FY3 as _FY3Z - _FY3S
  98. set _FXPlot as ^FMagX * _FX3
  99. set _FXPlot as ^FCentreX + _FXPlot
  100. set _FYPlot as ^FMagY * _FY3
  101. set _FYPlot as ^FCentreY + _FYPlot
  102. endsub
  103.  
  104. /B!"#~."$"%~."&"'~."$"(~."&")~."$"*~."&"+~.","-~.",".~.","/~.","0~/:123~/:456~/:71!~/"827~/"917~/::4!~/";2:~/"<1:~/*='%~/B==>~/*?)(~/B??>~/*@+*~/B@@>~/2A'%~/2B)(~/2C+*~/2D-"~/BDAD~/2E."~/BEAE~/2F/"~/BFBF~/2G0"~/BGBG~/*H'I~/*J)I~."("K~"~*~)2KJ~(!?~."%"L~"~*~)2LH~(!r~"~)*L%~(!2~"~+~2!"|~,~#~#~."M+!~."N3!~"~+~2!"a~,~#~."M+"~."N3"~0!!"!~/*LLE~-~$~,~#~/*KKF~-~$~,~#~."%"L~"~*~)2LH~(!?~."("K~"~*~)2KJ~(!r~"~)*K(~(!2~"~+~2!!u~,~#~#~."M+!~."N3!~"~+~2!!Z~,~#~."M+"~."N3"~0!!""~/*KKG~-~$~,~#~/*LLD~-~$~,~#~3~/:OLL~/:PKK~/*QOP~/"Q4Q~/"Q1Q~/2RQ@~/BRRC~/2SL=~/BSSA~/2TK?~/BTTB~/:US;~/:VT<~/2WUV~/:XS<~/:YT;~/:ZR8~/*[XY~/:\[9~/2]Z\~/:M^W~/*M_M~/:N`]~/*NaN~-~
  105. -
  106. _FDegToRad #F1.0 #F57.29578 #F-20.0 _FXMin #F20.0 _FXMax _FYMin _FYMax _FZMin _FZMax #F10.0 _FXLines _FXSublines _FYLines _FYSublines _FTilt *FTiltSensor ^FTiltMag _FRota *FRotaSensor ^FRotaMag _FRadTilt _FCosTilt _FSinTilt _FRadRota _FCosRota _FSinRota _FXMean #F2.0 _FYMean _FZMean _FXDiff _FYDiff _FZDiff _FXStep _FXSubstep _FYStep _FYSubstep _FXMaxx #F0.1 _FYMaxx _FY _FX _FXPlot _FYPlot _FZX _FZY _FZ _FZ2 _FX2 _FY2 _FX3X _FX3Y _FX3 _FY3X _FY3Y _FY3Z _FY3XY _FY3S _FY3 ^FMagX ^FCentreX ^FMagY ^FCentreY
  107. _PLast _PThis
  108. #C0,255,0 #C0,255,255
  109. -
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement