2014年12月24日水曜日

easyView



地図を共有しています。
概要説明

三次開発の目的はpoi描画処理の独立を設定します。
createPoi()は多数の独立した処理から呼ばれます。
leafletとpoiを個別処理とします。

















 poisデータ構成
  mongoDBの属性
 pois独自のデータ
 jeojsonのデータ
 streetView独自のデータ

------------------
gid mongoGid
name xxx
url xxx
img xxx
note コメント
geojson geojson形式データ
locpov google独自のストリートビュー情報


二次開発終了

2015/01/04
ドメイン取得
 easydia.com

easyDiaポート整理

:80/ ホームページ
:80/pois.html 地理情報
:8080/proj map 表示機能
:8010/proq map 編集機能

kanri ダイヤ管理
seiri 運転整理

:4567 シナトラポート


地図の移動とブラウザの履歴を連動する。

leafletとosm、google mapの共存を計画しています。

bootstrap導入予定

























■概要
poiを地図にマッピングする

対象コード

yahoo

loctouch

hotpepper

easyView



セレクション

位置情報提供サイトの選択が出来ます。

代表的なサイトでは、yahoo , loctouch,HotPepper,easyView,JTB,Twitterなどがあります。










情報ウインドウのクローズで、設定が反映されます。

check変数の扱い

説明
0x1ファンクションキーの無効
0x2ファンクションキー「F2」設定
0x4未定義
0x8未定義
0x10loctouch
0x20yahoo情報
0x40hotpepper情報
0x80easyView
0x100JTB
0x200twitter
0x400postmap
0x800未定義

or変数の扱い(フィルター)

国土地理院


■取説

アドレスバーのurlについて

図1

http://157.7.130.137/pois.html?ll=35.11991,132.39899&zo=8&id=sug*upNew-6075023763&mg=1
例 http://xxxxxxxx:xxxxx/&ll=
ll latとlngの組み合わせ
zo ズームレベル
id *を含む文字列
geocodeについて

図1


下部のテキストインプットエリアから住所又は緯度経度を入力します。






図1

選択できるものに

popupについて















コントローラについて










図2

■managerレベルについて

図1


ツイートツール

ツイート発行ツール






[x]キャンセルボタンで画面を削除してツイートをキャンセルする。

[Twitter+]ボタンでツイートを実行する。



■開発記録

leafletについて

マーカとレイヤーについて
マーカを取得するループの中で
var markers[] :
markers.push(marker)
レイヤーにmarkersを登録する
_layer




■その他

2014年8月18日月曜日

easyDiaで運転整理


最新情報を加筆します
概要を説明します。

■トップメニューについて



駅名
knd:
列車番号
走行時間
初時刻
着時刻
発駅
着駅

列車時刻表
列車削除
時刻配置
■メニュー












xxx
番線数を入力後、表示をクリックで、番線数を表示します。

列車番号を表示します。

直線引きで該当の駅のスジを直線で引きます。
駅表示はそのままです。

up downボタンはダイヤ図画面の駅の位置を調整します。これでダイヤ図の駅の構成バランスを調整し、ダイヤ図を見やすくすることができます。
確定ボタンで、駅情構成をデータベースに保存します。



■運用と列車番号について
運用>列車番号
運用(次運用、ワタリ)が設定している場合、列車番号を変更しても、運用には影響がない。
次運用が設定されている場合、次列車が参考している前列車の列車番号bnoも変更する。
*いずれもサーバサイドで実行する。

■他交通ダイヤの整備
epaファイルと、seedファイルでダイヤの環境を整備します。
■バスダイヤ分岐について
支線などで分岐すると、3点のバス停が存在する。
      *
        *
         a
       b  c
    *      *
  *         *

■他交通ダイヤについて
他交通ダイヤセットを計画しています。
csvでダイヤが作成できます。
eki,pat,seedの三点セットで登場
初回駅配置以外は、パターンデータに依存する。
■概念
路線上に駅が存在するのではなく、駅を結ぶのが路線である。
藤沢駅に行くと、東海道本線と、小田急江ノ島線がある。
■走行パターン(運転曲線から算出)
csvによるパターンデータを登録します。
■線定義
11 JR
99 民鉄
12 新幹線
20から 他交通 バスなど
■ダイヤ管理システムの運用手順
駅作成
csvから駅データ作成手順
走行パターン作成
csvファイルから走行停車パターン作成
スジ作成
駅データと走行停車パターンデータからスジデータを作成する
■運用編集

■パターンファイルについて
下りのパターンを主題とする、走行時間は下りのデータが主題とする。
■開発
スジ描画ロジックを大幅修正を予定する。種別変更対応の為。

