Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
埼玉県の描き方.pdf
Search
anozon
October 25, 2021
Technology
0
34
埼玉県の描き方.pdf
anozon
October 25, 2021
Tweet
Share
More Decks by anozon
See All by anozon
VSVimの間合いですよ
anozon
0
100
PWAを活用している_ガジェットアプリの話.pdf
anozon
0
21
Other Decks in Technology
See All in Technology
研究開発と製品開発、両利きのロボティクス
youtalk
1
530
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
570
DroidKaigi 2025 Androidエンジニアとしてのキャリア
mhidaka
2
300
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
4
1.6k
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
140
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
170
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
12
4.8k
【NoMapsTECH 2025】AI Edge Computing Workshop
akit37
0
180
slog.Handlerのよくある実装ミス
sakiengineer
4
110
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
230
Featured
See All Featured
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Code Review Best Practice
trishagee
70
19k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
We Have a Design System, Now What?
morganepeng
53
7.8k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Language of Interfaces
destraynor
161
25k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Transcript
埼玉県の描き方 あのぞん(えるざっぷ)
About me @anozon あのぞん (@anozon) elzup · GitHub 株式会社プランクユニッツ 埼玉県
川越市出身(22年) →東京(研究室ぐらし 3年) →東京(2年) React,TypeScript
埼玉県の描き方は2ステップ 埼玉県の描き方 • 埼玉の輪郭を手に入れる • 埼玉の描画する
埼玉の輪郭を手に入れる
GADM で地理境界線データを取得する 埼玉の輪郭を手に入れる • GADM https://gadm.org/download_co untry_v3.html • level2(市町村)までの 区域データがある
• shape,kmlなど様々なデータ形式
GADM データを見てみる KML の中に47都道府県確認できる 埼玉の輪郭を手に入れる • 解凍 KMZ → KML
• gadm36_JPN_0.kml 日本の? • gadm36_JPN_1.kml 都道府県の輪郭 ←今回はこれ • gadm36_JPN_2.kml 市町村の輪郭
GADM データを見てみる Google Earth で確認できる 埼玉の輪郭を手に入れる
余談 kml からデータを抜き出す(うまく行かなかった) 埼玉の輪郭を手に入れる • xml → json • jq
で抜き出し
埼玉を描画する SVG で描いてみた
そのまま SVG <polygon /> に入れてみると 埼玉の描画する
そのまま SVG <polygon /> に入れてみると 埼玉の描画する line-weight が 太いせい 北半球なので
SVG の座 標系と上下が反対
ちゃんと描画できた 埼玉の描画する stroke-width="0.4%" svg { transform: scaleY(-1); } 強引に
正規化するために 埼玉県の東西南北の先端を出してみる 埼玉の描画する
埼玉県の東西南北の先端を出してみる 【永久保存版!】(埼玉の地理が変わらない限り) 埼玉の描画する n: 36.2759285 s: 35.75846481 e: 139.90383911 w:
138.71534729 GADM パスデータ依存
Fit しました 埼玉の描画する サイズ: 11KB 頂点数: 420
埼玉を圧縮する
正規化と緯度経度を丸め込んで ちょっと軽くしてみる 埼玉を圧縮する
正規化と緯度経度を丸め込んで ちょっと軽くしてみたい 埼玉を圧縮する
解像度1000でSVGで30%くらいに減った 埼玉の描画する サイズ: 11KB → 3KB プチ圧縮であって *1000 して +
先端分shift 切り捨て部分の情報失われる
おまけ解像度100 埼玉の描画する 元の 解像度100
成果物はこちら CodePen コード https://codepen.io/anozon/pen/vYZZrgO?edito rs=1011
終わりに こんなに埼玉を意識してコーディングしたのは人生で初めてだった GADM データは地球ハッカーになるための 偉大なツールの1つである