Sha256: 71e1f3e0b69e66158d4134e24790fff8dd465dffb6cf0bbd180e2d42396fcd51

Contents?: true

Size: 1.22 KB

Versions: 14

Compression:

Stored size: 1.22 KB

Contents




require 'omf_oml/network'
require 'omf_oml/table'

include OMF::OML
  
nw = OmlNetwork.new 'mobile_network'
nw.node_schema [[:x, :float], [:y, :float], [:capacity, :float]]
nw.create_node :n0, :x => 0.2, :y => 0.2, :capacity =>  0.3
nw.create_node :n1, :x => 0.8, :y => 0.2, :capacity =>  0.5
nw.create_node :n2, :x => 0.8, :y => 0.8, :capacity =>  0.8
nw.create_node :n3, :x => 0.2, :y => 0.8, :capacity =>  0.8
nw.create_node :m1, :x => 0.5, :y => 0.7, :capacity =>  0.8

nw.link_schema [[:load, :float]]
l = nw.create_link :l01, :n0, :m1, :load => 0.8

require 'omf_web'
OMF::Web.register_datasource nw.to_table(:nodes, :index => :id)
OMF::Web.register_datasource nw.to_table(:links, :index => :id)

# Move mobile node
Thread.new do
  begin
    ts = 0
    angle = 0
    delta = Math::PI / 6
    twoPi = 2 * Math::PI
    r = 0.25
    loop do
      sleep 1
      ts = ts + 1
      angle += delta
      angle -= twoPi if angle >= twoPi
      nw.transaction do 
        m = nw.node(:m1)
        #m[:ts] = ts
        m[:x] = r * Math.sin(angle) + 0.5
        m[:y] = r * Math.cos(angle) + 0.5
        l[:load] = rand()
      #puts m.describe
        
      end
    end
  rescue Exception => ex
    puts ex
    puts ex.backtrace.join("\n")
  end
end


Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
omf_web-1.2.9 example/demo/data_sources/mobile_network.rb
omf_web-1.2.8 example/demo/data_sources/mobile_network.rb
omf_web-1.2.7 example/demo/data_sources/mobile_network.rb
omf_web-1.2.6 example/demo/data_sources/mobile_network.rb
omf_web-1.2.5 example/demo/data_sources/mobile_network.rb
omf_web-1.2.4 example/demo/data_sources/mobile_network.rb
omf_web-1.2.3 example/demo/data_sources/mobile_network.rb
omf_web-1.2.2 example/demo/data_sources/mobile_network.rb
omf_web-1.2.1 example/demo/data_sources/mobile_network.rb
omf_web-1.2.0 example/demo/data_sources/mobile_network.rb
omf_web-1.0.0 example/demo/data_sources/mobile_network.rb
omf_web-0.9.9 example/demo/data_sources/mobile_network.rb
omf_web-0.9.8 example/demo/data_sources/mobile_network.rb
omf_web-0.9.7 example/demo/data_sources/mobile_network.rb