tracksperanto 1.9.5 → 1.9.6

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,3 +1,8 @@
1
+ === 1.9.6 / 2010-06-17
2
+
3
+ * Support Tracker nodes in Shake scripts that come from an old (ages old!) Shake version
4
+ * Only parse channels that are actually relevant in the Flame importer
5
+
1
6
  === 1.9.5 / 2010-05-17
2
7
 
3
8
  * More stringently check for trackers in the Shake script importer (helps from recognizing arbitrary variables as trackers)
data/Manifest.txt CHANGED
@@ -111,6 +111,7 @@ test/import/samples/shake_script/shake_trackers_with_Nspline.shk
111
111
  test/import/samples/shake_script/stabilize_nodes_with_hermite.shk
112
112
  test/import/samples/shake_script/three_tracks_in_one_stabilizer.shk
113
113
  test/import/samples/shake_script/two_tracks_in_one_tracker.shk
114
+ test/import/samples/shake_script/oldTrackerNode.shk
114
115
  test/import/samples/shake_text/one_shake_tracker.txt
115
116
  test/import/samples/shake_text/one_shake_tracker_from_first.txt
116
117
  test/import/samples/shake_text/two_shake_trackers.txt
@@ -139,21 +139,23 @@ Channel tracker1/ref/x
139
139
  Colour 50 50 50
140
140
  End
141
141
  =end
142
+
142
143
  def extract_channels_from_stream(io)
143
144
  channels = []
144
145
  channel_matcher = /Channel (.+)\n/
145
146
  until io.eof?
146
147
  line = io.gets
147
- if line =~ channel_matcher
148
+ if line =~ channel_matcher && channel_is_useful?(line)
148
149
  report_progress("Extracting channel #{$1}")
149
- channels << extract_channel_from(io, $1)
150
+ channels << ChannelBlock.new(io, $1)
150
151
  end
151
152
  end
152
153
  channels
153
154
  end
154
155
 
155
- def extract_channel_from(io, channel_name)
156
- ChannelBlock.new(io, channel_name)
156
+ USEFUL_CHANNELS = %w( /shift/x /shift/y /ref/x /ref/y ).map(&Regexp.method(:new))
157
+ def channel_is_useful?(channel_name)
158
+ USEFUL_CHANNELS.any?{|e| channel_name =~ e }
157
159
  end
158
160
 
159
161
  REF_CHANNEL = "ref" # or "track" - sometimes works sometimes don't
@@ -71,7 +71,7 @@ module Tracksperanto::ShakeGrammar
71
71
  elsif (c == ";" || c == "\n")
72
72
  # Skip these - the subexpression already is expanded anyway
73
73
  elsif (c == "=")
74
- push [:assign, @buf.strip, self.class.new(@io, @sentinel, to_semicolon = true, @stack_depth + 1).stack.shift]
74
+ push [:assign, vardef(@buf.strip), self.class.new(@io, @sentinel, to_semicolon = true, @stack_depth + 1).stack.shift]
75
75
  @buf = ''
76
76
  else
77
77
  @buf << c
@@ -115,5 +115,9 @@ module Tracksperanto::ShakeGrammar
115
115
  def push(atom_array)
116
116
  @stack << atom_array
117
117
  end
118
+
119
+ def vardef(var_specifier)
120
+ [:vardef] + var_specifier.split
121
+ end
118
122
  end
119
123
  end
@@ -17,22 +17,22 @@ class Tracksperanto::Import::ShakeScript < Tracksperanto::Import::Base
17
17
 
18
18
  # Normally, we wouldn't need to look for the variable name from inside of the funcall. However,
19
19
  # in this case we DO want to take this shortcut so we know how the tracker node is called
20
- def push(atom)
21
- return super unless (atom.is_a?(Array) && atom[0] == :assign)
22
- return super unless (atom[2][0] == :retval)
23
- return super unless (atom[2][1].is_a?(Array))
24
- return super unless (atom[2][1][0].is_a?(Tracksperanto::Tracker))
25
-
26
- node_name = atom[1]
27
- atom[2][1].map do | tracker |
28
- tracker.name = [node_name, tracker.name].join("_")
29
- sentinel[0].push(tracker)
30
- end
31
- end
20
+ def push(atom)
21
+ return super unless (atom.is_a?(Array)) &&
22
+ (atom[0] == :assign) &&
23
+ (atom[2][0] == :retval) &&
24
+ (atom[2][1][0] == :trk)
25
+ node_name = atom[1][-1]
26
+ trackers = atom[2][1][1..-1]
27
+ trackers.map do | tracker |
28
+ tracker.name = [node_name, tracker.name].join("_")
29
+ sentinel[0].push(tracker)
30
+ end
31
+ end
32
32
 
33
33
  # For Linear() curve calls. If someone selected JSpline or Hermite it's his problem.
34
34
  # We put the frame number at the beginning since it works witih oru tuple zipper
35
- def linear(first_arg, *keyframes)
35
+ def linear(extrapolation_type, *keyframes)
36
36
  report_progress("Translating Linear animation")
37
37
  keyframes.map { |kf| [kf.at, kf.value] }
38
38
  end
@@ -43,7 +43,7 @@ class Tracksperanto::Import::ShakeScript < Tracksperanto::Import::Base
43
43
  # Hermite(0,[1379.04,-0.02,-0.02]@1,[1379.04,-0.03,-0.03]@2)
44
44
  # The first value in the array is the keyframe value, the other two are
45
45
  # tangent positions (which we discard)
46
- def hermite(initial_value, *keyframes)
46
+ def hermite(extrapolation_type, *keyframes)
47
47
  report_progress("Translating Hermite curve, removing tangents")
48
48
  keyframes.map{ |kf| [kf.at, kf.value[0]] }
49
49
  end
@@ -62,11 +62,16 @@ class Tracksperanto::Import::ShakeScript < Tracksperanto::Import::Base
62
62
  # ...
63
63
  # );
64
64
  def tracker(input, trackRange, subPixelRes, matchSpace,
65
- referenceTolerance, referenceBehavior, failureTolerance, failureBehavior, limitProcessing, referencFrame, s1, s2,
66
- s3, s4, s5, s6, *trackers)
65
+ referenceTolerance, referenceBehavior, failureTolerance, failureBehavior, limitProcessing, referencFrame,
66
+ s1, s2, s3, s4, s5, s6, *trackers)
67
+ flat_tracks = if (s1 == "v2.0") # The Shake version stupid Winfucks users didn't get
68
+ trackers
69
+ else
70
+ [s1, s2, s3, s4, s4, s6] + trackers
71
+ end
67
72
 
68
73
  report_progress("Parsing Tracker node")
