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
MapLibreとtile.openstretmap.jpで始めるベクトル地図プログラミング
Search
Taro Matsuzawa aka. btm
August 28, 2021
Programming
670
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MapLibreとtile.openstretmap.jpで始めるベクトル地図プログラミング
FOSS4G Tokai 2021発表資料
Taro Matsuzawa aka. btm
August 28, 2021
More Decks by Taro Matsuzawa aka. btm
See All by Taro Matsuzawa aka. btm
OpenLayers ext TypeScript declarationの開発
smellman
0
650
平成生まれのためのUNIX&IT歴 史講座 ~番外編~
smellman
2
580
掛川城の点群データをiTownsで表示しよう
smellman
0
360
そのJavascript、全部TypeScriptにしちゃえ
smellman
1
260
大容量SSDとOpenStreetMap
smellman
0
180
国内向けタイルサーバの構築と運用について
smellman
0
1.8k
Python/Javascriptで読む点群
smellman
1
5.4k
日本のCommunity向け タイルサーバの現状
smellman
0
2.7k
Pythonで点群を読んでみよう
smellman
1
2.9k
Other Decks in Programming
See All in Programming
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
フィードバックで育てるAI開発
kotaminato
1
110
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
340
Creating Composable Callables in Contemporary C++
rollbear
0
200
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
510
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
360k
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
350
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
800
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
570
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
140
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
350
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.4k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Product Roadmaps are Hard
iamctodd
55
12k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
Un-Boring Meetings
codingconduct
0
340
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The browser strikes back
jonoalderson
0
1.4k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Skip the Path - Find Your Career Trail
mkilby
1
160
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
5BSP.BUTV[BXB !TNFMMNBO .BQ-JCSFͱUJMFPQFOTUSFUNBQKQ Ͱ࢝ΊΔϕΫτϧਤϓϩάϥϛϯά '044(5PLBJ
ࣗݾհ w ߹ಉձࣾ(FPSFQVCMJD+BQBOγχΞΤϯδχΞ w 04(FPຊࢧ෦ཧࣄ w ຊ6/*9Ϣʔβʔձձ ·Ͱ w
0QFO4USFFU.BQ'PVOEBUJPO+BQBOϝϯόʔ w ౦ژిػେֶ$Z4FDडߨੜ ࣾձਓֶੜ w #SFBLDPSFΫϥελ
ࠓճͷ͓
w .BQ-JCSFʹ͍ͭͯͷհ w UJMFPQFOTUSFFUNBQKQͷհ w ϕΫτϧλΠϧϓϩάϥϛϯάͷհ
.BQ-JCSFͷհ
.BQ-JCSFͱ
.BQ-JCSFͱ w .BQCPY(-Y͔ΒGPSLͨ͠044ͷϥΠϒϥϦ w .BQCPY(-Y͔Βೖͬͨػೳ࣮͞Ε͍ͯͳ͍ w 4LZػೳɺ৽͍͠ඪߴλΠϧͳͲ w .BQ-JCSF.BQCPYಉ༷ʹ+BWBTDSJQU /BUJWF
J04"OESPJE ͷ࣮͕͋Δ w .BQ-JCSFࣗମͷίϛϡχςΟ͕04.64ίϛϡχςΟͷ4MBDLͰಈ͍͍ͯΔ
.BQ-JCSF.BQCPYͱͳΜͧ w ݩʑ.BQCPY͕ࣾ։ൃ͍ͯͨ͠.BQCPY7FDUPS5JMFͷදࣔΛߦ͏ϥΠϒϥ Ϧ܈Λ.BQCPY4%,ͱͯ͠։ൃ͞Ε͍ͯͨ w ػೳͱͯ͠-FB fl FU+40QFO-BZFST5BOHSBN+4(-ͳͲ͕ڝ߹ͱͳ ΔɻଞʹϥελλΠϧͰ͋Ε"QQMF.BQT(PPHMF.BQTಉ͡ػೳ ͕͋ͬͨΓ͢Δɻ
w .BQCPY4%,ͷΫϩʔζυιʔεԽʹ͍ొͨ͠ͷ͕.BQ-JCSF
.BQ-JCSF(-ͷ࠷ۙͷಈ w ࣮ͷ5ZQF4DSJQUԽ͕ਐΜͰ͍Δ w શʹ.BQCPYͱํੑ͕ҟͳΔ w ඪߴʹ͍ͭͯಠ࣮ࣗΛࢼΈ͍ͯΔ w 7FSTJPOϦϦʔε࣌ʹ.BQCPYͷϥΠηϯεΩʔʹඇରԠʹͳΔ༧ఆ w
"NB[PO8FC4FSWJDFͷ.BQ4%,Ͱඪ४Ͱ࠾༻͞Ε͍ͯΔ
.BQ-JCSFOBUJWFͷ࠷ۙͷಈ w কདྷతʹJ04ͷ࣮ʹ.FUBMΛ͏ํੑ͕ࣔ͞Ε͍ͯΔ w ͋ΔҙຯҰ෦(-Ͱͳ͍࣮ਐΉ w 2U .47$ͷαϙʔτͳͲͷΫϩεϓϥοτϑΥʔϜԽਐΉ w ͱ͍͑͋·Γಈ͕͑ͯͳ͍
UJMFPQFOTUSFFUNBQKQʹ͍ͭͯ
UJMFPQFOTUSFFUNBQKQʹ͍ͭͯ w 0QFO4USFFU.BQ'PVOEBUJPO+BQBO͕ӡӦ͍ͯ͠Δ0QFO.BQ5JMFT UJMFTFSWFSHMΛ༻͍ͨϕΫλλΠϧɺϥελλΠϧͷ৴αʔό w ຖिຊͷΤϦΞͷΈόʔδϣϯΞοϓΛ͍ͯ͠Δ w ݄༵ͷேʹಈ͔༵͙ͯ͠Β͍ʹσʔλΛೖΕସ͍͑ͯΔ
ར༻ʹ͍ͭͯ w IUUQTXJLJPQFOTUSFFUNBQPSHXJLJ+BQBO04.'+@5JMFTFSWFSʹجຊత ͳใΛهࡌ͍ͯ͠Δ w PTNCSJHIUKB w IUUQTUJMFPQFOTUSFFUNBQKQTUZMFTPTNCSJHIUKB\[^\Y^\Z^QOH w IUUQTUJMFPQFOTUSFFUNBQKQTUZMFTPTNCSJHIUFOTUZMFKTPO
w ར༻ʹ͍ͭͯʮࣗ༝ʯͰ͕͢ɺͳΔ͘ϕΫτϧλΠϧΛͬͯ͘ΕΔͱ͏ Ε͍͠
ϕΫτϧλΠϧϓϩάϥϛϯά
.BQ-JCSF(-+4ͷྫ w OQNJOTUBMMHQBSDFMCVOEMFS w OQNJOJUZ w WJNJOEFYIUNM w %0$5:1&ඞਢ %0$5:1&IUNM
IUNM CPEZ EJWJENBQEJW TDSJQUTSDJOEFYKTTDSJQU CPEZ IUNM
.BQ-JCSF(-+4ͷྫ w ZBSOBEENBQMJCSFHM w ZBSOBEE%TBTT w WJNJOEFYKT w +BWBTDSJQU͔ΒDTTΛಡΈࠐΉ JNQPSUJOEFYTDTT
JNQPSU BT.BQ-JCSFGSPNNBQMJCSFHM DPOTUNBQOFX.BQ-JCSF.BQ \ DPOUBJOFSNBQ TUZMFIUUQTUJMFPQFOTUSFFUNBQKQ TUZMFTPTNCSJHIUKBTUZMFKTPO DFOUFS< > [PPN NBY;PPN NJO;PPN ^
.BQ-JCSF(-+4ͷྫ w WJNJOEFYTDTT w NBQMJCSFͷ$44ΛಡΈࠐΉ w ߴͪ͞ΌΜͱઃఆ͓ͯ͘͠ ͜ͱ !JNQPSUNBQMJCSFHMEJTUNBQMJCSFHMDTT IUNM
CPEZ\ XJEUI IFJHIU NBSHJO ^ NBQ\ XJEUI IFJHIU ^
.BQ-JCSF(-+4ͷྫ w WJNQBDLBHFKTPO w #SPXTFSTMJTU͕ແ͍ͱॻ͖ग़͞ΕΔ +BWBTDSJQU͕ΤϥʔΛग़ͯ͠͠·͏ ͷͰҙ͢Δ͜ͱ CSPXTFSTMJTU\ QSPEVDUJPO< MBTUDISPNFWFSTJPOT
MBTU fi SFGPYWFSTJPOT MBTUTBGBSJWFSTJPOT > EFWFMPQNFOU< MBTUDISPNFWFSTJPO MBTU fi SFGPYWFSTJPO MBTUTBGBSJWFSTJPO > ^
.BQ-JCSF(-+4ͷྫ w QBSDFMJOEFYIUNM w PQFOIUUQMPDBMIPTU
.BQ-JCSF(-+4ͷྫNBQΠϕϯτ JOEFYKTʹه DPOTUQPQVQOFX.BQ-JCSF1PQVQ NBQPO DMJDL F \
DPOTUGFBUVSFTNBQRVFSZ3FOEFSFE'FBUVSFT FQPJOU \ MBZFST<QPJMFWFM QPJMFWFM QPJMFWFM> ^ JG GFBUVSFTMFOHUI \ SFUVSO ^ DPOTUGFBUVSFGFBUVSFT<> DPOTUEJWDSFBUF%JW GFBUVSF QPQVQTFU%0.$POUFOU EJW TFU-OH-BU FMOH-BU BEE5P NBQ ^
.BQ-JCSF(-+4ͷྫNBQΠϕϯτ JOEFYKTʹه DPOTUDSFBUF%JW GFBUVSF \ DPOTUEJWEPDVNFOUDSFBUF&MFNFOU EJW DPOTUIUNMEPDVNFOUDSFBUF&MFNFOU
EM 0CKFDULFZT GFBUVSFQSPQFSUJFT GPS&BDI JE\ DPOTUEUEPDVNFOUDSFBUF&MFNFOU EU EUJOOFS)5.-JE DPOTUEEEPDVNFOUDSFBUF&MFNFOU EE EEJOOFS)5.-GFBUVSFQSPQFSUJFT<JE> IUNMBQQFOE$IJME EU IUNMBQQFOE$IJME EE ^ EJWBQQFOE$IJME IUNM SFUVSOEJW ^
.BQ-JCSF(-+4ͷྫNBQΠϕϯτ
.BQ-JCSFOBUJWFJ04ͷྫ w 'JMF4XJGU1BDLBHF
.BQ-JCSFOBUJWFJ04ͷྫ w ·ͩ.BQCPYͱग़ͯ͘ΔͷͰҙ
.BQ-JCSFOBUJWFJ04ͷྫ w 4XJGU6*Λ͏߹ϥούʔΛ ͏ w IUUQTEPDTNBQCPYDPN IFMQUVUPSJBMTJPTTXJGUVJ w ·ͩOBUJWFυΩϡϝϯτ͕ॆ࣮ ͍ͯ͠ͳ͍ͷͰ.BQCPYͷυΩϡ
ϝϯτʹཔΔͷ͕ྑͦ͞͏
.BQ-JCSFOBUJWFJ04ͷྫ
·ͱΊ w .BQ-JCSFී௨ʹ͑ΔΑ͏ʹͳ͍ͬͯΔΑ w /BUJWF·ͩυΩϡϝϯτ͕ͦΖͬͯͳ͍ͷͰҙ w UJMFPQFOTUSFFUNBQKQͷϕΫλλΠϧͱ૬ੑ͕ྑ͍ͷͰ͍ͬͯͩ͘͞ʂ
͓·͚ w Իָʹ߹Θͤͯݐ͕ಈ͘αΠτ w IUUQTPTNGKHJUIVCJPHFPXFFL@BOE@XFFLFOE@ w "SDIJWFPSH͔Βμϯϩʔυ͢ΔͷͰͪΐͬͱ͍͔͠Εͳ͍ w ͪͳΈʹ༑ୡͷۂΛ࠾༻͍ͯ͠·͢