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?
Constructor Details
#initialize(updates, options = {}) ⇒ AnimatedUpdate
The updates argument is an array of strings containing <Change> elements
1697 1698 1699 1700 1701 1702 |
# File 'lib/kamelopard/classes.rb', line 1697 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.
1693 1694 1695 |
# File 'lib/kamelopard/classes.rb', line 1693 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.
1693 1694 1695 |
# File 'lib/kamelopard/classes.rb', line 1693 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.
1693 1694 1695 |
# File 'lib/kamelopard/classes.rb', line 1693 def target @target end |
#updates ⇒ Object
Returns the value of attribute updates.
1694 1695 1696 |
# File 'lib/kamelopard/classes.rb', line 1694 def updates @updates end |
Instance Method Details
#<<(a) ⇒ Object
Adds another update string, presumably containing a <Change> element
1717 1718 1719 |
# File 'lib/kamelopard/classes.rb', line 1717 def <<(a) @updates << a end |
#to_kml(elem = nil) ⇒ Object
1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 |
# File 'lib/kamelopard/classes.rb', line 1721 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 |