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 GL JS とCSSアニメーションでできること
Search
Satoshi Komatsu
December 16, 2022
Programming
1.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MapLibre GL JS とCSSアニメーションでできること
2022/12/15 MIERUNE Meetup mini #05
https://mierune.connpass.com/event/266903/
Satoshi Komatsu
December 16, 2022
More Decks by Satoshi Komatsu
See All by Satoshi Komatsu
新宿駅構内を三人称視点で探索してみる
satoshi7190
2
770
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
900
立方体異世界生成魔法(キュービックディメンション・ジェネレーションマジック)
satoshi7190
2
680
新宿ダンジョンを可視化してみた
satoshi7190
3
1.2k
Webエンジニアに転生したらCSS魔導士になった件
satoshi7190
3
4.4k
Other Decks in Programming
See All in Programming
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.7k
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
200
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
450
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
160
dRuby over BLE
makicamel
2
410
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
390
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
220
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
1.6k
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
290
Creating Composable Callables in Contemporary C++
rollbear
0
190
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
120
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Navigating Weather and Climate Data
rabernat
0
280
The Cult of Friendly URLs
andyhume
79
6.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Building an army of robots
kneath
306
46k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
410
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Producing Creativity
orderedlist
PRO
348
40k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1k
What's in a price? How to price your products and services
michaelherold
247
13k
Transcript
Satoshi Komatsu MapLibre GL JSとCSSアニメーションで できること
©Project PLATEAU / MLIT Japan 小松 聖 自己紹介 KOMATSU satoshi
今年の6月にMIERUNEに入社。 前職は岐阜県で庭師。 ひよっこエンジニアです。 フロントエンドエンジニア
©OpenStreetMap contributors 01 私がMapLibre GL JSで作るもの 02 MapLibre GL JSでのCSSの使い所 03 私がアニメーションにこだわる理由 目次
©OpenStreetMap contributors 01 私がMapLibre GL JSで 作るもの
©Project PLATEAU / MLIT Japan 私がMapLibre GL JSで作るもの •Mapboxからフォークされて誕生した オープンソースのJavaScript地図ライ
ブラリ MapLibre GL JS https://maplibre.org/
© 地理院地図 全国最新写真(シームレス) DEMOを3つ紹介 私がMapLibre GL JSで作るもの
©Project PLATEAU / MLIT Japan 私がMapLibre GL JSで作るもの 1.地図上に植林 https://codepen.io/satoshi7190/pen/ZERmWMX
©Project PLATEAU / MLIT Japan 私がMapLibre GL JSで作るもの 2.キャトルミューティレーション https://codepen.io/satoshi7190/pen/OJEGqOq
©Project PLATEAU / MLIT Japan 私がMapLibre GL JSで作るもの 3.魔法陣の発動と召喚獣の召喚 https://codepen.io/satoshi7190/pen/ExRJrLa
©OpenStreetMap contributors 02 MapLibre GL JSでの CSSの使い所
©Project PLATEAU / MLIT Japan MapLibre GL JSでのCSSの使い所 CSSとは •
Webサイトの見た目部分 を 装 飾 するマークアップ アップ 言 語 。アニメーショ ンも可能。 • さっきのDEMOはこれを 地 図 上のビジュアル表 現 に活用したもの。
©Project PLATEAU / MLIT Japan canvas要素による表現 HTML要素による表現 MapLibre GL JSでのCSSの使い所
MapLibreの地図表現に使われる要素
©Project PLATEAU / MLIT Japan MapLibre GL JSでのCSSの使い所 • ラスターレイヤー
背景地図の表示 • ポリゴン、ライン、ポイントレイヤー ベクトル形式による地物の表示 • シンボルレイヤー テキストの表示やクラスター表現 canvas要素 地図のメインになる部分
©Project PLATEAU / MLIT Japan •マーカー 検索結果の表示や、目印のような一 時的ポイントの表示 •ポップアップ 地図上の地物の詳細データ
などの表示 HTML要素 MapLibre GL JSでのCSSの使い所 メインの地図に乗っかるもの
MapLibre GL JSでのCSSの使い所 こいつらはCSSの力で・・・
MapLibre GL JSでのCSSの使い所 こんな風に変身できます。
MapLibre GL JSでのCSSの使い所 動かすこともできます
MapLibre GL JSでのCSSの使い所 •大きさが変わらないので地図 をズームアウトすると密になる •ポイント指定での表現しかでき ない •図形を曲げるなどの曲線的な 動きはCSSでは表現できない ですが・・・
MapLibre GL JSでのCSSの使い所 CSSで出来ないことはcanvasソースレイヤーで https://codepen.io/satoshi7190/pen/abKrbpp •通常のcanvas要素を地図上にプ ロットできる。 •bboxによるエリア指定で表示す るので地図の縮尺に合わせてくれ る。
•JavaScriptのコードでCSSアニ メーションよりも複雑な動きを表 現できる
©Project PLATEAU / MLIT Japan canvasソースレイヤーによる表現の例 #30000DayMapChallenge
©Project PLATEAU / MLIT Japan canvasソースレイヤーによる表現の例 https://satoshi7190.github.io/earthquake-japan/ #30DayMapChallenge Day23 「Movement」
©OpenStreetMap contributors 03 私がアニメーションに こだわる理由
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 一味違う個性を出せる
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 よりインパクトのあるデータ表現ができる ※印象操作にならないよう、ある程度加減は必要です。
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 アニメーション系のコンテンツ は、作った物をSNSの動画で 公開するだけでアウトプットが 気軽にできる。
技術記事を書いたり、コードを 公開するのに自信がない人の 最初の一歩にオススメ。
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 https://twitter.com/_jsolly/status/15956021 22506088449
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 https://twitter.com/satoshi7190/status/159 6320194435383298
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 https://twitter.com/_jsolly/status/15963231 23346886657
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 https://twitter.com/_jsolly/status/159632 3484413489153
©Project PLATEAU / MLIT Japan 私がアニメーションにこだわる理由 https://codepen.io/satoshi7190 とりあえず見た目ができたら DEMO動画をTwitterに投稿。 中身のコードが綺麗に整ったら
コードペンにコードを共有。 説明できるようになったら Qiitaで記事を書く。 https://qiita.com/satoshi7190 https://twitter.com/satoshi7190
© 地理院地図 全国最新写真(シームレス) •CSSはUIだけでなく地図上でも活用できる •動く表現は地図に無関心な人にも注目させることができる •コードがダサくて文章が苦手でも、見た目の評価でモチベは上がる まとめ