Sha256: 0b7d2d782bad9b06ac964605b8e5835659a3cd61df8a958fcada148c57722358

Contents?: true

Size: 966 Bytes

Versions: 2

Compression:

Stored size: 966 Bytes

Contents

class Tracksperanto::Export::Pftrack < Tracksperanto::Export::Base
    
    # Should return the suffix and extension of this export file (like "_flame.stabilizer")
    def self.desc_and_extension
      "pftrack.2dt"
    end
    
    def start_tracker_segment(tracker_name)
      # Setup for the next tracker
      @prev_tracker = []
      @tracker_name = tracker_name
    end
    
    def end_tracker_segment
      # If there was a previous tracker, write it out
      # - now we know how many keyframes it has
      if @prev_tracker && @prev_tracker.any?
        block = [
          "\n",
          @tracker_name.inspect, # "autoquotes"
          @prev_tracker.length,
          @prev_tracker.join("\n")
        ]
        @io.puts block.join("\n")
      end
    end
    
    def export_point(frame, abs_float_x, abs_float_y, float_residual)
      line = "%s %.3f %.3f %.3f" % [frame, abs_float_x, abs_float_y, float_residual]
      @prev_tracker << line
    end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
tracksperanto-1.1.1 lib/export/pftrack.rb
tracksperanto-1.1.0 lib/export/pftrack.rb