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
円と円の交点の求め方
Search
Sho Iizuka
June 13, 2014
Science
0
44
円と円の交点の求め方
https://www.slideshare.net/kujira16/ss-35835784
Sho Iizuka
June 13, 2014
Tweet
Share
More Decks by Sho Iizuka
See All by Sho Iizuka
半年前の自分に教えたい systemd のハマりどころ
arosh
19
17k
Osaka.Stan#5 LT プログラミングコンテストのデータを分析した話
arosh
1
7.3k
簡潔データ構造輪講資料(順列)
arosh
1
8.6k
Pythonにおける日本語処理
arosh
1
2.2k
FM-index による全文検索
arosh
0
43
円と円の外接線の求め方
arosh
0
72
Other Decks in Science
See All in Science
俺たちは本当に分かり合えるのか? ~ PdMとスクラムチームの “ずれ” を科学する
bonotake
1
350
Lean4による汎化誤差評価の形式化
milano0017
1
400
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
PRO
0
1.1k
データベース03: 関係データモデル
trycycle
PRO
1
330
(メタ)科学コミュニケーターからみたAI for Scienceの同床異夢
rmaruy
0
150
良書紹介04_生命科学の実験デザイン
bunnchinn3
0
110
機械学習 - SVM
trycycle
PRO
1
960
機械学習 - ニューラルネットワーク入門
trycycle
PRO
0
910
Distributional Regression
tackyas
0
250
機械学習 - DBSCAN
trycycle
PRO
0
1.4k
MCMCのR-hatは分散分析である
moricup
0
550
データベース05: SQL(2/3) 結合質問
trycycle
PRO
0
860
Featured
See All Featured
[SF Ruby Conf 2025] Rails X
palkan
0
660
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
260
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
70
Applied NLP in the Age of Generative AI
inesmontani
PRO
3
2k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
130
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
210
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Producing Creativity
orderedlist
PRO
348
40k
Scaling GitHub
holman
464
140k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Claude Code のすすめ
schroneko
67
210k
Transcript
ԁͱԁͷަͷٻΊํ !TIPSB@LVKJSB
w *$1$ͷϥΠϒϥϦΛඋ͍ͯͨ͠Β ʮԁͱԁͷަʯͷίʔυ͕Α͔͘Βͳ͔ͬͨͷ Ͱղઆ͠·͢ɻ w ࢀߟʹͨ͠ίʔυίϨͰ͢
ͷίʔυ pair<P, P> cc_cross(const C& c1, const C& c2) {
double d = abs(c1.p - c2.p); double rc = (d*d + c1.r*c1.r - c2.r*c2.r) / (2*d); double rs = sqrt(c1.r*c1.r - rc*rc); P diff = (c2.p - c1.p) / d; return make_pair(c1.p + diff * P(rc, rs), c1.p + diff * P(rc, -rs)); }
double d = abs(c1.p - c2.p); d c1.p c2.p
double rc = (d*d + c1.r*c1.r - c2.r*c2.r) / (2*d);
cos = a2+b2 c2 2ab ༨ݭఆཧ b c a θ
double rc = (d*d + c1.r*c1.r - c2.r*c2.r) / (2*d);
b bcosθ θ cos = a2 + b2 c2 2ab b cos = a2 + b2 c2 2a
double rs = sqrt(c1.r*c1.r - rc*rc); c1.r rc rs
P diff = (c2.p - c1.p) / d; =>
diffは c1.p→c2.p の単位ベクトル d c1.p c2.p
c1.p + diff * P(rc, rs) ͘ͳΔͷͰ࣍ͷϖʔδϔ rc rs c1.p
diff * P(rc, rs) ͱʁ => rc*diff + rs*rot90(diff) ͷ͜ͱ
di = (x + jy) rot90(di ) = rot90(x + jy) = y + jx di P(rc, rs) = (x + jy) · (rc + jrs ) = rc(x + jy) + rs( y + jx) = rc di + rs rot90(di )
c1.p + diff * P(rc, -rs) ઌ΄Ͳͱಉ༷ rc rs c1.p
ײ w ༨ݭఆཧศརͳΜ͚ͩͲɺΑ͘ΕΔ w KΛֻ͚ͯճసͤ͞ΔςΫχοΫʹؾͮ͘ͷʹ࣌ ͕͔͔ؒͬͯ͠·ͬͨʢిؾܥͳΒৗతʹͬͯ ͍Δͣͳͷʹʣ