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
Terrain, Art, Python and LiDAR
Search
Andrew Godwin
May 03, 2019
Programming
1
400
Terrain, Art, Python and LiDAR
A talk I gave at PyCon US 2019
Andrew Godwin
May 03, 2019
Tweet
Share
More Decks by Andrew Godwin
See All by Andrew Godwin
Reconciling Everything
andrewgodwin
1
260
Django Through The Years
andrewgodwin
0
160
Writing Maintainable Software At Scale
andrewgodwin
0
390
A Newcomer's Guide To Airflow's Architecture
andrewgodwin
0
310
Async, Python, and the Future
andrewgodwin
2
610
How To Break Django: With Async
andrewgodwin
1
660
Taking Django's ORM Async
andrewgodwin
0
670
The Long Road To Asynchrony
andrewgodwin
0
590
The Scientist & The Engineer
andrewgodwin
1
690
Other Decks in Programming
See All in Programming
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
4
980
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
120
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
350
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7k
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
260
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.1k
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
4
390
Fibonacci Function Gallery - Part 2
philipschwarz
PRO
0
120
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
550
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
210
AppRouterを用いた大規模サービス開発におけるディレクトリ構成の変遷と問題点
eiganken
1
190
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
693
190k
Designing for Performance
lara
604
68k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
920
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
530
Gamification - CAS2011
davidbonilla
80
5.1k
4 Signs Your Business is Dying
shpigford
182
21k
Become a Pro
speakerdeck
PRO
26
5k
The Cost Of JavaScript in 2023
addyosmani
46
7k
Six Lessons from altMBA
skipperchong
27
3.5k
How STYLIGHT went responsive
nonsquared
96
5.2k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Transcript
Terrain, Andrew Godwin @andrewgodwin Art, Python & LiDAR
Hi, I’m Andrew Godwin • Django contributor (Migrations/Channels) • Principle
Engineer at • I always need more lasers
None
None
None
None
None
1. Laser-cut profiles
DEM: Digital Elevation Model
None
10 9 5 3 2 9 7 4 3 2
8 7 3 2 4 6 8 5 3 5 4 9 7 4 6 3 8 8 6 5 2 5 4 3 3 10 9 5 3 2 9 7 4 3 2 8 7 3 2 4 6 8 5 3 5 4 9 7 4 6 3 8 8 6 5 2 5 4 3 3
None
None
Loads the DEM as a CSV Picks one in N
rows Draws a contour using svgwrite
None
None
2. 3D-printed cities
None
None
None
None
(1, 3, 4) (6, 5, 11) (3, 7, -2)
POINT CLOUD → DIGITAL ELEVATION MAP (DEM) python-pcl lastools
None
Top surface Fully sealed 3D model (with the tile base)
None
Loads the DEM Clips height (top and bottom) Smooths rough
features Writes out an STL file
(1, 3, 4) (6, 5, 11) (3, 7, -2)
How do you write STL? struct.pack( b"<ffffffffffffH", normal[0], normal[1], normal[2],
x1, y1, z1, x2, y2, z2, x3, y3, z3, 0, )
Should I have used NumPy? Yes. Did I use NumPy?
Err, no.
github.com/andrewgodwin/lidartile
None
None
3. CNC-milled National Parks
None
None
Take the US National DEM Get the outline of the
National Park Use QGIS to cut out a park-only DEM https://viewer.nationalmap.gov https://catalog.data.gov/dataset/national-park-boundariesf0a4c Toolbox > GDAL > Clip By Extent
Irregular shapes!
None
MAP PROJECTIONS
None
Things I Won't Work With Unicode Names Timezones Currencies Networks
Addresses Dioxygen Difluoride
Things I Won't Work With Unicode Names Timezones Currencies Networks
Addresses Dioxygen Difluoride Map Projections
None
4. The Future
More US National Parks I do each one as I
visit it. There are… 59.
Easier Milling 8 hours per piece. Really.
Better STL optimisation Millions of polygons isn't great.
Personal LiDAR Thanks, autonomous vehicles!
github.com/andrewgodwin/lidartile github.com/andrewgodwin/gis_tools
None
Thanks. Andrew Godwin @andrewgodwin aeracode.org