■基本ダイヤとは
初期化時のダイヤを意味します。番線、初時刻、着時刻などは正確ではなく、運用が把握できる程度の情報を持つダイヤを意味します。こんなダイヤが欲しいです程度の大まかなダイヤを意味し、諸元を追加することで、制御ダイヤを完成します。時刻表を提供しているapiからのデータはこれ(基本ダイヤ}を意味しています。

■仕様変更
初回画面での、駅、列車番号、時間帯の指定は出来ないものとする。

■独立ダイヤの作成方法
  独立dbの作成方法
db.SJ24006A012.drop()
db.SJ24006.copyTo("SJ24006A012")
db.SJ24006A012.update({},{ $set : { col :"SJ24006A012"} } ,{  multi : true , upsert: true }  )
db.linesConfig.save(  { _id : "inogasiraRensyu" , eki : { "EK24006":{ sort : "asc" } } ,
    dia :  { "SJ24006A012" : { mainLine : "EK24006" } } ,
    pat : [ "PT24006"  ] , ds : 1 , filter : {} , kind : 19 , height : 2400 , fundot : 0.06  ,
     comment : "井の頭線練習用,これは独立ダイヤです" , user : "sugoroku" })

■遷移について
メニューを変更しました。

■データベースについて
かなり汚れているので、初期化してください。列車入力処理を実行してください

■スクリプトについて
駅は作るが、スジは作らない。

■ダイヤ種別について
データベースのダイヤ種別の取り扱いを大幅に変更します。
ダイヤ種別=>コレクション単位

■列車時刻表の強化

■コンフィグファイルの書き方

db.linesConfig.update( { name : "inogasira" }, { name : "inogasira" ,
    eki : { "EK24006":{ sort : "asc" } } ,
    dia :  { "SJ24006A015" : { mainLine : "EK24006" } } ,
    pat : [ "PT24006"  ] ,
    ds : 1 , filter : {} , kind : 21 , height : 2400 , fundot : 0.06  ,
     comment : "京王井の頭線" , user : "sugoroku" },
    { upsert: true } )

■通過駅追加方法

■データベースについて
データベースサーバは157とする
データベース名はsystemsとする

システム構成。

編集作業はここから,ダイヤ作成ツール
描画の処理スクリプトをd3.jsに変更。これに伴うプログラム修正。
ダイヤ図データの入力処理をインプットサーバに依頼する。
走行パターンでの列車作成処理が安定していないので、機能登録中断。
☆途中交換出来るスジの構成をデータベースに反映すること。



<iframe width='500' height='300' frameBorder='0' src='http://157.7.130.137/snowJapan.html?ll=45.69083,141.15234&zo=6'></iframe>
皆で列車ダイヤ図を作成しようプロジェクト。
ダイヤ図の作成支援と運転整理、列車ダイヤを楽しもう。
列車種別をinputサーバで定義してください。正規表現を用います。

---------------------------------
以下のシェルを流してください!
seqNumとeki名称を追加います
// ①
// 駅位置を替えるスクリプト
 // 注意 seqNumは整数
 db.EK99414.update({"ekicode":"9941425"},{ $set : { "seqNum" : 6 } })
// ②
//  駅名称を追加します
 db.EK99414.update({"name":"高岡駅前"} , { $set : { "nijiName" : ["高岡駅" ] }} ) ;

patternの改造
upStart
downStart

以上が追加項目です。

//
// 起動方法
// mongo sugoroku seqNum.js
// 駅情報にシーケンス番号を付与します
//

var totalCount = 0
var ary = db.getCollectionNames() ;
for(i in ary ) {
    var x = ary[i] ;
    if(x.charAt(0) == 'E') {
        var coll = db.getCollection(x);
 print(x)
        //
        var c = coll.find() ;
        var ix = 0 ;
        while ( c.hasNext() ) {
            var field = c.next()
            var id = field['_id']
            // すべての駅コードを対象とする
//          var a = coll.update({"_id" : id } , { $set : { "seqNum" : ix } } ) ;
            printjson( field )
            ix += 10
        }
    }
}

ダイヤ種別を定義します。
平日ダイヤ _diaSyubetu = 1
土曜、休日ダイヤ _diaSyubetu = 2
土曜ダイヤ _diaSyubetu = 3
休日ダイヤ _diaSyubetu = 4
追加機能 2014/10/29
駅作成処理
EKxxxxxコレクションから複数の駅を連続的に読み込み、その定義を登録する。

ダイヤ図構成定義シェル
 mongo linesConfigデータベースにコンフィグを登録する。

各種ダイヤデータ読み込み処理
 例 OuDia, 駅から時刻表
------------------------------------
ダイヤ作成方法
パターン処理大幅に修正しています。
発時刻の不整合、2箇所でデータを持っている、sujiとダイヤ発時刻
パターンデータの上り下りのデータ長は同じでない場合があるのでは!
上りで停車するが下りでは通過!
列車時刻表と走行パターンの連動