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
660
平成生まれのためのUNIX&IT歴 史講座 ~番外編~
smellman
2
590
掛川城の点群データをiTownsで表示しよう
smellman
0
360
そのJavascript、全部TypeScriptにしちゃえ
smellman
1
270
大容量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
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.2k
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
200
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
330
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
200
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.8k
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
650
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
200
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
4
360
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
1
120
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
170
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
350
Building Applications with DynamoDB
mza
96
7.2k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
230
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
270
Fireside Chat
paigeccino
42
4k
The SEO identity crisis: Don't let AI make you average
varn
0
520
Documentation Writing (for coders)
carmenintech
77
5.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Claude Code のすすめ
schroneko
67
230k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
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 ͪͳΈʹ༑ୡͷۂΛ࠾༻͍ͯ͠·͢