質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

1回答

1261閲覧

列車の現在位置を表して列車が動く様子を表現したいです。

sembokulove

総合スコア76

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/06/16 11:48

編集2020/06/16 21:55

列車の現在位置を表して列車が動く様子を表現したいです。
以下のURLでは列車が動く様子が再現されていますが、数値がよくがわからないのです。
http://chocoden.chobi.net/yamanote/yamanote_now.html
以下画像です。
イメージ説明
こういった複雑なアニメーションはcssだけではできないのでjavascriptを使用しているものだと思われます。
駅データの五反田駅の前にある009とか、線路位置データの最初のほうにある[ 6196, 7285 ],とか、ダイヤグラムのほうにある"01G": "210438093725777",がわからないです。01gはおそらく列車番号のことを指しているものだと思われます。
以下はソースの一部です。

// 駅データ aSt: [ "000*大崎,Ōsaki", "009 五反田,Gotanda", "020 目黒,Meguro", "035 恵比寿,Ebisu",

この間省略
],

// 線路位置データ aLoc: [ [ 6196, 7285 ], [ 6206, 7279 ], [ 6213, 7272 ], [ 6221, 7267 ], [ 6229, 7261 ], [ 6237, 7255 ], [ 6244, 7250 ], [ 6252, 7244 ], [ 6260, 7238 ], [ 6267, 7232 ], [ 6274, 7225 ], [ 6280, 7217 ],

この間省略
],