69
- collect_trackers_from(trackers)
74
+ collect_trackers_from(flat_tracks).unshift(:trk)
70
75
  end
71
76
 
72
77
  # stabilize {
@@ -112,7 +117,7 @@ class Tracksperanto::Import::ShakeScript < Tracksperanto::Import::Base
112
117
  collect_stabilizer_tracker("track2", track2X, track2Y),
113
118
  collect_stabilizer_tracker("track3", track3X, track3Y),
114
119
  collect_stabilizer_tracker("track4", track4X, track4Y),
115
- ].compact
120
+ ].compact.unshift(:trk)
116
121
  end
117
122
 
118
123
  # image = MatchMove(
@@ -179,7 +184,7 @@ class Tracksperanto::Import::ShakeScript < Tracksperanto::Import::Base
179
184
  collect_stabilizer_tracker("track2", track2X, track2Y),
180
185
  collect_stabilizer_tracker("track3", track3X, track3Y),
181
186
  collect_stabilizer_tracker("track4", track4X, track4Y),
182
- ].compact
187
+ ].compact.unshift(:trk)
183
188
  end
184
189
 
185
190
  private
data/lib/tracksperanto.rb CHANGED
@@ -4,7 +4,7 @@ require 'tempfile'
4
4
 
5
5
  module Tracksperanto
6
6
  PATH = File.expand_path(File.dirname(__FILE__))
7
- VERSION = '1.9.5'
7
+ VERSION = '1.9.6'
8
8
 
9
9
  module Import; end
10
10
  module Export; end
