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
Fumiaki MATSUSHIMA
February 27, 2023
Programming
1
200
Ruby で作る Ruby (物理)
西日暮里.rb 100回記念 オンラインLT会
https://nishinipporirb.doorkeeper.jp/events/149198
Fumiaki MATSUSHIMA
February 27, 2023
Tweet
Share
More Decks by Fumiaki MATSUSHIMA
See All by Fumiaki MATSUSHIMA
Learning from performance improvements on GraphQL Ruby
mtsmfm
1
1.1k
GraphQL Ruby benchmark
mtsmfm
1
800
タイムアウトにご用心 / Timeout might break application state
mtsmfm
6
2.5k
Build REST API with GraphQL Ruby
mtsmfm
0
320
GraphQL Ruby をちょっとだけ速くした / Make graphql-ruby faster a bit
mtsmfm
1
710
Gaming PC on GCP
mtsmfm
0
710
How to introduce GraphQL to an existing React-Redux application
mtsmfm
1
240
Canary release in StudySapuri
mtsmfm
0
3k
Analyze Rails CI
mtsmfm
2
870
Other Decks in Programming
See All in Programming
実践Webフロントパフォーマンスチューニング
cp20
45
10k
Boost Your Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
750
Creating Awesome Change in SmartNews! En
martin_lover
0
110
Orleans + Sekiban + SignalR でリアルタイムWeb作ってみた
tomohisa
0
230
読書シェア会 vol.4 『ダイナミックリチーミング 第2版』
kotaro666
0
110
個人開発の学生アプリが企業譲渡されるまで
akidon0000
2
1.1k
状態と共に暮らす:ステートフルへの挑戦
ypresto
3
1.1k
Ruby on Railroad: The Power of Visualizing CFG
ydah
0
290
REALITY コマンド作成チュートリアル
nishiuriraku
0
120
Making TCPSocket.new "Happy"!
coe401_
1
3k
Fiber Scheduler vs. General-Purpose Parallel Client
hayaokimura
1
290
Bedrock×MCPで社内ブログ執筆文化を育てたい!
har1101
7
1.4k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Building an army of robots
kneath
305
45k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Docker and Python
trallard
44
3.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
410
GitHub's CSS Performance
jonrohan
1031
460k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
13
820
Build your cross-platform service in a week with App Engine
jlugia
230
18k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
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