高校数学の質問スレ(医者・東大卒専用) Part438 (750レス)
1-

496: 2024/12/31(火)14:55 ID:41bOMap+(3/4) AAS
EpiCycloid[R_,r_] := Module[
{circleA,circleB,redPoint,redPointTrace,frames,theta},
(* theta:Bの中心の偏角 *)
circleA = Circle[{0, 0}, R];
circleB[theta_] := Circle[{(R+r) Cos[theta], (R+r) Sin[theta]}, r];
redPoint[theta_] := {(R+r) Cos[theta] + r Cos[(r+R)/r theta + Pi], (R+r) Sin[theta] + r Sin[(R+r)/r theta + Pi]};
(* 赤点の軌跡を保存するためのリスト *)
redPointTrace = Table[redPoint[theta], {theta, 0, 2 Pi, 2 Pi/100}];
(* 円Bの中心を円Aの円周に沿って移動させるためのアニメーション *)
frames = Table[
Show[
Graphics[{EdgeForm[Black], FaceForm[None], circleA}],
Graphics[{EdgeForm[None], FaceForm[Red], circleB[theta]}],
Graphics[{Red, PointSize[Large], Point[redPoint[theta]]}],
Graphics[{Red, Line[redPointTrace[[1 ;; Round[theta/ (2 Pi/100)]]]]}],
PlotRange -> {{-2(R+r), 2(R+r)}, {-2(R+r), 2(R+r)}},
Axes -> True,
AxesOrigin -> {0, 0}
],
{theta, 0, 2 Pi, 2 Pi/100}];
(* アニメーション表示 *)
ListAnimate[frames]
]
EpiCycloid[3,1]

HypoCycloid[R_,r_] := Module[
{circleA,circleB,redPoint,theta,frames},
(* theta 円Bの中心の偏角 *)
circleA = Circle[{0, 0}, R];
circleB[theta_] := Circle[{(R - r) Cos[theta], (R - r) Sin[theta]}, r];
redPoint[theta_] := {(R-r) Cos[theta] + r Cos[(1-R/r) theta], (R-r) Sin[theta] + r Sin[(1-R/r) theta]};
(* 円Bの中心を円Aの円周に沿って移動させるためのアニメーション *)
frames = Table[
Show[
Graphics[{EdgeForm[Black], FaceForm[None], circleA}],
Graphics[{EdgeForm[None], FaceForm[Red], circleB[theta]}],
Graphics[{Red, PointSize[Large], Point[redPoint[theta]]}],
Graphics[{Red, Line[Table[redPoint[theta], {theta, 0, 2 Pi, 2 Pi/100}]]}],
PlotRange -> {{-R, R}, {-R, R}},
Axes -> True,
AxesOrigin -> {0, 0}
],
{theta, 0, 2 Pi, 2 Pi/100}
];
(* アニメーションを表示 *)
ListAnimate[frames]
]
HypoCycloid[3,1]
1-
あと 254 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.007s