@@ -0,0 +1,5 @@
1
+ Copy_tracker = Tracker (0, "1-850", "1/64", "luminance", 0.75, "use start frame", 0.5, "stop", 1, 9,
2
+ "exportedTrack_1",
3
+ Linear (1, 3698.31297286@1, 3700.02524579@2, 3699.89231131@3, 3698.81025824@4, 3698.93025502@5, 3698.47044269@6, 3696.80762324@7, 3696.95871813@8, 3695.23994096@9, 3693.06314877@10, 3691.42457872@11, 3690.42644378@12, 3688.51580618@13, 3685.88044899@14, 3684.59436626@15, 3683.43889333@16, 3683.36840354@17, 3682.44688542@18, 3682.68846195@19, 3681.7871957@20, 3682.87734925@21, 3683.52885086@22, 3687.47246493@23, 3687.61504231@24, 3691.77288438@25, 3691.86375822@26, 3693.11901882@27, 3694.30792471@28, 3695.58474303@29, 3696.3704646@30, 3698.7323504@31, 3699.53437996@32, 3700.34764964@33, 3698.46592847@34, 3697.23217818@35, 3699.06258288@36, 3699.20444518@37, 3699.74082832@38, 3699.4157272@39, 3699.90924564@40, 3701.41186363@41, 3702.28363643@42, 3703.38604631@43, 3703.77891095@44, 3705.92840699@45, 3706.45469593@46, 3710.06358021@47, 3709.63346199@48, 3710.46220307@49, 3708.94183737@50, 3709.24153148@51, 3708.92802238@52, 3710.93290484@53, 3710.5225874@54, 3708.43067406@55, 3705.17458766@56, 3703.81263907@57, 3700.90233503@58, 3700.31513405@59, 3697.57466682@60, 3696.11393255@61, 3693.90550891@62, 3692.708127@63, 3690.21931151@64, 3691.56012197@65, 3691.51967957@66, 3692.25254677@67, 3691.81943408@68, 3691.34400296@69, 3690.30569863@70, 3690.78604198@71, 3692.27738158@72, 3694.43579432@73, 3696.6667985@74, 3699.66688305@75, 3701.4645196@76, 3705.1730365@77, 3706.07827355@78, 3707.53989183@79, 3711.17737242@80, 3713.57755558@81, 3714.83269665@82, 3716.66789681@83, 3718.54015128@84, 3723.38471065@85, 3727.03628784@86, 3735.03375613@87, 3741.43475953@88, 3747.87203059@89, 3754.9593061@90, 3761.00842311@91, 3767.18726363@92, 3772.87676191@93, 3778.14804104@94, 3781.70940165@95, 3784.03662941@96, 3788.9940376@97, 3790.4315343@98, 3792.21783486@99, 3792.30579082@100, 3793.58028768@101, 3791.14974943@102, 3790.05999535@103, 3788.81402898@104, 3785.99411107@105, 3783.95888702@106, 3785.30566867@107, 3786.40891263@108, 3785.60629533@109, 3786.39614276@110, 3787.14960264@111, 3788.78020781@112, 3791.52659007@113, 3792.10074582@114, 3793.6929993@115, 3793.144114@116, 3793.94813474@117, 3793.56745924@118, 3794.72485524@119, 3794.84497899@120, 3795.17325481@121, 3794.48973694@122, 3795.39390202@123, 3796.14484407@124, 3796.72518145@125, 3793.7272513@126, 3795.5435874@127, 3797.78730628@128, 3797.60697188@129, 3798.08975247@130, 3799.15893453@131, 3799.35345176@132, 3800.53492586@133, 3800.84114459@134, 3802.77999226@135, 3804.29233181@136, 3807.25466812@137, 3809.6349253@138, 3812.05794544@139, 3814.61149929@140, 3817.7964572@141, 3819.64449148@142, 3820.73155388@143, 3818.61000851@144, 3818.17931452@145, 3814.86034826@146, 3815.02559225@147, 3816.31797925@148, 3818.93287735@149, 3821.3619592@150, 3823.35199883@151, 3826.64811699@152, 3828.84852303@153, 3830.2265918@154, 3834.0711032@155, 3836.80226114@156, 3841.36663464@157, 3843.42021641@158, 3845.60497471@159, 3847.75945632@160, 3850.05232417@161, 3850.00275387@162, 3849.64410194@163, 3846.99746976@164, 3848.6333016@165, 3848.07675651@166, 3849.3226041@167, 3847.47584582@168, 3846.73045649@169, 3843.7534932@170, 3842.80283559@171, 3843.79981513@172, 3844.21698748@173, 3843.46288931@174, 3844.91665362@175, 3844.82949584@176, 3844.98872142@177, 3846.02794426@178, 3847.34022518@179, 3849.66036934@180, 3850.89100323@181, 3853.10382123@182, 3853.64082452@183, 3851.3850579@184, 3852.80747479@185, 3852.95468822@186, 3856.32952934@187, 3857.57613554@188, 3860.32753411@189, 3859.8743284@190, 3861.83291205@191, 3862.24571941@192, 3863.91390386@193, 3864.4031452@194, 3862.98966402@195, 3863.44885181@196, 3862.84641413@197, 3862.21470577@198, 3860.52058994@199, 3858.48529007@200, 3858.55404301@201, 3856.37065161@202, 3855.93186068@203, 3856.23843088@204, 3855.60134403@205, 3853.78697354@206, 3855.6605796@207, 3855.86513797@208, 3857.60209586@209, 3855.70396333@210, 3855.07953047@211, 3853.69247827@212, 3853.45451837@213, 3854.46877807@214, 3853.96240868@215, 3852.67398316@216, 3856.79700485@217, 3853.62781374@218, 3851.63964338@219, 3849.95285467@220, 3850.42399019@221, 3850.06865435@222, 3848.00106902@223, 3850.40994491@224, 3846.97924964@225, 3844.24779044@226, 3846.47675839@227, 3845.50690801@228, 3831.72772069@229, 3818.40422244@230, 3828.66600686@231, 3841.48391805@232, 3845.70603652@233, 3847.21058501@234, 3846.59070412@235, 3849.30051382@236, 3862.30123056@237, 3863.46125939@238, 3860.08884466@239, 3857.81785209@240, 3860.60893113@241, 3855.97700483@242, 3854.6747322@243, 3856.57313268@244, 3859.80649866@245, 3856.10574408@246, 3859.83449557@247, 3868.98212891@248, 3861.25116848@249, 3857.89196262@250, 3862.2947868@251, 3865.60450192@252, 3857.71368881@253, 3853.86529744@254, 3854.71474449@255, 3840.99879476@256, 3836.77146397@257, 3843.18184309@258, 3855.23962994@259, 3857.33983397@260, 3860.03681016@261, 3866.62679179@262, 3868.85480316@263, 3869.82442304@264, 3867.93332729@265, 3869.42874321@266, 3870.40168545@267, 3871.17751143@268, 3874.18657093@269, 3874.92385558@270, 3880.40508167@271, 3879.23438001@272, 3881.68311852@273, 3885.511908@274, 3891.83826797@275, 3892.65389168@276, 3887.1673963@277, 3890.91095465@278, 3893.40838927@279, 3892.45324895@280, 3891.99249824@281, 3893.58960354@282, 3895.26768499@283, 3898.00601117@284, 3901.62708941@285, 3894.54214573@286, 3889.84151007@287, 3891.65352039@288, 3898.66396595@289, 3892.68603195@290, 3887.70355915@291, 3894.0429425@292, 3895.69896043@293, 3892.6258862@294, 3889.38033282@295, 3887.32522841@296, 3886.38988425@297, 3885.25458949@298, 3890.66195018@299, 3893.59094193@300, 3891.71728242@301, 3888.02472225@302, 3887.06941825@303, 3874.21205443@304, 3866.30681331@305, 3867.41874337@306, 3872.22977535@307, 3861.26856488@308, 3857.26962877@309, 3873.72281395@310, 3883.0605135@311, 3863.71678352@312, 3853.23239507@313, 3858.02193224@314, 3849.64772375@315, 3841.34240678@316, 3843.02413921@317, 3843.46792703@318, 3831.72910126@319, 3832.34632956@320, 3831.48784966@321, 3827.15039223@322, 3819.50307185@323, 3812.71222869@324, 3809.60595479@325, 3800.33206396@326, 3800.41448454@327, 3799.89847776@328, 3802.06844539@329, 3796.83505836@330, 3796.5322747@331, 3792.00134264@332, 3789.72899636@333, 3780.90510901@334, 3776.72848789@335, 3777.84928958@336, 3779.28943922@337, 3770.67913165@338, 3754.15938621@339, 3757.33977554@340, 3762.01828814@341, 3764.52799912@342, 3757.84183417@343, 3758.25044439@344, 3754.22653678@345, 3747.50969539@346, 3746.65753831@347, 3742.42270383@348, 3741.71294101@349, 3735.37084117@350, 3730.8772712@351, 3727.42078441@352, 3714.21324556@353, 3699.73133843@354, 3690.63518588@355, 3694.66406486@356, 3691.41550168@357, 3694.48515571@358, 3695.0109566@359, 3688.11733558@360, 3672.63365822@361, 3661.9349669@362, 3663.26300357@363, 3661.74122453@364, 3657.95122321@365, 3661.83010488@366, 3663.40743624@367, 3661.7282387@368, 3660.65743866@369, 3660.3415895@370, 3652.36367916@371, 3658.42164695@372, 3665.85530813@373, 3662.62649212@374, 3654.32188822@375, 3649.92036357@376, 3641.44147232@377, 3639.51841362@378, 3649.24844621@379, 3648.58995911@380, 3642.77926388@381, 3645.49917515@382, 3626.70737839@383, 3603.18104327@384, 3610.50669259@385, 3614.97144613@386, 3615.78450453@387, 3627.72714929@388, 3633.59709818@389, 3619.95285437@390, 3620.52555993@391, 3618.26797302@392, 3617.09751065@393, 3612.6637476@394, 3605.6207551@395, 3603.77593058@396, 3599.35842065@397, 3598.09276027@398, 3599.66735211@399, 3600.98251492@400, 3594.66271658@401, 3583.59656435@402, 3581.46437391@403, 3567.22495932@404, 3560.84593098@405, 3553.28716248@406, 3560.69055223@407, 3556.43342455@408, 3552.78108983@409, 3534.59166445@410, 3529.76805871@411, 3530.97633661@412, 3519.92062164@413, 3507.30248804@414, 3502.41090637@415, 3503.9808841@416, 3492.59276474@417, 3458.88760154@418, 3408.93313681@419, 3381.01549049@420, 3382.97441734@421, 3383.34265318@422, 3399.12916582@423, 3413.70349776@424, 3405.4944877@425, 3402.80869647@426, 3409.74476684@427, 3405.69244113@428, 3405.63972299@429, 3400.28970767@430, 3411.14476@431, 3429.03501253@432, 3423.9558541@433, 3410.86588368@434, 3422.0312158@435, 3431.30483771@436, 3414.03425563@437, 3405.37407845@438, 3414.71068469@439, 3412.85521807@440, 3404.55416025@441, 3400.8297344@442, 3407.85329863@443, 3412.36882134@444, 3422.79091561@445, 3422.41765319@446, 3429.10785469@447, 3436.14775718@448, 3439.26540905@449, 3436.30852601@450, 3429.69403418@451, 3442.77503599@452, 3444.27412084@453, 3450.90320074@454, 3448.74728401@455, 3445.23226862@456, 3442.38498605@457, 3448.58944405@458, 3450.77905941@459, 3451.48828453@460, 3452.83910223@461, 3456.13942385@462, 3461.87488898@463, 3461.69031403@464, 3457.78122484@465, 3463.86925158@466, 3461.55439413@467, 3447.59107714@468, 3443.96742814@469, 3444.93727782@470, 3446.3819784@471, 3440.59880741@472, 3437.08144627@473, 3420.91260233@474, 3419.25172204@475, 3411.58358737@476, 3411.11693153@477, 3401.23565963@478, 3389.3141881@479, 3349.33333638@480, 3339.8225189@481, 3359.7033789@482, 3369.39930455@483, 3363.20384433@484, 3348.77692954@485, 3353.44443092@486, 3353.25423585@487, 3352.4792505@488, 3347.91123021@489, 3357.27487628@490, 3360.07184101@491, 3374.23073436@492, 3367.50747834@493, 3370.67100423@494, 3367.77549275@495, 3370.69493794@496, 3365.61918638@497, 3362.42013929@498, 3359.30126702@499, 3360.98943133@500, 3351.7761851@501, 3336.19798211@502, 3334.02711139@503, 3350.50008375@504, 3362.54245868@505, 3348.5561803@506, 3349.66538557@507, 3354.70604844@508, 3340.70911534@509, 3311.08569442@510, 3300.15451079@511, 3312.36472372@512, 3337.6062533@513, 3329.72068598@514, 3328.5482694@515, 3346.04692851@516, 3352.46753545@517, 3345.63453176@518, 3335.40593749@519, 3341.21700679@520, 3349.09424817@521, 3361.4278378@522, 3367.96147752@523, 3368.84605823@524, 3373.7713798@525, 3379.2898468@526, 3375.43564431@527, 3368.77922261@528, 3366.32166867@529, 3359.17397476@530, 3353.00111957@531, 3346.37219658@532, 3346.60387354@533, 3360.56706872@534, 3380.50015024@535, 3378.22504007@536, 3364.68601792@537, 3366.40543543@538, 3359.72356424@539, 3351.32159385@540, 3335.04644652@541, 3323.35911462@542, 3319.88223228@543, 3324.24541028@544, 3320.98595813@545, 3309.80885125@546, 3301.73985823@547, 3299.3906904@548, 3300.43228885@549, 3290.00868086@550, 3280.83606044@551, 3288.3919463@552, 3289.3588844@553, 3283.35903623@554, 3284.54191239@555, 3289.76220441@556, 3284.82619401@557, 3276.89809615@558, 3276.45595423@559, 3259.88388477@560, 3234.78655536@561, 3239.5396511@562, 3247.52684672@563, 3243.66115022@564, 3236.91445277@565, 3245.60005971@566, 3242.10009963@567, 3246.09178979@568, 3246.5048699@569, 3243.64208797@570, 3234.24504644@571, 3223.14742258@572, 3215.37307301@573, 3229.41285145@574, 3251.63292493@575, 3256.47402322@576, 3237.20238618@577, 3238.61523461@578, 3249.29542958@579, 3249.74666561@580, 3246.09638998@581, 3236.58719859@582, 3211.22984367@583, 3188.49119568@584, 3189.29472131@585, 3183.93221651@586, 3178.12922541@587, 3167.42085959@588, 3167.5180082@589, 3191.25826603@590, 3242.62256081@591, 3246.15228889@592, 3224.26605182@593, 3212.27703778@594, 3226.42922929@595, 3212.46275657@596, 3185.82132208@597, 3163.10980833@598, 3175.74569203@599, 3189.81933045@600, 3193.38798414@601, 3175.90467452@602, 3172.30544659@603, 3181.47915685@604, 3201.88321141@605, 3214.16168963@606, 3206.06631612@607, 3195.86581081@608, 3220.75096847@609, 3244.32750244@610, 3217.6113271@611, 3194.5605935@612, 3206.20729683@613, 3193.46636128@614, 3156.1268684@615, 3130.04078078@616, 3145.21230725@617, 3168.50186974@618, 3166.25358017@619, 3140.88946671@620, 3142.37721056@621, 3172.82114302@622, 3190.12322534@623, 3169.05821187@624, 3157.96679284@625, 3161.35986076@626, 3151.32958891@627, 3138.14266225@628, 3146.86375404@629, 3168.4659646@630, 3177.77122246@631, 3167.86108762@632, 3160.37103182@633, 3155.27384301@634, 3147.1579727@635, 3115.5658751@636, 3087.91413359@637, 3090.57858785@638, 3107.08635448@639, 3097.83315678@640, 3064.78084151@641, 3051.42298505@642, 3066.88949629@643, 3086.35821774@644, 3085.22393148@645, 3083.58109009@646, 3094.57848854@647, 3110.89922123@648, 3110.93336831@649, 3092.66274853@650, 3087.76043353@651, 3111.06187133@652, 3137.08322971@653, 3126.21192543@654, 3120.58693732@655, 3128.40494891@656, 3129.17459969@657, 3116.35244353@658, 3110.41034942@659, 3112.84406151@660, 3120.09580059@661, 3115.49249625@662, 3111.72372694@663, 3114.39488515@664, 3128.17787271@665, 3138.33389828@666, 3130.56030137@667, 3117.25975596@668, 3131.52150485@669, 3135.52952481@670, 3133.43635509@671, 3125.90576505@672, 3130.84303741@673, 3130.63902634@674, 3136.25620672@675, 3133.59681854@676, 3131.28325936@677, 3131.76075866@678, 3133.66038884@679, 3125.75885297@680, 3128.01392459@681, 3137.79920434@682, 3135.66992167@683, 3133.64725874@684, 3125.45139817@685, 3122.9830105@686, 3122.97366857@687, 3120.68605219@688, 3117.6614883@689, 3113.29997297@690, 3109.53829522@691, 3107.83766887@692, 3103.08857843@693, 3095.84292487@694, 3089.77352289@695, 3089.87091629@696, 3087.357151@697, 3084.47384211@698, 3082.95552652@699, 3081.22983539@700, 3079.10297176@701, 3076.47375878@702, 3071.91495954@703, 3067.15085916@704, 3063.1598493@705, 3059.50089902@706, 3057.44337603@707, 3054.75788621@708, 3051.36558587@709, 3051.07057256@710, 3051.01437318@711, 3049.43051894@712, 3049.47327407@713, 3048.5684154@714, 3051.00193046@715, 3051.84467524@716, 3052.20280344@717, 3050.43287753@718, 3046.88146927@719, 3044.42131976@720, 3044.13850983@721, 3041.17608402@722, 3041.0844573@723, 3041.31658872@724, 3042.51282081@725, 3041.56702414@726, 3041.31230334@727, 3041.01442123@728, 3040.75498117@729, 3040.32302084@730, 3042.09231391@731, 3042.55500844@732, 3042.01344503@733, 3041.80664911@734, 3043.6409351@735, 3044.69101261@736, 3047.33753901@737, 3048.84114524@738, 3050.52858401@739, 3051.46415259@740, 3051.41870954@741, 3050.53221169@742, 3051.71194225@743, 3050.67212208@744, 3050.97872244@745, 3050.92849652@746, 3049.72071816@747, 3048.32144274@748, 3049.90435693@749, 3051.19721603@750, 3053.47218001@751, 3052.70359748@752, 3052.94033551@753, 3050.51992985@754, 3048.86067918@755, 3044.31857383@756, 3037.82557922@757, 3030.92106467@758, 3024.92367513@759, 3016.79986329@760, 3011.55569037@761, 3005.34266812@762, 3000.02155559@763, 2993.475026@764, 2985.63197842@765, 2976.38914286@766, 2969.27133068@767, 2961.99050755@768, 2955.32254854@769, 2946.29553046@770, 2940.84387884@771, 2935.40485209@772, 2931.34704345@773, 2925.99343552@774, 2919.99497131@775, 2906.24948916@776, 2894.83300882@777, 2886.98111909@778, 2888.14974838@779, 2898.16265082@780, 2905.14673924@781, 2910.12567828@782, 2919.17015002@783, 2933.29960064@784, 2945.38631869@785, 2949.75374081@786, 2953.1049873@787, 2956.03265576@788, 2954.70569226@789, 2949.73991815@790, 2944.8065914@791, 2939.21344629@792, 2935.69592842@793, 2932.65224096@794, 2930.1033735@795, 2924.40490504@796, 2915.98105757@797, 2906.36720067@798, 2897.17938308@799, 2886.66242989@800, 2875.06799867@801, 2864.62295074@802, 2855.91346935@803, 2847.79837548@804, 2841.08926687@805, 2835.30777039@806, 2831.70884338@807, 2827.81273304@808, 2823.75309579@809, 2819.08274497@810, 2814.17464571@811, 2809.78473083@812, 2804.47829659@813, 2797.95997416@814, 2791.67805615@815, 2783.15006046@816, 2777.31427366@817, 2771.68946431@818, 2768.25864675@819, 2763.43209046@820, 2757.23230157@821, 2749.85736359@822, 2744.22898154@823, 2738.20511463@824, 2728.79503005@825, 2717.47168361@826, 2708.4194675@827, 2701.16119557@828, 2693.64964404@829, 2685.65210546@830, 2677.70091984@831, 2670.9579444@832, 2666.82425655@833, 2663.81888505@834, 2664.59782014@835, 2664.56951417@836, 2663.95102999@837, 2663.60809107@838, 2664.76224417@839, 2666.0799337@840, 2666.29889067@841, 2665.39570201@842, 2664.43452279@843, 2661.81282156@844, 2659.76788263@845, 2657.72073839@846, 2658.06418457@847, 2658.63322567@848, 2657.48770101@849, 2655.82056628@850),
4
+ Linear (1, 1568.43202157@1, 1567.89347388@2, 1568.44116107@3, 1569.58257887@4, 1571.18338665@5, 1572.61225167@6, 1573.4843335@7, 1575.60343012@8, 1576.08668071@9, 1576.01959303@10, 1575.6872772@11, 1575.30209056@12, 1576.22858622@13, 1577.37444832@14, 1578.40648344@15, 1578.8817722@16, 1578.71327619@17, 1579.20361023@18, 1579.94993828@19, 1580.68938752@20, 1579.39989175@21, 1579.08242867@22, 1578.77133787@23, 1578.76032749@24, 1578.57964797@25, 1577.86750988@26, 1576.29093795@27, 1575.62819358@28, 1574.87099757@29, 1574.5875136@30, 1574.61624871@31, 1574.70635911@32, 1574.93808196@33, 1574.99574323@34, 1574.92582532@35, 1575.1358076@36, 1575.52383534@37, 1574.9564136@38, 1574.41828941@39, 1573.71979077@40, 1573.26211635@41, 1573.86374608@42, 1574.29574174@43, 1574.70700073@44, 1575.25240605@45, 1574.87079472@46, 1574.91520452@47, 1574.91514284@48, 1575.51805628@49, 1576.15094477@50, 1576.12255728@51, 1575.66885@52, 1573.1567151@53, 1572.27351394@54, 1572.23395419@55, 1572.86355413@56, 1573.18023203@57, 1573.62782529@58, 1574.13809613@59, 1573.51672243@60, 1572.89749086@61, 1571.75515591@62, 1570.44930103@63, 1568.90941145@64, 1566.19577239@65, 1563.0942781@66, 1560.72514588@67, 1559.11223745@68, 1557.646496@69, 1555.20699518@70, 1552.32818275@71, 1550.34059086@72, 1548.05015146@73, 1545.50248799@74, 1542.30520959@75, 1539.32127582@76, 1535.18748495@77, 1529.79769222@78, 1523.84248357@79, 1518.12650342@80, 1512.91213939@81, 1507.32638885@82, 1501.26427943@83, 1496.40591197@84, 1489.74702271@85, 1481.26137334@86, 1471.9924363@87, 1463.20424536@88, 1453.90566388@89, 1444.72346716@90, 1435.18494863@91, 1426.06023881@92, 1418.26837979@93, 1410.58445112@94, 1403.12770531@95, 1394.74345765@96, 1387.95135467@97, 1379.44256177@98, 1371.94174191@99, 1365.35021986@100, 1359.3902775@101, 1354.07974343@102, 1349.73448531@103, 1345.14531541@104, 1340.29748399@105, 1335.77228896@106, 1332.29256741@107, 1328.12748977@108, 1325.65107583@109, 1322.57576271@110, 1320.00494494@111, 1317.55858614@112, 1314.73374908@113, 1312.56306305@114, 1310.18775411@115, 1305.9942662@116, 1302.33248781@117, 1297.98322722@118, 1293.97537647@119, 1290.84190888@120, 1286.5470036@121, 1282.01222428@122, 1275.95662875@123, 1270.25659451@124, 1264.26545552@125, 1259.03148749@126, 1253.44451371@127, 1246.16021227@128, 1237.89116488@129, 1228.23871895@130, 1221.04000446@131, 1216.59431703@132, 1213.62971026@133, 1210.02575535@134, 1204.97856663@135, 1198.5980305@136, 1192.34666735@137, 1185.69731638@138, 1178.73350151@139, 1172.47063189@140, 1167.27221171@141, 1161.38511585@142, 1155.85661206@143, 1149.73719373@144, 1142.2124441@145, 1133.18982578@146, 1126.61827397@147, 1121.99318301@148, 1119.16152172@149, 1118.16143523@150, 1119.21369336@151, 1121.10712333@152, 1122.00312987@153, 1124.41649758@154, 1127.25518459@155, 1128.46701607@156, 1130.06937159@157, 1129.61263885@158, 1128.94076253@159, 1128.50290701@160, 1130.11723986@161, 1130.65579905@162, 1129.86355989@163, 1127.21699633@164, 1125.50628344@165, 1124.25463566@166, 1123.38855776@167, 1124.62624326@168, 1125.56979826@169, 1126.09425529@170, 1126.30442995@171, 1126.04801202@172, 1125.89573243@173, 1126.20551054@174, 1126.0632955@175, 1125.73325844@176, 1125.17081281@177, 1123.47065536@178, 1122.48185813@179, 1121.90411375@180, 1121.4760028@181, 1121.51706711@182, 1122.39769518@183, 1123.80728768@184, 1124.67954175@185, 1124.93391861@186, 1124.47184275@187, 1123.23172351@188, 1122.42828356@189, 1122.44955693@190, 1122.78837581@191, 1123.39339952@192, 1124.23806371@193, 1125.4346159@194, 1126.72601298@195, 1125.48113427@196, 1123.87119784@197, 1124.03569413@198, 1125.27804551@199, 1127.23162677@200, 1128.13930318@201, 1127.21562549@202, 1126.12004864@203, 1124.57123352@204, 1123.54922525@205, 1123.39776698@206, 1122.87879577@207, 1121.41792974@208, 1121.38898582@209, 1122.84096731@210, 1122.95910324@211, 1121.82740883@212, 1121.25038253@213, 1121.59396813@214, 1122.4565915@215, 1124.49781805@216, 1125.18380263@217, 1123.68034791@218, 1123.37634567@219, 1124.17200431@220, 1124.02342199@221, 1123.80398295@222, 1124.11657614@223, 1124.73528452@224, 1127.21276833@225, 1128.01033035@226, 1126.86483502@227, 1126.39220702@228, 1128.8267264@229, 1132.87666323@230, 1131.61823771@231, 1129.38950981@232, 1128.8593374@233, 1130.30263408@234, 1131.42243264@235, 1131.53201974@236, 1132.27546703@237, 1134.34324281@238, 1135.73591899@239, 1136.12606538@240, 1136.50580056@241, 1134.12459244@242, 1130.34649612@243, 1129.08112727@244, 1127.99779442@245, 1126.41070617@246, 1125.56036605@247, 1125.38590965@248, 1125.88395054@249, 1127.00814363@250, 1129.64503395@251, 1133.26334302@252, 1136.05682266@253, 1136.34326141@254, 1135.83740961@255, 1135.87140342@256, 1134.62566988@257, 1133.6105847@258, 1133.82283833@259, 1131.7061235@260, 1128.58093024@261, 1126.6392742@262, 1125.00399836@263, 1123.93189175@264, 1124.78346391@265, 1124.90569781@266, 1126.30607159@267, 1127.80881376@268, 1129.8574886@269, 1132.42465295@270, 1133.22248179@271, 1133.05635817@272, 1132.13229902@273, 1131.46106555@274, 1130.95280572@275, 1130.40874587@276, 1131.7365448@277, 1133.04794577@278, 1134.08947875@279, 1134.07582222@280, 1135.14313036@281, 1135.4692456@282, 1136.45114131@283, 1137.49086984@284, 1137.27198582@285, 1135.53190302@286, 1133.02261823@287, 1131.80668864@288, 1132.23123895@289, 1133.16835071@290, 1134.87968497@291, 1140.9389214@292, 1144.80493452@293, 1145.90919674@294, 1143.33739621@295, 1141.84997082@296, 1142.5622368@297, 1146.43449876@298, 1151.58851454@299, 1153.59175377@300, 1155.26041178@301, 1155.5292688@302, 1157.98722331@303, 1161.57602109@304, 1163.13541817@305, 1161.14897299@306, 1157.5247969@307, 1156.51838093@308, 1160.51019381@309, 1169.28543379@310, 1174.51745672@311, 1171.71692397@312, 1167.65563374@313, 1165.80021293@314, 1164.84513681@315, 1162.54983303@316, 1159.58146313@317, 1157.74123321@318, 1158.13026731@319, 1157.49045521@320, 1158.0485373@321, 1156.51483817@322, 1155.15889735@323, 1155.58442485@324, 1157.53442454@325, 1156.64641642@326, 1156.60420913@327, 1153.33360702@328, 1153.06649613@329, 1154.34410138@330, 1155.24631936@331, 1157.70262381@332, 1159.7544844@333, 1161.80960722@334, 1161.04579298@335, 1164.1964804@336, 1167.4569073@337, 1173.80028251@338, 1179.5103706@339, 1180.66189946@340, 1179.82572798@341, 1180.49949751@342, 1182.60088926@343, 1178.89510884@344, 1176.04234057@345, 1178.57330739@346, 1183.88048263@347, 1184.49816179@348, 1186.16509161@349, 1185.94702303@350, 1185.41384249@351, 1186.96667327@352, 1187.41918565@353, 1188.86320138@354, 1193.30569323@355, 1195.55215881@356, 1193.15581612@357, 1191.35558894@358, 1191.98119875@359, 1191.89241045@360, 1188.91897573@361, 1182.12238027@362, 1176.85598202@363, 1173.3499809@364, 1167.60825155@365, 1165.23388292@366, 1162.20003807@367, 1160.28996122@368, 1158.15080159@369, 1154.88975177@370, 1154.09747082@371, 1155.56306281@372, 1155.57821986@373, 1154.92572412@374, 1155.67391491@375, 1154.35090618@376, 1153.0621886@377, 1154.22563783@378, 1155.59748242@379, 1159.29478695@380, 1159.48171963@381, 1156.6068703@382, 1156.31510919@383, 1160.2568452@384, 1163.72371808@385, 1164.30444439@386, 1171.13501371@387, 1178.62782202@388, 1183.14498719@389, 1185.16912673@390, 1184.39483139@391, 1181.34150549@392, 1179.11085617@393, 1177.25904729@394, 1176.45268367@395, 1176.13089822@396, 1175.1010539@397, 1170.54630938@398, 1168.63638132@399, 1167.73827564@400, 1166.59886158@401, 1167.56178648@402, 1169.49384826@403, 1173.41739553@404, 1176.88475454@405, 1179.82112109@406, 1191.1266617@407, 1196.48769882@408, 1201.51308541@409, 1200.50480666@410, 1201.17935789@411, 1206.66963135@412, 1206.69973083@413, 1203.86983411@414, 1205.07128807@415, 1212.70104157@416, 1214.73014581@417, 1209.35519964@418, 1205.0958229@419, 1202.34235739@420, 1201.22886326@421, 1197.3553465@422, 1197.47259223@423, 1200.4389735@424, 1197.80841504@425, 1194.45374981@426, 1193.62282951@427, 1189.80369929@428, 1184.46497016@429, 1180.34400433@430, 1185.11508546@431, 1189.14013217@432, 1184.24752733@433, 1178.92878223@434, 1182.75481487@435, 1188.43323159@436, 1186.46874421@437, 1183.72658061@438, 1186.96766517@439, 1190.51401085@440, 1189.15640298@441, 1183.09146857@442, 1177.69910083@443, 1179.20474315@444, 1179.49062987@445, 1177.49673466@446, 1174.1688565@447, 1172.61517944@448, 1172.29210417@449, 1172.47755772@450, 1172.67973798@451, 1172.01433842@452, 1168.48940946@453, 1166.72653721@454, 1166.01896558@455, 1166.98216531@456, 1167.10515371@457, 1165.87243906@458, 1166.12506387@459, 1164.72605752@460, 1164.70087385@461, 1163.34038209@462, 1164.91545015@463, 1167.96995936@464, 1173.63383722@465, 1176.30276017@466, 1167.79385478@467, 1155.9818763@468, 1154.35737803@469, 1169.61992806@470, 1179.82755312@471, 1177.31596558@472, 1172.93771507@473, 1173.55674254@474, 1175.19795522@475, 1173.99241145@476, 1168.77652213@477, 1163.47317039@478, 1159.85930066@479, 1158.41633051@480, 1161.52887207@481, 1159.82699639@482, 1155.88580876@483, 1151.95667375@484, 1153.3880438@485, 1154.60382181@486, 1151.75125619@487, 1150.83091605@488, 1154.73838527@489, 1158.67055847@490, 1156.66563398@491, 1153.10039786@492, 1152.11045934@493, 1152.15706334@494, 1148.54970566@495, 1140.23901918@496, 1132.4163902@497, 1129.20282963@498, 1130.93679734@499, 1130.07345529@500, 1123.16653494@501, 1115.82520071@502, 1116.13758084@503, 1120.4580452@504, 1122.06856658@505, 1117.0751385@506, 1115.05000852@507, 1113.6705973@508, 1109.1853694@509, 1101.40802847@510, 1093.38581251@511, 1088.44158345@512, 1088.57148326@513, 1087.55704809@514, 1085.12543408@515, 1087.89727305@516, 1090.6236656@517, 1089.27268901@518, 1086.22521322@519, 1085.68312433@520, 1083.66640617@521, 1086.03046504@522, 1086.30698626@523, 1089.00133294@524, 1087.559023@525, 1085.33702319@526, 1083.24868671@527, 1082.06945762@528, 1082.40558967@529, 1079.58231362@530, 1077.69446934@531, 1078.03303828@532, 1075.48276398@533, 1074.76684055@534, 1071.43730999@535, 1067.48519854@536, 1064.65000714@537, 1063.35670172@538, 1062.7176431@539, 1062.73654436@540, 1064.78245493@541, 1068.94306671@542, 1073.51150292@543, 1074.7313046@544, 1074.85611601@545, 1076.41325592@546, 1078.40471706@547, 1077.42131351@548, 1074.43587981@549, 1074.1558363@550, 1073.87947105@551, 1071.26675386@552, 1067.63425768@553, 1066.78742195@554, 1068.95568836@555, 1071.0966218@556, 1069.49375381@557, 1069.34485681@558, 1071.76566666@559, 1074.11987611@560, 1074.99766741@561, 1076.64432533@562, 1077.2470472@563, 1077.57798993@564, 1075.31503569@565, 1072.94078792@566, 1071.82034154@567, 1072.2714935@568, 1071.48160569@569, 1070.43533132@570, 1069.16735818@571, 1068.14603861@572, 1068.23439631@573, 1070.8063339@574, 1071.86589495@575, 1071.43147924@576, 1073.07131302@577, 1076.66131619@578, 1078.91902201@579, 1077.01002529@580, 1074.60121483@581, 1070.09431576@582, 1063.18051832@583, 1056.55040021@584, 1052.70415472@585, 1049.75215348@586, 1048.94329772@587, 1049.45481599@588, 1050.91800805@589, 1054.40350157@590, 1057.70119479@591, 1054.61441909@592, 1047.59985832@593, 1046.54481567@594, 1053.28855409@595, 1052.5774482@596, 1043.16201483@597, 1035.1273725@598, 1031.71050558@599, 1028.90492293@600, 1027.14096751@601, 1026.38072745@602, 1029.35031755@603, 1034.95892745@604, 1038.94505313@605, 1045.28754476@606, 1049.52339837@607, 1053.806074@608, 1060.86995254@609, 1070.28948741@610, 1066.32282182@611, 1059.12044897@612, 1060.08638693@613, 1056.25673112@614, 1048.48494485@615, 1039.51777233@616, 1036.16615307@617, 1036.11824118@618, 1034.84062098@619, 1033.87015309@620, 1037.4005298@621, 1046.0295501@622, 1052.06119246@623, 1050.71916955@624, 1048.90874279@625, 1053.8233973@626, 1059.1094924@627, 1061.91567234@628, 1065.23209635@629, 1069.29440535@630, 1072.45510502@631, 1071.65150546@632, 1067.40933138@633, 1063.79859988@634, 1060.35035192@635, 1054.55172538@636, 1047.84031697@637, 1046.79691804@638, 1050.02166246@639, 1049.3183002@640, 1041.58636789@641, 1037.19496907@642, 1039.67060747@643, 1046.43639456@644, 1047.80212638@645, 1043.88243@646, 1042.6544677@647, 1043.92120198@648, 1043.69004856@649, 1040.30684305@650, 1036.8364594@651, 1034.59042957@652, 1031.9502353@653, 1028.43237457@654, 1025.25005715@655, 1026.72732031@656, 1027.0490476@657, 1026.01647358@658, 1023.30597957@659, 1021.3285594@660, 1024.48706959@661, 1026.36510082@662, 1025.87381999@663, 1026.14047747@664, 1029.73825531@665, 1033.71220249@666, 1032.81198698@667, 1032.746111@668, 1040.39545759@669, 1045.28658152@670, 1044.93347016@671, 1043.11748233@672, 1044.75553943@673, 1045.89385808@674, 1045.56250026@675, 1043.38366392@676, 1040.9469887@677, 1043.33241665@678, 1047.51678864@679, 1049.82306326@680, 1047.90306539@681, 1047.21168155@682, 1051.81637243@683, 1055.64556971@684, 1055.54700388@685, 1053.30942734@686, 1052.64481951@687, 1054.09964517@688, 1057.22610292@689, 1059.95138991@690, 1062.40390865@691, 1066.7155933@692, 1074.78775532@693, 1078.11257847@694, 1084.37721355@695, 1090.53755123@696, 1094.66725152@697, 1092.72914115@698, 1088.5266966@699, 1087.81670949@700, 1089.81864612@701, 1092.53529403@702, 1094.65476363@703, 1093.81157752@704, 1093.79766346@705, 1094.41807011@706, 1095.31789859@707, 1094.96133111@708, 1094.01983754@709, 1098.3055067@710, 1105.77492615@711, 1111.81219015@712, 1113.71116721@713, 1112.79967654@714, 1112.65531254@715, 1113.77415694@716, 1114.15306384@717, 1112.61643646@718, 1110.58559262@719, 1110.81540873@720, 1110.47174576@721, 1109.73653154@722, 1107.0628042@723, 1102.738722@724, 1099.08914243@725, 1097.84985911@726, 1097.01654083@727, 1097.45129327@728, 1097.39565829@729, 1098.12873563@730, 1098.97732421@731, 1099.28304348@732, 1097.36883649@733, 1094.25074066@734, 1093.80850909@735, 1095.25410489@736, 1097.77324998@737, 1098.47164175@738, 1096.77298712@739, 1092.97135577@740, 1089.67169162@741, 1085.09505825@742, 1080.43280658@743, 1074.84177015@744, 1072.56441943@745, 1074.77550999@746, 1080.33123492@747, 1084.54016964@748, 1082.88533373@749, 1076.80365647@750, 1070.00475485@751, 1064.90341958@752, 1063.13366073@753, 1061.3570675@754, 1058.76573472@755, 1051.71522862@756, 1044.46868363@757, 1040.29115851@758, 1038.2755957@759, 1034.78628922@760, 1028.45138792@761, 1021.17281817@762, 1016.40355994@763, 1013.26465863@764, 1010.0531625@765, 1003.63354099@766, 993.206055821@767, 985.286240552@768, 983.9714229@769, 983.715565119@770, 979.139287762@771, 973.287534544@772, 969.753957742@773, 969.621143278@774, 972.316553064@775, 974.908985534@776, 962.777234006@777, 937.101448006@778, 929.674845747@779, 946.082508459@780, 970.362094916@781, 991.750644719@782, 1006.46666773@783, 1017.48333986@784, 1026.09906135@785, 1033.61242921@786, 1037.26424826@787, 1038.50518025@788, 1038.33748024@789, 1036.24927516@790, 1032.87711074@791, 1030.55297512@792, 1029.46778151@793, 1029.21575795@794, 1030.12883638@795, 1028.14162088@796, 1025.55133814@797, 1024.87284284@798, 1026.74624109@799, 1028.49833193@800, 1028.33902702@801, 1024.85755717@802, 1021.64286714@803, 1020.06263784@804, 1020.69311906@805, 1022.669665@806, 1022.61121891@807, 1020.07297165@808, 1017.23779016@809, 1015.53784804@810, 1014.74093068@811, 1015.7164077@812, 1017.1108602@813, 1017.35368704@814, 1016.83182228@815, 1015.90154989@816, 1014.56925843@817, 1015.02826468@818, 1016.35758576@819, 1016.7564219@820, 1017.48492389@821, 1019.26212347@822, 1020.51401081@823, 1020.98664803@824, 1022.84073841@825, 1024.58350548@826, 1024.50037758@827, 1023.52980064@828, 1024.48871977@829, 1026.25859952@830, 1028.13872997@831, 1029.73171425@832, 1030.84949136@833, 1031.14662312@834, 1031.20127343@835, 1031.80527815@836, 1033.62121136@837, 1035.71607378@838, 1037.29686525@839, 1038.46673312@840, 1039.00402668@841, 1037.40028546@842, 1036.58098777@843, 1036.60173818@844, 1037.39835493@845, 1039.31595852@846, 1041.25015139@847, 1042.55006776@848, 1043.28117521@849, 1044.84067186@850),
5
+ 1,1,1,1,1,1,1,1,1,1,1,1,1);
@@ -108,7 +108,12 @@ class ShakeLexerTest < Test::Unit::TestCase
108
108
 
