Class: Kamelopard::Model

Inherits:
Geometry show all
Defined in:
lib/kamelopard/classes.rb

Overview

Corresponds to the KML Model class

Instance Attribute Summary collapse

Attributes inherited from Object

#comment, #kml_id, #master_only

Instance Method Summary collapse

Methods inherited from Object

#_alternate_to_kml, #change, #master_only?, parse

Constructor Details

#initialize(options = {}) ⇒ Model

location should be a Point, or some object that can behave like one, including a Placemark. Model will get its Location and altitudeMode data from this attribute


2453
2454
2455
2456
# File 'lib/kamelopard/classes.rb', line 2453

def initialize(options = {})
 #link, location, orientation, scale, resourceMap)
    super
end

Instance Attribute Details

Returns the value of attribute link


2448
2449
2450
# File 'lib/kamelopard/classes.rb', line 2448

def link
  @link
end

#locationObject

Returns the value of attribute location


2448
2449
2450
# File 'lib/kamelopard/classes.rb', line 2448

def location
  @location
end

#orientationObject

Returns the value of attribute orientation


2448
2449
2450
# File 'lib/kamelopard/classes.rb', line 2448

def orientation
  @orientation
end

#resourceMapObject

Returns the value of attribute resourceMap


2448
2449
2450
# File 'lib/kamelopard/classes.rb', line 2448

def resourceMap
  @resourceMap
end

#scaleObject

Returns the value of attribute scale


2448
2449
2450
# File 'lib/kamelopard/classes.rb', line 2448

def scale
  @scale
end

Instance Method Details

#to_kml(elem = nil) ⇒ Object


2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
# File 'lib/kamelopard/classes.rb', line 2458

def to_kml(elem = nil)
    x = XML::Node.new 'Model'
    super x
    loc = XML::Node.new 'Location'
    {
        :longitude => @location.longitude,
        :latitude => @location.latitude,
        :altitude => @location.altitude,
    }.each do |k, v|
        d = XML::Node.new k.to_s
        d << v.to_s
        loc << d
    end
    x << loc
    Kamelopard.add_altitudeMode(@location.altitudeMode, x)
    @link.to_kml x unless @link.nil?
    @orientation.to_kml x unless @orientation.nil?
    @scale.to_kml x unless @scale.nil?
    @resourceMap.to_kml x unless @resourceMap.nil?
    elem << x unless elem.nil?
    x
end