tracksperanto 2.4.1 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.yardopts ADDED
@@ -0,0 +1,6 @@
1
+ --hide-void-return
2
+ -m markdown
3
+ --title "Trackspreanto - a universal 2-D tracking translator. In Ruby."
4
+ lib/**/*.rb
5
+ --no-private
6
+ --readme README.md
data/History.txt CHANGED
@@ -1,3 +1,11 @@
1
+ === 2.5.0 / 2011-14-06
2
+
3
+ * No status display in the progress bar. It was an annoyance.
4
+ * There are still crashes with flexmocks in tests, relevant flexmock issues filed upstream
5
+ * Fix Ruby 1.9 compatibility (but the situation will get better since it's now the primary version)
6
+ * Use update_hints gem for version checks
7
+ * PFTrack 2011 and PFMAtchit actually use the same format, so we don't need to have 2 modules for them
8
+
1
9
  === 2.4.0 / 2011-19-05
2
10
 
3
11
  * Added an official PFTrack 2011 exporter that is verified
data/Manifest.txt CHANGED
@@ -1,3 +1,4 @@
1
+ .yardopts
1
2
  DEVELOPER_DOCS.rdoc
2
3
  History.txt
3
4
  MIT_LICENSE.txt
@@ -16,7 +17,6 @@ lib/export/mux.rb
16
17
  lib/export/nuke_script.rb
17
18
  lib/export/pfmatchit.rb
18
19
  lib/export/pftrack.rb
19
- lib/export/pftrack_2011.rb
20
20
  lib/export/pftrack_5.rb
21
21
  lib/export/shake_text.rb
22
22
  lib/export/syntheyes.rb
@@ -58,7 +58,6 @@ lib/tracksperanto/ext_io.rb
58
58
  lib/tracksperanto/flame_builder.rb
59
59
  lib/tracksperanto/format_detector.rb
60
60
  lib/tracksperanto/keyframe.rb
61
- lib/tracksperanto/pbar.rb
62
61
  lib/tracksperanto/progressive_io.rb
63
62
  lib/tracksperanto/returning.rb
64
63
  lib/tracksperanto/safety.rb
@@ -72,7 +71,6 @@ test/export/samples/ref_Mayalive_CustomAspect.txt
72
71
  test/export/samples/ref_NukeScript.nk
73
72
  test/export/samples/ref_PFMatchit.2dt
74
73
  test/export/samples/ref_PFTrack.2dt
75
- test/export/samples/ref_PFTrack2011.txt
76
74
  test/export/samples/ref_PFTrack5.2dt
77
75
  test/export/samples/ref_ShakeText.txt
78
76
  test/export/samples/ref_Syntheyes.txt
@@ -90,7 +88,6 @@ test/export/test_maya_live_export.rb
90
88
  test/export/test_mux.rb
91
89
  test/export/test_nuke_export.rb
92
90
  test/export/test_pfmatchit_export.rb
93
- test/export/test_pftrack2011_export.rb
94
91
  test/export/test_pftrack5_export.rb
95
92
  test/export/test_pftrack_export.rb
96
93
  test/export/test_shake_export.rb
data/Rakefile CHANGED
@@ -3,24 +3,21 @@ require './lib/tracksperanto'
3
3
 
4
4
  begin
5
5
  require 'hoe'
6
- # Disable spurious warnings when running tests, ActiveMagic cannot stand -w
7
- Hoe::RUBY_FLAGS.replace ENV['RUBY_FLAGS'] || "-I#{%w(lib test).join(File::PATH_SEPARATOR)}" +
8
- (Hoe::RUBY_DEBUG ? " #{RUBY_DEBUG}" : '')
9
6
 
10
7
  Hoe.spec('tracksperanto') do | p |
11
8
  p.readme_file = 'README.rdoc'
12
9
  p.extra_rdoc_files = FileList['*.rdoc'] + FileList['*.txt']
13
10
  p.version = Tracksperanto::VERSION
14
11
 
15
- p.extra_deps = {"progressbar" => ">=0"}
12
+ p.extra_deps = {"progressbar" => ">=0", "update_hints" => ">=0" }
16
13
  p.extra_dev_deps = {"flexmock" => ">=0"}
17
14
  p.rubyforge_name = 'guerilla-di'
18
15
  p.developer('Julik Tarkhanov', 'me@julik.nl')
19
16
  p.clean_globs = %w( **/.DS_Store coverage.info **/*.rbc .idea .yardoc)
20
17
  end
21
18
  rescue LoadError
19
+
22
20
  $stderr.puts "Meta-operations on this package require Hoe"
23
- task :default => [ :test ]
24
21
 
25
22
  require 'rake/testtask'
26
23
  desc "Run all tests"
@@ -29,4 +26,8 @@ rescue LoadError
29
26
  t.pattern = 'test/**/test_*.rb'
30
27
  t.verbose = true
31
28
  end
32
- end
29
+
30
+ task :default => [ :test ]
31
+ end
32
+
33
+
data/bin/tracksperanto CHANGED
@@ -14,22 +14,7 @@ require File.dirname(__FILE__) + '/../lib/tracksperanto' unless defined?(Tracksp
14
14
  require 'optparse'
15
15
  require 'rubygems'
16
16
  require 'progressbar'
17
- require "net/http"
18
- require "open-uri"
19
- require "timeout"
20
- require File.dirname(__FILE__) + '/../lib/tracksperanto/pbar'
21
-
22
- def version_check(version_present)
23
- begin
24
- version_info = open("http://rubygems.org/api/v1/gems/tracksperanto.xml").string.scan(/<version>(.+)<\/version>/).to_s
25
- int_available, int_present = [version_info, version_present].map{|v| v.scan(/(\d+)/).to_s.to_i }
26
- if int_available > int_present
27
- puts "Your version of Tracksperanto is probably out of date (the current version is #{version_info}, but you have #{Tracksperanto::VERSION})."
28
- puts "Please consider updating (run 'gem update tracksperanto')"
29
- end
30
- rescue Exception
31
- end
32
- end
17
+ require "update_hints"
33
18
 
34
19
  def disclaimer
35
20
  "Please consider a small donation to keep Tracksperanto going. http://guerilla-di.org/source-and-license/\n"+
@@ -51,6 +36,20 @@ def mw(name, option, default_value = nil)
51
36
  end
52
37
  end
53
38
 
39
+ def list_exporters
40
+ puts "The following export modules are available:"
41
+ Tracksperanto.exporters.each do | exporter |
42
+ puts "\t#{exporter.const_name.downcase} - #{exporter.human_name}"
43
+ end
44
+ end
45
+
46
+ def list_importers
47
+ puts "The following import modules are available:"
48
+ Tracksperanto.importers.each do | importer |
49
+ puts "\t#{importer.const_name.downcase} - #{importer.human_name}"
50
+ end
51
+ end
52
+
54
53
  class CodeLoaded < RuntimeError; end
55
54
 
56
55
  op.banner = "Usage: tracksperanto -f ShakeScript -w 1920 -h 1080 /Films/Blockbuster/Shots/001/script.shk"
@@ -60,6 +59,7 @@ op.on("--code PATH_TO_SCRIPT", String, "Load custom Ruby code into tracksperanto
60
59
  raise CodeLoaded
61
60
  end
62
61
  end
62
+
63
63
  op.on(" -f", "--from TRANSLATOR", String, "Use the specific import translator") { |f| options[:importer] = f }
64
64
  op.on(" -w", "--width WIDTH_IN_PIXELS", Integer, "Absolute input comp width in pixels (will try to autodetect)") { |w| options[:width] = w }
65
65
  op.on(" -h", "--height HEIGHT_IN_PIXELS", Integer, "Absolute input comp height in pixels (will try to autodetect)") {|w| options[:height] = w }
@@ -78,12 +78,17 @@ op.on(" -p", "--prefix PREFIX", String, "A prefix to prepend to tracker names in
78
78
  op.on("--lerp", "Linearly interpolate missing keyframes", &mw("Lerp", :enabled, true))
79
79
  op.on("--flip", "Flip the comp horizontally", &mw("Flip", :enabled, true))
80
80
  op.on("--flop", "Flop the comp vertically", &mw("Flop", :enabled, true))
81
-
81
+ op.on("--list-exporters", "Show available export modules") do
82
+ list_exporters; exit(0)
83
+ end
84
+ op.on("--list-importers", "Show available import modules") do
85
+ list_importers; exit(0)
86
+ end
82
87
  op.on("--version", "Show the version and exit") do |v|
83
88
  puts "Tracksperanto v.#{Tracksperanto::VERSION} running on Ruby #{RUBY_VERSION} on #{RUBY_PLATFORM}"
84
89
  puts "Copyright 2008-#{Time.now.year} by Guerilla-DI (Julik Tarkhanov and contributors)"
85
90
  puts disclaimer
86
- version_check()
91
+ UpdateHints.version_check("tracksperanto", Tracksperanto::VERSION, STDOUT)
87
92
  exit(0)
88
93
  end
89
94
 
@@ -105,11 +110,12 @@ unless File.exist?(input_file)
105
110
  exit(-1)
106
111
  end
107
112
 
108
- pbar = Tracksperanto::PBar.new("Converting", 100, $stderr)
109
- pipe = Tracksperanto::Pipeline::Base.new(:progress_block => lambda{|p,m| pbar.set_with_message(p, m) }, :middleware_tuples => $middlewares)
113
+ pbar = ProgressBar.new("Converting", 100, $stderr)
114
+ progress = lambda{|percent,message| pbar.set(percent) }
115
+ pipe = Tracksperanto::Pipeline::Base.new(:progress_block => progress, :middleware_tuples => $middlewares)
110
116
  pipe.exporters = [Tracksperanto.get_exporter(writer_class_name)] if writer_class_name
111
117
  pipe.run(input_file, options)
112
118
  pbar.finish
113
119
 
114
120
  puts disclaimer
115
- version_check(Tracksperanto::VERSION)
121
+ UpdateHints.version_check("tracksperanto", Tracksperanto::VERSION, STDOUT)
@@ -4,11 +4,11 @@ class Tracksperanto::Export::PFMatchit < Tracksperanto::Export::Base
4
4
  KEYFRAME_TEMPLATE = "%s %.3f %.3f %.3f"
5
5
 
6
6
  def self.desc_and_extension
7
- "pfmatchit.txt"
7
+ "pftrack_2011_pfmatchit.txt"
8
8
  end
9
9
 
10
10
  def self.human_name
11
- "PFMatchit user track export file (single camera)"
11
+ "PFTrack2011/PFMatchit .txt file (single camera)"
12
12
  end
13
13
 
14
14
  def start_tracker_segment(tracker_name)
@@ -35,13 +35,17 @@ class Tracksperanto::Export::PFMatchit < Tracksperanto::Export::Base
35
35
 
36
36
  def export_point(frame, abs_float_x, abs_float_y, float_residual)
37
37
  @frame_count += 1
38
- line = KEYFRAME_TEMPLATE % [frame, abs_float_x, abs_float_y, float_residual / 8]
38
+ line = KEYFRAME_TEMPLATE % [frame_number(frame), abs_float_x, abs_float_y, float_residual / 8]
39
39
  @tracker_io.write(line)
40
40
  @tracker_io.write(linebreak)
41
41
  end
42
42
 
43
43
  private
44
44
 
45
+ def frame_number(tracksperanto_frame)
46
+ tracksperanto_frame + 1
47
+ end
48
+
45
49
  def linebreak
46
50
  "\n"
47
51
  end
@@ -15,6 +15,11 @@ class Tracksperanto::Export::PFTrack5 < Tracksperanto::Export::PFMatchit
15
15
  "Primary".inspect
16
16
  end
17
17
 
18
+ # PFT5 frames are zero-based
19
+ def frame_number(tracksperanto_frame)
20
+ tracksperanto_frame
21
+ end
22
+
18
23
  # PFT5 wants CRLF
19
24
  def linebreak
20
25
  "\r\n"
@@ -140,7 +140,7 @@ module Tracksperanto::ShakeGrammar
140
140
  # Since we can have two-word pointers as typedefs (char *) we only use the last
141
141
  # part of the thing as varname. Nodes return the :image type implicitly.
142
142
  varname_re = /\w+$/
143
- varname = var_specifier.scan(varname_re).to_s
143
+ varname = var_specifier.scan(varname_re).flatten.join
144
144
  typedef = var_specifier.gsub(varname_re, '').strip
145
145
  typedef = :image if typedef.empty?
146
146
 
data/lib/pipeline/base.rb CHANGED
@@ -13,7 +13,11 @@ module Tracksperanto::Pipeline
13
13
  end
14
14
 
15
15
  class NoTrackersRecoveredError < RuntimeError
16
- def message; "Could not recover any non-empty trackers from this file. Wrong import format maybe?"; end
16
+ def message;
17
+ "Could not recover any non-empty trackers from this file.\n" +
18
+ "Wrong import format maybe?\n" +
19
+ "Note that PFTrack will only export trackers from the solved segment of the shot.";
20
+ end
17
21
  end
18
22
 
19
23
  # The base pipeline is the whole process of track conversion from start to finish. The pipeline object organizes the import formats, scans them,
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 = '2.4.1'
7
+ VERSION = '2.5.0'
8
8
 
9
9
  module Import; end
10
10
  module Export; end
@@ -3,52 +3,52 @@
3
3
  "Parabolic_1_from_top_left"
4
4
  1
5
5
  19
6
- 0 0.000 1080.000 0.000
7
- 1 96.000 874.800 0.006
8
- 2 192.000 691.200 0.012
9
- 3 288.000 529.200 0.018
10
- 4 384.000 388.800 0.024
11
- 5 480.000 270.000 0.030
12
- 6 576.000 172.800 0.036
13
- 7 672.000 97.200 0.042
14
- 8 768.000 43.200 0.048
15
- 9 864.000 10.800 0.054
16
- 12 1152.000 43.200 0.071
17
- 13 1248.000 97.200 0.077
18
- 14 1344.000 172.800 0.083
19
- 15 1440.000 270.000 0.089
20
- 16 1536.000 388.800 0.095
21
- 17 1632.000 529.200 0.101
22
- 18 1728.000 691.200 0.107
23
- 19 1824.000 874.800 0.113
24
- 20 1920.000 1080.000 0.119
6
+ 1 0.000 1080.000 0.000
7
+ 2 96.000 874.800 0.006
8
+ 3 192.000 691.200 0.012
9
+ 4 288.000 529.200 0.018
10
+ 5 384.000 388.800 0.024
11
+ 6 480.000 270.000 0.030
12
+ 7 576.000 172.800 0.036
13
+ 8 672.000 97.200 0.042
14
+ 9 768.000 43.200 0.048
15
+ 10 864.000 10.800 0.054
16
+ 13 1152.000 43.200 0.071
17
+ 14 1248.000 97.200 0.077
18
+ 15 1344.000 172.800 0.083
19
+ 16 1440.000 270.000 0.089
20
+ 17 1536.000 388.800 0.095
21
+ 18 1632.000 529.200 0.101
22
+ 19 1728.000 691.200 0.107
23
+ 20 1824.000 874.800 0.113
24
+ 21 1920.000 1080.000 0.119
25
25
 
26
26
 
27
27
  "Parabolic_2_from_bottom_right"
28
28
  1
29
29
  19
30
- 0 1920.000 0.000 0.000
31
- 1 1824.000 205.200 0.006
32
- 2 1728.000 388.800 0.012
33
- 3 1632.000 550.800 0.018
34
- 4 1536.000 691.200 0.024
35
- 5 1440.000 810.000 0.030
36
- 6 1344.000 907.200 0.036
37
- 7 1248.000 982.800 0.042
38
- 8 1152.000 1036.800 0.048
39
- 9 1056.000 1069.200 0.054
40
- 12 768.000 1036.800 0.071
41
- 13 672.000 982.800 0.077
42
- 14 576.000 907.200 0.083
43
- 15 480.000 810.000 0.089
44
- 16 384.000 691.200 0.095
45
- 17 288.000 550.800 0.101
46
- 18 192.000 388.800 0.107
47
- 19 96.000 205.200 0.113
48
- 20 0.000 0.000 0.119
30
+ 1 1920.000 0.000 0.000
31
+ 2 1824.000 205.200 0.006
32
+ 3 1728.000 388.800 0.012
33
+ 4 1632.000 550.800 0.018
34
+ 5 1536.000 691.200 0.024
35
+ 6 1440.000 810.000 0.030
36
+ 7 1344.000 907.200 0.036
37
+ 8 1248.000 982.800 0.042
38
+ 9 1152.000 1036.800 0.048
39
+ 10 1056.000 1069.200 0.054
40
+ 13 768.000 1036.800 0.071
41
+ 14 672.000 982.800 0.077
42
+ 15 576.000 907.200 0.083
43
+ 16 480.000 810.000 0.089
44
+ 17 384.000 691.200 0.095
45
+ 18 288.000 550.800 0.101
46
+ 19 192.000 388.800 0.107
47
+ 20 96.000 205.200 0.113
48
+ 21 0.000 0.000 0.119
49
49
 
50
50
 
51
51
  "SingleFrame"
52
52
  1
53
53
  1
54
- 0 970.000 550.000 0.000
54
+ 1 970.000 550.000 0.000
@@ -4,8 +4,8 @@ class PFMatchitExportTest < Test::Unit::TestCase
4
4
  include ParabolicTracks
5
5
 
6
6
  def test_desc_and_ext
7
- assert_equal "PFMatchit user track export file (single camera)", Tracksperanto::Export::PFMatchit.human_name
8
- assert_equal "pfmatchit.txt", Tracksperanto::Export::PFMatchit.desc_and_extension
7
+ assert_equal "PFTrack2011/PFMatchit .txt file (single camera)", Tracksperanto::Export::PFMatchit.human_name
8
+ assert_equal "pftrack_2011_pfmatchit.txt", Tracksperanto::Export::PFMatchit.desc_and_extension
9
9
  end
10
10
 
11
11
  P = File.dirname(__FILE__) + "/samples/ref_PFMatchit.2dt"
@@ -171,6 +171,11 @@ class ShakeLexerTest < Test::Unit::TestCase
171
171
  assert_equal :funcall, tree[2][0]
172
172
  end
173
173
 
174
+ def test_parse_simple_varassign
175
+ s = parse 'Foo = 1;'
176
+ assert_equal [[:assign, [:vardef, :image, "Foo"], 1]], s, "Note that the variable name should be escaped properly"
177
+ end
178
+
174
179
  def test_parse_varassign
175
180
  s = parse 'Foo = Blur(Foo, 1, 2, 3); 1'
176
181
  assert_equal [[:assign, [:vardef, :image, "Foo"], [:funcall, "Blur", [:atom, "Foo"], 1, 2, 3]], 1], s
data/test/test_cli.rb CHANGED
@@ -50,8 +50,8 @@ class CliTest < Test::Unit::TestCase
50
50
  assert_equal 0, status, "Should exit with a normal status"
51
51
  fs = %w(. ..
52
52
  flm.stabilizer flm_3de_v3.txt flm_3de_v4.txt flm_boujou_text.txt flm_flame.stabilizer
53
- flm_matchmover.rz2 flm_mayalive.txt flm_nuke.nk flm_pfmatchit.txt flm_pftrack_v4.2dt
54
- flm_pftrack_v5.2dt flm_pftrack_2011.txt flm_shake_trackers.txt flm_syntheyes_2dt.txt
53
+ flm_matchmover.rz2 flm_mayalive.txt flm_nuke.nk flm_pftrack_2011_pfmatchit.txt flm_pftrack_v4.2dt
54
+ flm_pftrack_v5.2dt flm_shake_trackers.txt flm_syntheyes_2dt.txt
55
55
  )
56
56
 
57
57
  assert_same_set fs, Dir.entries(TEMP_DIR)
@@ -87,8 +87,9 @@ class PipelineTest < Test::Unit::TestCase
87
87
  def test_run_with_overridden_importer_and_no_size
88
88
  FileUtils.cp("./import/samples/shake_script/four_tracks_in_one_stabilizer.shk", "./input.shk")
89
89
  pipeline = Tracksperanto::Pipeline::Base.new
90
+ num_exporters = Tracksperanto.exporters.length
90
91
  assert_nothing_raised { pipeline.run("./input.shk", :importer => "Syntheyes", :width => 720, :height => 576) }
91
- assert_equal 14, Dir.glob("./input*").length, "Fourteen files should be present for the input and outputs"
92
+ assert_equal num_exporters, Dir.glob("./input_*").length, "#{num_exporters} files should be present for the input and outputs"
92
93
  end
93
94
 
94
95
  def test_run_with_overridden_importer_and_size_for_file_that_would_be_recognized_differently
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tracksperanto
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
5
4
  prerelease:
6
- segments:
7
- - 2
8
- - 4
9
- - 1
10
- version: 2.4.1
5
+ version: 2.5.0
11
6
  platform: ruby
12
7
  authors:
13
8
  - Julik Tarkhanov
@@ -15,8 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2011-05-20 00:00:00 +02:00
19
- default_executable:
13
+ date: 2011-06-14 00:00:00 Z
20
14
  dependencies:
21
15
  - !ruby/object:Gem::Dependency
22
16
  name: progressbar
@@ -26,42 +20,42 @@ dependencies:
26
20
  requirements:
27
21
  - - ">="
28
22
  - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
23
  version: "0"
33
24
  type: :runtime
34
25
  version_requirements: *id001
35
26
  - !ruby/object:Gem::Dependency
36
- name: flexmock
27
+ name: update_hints
37
28
  prerelease: false
38
29
  requirement: &id002 !ruby/object:Gem::Requirement
39
30
  none: false
40
31
  requirements:
41
32
  - - ">="
42
33
  - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
34
  version: "0"
47
- type: :development
35
+ type: :runtime
48
36
  version_requirements: *id002
49
37
  - !ruby/object:Gem::Dependency
50
- name: hoe
38
+ name: flexmock
51
39
  prerelease: false
52
40
  requirement: &id003 !ruby/object:Gem::Requirement
53
41
  none: false
54
42
  requirements:
55
43
  - - ">="
56
44
  - !ruby/object:Gem::Version
57
- hash: 41
58
- segments:
59
- - 2
60
- - 9
61
- - 1
62
- version: 2.9.1
45
+ version: "0"
63
46
  type: :development
64
47
  version_requirements: *id003
48
+ - !ruby/object:Gem::Dependency
49
+ name: hoe
50
+ prerelease: false
51
+ requirement: &id004 !ruby/object:Gem::Requirement
52
+ none: false
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 2.9.4
57
+ type: :development
58
+ version_requirements: *id004
65
59
  description: Tracksperanto is a universal 2D-track translator between many apps.
66
60
  email:
67
61
  - me@julik.nl
@@ -76,6 +70,7 @@ extra_rdoc_files:
76
70
  - DEVELOPER_DOCS.rdoc
77
71
  - README.rdoc
78
72
  files:
73
+ - .yardopts
79
74
  - DEVELOPER_DOCS.rdoc
80
75
  - History.txt
81
76
  - MIT_LICENSE.txt
@@ -94,7 +89,6 @@ files:
94
89
  - lib/export/nuke_script.rb
95
90
  - lib/export/pfmatchit.rb
96
91
  - lib/export/pftrack.rb
97
- - lib/export/pftrack_2011.rb
98
92
  - lib/export/pftrack_5.rb
99
93
  - lib/export/shake_text.rb
100
94
  - lib/export/syntheyes.rb
@@ -136,7 +130,6 @@ files:
136
130
  - lib/tracksperanto/flame_builder.rb
137
131
  - lib/tracksperanto/format_detector.rb
138
132
  - lib/tracksperanto/keyframe.rb
139
- - lib/tracksperanto/pbar.rb
140
133
  - lib/tracksperanto/progressive_io.rb
141
134
  - lib/tracksperanto/returning.rb
142
135
  - lib/tracksperanto/safety.rb
@@ -150,7 +143,6 @@ files:
150
143
  - test/export/samples/ref_NukeScript.nk
151
144
  - test/export/samples/ref_PFMatchit.2dt
152
145
  - test/export/samples/ref_PFTrack.2dt
153
- - test/export/samples/ref_PFTrack2011.txt
154
146
  - test/export/samples/ref_PFTrack5.2dt
155
147
  - test/export/samples/ref_ShakeText.txt
156
148
  - test/export/samples/ref_Syntheyes.txt
@@ -168,7 +160,6 @@ files:
168
160
  - test/export/test_mux.rb
169
161
  - test/export/test_nuke_export.rb
170
162
  - test/export/test_pfmatchit_export.rb
171
- - test/export/test_pftrack2011_export.rb
172
163
  - test/export/test_pftrack5_export.rb
173
164
  - test/export/test_pftrack_export.rb
174
165
  - test/export/test_shake_export.rb
@@ -258,7 +249,6 @@ files:
258
249
  - test/test_tracker.rb
259
250
  - test/test_tracksperanto.rb
260
251
  - .gemtest
261
- has_rdoc: true
262
252
  homepage: http://guerilla-di.org/tracksperanto
263
253
  licenses: []
264
254
 
@@ -273,23 +263,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
273
263
  requirements:
274
264
  - - ">="
275
265
  - !ruby/object:Gem::Version
276
- hash: 3
277
- segments:
278
- - 0
279
266
  version: "0"
280
267
  required_rubygems_version: !ruby/object:Gem::Requirement
281
268
  none: false
282
269
  requirements:
283
270
  - - ">="
284
271
  - !ruby/object:Gem::Version
285
- hash: 3
286
- segments:
287
- - 0
288
272
  version: "0"
289
273
  requirements: []
290
274
 
291
275
  rubyforge_project: guerilla-di
292
- rubygems_version: 1.4.1
276
+ rubygems_version: 1.8.5
293
277
  signing_key:
294
278
  specification_version: 3
295
279
  summary: Tracksperanto is a universal 2D-track translator between many apps.
@@ -303,7 +287,6 @@ test_files:
303
287
  - test/export/test_mux.rb
304
288
  - test/export/test_nuke_export.rb
305
289
  - test/export/test_pfmatchit_export.rb
306
- - test/export/test_pftrack2011_export.rb
307
290
  - test/export/test_pftrack5_export.rb
308
291
  - test/export/test_pftrack_export.rb
309
292
  - test/export/test_shake_export.rb
@@ -1,30 +0,0 @@
1
- # Export for PFTrack .2dt files for version 2011
2
- class Tracksperanto::Export::PFTrack2011 < Tracksperanto::Export::PFMatchit
3
-
4
- def self.desc_and_extension
5
- "pftrack_2011.txt"
6
- end
7
-
8
- def self.human_name
9
- "PFTrack 2011 .txt file (single camera)"
10
- end
11
-
12
- def export_point(frame, abs_float_x, abs_float_y, float_residual)
13
- @frame_count += 1
14
- # PFTrack 2011 wants one-based frames
15
- line = KEYFRAME_TEMPLATE % [frame + 1, abs_float_x, abs_float_y, float_residual / 8]
16
- @tracker_io.write(line)
17
- @tracker_io.write(linebreak)
18
- end
19
-
20
- private
21
-
22
- def camera_name
23
- "1"
24
- end
25
-
26
- # PFT2011 wants \n
27
- def linebreak
28
- "\n"
29
- end
30
- end
@@ -1,13 +0,0 @@
1
- # We make use of the implementation details of the progress bar to also show our current status
2
- class Tracksperanto::PBar < ::ProgressBar
3
-
4
- def fmt_title
5
- "%20s" % @title
6
- end
7
-
8
- def set_with_message(pcnt, message)
9
- @title = message
10
- set(pcnt)
11
- end
12
-
13
- end
@@ -1,54 +0,0 @@
1
-
2
-
3
- "Parabolic_1_from_top_left"
4
- 1
5
- 19
6
- 1 0.000 1080.000 0.000
7
- 2 96.000 874.800 0.006
8
- 3 192.000 691.200 0.012
9
- 4 288.000 529.200 0.018
10
- 5 384.000 388.800 0.024
11
- 6 480.000 270.000 0.030
12
- 7 576.000 172.800 0.036
13
- 8 672.000 97.200 0.042
14
- 9 768.000 43.200 0.048
15
- 10 864.000 10.800 0.054
16
- 13 1152.000 43.200 0.071
17
- 14 1248.000 97.200 0.077
18
- 15 1344.000 172.800 0.083
19
- 16 1440.000 270.000 0.089
20
- 17 1536.000 388.800 0.095
21
- 18 1632.000 529.200 0.101
22
- 19 1728.000 691.200 0.107
23
- 20 1824.000 874.800 0.113
24
- 21 1920.000 1080.000 0.119
25
-
26
-
27
- "Parabolic_2_from_bottom_right"
28
- 1
29
- 19
30
- 1 1920.000 0.000 0.000
31
- 2 1824.000 205.200 0.006
32
- 3 1728.000 388.800 0.012
33
- 4 1632.000 550.800 0.018
34
- 5 1536.000 691.200 0.024
35
- 6 1440.000 810.000 0.030
36
- 7 1344.000 907.200 0.036
37
- 8 1248.000 982.800 0.042
38
- 9 1152.000 1036.800 0.048
39
- 10 1056.000 1069.200 0.054
40
- 13 768.000 1036.800 0.071
41
- 14 672.000 982.800 0.077
42
- 15 576.000 907.200 0.083
43
- 16 480.000 810.000 0.089
44
- 17 384.000 691.200 0.095
45
- 18 288.000 550.800 0.101
46
- 19 192.000 388.800 0.107
47
- 20 96.000 205.200 0.113
48
- 21 0.000 0.000 0.119
49
-
50
-
51
- "SingleFrame"
52
- 1
53
- 1
54
- 1 970.000 550.000 0.000
@@ -1,19 +0,0 @@
1
- require File.expand_path(File.dirname(__FILE__)) + '/../helper'
2
-
3
- class PFTrack2011ExportTest < Test::Unit::TestCase
4
- include ParabolicTracks
5
-
6
- def test_human_name
7
- assert_equal "PFTrack 2011 .txt file (single camera)", Tracksperanto::Export::PFTrack2011.human_name
8
- end
9
-
10
- def test_desc_and_ext
11
- assert_equal "pftrack_2011.txt", Tracksperanto::Export::PFTrack2011.desc_and_extension
12
- end
13
-
14
- P = File.dirname(__FILE__) + "/samples/ref_PFTrack2011.txt"
15
-
16
- def test_export_output_written
17
- ensure_same_output Tracksperanto::Export::PFTrack2011, P
18
- end
19
- end