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
Ruby で作る Ruby (物理)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Fumiaki MATSUSHIMA
February 27, 2023
Programming
290
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ruby で作る Ruby (物理)
西日暮里.rb 100回記念 オンラインLT会
https://nishinipporirb.doorkeeper.jp/events/149198
Fumiaki MATSUSHIMA
February 27, 2023
More Decks by Fumiaki MATSUSHIMA
See All by Fumiaki MATSUSHIMA
Learning from performance improvements on GraphQL Ruby
mtsmfm
1
1.4k
GraphQL Ruby benchmark
mtsmfm
1
920
タイムアウトにご用心 / Timeout might break application state
mtsmfm
6
2.7k
Build REST API with GraphQL Ruby
mtsmfm
0
400
GraphQL Ruby をちょっとだけ速くした / Make graphql-ruby faster a bit
mtsmfm
1
790
Gaming PC on GCP
mtsmfm
0
810
How to introduce GraphQL to an existing React-Redux application
mtsmfm
1
330
Canary release in StudySapuri
mtsmfm
0
3.3k
Analyze Rails CI
mtsmfm
2
1k
Other Decks in Programming
See All in Programming
GKE アップグレード前に知っておきたい Blue/Green と PDB の関係
stkk
0
140
PyO3 で既存 Python 評価器を Rust core 化する ー wasm-bindgen でブラウザにも配るための設計
kdash
1
370
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
570
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
53
35k
新人はどこまで自力でやり、どこからAIに頼るべきか/エンジニア育成に向き合う_先輩たちの悩みと知見共有会
toppan_digital_dev
1
560
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
260
Can LLMs Replicate 4 Years of Compose Migration? Exploring the boundaries of automation with 279 XML files from a real product
makun
0
130
Hello, Hiroshima Geospatial Data! — Exploring DoboX with Python
ra0kley
0
170
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
660
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
130
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
250
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
440
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
690
Building Applications with DynamoDB
mza
96
7.2k
Believing is Seeing
oripsolob
1
210
The Limits of Empathy - UXLibs8
cassininazir
1
640
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Raft: Consensus for Rubyists
vanstee
141
7.7k
HDC tutorial
michielstock
2
840
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
Discover your Explorer Soul
emna__ayadi
2
1.3k
What's in a price? How to price your products and services
michaelherold
247
13k
Paper Plane
katiecoart
PRO
2
53k
Transcript
@mtsmfm Ruby でつくる Ruby (物理)
松島 史秋 Backend Dev at Autify GitHub, Twitter: @mtsmfm
https://ninirb.github.io
100回 ありがとう!
None
None
3D プリント
データが現実になるのは面白い!
3D プリンタの種類 - 熱溶解積層 (FDM) 方式 - 溶かしたプラスチックを下から積み重ねる - ソフトクリームづくりみたいな
- 光造形方式 - 液体に紫外線を当てて固める - 家庭用はだいたいどっちか - 今回は FDM
None
フィラメント (プラスチック) エクストルーダー (溶けたプラスチックが 出るところ) ベッド (溶けたプラスチックを重 ねて固めるところ) 完成品
None
None
1. RubyScad 2. OpenSCAD 3. STL 4. G-Code 5. プリント
今回の元コード include RubyScad cylinder(h: 10, r1: 0, r2: 10) translate(z:
10) do cylinder(h: 3, r1: 10, r2: 9) end
今回の元コード include RubyScad cylinder(h: 10, r1: 0, r2: 10) translate(z:
10) do cylinder(h: 3, r1: 10, r2: 9) end
$ ruby foo.rb > foo.scad
$ ruby foo.rb > foo.scad cylinder(h = 10, r1 =
0, r2 = 10); translate(v = [0, 0, 10]) { cylinder(h = 3, r1 = 10, r2 = 9); }
$ openscad foo.scad -o foo.stl
https://marketplace.visualstudio.com/items?itemName=mtsmfm.vscode-stl-viewer
1. RubyScad 2. OpenSCAD 3. STL 4. G-Code 5. プリント
G-Code とは - 工作機械の制御に使う - スライサーソフトによって STL から自動生成する - 例:
G0 X270 Y5 Z50 F3600; (270,5,50)の座標に動かす M190 S60; ベッドを60度に M109 S200; エクストルーダーを200度に
None
None
None
STL より 広がっている
下から上に 印刷するため 潰されて広がる
エレファントフット問題 - 最下層だけ広がってしまう - スライサーで最下層を本来よりも狭めに印刷す るオプションがあったりする
欠け 飛び出し 糸引き
一発できれいに出力するのは難しい - ソフトクリームを見本と完璧に同じに作 るようなもの - 変数がとても多い - 気温、湿度、フィラメント、形状、プリ ンタの状態 etc
データが現実になるのは面白い!
None
None
None