前提・実現したいこと
すごい初歩的なことかもしれないのですがコード上の記号の意味が分かりません・・・
「return (a1 * a2 < 0 && dist < radius) ? true : false;」
この一文の「?」が何を指示しているのかがわかりません
発生している問題・エラーメッセージ
無し
該当のソースコード
C#
1bool LineVsCircle(Vector p1, Vector p2, Vector center, float radius) 2 { 3 Vector lineDir = (p2 - p1); // パドルの方向ベクトル 4 Vector n = new Vector(lineDir.Y, -lineDir.X); // パドルの法線 5 n.Normalize(); 6 7 Vector dir1 = center - p1; 8 Vector dir2 = center - p2; 9 10 double dist = Math.Abs(DotProduct(dir1, n)); 11 double a1 = DotProduct(dir1, lineDir); 12 double a2 = DotProduct(dir2, lineDir); 13 14 return (a1 * a2 < 0 && dist < radius) ? true : false; 15 } 16
試したこと
自身でも調べてみたのですが、なかなか答えがわかりません
http://nn-hokuson.hatenablog.com/entry/2017/08/21/193912
↑こちらのサイトを参考に学習しています。
補足情報(FW/ツールのバージョンなど)
Visual Studio 2019 Community
回答7件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/12 02:54
2019/07/12 02:58 編集
2019/07/12 03:02
2019/07/12 03:10
2019/07/12 03:18
2019/07/12 04:07
2019/07/12 04:10
2019/07/12 04:12 編集
2019/07/12 04:13
2019/07/12 04:16 編集
2019/07/12 04:18
2019/07/12 04:20
2019/07/12 04:23 編集
2019/07/12 04:24
2019/07/12 04:25
2019/07/12 04:27
2019/07/12 04:34
2019/07/15 14:06
2019/07/16 01:54
2019/07/16 02:05
2019/07/16 02:13
2019/07/16 02:32
2019/07/16 02:35
2019/07/16 02:45
2019/07/16 04:26 編集