OSMデータから街並みを作るWebアプリ
- OSMデータ
- 必要なデータに合わせたOverpassのクエリを決める
- OverpassからGeoJSON形式でOSMデータをダウンロードする
- OSMデータのjsonファイルよりも容量が軽いため、GeoJSON形式を使用する
- 投影するためのデータに整形する
- 投影法を指定して経緯度ベースのデータを3d用のデータに投影する
- 3D用のデータをもとにモデルを配置する
- 標高、湖水深、基準水面標高
OSMデータから街並みを作るWebアプリ
import { createInterface } from "readline" | |
import { promisify } from "util" | |
const rl = createInterface({ | |
input: process.stdin, | |
output: process.stdout | |
}) | |
const question = promisify<string, string>(rl.question as (answer: string) => Promise<string>).bind(rl) |
let str = '' | |
for (var i = 0; i < length; i++) | |
str += String.fromCodePoint(Math.floor(Math.random() * 0x10FFFF)) |
require.cache[moduleId] = { id: moduleId }
を追加することで監視を継続できるtest.js
:
const path = require('path')
const hmr = require('node-hmr')
パスワード:
!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~
!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~
/^[\x20-\x7E]{14,100}$/
<!DOCTYPE html> | |
<html lang="ja"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta http-equiv="X-UA-Compatible" content="IE=edge"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>title</title> | |
<link rel="preconnect" href="https://fonts.googleapis.com"> | |
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> |