109
109
  def test_parse_varassign
110
110
  s = parse 'Foo = Blur(Foo, 1, 2, 3); 1'
111
- assert_equal [[:assign, "Foo", [:funcall, "Blur", [:atom, "Foo"], 1, 2, 3]], 1], s
111
+ assert_equal [[:assign, [:vardef, "Foo"], [:funcall, "Blur", [:atom, "Foo"], 1, 2, 3]], 1], s
112
+ end
113
+
114
+ def test_parse_varassign_with_typedef
115
+ s = parse 'curve float focal = Linear(0,2257.552@1,2257.552@2)'
116
+ assert_equal [[:assign, [:vardef, "curve", "float", "focal"], [:funcall, "Linear", 0, [:value_at, 1, 2257.552], [:value_at, 2, 2257.552]]]], s
112
117
  end
113
118
 
114
119
  def test_parse_whole_file_does_not_raise
@@ -116,4 +116,12 @@ class ShakeScriptImportTest < Test::Unit::TestCase
116
116
  trackers = Tracksperanto::Import::ShakeScript.new(:width => 1920, :height => 1080).parse(fixture)
117
117
  assert_equal 8, trackers.length
118
118
  end
119
+
120
+ def test_tracker_node_from_stoneage_shake_version
121
+ fixture = File.open(File.dirname(__FILE__) + "/samples/shake_script/oldTrackerNode.shk")
122
+ p = Tracksperanto::Import::ShakeScript.new(:width => 5000, :height => 5000)
123
+ trackers = p.parse(fixture)
124
+ assert_equal 1, trackers.length
125
+ assert_equal 850, trackers[0].length
126
+ end
119
127
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tracksperanto
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.5
4
+ version: 1.9.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Julik Tarkhanov
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-05-17 00:00:00 +02:00
12
+ date: 2010-06-17 00:00:00 +02:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -168,6 +168,7 @@ files:
168
168
  - test/import/samples/shake_script/stabilize_nodes_with_hermite.shk
169
169
  - test/import/samples/shake_script/three_tracks_in_one_stabilizer.shk
170
170
  - test/import/samples/shake_script/two_tracks_in_one_tracker.shk
171
+ - test/import/samples/shake_script/oldTrackerNode.shk
171
172
  - test/import/samples/shake_text/one_shake_tracker.txt
172
173
  - test/import/samples/shake_text/one_shake_tracker_from_first.txt
173
174
  - test/import/samples/shake_text/two_shake_trackers.txt