Class: Kamelopard::AnimatedUpdate
- Inherits:
-
TourPrimitive
- Object
- Object
- TourPrimitive
- Kamelopard::AnimatedUpdate
- Defined in:
- lib/kamelopard/classes.rb
Overview
Corresponds to KML’s gx:AnimatedUpdate object. For now at least, this isn’t very intelligent; you’ve got to manually craft the <Change> tag(s) within the object.
Instance Attribute Summary collapse
-
#delayedStart ⇒ Object
XXX For now, the user has to specify the change / create / delete elements in the <Update> manually, rather than creating objects.
-
#duration ⇒ Object
XXX For now, the user has to specify the change / create / delete elements in the <Update> manually, rather than creating objects.
-
#target ⇒ Object
XXX For now, the user has to specify the change / create / delete elements in the <Update> manually, rather than creating objects.
-
#updates ⇒ Object
Returns the value of attribute updates.
Attributes inherited from TourPrimitive
Attributes inherited from Object
#comment, #kml_id, #master_only
Instance Method Summary collapse
-
#<<(a) ⇒ Object
Adds another update string, presumably containing a <Change> element.
-
#initialize(updates, options = {}) ⇒ AnimatedUpdate
constructor
The updates argument is an array of strings containing <Change> elements.
- #to_kml(elem = nil) ⇒ Object
Methods inherited from Object
#_alternate_to_kml, #change, #master_only?, parse
Constructor Details
#initialize(updates, options = {}) ⇒ AnimatedUpdate
The updates argument is an array of strings containing <Change> elements
1868 1869 1870 1871 1872 1873 |
# File 'lib/kamelopard/classes.rb', line 1868 def initialize(updates, = {}) #duration = 0, target = '', delayedstart = nil) @updates = [] super @updates = updates unless updates.nil? or updates.size == 0 end |
Instance Attribute Details
#delayedStart ⇒ Object
XXX For now, the user has to specify the change / create / delete elements in the <Update> manually, rather than creating objects.
1864 1865 1866 |
# File 'lib/kamelopard/classes.rb', line 1864 def delayedStart @delayedStart end |
#duration ⇒ Object
XXX For now, the user has to specify the change / create / delete elements in the <Update> manually, rather than creating objects.
1864 1865 1866 |
# File 'lib/kamelopard/classes.rb', line 1864 def duration @duration end |
#target ⇒ Object
XXX For now, the user has to specify the change / create / delete elements in the <Update> manually, rather than creating objects.
1864 1865 1866 |
# File 'lib/kamelopard/classes.rb', line 1864 def target @target end |
#updates ⇒ Object
Returns the value of attribute updates.
1865 1866 1867 |
# File 'lib/kamelopard/classes.rb', line 1865 def updates @updates end |
Instance Method Details
#<<(a) ⇒ Object
Adds another update string, presumably containing a <Change> element
1888 1889 1890 |
# File 'lib/kamelopard/classes.rb', line 1888 def <<(a) @updates << a end |
#to_kml(elem = nil) ⇒ Object
1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 |
# File 'lib/kamelopard/classes.rb', line 1892 def to_kml(elem = nil) k = XML::Node.new 'gx:AnimatedUpdate' super(k) d = XML::Node.new 'gx:duration' d << @duration.to_s k << d if not @delayedStart.nil? then d = XML::Node.new 'gx:delayedStart' d << @delayedStart.to_s k << d end d = XML::Node.new 'Update' q = XML::Node.new 'targetHref' q << @target.to_s d << q @updates.each do |i| if i.is_a? XML::Node then d << i else parser = reader = XML::Parser.string(i) doc = parser.parse node = doc.child n = node.copy true d << n end end k << d elem << k unless elem.nil? k end |