// 駅数の取得: 引数=なし, 戻り値=駅数 getStNum: function() { return this.aSt.length; }, // 駅情報の取得: 引数=駅番号0-29, 戻り値=文字列 getStData: function(n) { if (!((n >= 0) && (n < this.getStNum()))) n = 0; return this.aSt[n]; }, // 駅位置の取得: 引数=駅番号0-29, 戻り値=駅位置0-344 getStPos: function(n) { if (n == this.getStNum()) return 344; return parseInt(this.getStData(n).slice(0, 3), 10); }, // 駅マークの取得: 引数=駅番号0-29, 戻り値=マーク有無 isStMark: function(n) { return (this.getStData(n).charAt(3) == "*"); }, // 駅名の取得: 引数=駅番号0-29/言語0-1, 戻り値=文字列 getStName: function(n, lang) { var str = this.getStData(n).slice(4); var pos = str.indexOf(","); if (pos > 0) { str = lang ? str.slice(pos + 1) : str.slice(0, pos); } return str; }, // 駅番号の検索: 引数=駅名, 戻り値=数値 searchStName: function(s) { var n = -1; if (s) { for (var i = 0; i < this.getStNum(); i++) { if ((s == this.getStName(i, false)) || (s == this.getStName(i, true))) { n = i; break; } } } return n; }, // ダイヤ情報 diaData: null, // 平日ダイヤ weekday: { // ダイヤ名 name: "Weekday", name_jp: "平日", // 運行順番 orderOut: [ "01G", "31G", "13G", "33G", "45G", "53G", "15G", "17G", "35G", "61G", "37G", "19G", "47G", "39G", "05G", "21G", "41G", "07G", "43G", "49G", "23G", "03G", "25G", "09G", "27G", "11G", "51G", "29G" ], orderIn: [ "00G", "10G", "64G", "32G", "76G", "12G", "24G", "80G", "02G", "14G", "66G", "26G", "34G", "60G", "16G", "68G", "28G", "04G", "18G", "70G", "36G", "30G", "62G", "06G", "20G", "72G", "08G", "22G", "74G", "78G" ], // 運用変更テーブル changeOutDaytm: [ "31G", "13G", "15G", "17G", "35G", "19G", "39G", "05G", "41G", "07G", "23G", "03G", "25G", "11G", "29G" ], changeInDaytm: [ "00G", "64G", "76G", "24G", "02G", "14G", "60G", "16G", "68G", "04G", "30G", "62G", "06G", "08G", "74G" ], changeOutNight: [ "31G", "13G", "45G", "53G", "15G", "17G", "35G", "19G", "47G", "39G", "05G", "41G", "07G", "49G", "23G", "03G", "25G", "11G", "51G", "29G" ], changeInNight: [ "00G", "64G", "32G", "76G", "24G", "80G", "02G", "14G", "34G", "60G", "16G", "68G", "04G", "36G", "30G", "62G", "06G", "08G", "74G", "78G" ], // ダイヤ diagram: { // 外回り "01G": "210438093725777", "03G": "04042724316589965555687678A", "05G": "2305112516246896555577776899", "07G": "04052524185889655555777699", "09G": "0105390926678", "11G": "0405462323578755555586776", "13G": "04055624507888455556776879", "15G": "0406012347877765556986777", "17G": "03060724555787655568876777", "19G": "03061725046875655557867779", "21G": "040627094758", "23G": "0106342450A885555579676798", "25G": "040641221489B5555568676", "27G": "040648101078", "29G": "0106542509789555556967768A", "31G": "0407002445877555556867778", "33G": "04070609207", "35G": "0107142422897655568776787", "37G": "040720104087", "39G": "04072624078856555787767A", "41G": "010735233488565555876789", "43G": "04074009569", "45G": "04155421276776", "47G": "0316112509976778A", "49G": "04162822039767", "51G": "0116462355876777", "53G": "0317022450967678", "61G": "14042509323767", // 内回り "00G": "400430243169988555557768776", "02G": "4104452431A878875556867878B", "04G": "40050920446988875555768", "06G": "410523250659898555567789888", "08G": "40053123196888555565768A9", "10G": "4005421012788", "12G": "4005501020788", "14G": "400600224058898555577696", "16G": "4106102445687875557777978A", "18G": "4006181049979", "20G": "400632095588", "22G": "400640100388", "24G": "400659201697865556576", "26G": "40071009268", "28G": "410721101888", "30G": "40073223058766555777887", "32G": "411542220077697", "34G": "4016002351877876", "36G": "401617251686886A6", "60G": "1004342503177877755578688778", "62G": "100452241635B78765556868977", "64G": "130627244018785555557787977", "66G": "1006431031188", "68G": "1006542405178A75555868979", "70G": "100703094428", "72G": "1007151103478", "74G": "10072422133785555556789", "76G": "100735244338865557676A678", "78G": "10161421071678", "80G": "131632245236776897" } }, // 土休日ダイヤ holiday: { // ダイヤ名 name: "Holiday", name_jp: "土休日", // 運行順番 orderOut: [ "01G", "19G", "33G", "09G", "21G", "25G", "61G", "11G", "27G", "05G", "35G", "23G", "29G", "13G", "03G", "15G", "07G", "31G", "17G" ], orderIn: [ "00G", "66G", "08G", "20G", "68G", "02G", "16G", "10G", "60G", "70G", "22G", "12G", "04G", "72G", "62G", "14G", "18G", "06G", "74G", "64G" ], // 運用変更テーブル changeOutDaytm: [ "01G", "19G", "33G", "09G", "21G", "25G", "61G", "11G", "27G", "05G", "23G", "29G", "13G", "03G", "15G", "07G", "31G", "17G" ], changeInDaytm: [ "00G", "66G", "08G", "20G", "68G", "02G", "16G", "10G", "60G", "70G", "22G", "12G", "04G", "72G", "62G", "14G", "18G", "06G", "74G", "64G" ], changeOutNight: [ "01G", "19G", "33G", "09G", "21G", "25G", "61G", "11G", "27G", "05G", "35G", "23G", "29G", "13G", "03G", "15G", "07G", "31G", "17G" ], changeInNight: [ "00G", "66G", "08G", "20G", "68G", "02G", "16G", "10G", "60G", "70G", "22G", "12G", "04G", "72G", "62G", "14G", "18G", "06G", "74G", "64G" ], // ダイヤ diagram: { // 外回り "01G": "2304392431166656554556567988", "03G": "010427200865676455556655", "05G": "2305112458255675555554566778", "07G": "04054324185655554556656687", "09G": "04060121187555665555566", "11G": "04061724506655555555564777", "13G": "01063124337875555556567767", "15G": "03064325166655555556565767", "17G": "0406532429666555456658788", "19G": "040703200555654555556", "21G": "01071225095556645555666777", "23G": "04073319335854555765", "25G": "040820244665565555566867", "27G": "030831245275555555565767", "29G": "030842250675555566556767", "31G": "010902245055555565676877", "33G": "04112623315555557588", "35G": "0116142318656776", "61G": "140425202135785556555555", // 内回り "00G": "400430205365766555555567", "02G": "4104451832756765555555", "04G": "400509181467665555555", "06G": "400527251666565555555677A86", "08G": "400544220457555555555565", "10G": "4005582336676555555557779", "12G": "4006102024776555555576", "14G": "410628190455555555556", "16G": "4308072440755555555576997", "18G": "410841244565555555558968", "20G": "410904250655555555675678", "22G": "430926245265555556678677", "60G": "10043419061655655555555", "62G": "1004522503355655555555577877", "64G": "10071824161765555555578A8", "66G": "10072718431565555555", "68G": "1007342427186555555576677", "70G": "10075422301555555555577", "72G": "100806234916555555555677", "74G": "1008221833255555555" } },

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2020/06/16 12:14

タイトルと質問内容が一致していないと思いますが、何がわからないのでしょうか? わからない部分を具体的に記載していただけないでしょうか。
guest

回答1

0

駅データの五反田駅の前にある009

駅の位置をあらわしているようです。具体的には、線路位置データの要素を指すようです。

線路位置データの最初のほうにある[ 6196, 7285 ],

線路の座標を表しているようです。

ダイヤグラムのほうにある"01G": "210438093725777",

1文字目が始発駅
2文字目が終着駅
3~6文字目が始発時刻
7~10文字目が終着時刻
それ以降は、おそらく周回の時間だと思います。

投稿2020/06/17 02:07

Lhankor_Mhy

総合スコア36158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sembokulove

2020/06/17 08:29

詳細な情報のご提供をありがとうございます。では、五反田駅の前にある009はどうやって求めたものでしょうか。また、このプログラムの場合途中駅の停車時間は設定できないのでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問