Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ISSの軌道計算をRustで
Search
noharu36
December 01, 2025
Programming
0
5
ISSの軌道計算をRustで
noharu36
December 01, 2025
Tweet
Share
More Decks by noharu36
See All by noharu36
検証!会津は本当に地盤が硬いのか?
noharu36
0
2
自作オブジェクトストレージをRustで
noharu36
0
1
ファミコンに思いを馳せる〜エミュレータ自作を添えて〜
noharu36
0
3
shell自作した話
noharu36
0
4
Rustを布教したい
noharu36
0
7
neofetchよ、永遠に
noharu36
0
2
Other Decks in Programming
See All in Programming
俺流レスポンシブコーディング 2025
tak_dcxi
13
6.9k
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
5k
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
200
dotfiles 式年遷宮 令和最新版
masawada
1
520
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
290
Microservices rules: What good looks like
cer
PRO
0
370
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
1
320
スタートアップを支える技術戦略と組織づくり
pospome
8
14k
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
120
モダンJSフレームワークのビルドプロセス 〜なぜReactは503行、Svelteは12行なのか〜
fuuki12
0
180
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
24
20k
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
100
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
697
190k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Done Done
chrislema
186
16k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
How STYLIGHT went responsive
nonsquared
100
5.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Producing Creativity
orderedlist
PRO
348
40k
4 Signs Your Business is Dying
shpigford
186
22k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Transcript
ISSの軌道計算を Rustで 学部2年 harukun
自己紹介 { name: 能島明希 handle: harukun origin: 広島->岡山->大阪->東京->会津 tech: {
front-end: React+TS backend: Rust, Go etc: Rust, Haskell Rust: Rust } favorites: Game, Tobacco, BoyScout, Rust, Neovim Twitter(x): https://twitter.com/pieceofharuki Blog: https://zenn.dev/haru_blog }
ISS(人工衛星)の軌道、知りてえよなあ!?
とりあえず完成品をどうぞ
技術スタック
[dependencies] sgp4 = version = "2.2.0" chrono = "0.4.38" plotters=
"0.3.7" plotters-bitmap = "0.3.7" minifb = "0.27.0" 使用した外部クレート
• sgp4: sgp4というアルゴリズムを使用するためのライブラリ • chrono: 時刻を扱うライブラリ • plotters: いわゆる描画ライブラリ。いろんな形式をサポートしている •
plotters-bitmap: plottersの依存ライブラリ。ビットマップ形式で出力できる • minifb: 画像を表示するウィンドウを開くためのライブラリ 説明
用語解説 TLE: 二行軌道要素形式といわれる。 人工衛星の地心座標系におけるケプラー軌道要素のテキスト形式のフォーマット。 もともとは初期のコンピュータのパンチカード用にデザインされたらしい パンチカード
ISS (ZARYA) 1 25544U 98067A 22095.91869325 .00012930 00000-0 23502-3 0
9991 2 25544 51.6452 334.5328 0004408 351.0413 99.6998 15.49890618333972 一般名 行番号 衛星カタログ番号 軍事機密種別 国際識別符号 元期 平均運動の1次微分値 平均運動の2次微分値 B STAR抗力項 軌道モデル 通番 チェックサム 軌道傾斜角 昇交点赤径 離心率 近地点離角 平均近点角 平均運動
SGP4: NASA(アメリカ航空宇宙局)とNORAD(北アメリカ航空宇宙防衛司令部 )が使用している 近地球域の衛星の軌道計算用のアルゴリズム 入力にTLEを受け取る 位置に関して約1kmほどの誤差がでる
ライブラリ叩くだけ芸人になってしまったの で... 実装部分の説明は割愛 😭
感想と今後の展望 ライブラリを叩くだけでISSやStarlinkなどの衛星の軌道を計算して描画することができた ただ、(描画部分が)本当にあってるのか確かめれてないので 他の言語でも実装して確認してみたい。ぱいちょんはすごい楽らしい 本当はSGP4というアルゴリズムを自分で実装したかったが間に合わなかった まずは微積の復讐をするところから頑張ります ...