Class: Tracksperanto::Import::NukeScript::Tracker3
- Inherits:
-
Object
- Object
- Tracksperanto::Import::NukeScript::Tracker3
show all
- Includes:
- ZipTuples
- Defined in:
- lib/import/nuke_script.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from ZipTuples
#zip_curve_tuples
Constructor Details
#initialize(options) ⇒ Tracker3
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
# File 'lib/import/nuke_script.rb', line 44
def initialize(options)
@trackers = []
point_channels.each do | point_name |
next unless options[point_name]
point_channel = options[point_name]
curves = (point_channel)
next unless curves.length == 2
full_name = [options["name"], point_name].join('_')
tracker = package_tracker(full_name, curves[0], curves[1])
@trackers << tracker
end
end
|
Instance Attribute Details
#trackers ⇒ Object
Returns the value of attribute trackers.
42
43
44
|
# File 'lib/import/nuke_script.rb', line 42
def trackers
@trackers
end
|
Instance Method Details
71
72
73
74
75
76
77
78
79
80
|
# File 'lib/import/nuke_script.rb', line 71
def (point_channel)
point_channel[1..-1].map do | curve_argument |
if curve_argument[1] == "curve"
Tickly::Curve.new(curve_argument)
else
nil
end
end.compact
end
|
#package_tracker(full_name, xcurve, ycurve) ⇒ Object
62
63
64
65
66
67
68
69
|
# File 'lib/import/nuke_script.rb', line 62
def package_tracker(full_name, xcurve, ycurve)
frame_x_and_y = zip_curve_tuples(xcurve, ycurve)
Tracksperanto::Tracker.new(:name => full_name) do | t |
frame_x_and_y.each do | (f, x, y) |
t.keyframe!(:frame => (f -1), :abs_x => x, :abs_y => y)
end
end
end
|
#point_channels ⇒ Object
82
83
84
|
# File 'lib/import/nuke_script.rb', line 82
def point_channels
%w( track1 track2 track3 track4 )
end
|