z軸のまわりに回転する線形変換

「z軸のまわりに回転する線形変換」の編集履歴(バックアップ)一覧はこちら

z軸のまわりに回転する線形変換 - (2016/02/06 (土) 20:55:07) の1つ前との変更点

追加された行は緑色になります。

削除された行は赤色になります。

z軸のまわりに回転する図   16.02.06 rotation3 z軸のまわりに回転する図を描く. &ref(rotation3.png,,title=完成図,width=400,) &ref(rotation3.zip) Start3d(); Ptseg3data(); Putaxes3d(5); Xyzax3data("","x=[0,4]","y=[0,4]","z=[0,3]"); // 点Aを適当なところに打つ.以下,点Aの位置で円の高さと半径を決める. Defvar("h",A3d.z); Defvar("r",sqrt(A3d.x^2+A3d.y^2)); Defvar("r2",1); // 右側副画面の Az の高さが点A の3次元空間内での高さであり,これを h とする. // 点Aの3次元空間内での x 座標 A3d.x と y 座標 A3d.y を使って, // z軸からの距離を計算し,これを r とする. // 回転角を示すための弧の半径 r2 を決めておく. Putpoint3d(["B",[0,0,h]],"fix"); //  z 軸上の高さ h の点を B とする. Spacecurve("1","[r*cos(t),r*sin(t),h]","t=[0,2*pi]",["notex"]); // 高さ h のところの半径 r の円のデータを作る. // 3次元データが "sc3d1",2次元データが "sc2d1" となる. PutonCurve3d("C","sc3d1"); PutonCurve3d("D","sc3d1"); // 円上に点 C,D をとる. Partcrv("1",C,D,"sc2d1",["do"]); // 弧CD を点線で描く. Spacecurve("2","[r*cos(t),r*sin(t),0]","t=[0,2*pi]",["notex"]); // xy平面の半径 r の円のデータを作る.2次元データが "sc2d2" となる. Putpoint3d(["E",[C3d.x,C3d.y,0]],"fix"); Putpoint3d(["F",[D3d.x,D3d.y,0]],"fix"); // C,D を xy 平面へ射影した点を E,F とする. Setcolor([0,0,1]); Spaceline("BC",[B3d,C3d]); Spaceline("BD",[B3d,D3d]); Spaceline("OE",[O3d,E3d],["do"]); Spaceline("OF",[O3d,F3d],["do"]); Spaceline("CE",[C3d,E3d],["do"]); Spaceline("DF",[D3d,F3d],["do"]); Partcrv("2",E,F,"sc2d2",["do"]); Setcolor([0,0,0]); // 線分BC,BD を青色実線で,線分OE,OF,CE,DF と弧EF を青色点線で描く. Spacecurve("3","[r2*cos(t),r2*sin(t),h]","t=[0,2*pi]",["nodisp"]); // 回転角を示す弧を描くための円データを作る.2次元データが "sc2d3" となる. Putpoint("G",Intersectcrvs("sc2d3","sl2dBC")_1); Putpoint("H",Intersectcrvs("sc2d3","sl2dBD")_1); // この円とBCとの交点をG,BDとの交点を H とする. Partcrv("3",G,H,"sc2d3"); // 弧GH を描く. Arrowhead(D,D-part1_(length(part1)-1)); Arrowhead(H,H-part3_(length(part3)-1)); // 矢じりを描く. Ptsize(5); Drawpoint([C,D]); // C,D のところに大きめの点を描く. Letter([O,"nw","O",C,"s1e1","P",D,"e2","P$`$"]); Expr([(G+H)/2,"s","\theta"]); // 点の名前などを書く. if(1==0, Skeletonparadata("1",["ax3d"],["sl3dCE","sl3dDF"],["m"]); ); // の 1==0 を 1==1 に変え,スケルトンをかける. // 座標軸(ax3d)の線分CD(sl3dCE)と線分DF(sl3dDF)で隠れる部分を切る. // 1回実行したら,"m" を "r" に変えて実行する.

表示オプション

横に並べて表示:
変化行の前後のみ表示:
|新しいページ |検索 |ページ一覧 |RSS |@ウィキご利用ガイド |管理者にお問合せ
|ログイン|