View difference between Paste ID: GftG4r4c and VdBAfDmg
SHOW: | | - or go back to the newest paste.
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-
endsub
100+
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
-