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 Object
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
Constructor Details
#initialize(updates, options = {}) ⇒ AnimatedUpdate
The updates argument is an array of strings containing <Change> elements
1328 1329 1330 1331 1332 1333 |
# File 'lib/kamelopard/classes.rb', line 1328 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.
1324 1325 1326 |
# File 'lib/kamelopard/classes.rb', line 1324 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.
1324 1325 1326 |
# File 'lib/kamelopard/classes.rb', line 1324 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.
1324 1325 1326 |
# File 'lib/kamelopard/classes.rb', line 1324 def target @target end |
#updates ⇒ Object
Returns the value of attribute updates.
1325 1326 1327 |
# File 'lib/kamelopard/classes.rb', line 1325 def updates @updates end |
Instance Method Details
#<<(a) ⇒ Object
Adds another update string, presumably containing a <Change> element
1348 1349 1350 |
# File 'lib/kamelopard/classes.rb', line 1348 def <<(a) @updates << a end |
#to_kml(elem = nil) ⇒ Object
1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 |
# File 'lib/kamelopard/classes.rb', line 1352 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 |