【事前学習】 高校のベクトル単元のベクトルの成分について復習しておきましょう。
ベクトルの成分
Vector Component
ベクトルを直交座標系の上に配置することにより、各座標軸方向の値(座標値)の組で、ベクトルの始点や終点の位置を表したり、始点と終点の各座標軸の値の和や差で和ベクトルや差ベクトルを表したりすることができます。これをベクトルの成分表示とよびます。
2次元平面上の点A$(a_1, a_2)$を始点、B$(b_1, b_2)$を終点とするベクトル$\Vec{AB}$ の成分は$(b_1-a_1,b_2-a_2)$となります。
2次元平面上の2つのベクトルの成分がそれぞれ $\vec a = (a_x, a_y),\ \vec b = (b_x, b_y)$のとき、以下のような演算結果が得られます。
$\vec a+\vec b = (a_x+b_x,a_y+b_y)$
$\vec a-\vec b = (a_x-b_x,a_y-b_y)$
$m\vec a = (ma_x,ma_y)$
$m\vec a+n\vec b = (ma_x+nb_x,ma_y+nb_y)$
Lesson
- 2点 A$(2, 3)$, B$(5, 5)$ について、次のものを求めよ。
- ベクトル$\Vec{AB}$の成分
- 2点A, Bの距離
- 線分ABを 2 : 1 の比に内分する点
- 線分ABを 2 : 1 の比に外分する点
- $\vec a = (1,2),\ \vec b = (1,-2)$ であるとき、次のベクトルを成分で表せ。また、その大きさを求めよ。
- $\vec a + \vec b$
- $2\vec a$
- $-3\vec b$
- $2\vec a - 3\vec b$
- $\vec a = (1,2),\ \vec b = (1,-1)$ であるとき、次のベクトルを $\vec a,\ \vec b$ で表せ。
- $\vec c = (5,4)$
- $\vec c = (4,-1)$
- $\vec a + \vec b = (1,2),\ \vec a - \vec b = (0,-1)$ とする。
- $\vec a,\ \vec b$ を求めよ。
- ベクトル $\vec c = 2\vec a - 3\vec b$ の大きさを求めよ。
- $\vec a = (1,2),\ \vec b = (-2,3)$ であるとき、$\vec x + \vec y = \vec a,\ 2\vec x + 3\vec y = \vec b$ を満たす $\vec x,\ \vec y$ の成分を求めよ。
- 点M$(3, 4)$について、点A$(-3, 2)$と対称な点をBとする。
- $\Vec{AM}$ と等しいベクトルを答えよ。
- 点Bの座標を求めよ.
- 4点A$(9, 3)$, B$(5, 1)$, C$(-2, -4)$, Dを頂点とする平行四辺形ABCDにおいて、頂点Dの座標を求めよ。
- 3点A$(-1, -5)$, B$(2, 1)$, C$(4, 5)$が同一直線上にあることを示すには、$\Vec{AC}= k \Vec{AB}$であることを示せばよい。このときの $k$ の値を求めよ。
- 座標平面上に点A, B, Cがあって、$\Vec{AB} = (3, 1),\ \Vec{AC} = (2x, 3x)$ とする。 $\Vec{CA}$ と $\Vec{CB}$ の大きさが等しいとき、$x$ の値を求めよ。
- 2つのベクトル $\vec a = (-1,2),\ \vec b = (1,x)$ について $2\vec a + 3\vec b$ と $\vec a - 2\vec b$ が平行になるような $x$ の値を求めよ。
- 座標平面上の4点A$(-1, 4)$, B$(3, -1)$, C$(10, 2)$, D$(6, 7)$を頂点とする四角形について、以下の問いに答えよ。
- $\Vec{AD} = \Vec{BC}$ を示せ。
- その結果この四角形はどのような四角形といえるか。
- 座標平面上に4点A$(1, 1)$, B$(6, 1)$, C$(5, 5)$, D$(2, 4)$があり、2点P, Qは線分BD上の内分点でBP : PD $= x:(1-x)$, BQ : QD$ =y:(1-y)$ であるとする。 ベクトル $\Vec{AP}$ と $\Vec{CQ}$ が平行になるときの $x$ と $y$ の関係式を求め、かつ $x$ の範囲を求めよ。
Answer
- $(3, 2)$
- $\sqrt{3\times3+2\times2}=\sqrt{13}$
- $(\frac{2\times1+5\times2}{2+1}, \frac{3\times1+5\times2}{2+1})=(4, \frac{13}{3})$
- $(\frac{2\times-1+5\times2}{2-1}, \frac{3\times-1+5\times2}{2-1})=(8, 7)$
※ 3),4) は $\Vec{OA},\Vec{OB}$ を用いて考える。
ベクトルの始点が原点になるように平行移動するとベクトルの終点の座標はベクトルの成分と同じになる。
※ ベクトルの終点の座標とベクトルの成分の値を混同しないように注意してください。
- $(2, 0), 2$
- $(2, 4), 2\sqrt{5}$
- $(-3, 6), 3\sqrt{5}$
- $(-1, 10), \sqrt{101}$
- $3\vec a + 2\vec b$
- $\vec a + 3\vec b$
- $\vec a=(\frac{1}{2}, \frac{1}{2}) \vec b=(\frac{1}{2}, \frac{3}{2})$
- $|\vec c|=\frac{5\sqrt 2}{2}$
- $\vec x =(5, 3) \vec y =(-4, -1)$
- $\Vec{MB}$
- $(9, 6)$
- $(2, -2)$
- $\Vec{AB}=(3, 6) \Vec{AC}=(5, 10) \Vec{AC}=\frac{5}{3}\Vec{AB} k=\frac{5}{3}$
- $x=\frac{5}{9}$
$\Vec{CA}=-\Vec{AC}=(-2x,-3x)$
$\Vec{CB}=(3-2x,1-3x)$
- $x= -2$ (平行なベクトルなら$x$ 成分と$y$ 成分の比が等しい)
-
- $\Vec{AD}=\Vec{BC}=(7, 3)$
- 平行四辺形(一組の対辺が平行で長さが等しいので)
- $13x+15y=20\ (\frac{5}{13}\leqq x \leqq 1)$
BD を $x:1-x$に内分する点がP
BD を $y:1-y$に内分する点がQ
P$(\ 6(1-x)+2x,\ 1(1-x)+4x\ )$
Q$(\ 6(1-y)+2y,\ 1(1-y)+4y\ )$
$\Vec{AP}=(5-4x,3x),\ \Vec{CQ}=(1-4y,3y-4)$
平行なので $(5-4x)(3y-4)=3x(1-4y)$
$0\leqq x \leqq 1,\ 0\leqq y \leqq 1$ となる範囲に絞る。
$y=\frac{20-13x}{15}$
$0\leqq \frac{20-13x}{15} \leqq 1$ を解いて$0\leqq x \leqq 1$と統合する。
Lesson 3D
- 2点A$(1, -4, 7)$, B$(7, 2, 5)$ について、次のものを求めよ。*
- ベクトル $\Vec{AB}$ の成分
- 2点A, Bの距離
- 線分ABを 2 : 1 の比に内分する点
- 線分ABを 1 : 2 の比に外分する点
- $\vec a=(1, -2, 3),\ \vec b=(-1, 3, -2)$ であるとき、次のベクトルを成分で表せ。
- $2\vec a$
- $\vec a+\vec b$
- $\vec a-\vec b$
- $2\vec b-3\vec a$
- $\vec a=(1, 4, 3),\ \vec b=(1, -1, 1),\ \vec c=(-1, 2, 0)$ のとき、$\vec a-2\vec b+3\vec c$ の成分と大きさを求めよ。
- $\vec a=(1, 2, 3),\ \vec b=(1, -1, 0),\ \vec c=(-1, 3, 4)$のとき、ベクトル $\vec d=(4, -3, -1)$ を $x\vec a+y\vec b+z\vec c$ の形に表せ。
- $\vec a=(1, 2, 3),\ \vec b=(1, -1, 0)$ のとき、次の等式を満たす、$\vec x,\ \vec y,\ \vec z$ を、それぞれ成分で表せ.
- $\vec a+2\vec x=3\vec b$
- $\vec x-\vec y=2\vec a,\ \vec x+\vec y=\vec b$
- $2\vec x-\vec y=\vec a,\ \vec y+\vec z=2\vec b,\ \vec x-2\vec z=\vec b$
- 点M$(3、4, 6)$について、点A$(-3、2, 5)$ と対称な点をBとする。
- $\Vec{AM}$ と等しいベクトルを答えよ。
- 点Bの座標を求めよ。
- 4点A$(9, 3, 5)$, B$(5, 1, 2)$, C$(-2, -4, 3)$, Dを頂点とする平行四辺形ABCDにおいて、頂点Dの座標を求めよ。
- 3点A$(-1, -5, 5)$, B$(2, 1, 2)$, C$(4, 5, 0)$ は同一直線上にあることを示せ。
- 3点A$(0, 3, -1)$, B$(x^2, 5, x-1)$, C$(y, -1, y-1)$ が同一直線上にあるとき、実数 $x,\ y$ の値を定めよ。
- 4点A$(3, 2, 2)$, B$(0, -4, 0)$, C$(5, -1, 8)$, D$(x, -7, 6)$ が同一平面上にあるように $x$ の値を定めよ。
- $\vec a=(1, 3, -2),\ \vec b=(1, -2, 0)$とし、$\vec p=\vec a+t\vec b$とおく。
- $|\vec p|^2$ を $t$ の式で表せ。
- $\vec p$ の大きさの最小値を求めよ。
- 3点A$(1, 2, -1)$, B$(3, 4, -1)$, C$(3, 2, 1)$ がある。
- △ABC はどのような三角形か答えよ。
- △ABC の重心Gの座標を求めよ。
- 正六角形ARBPCQを作るとき、その頂点Pの座標を求めよ。
- 4点A$(1, -2, 3)$, B$(2, 1, 1)$, C$(-1, -3, 2)$, D$(3, -4, -1)$ がある。線分AB, AC, ADを3辺に持つ平行六面体の他の頂点の座標をすべて求めよ。
Answer
- $(6, 6, -2)$
- $2\sqrt{19}$
- $(5, 0, \frac{17}{3})$
- $(-5, -10, 9)$
- $(2, -4, 6)$
- $(0, 1, 1)$
- $(2, -5, 5)$
- $(-5, 12, -13)$
- $(-4, 12, 1) \sqrt{161}$
- $\vec a+2\vec b-\vec c$
- $\vec x=(1, -\frac{5}{2}, -\frac{3}{2})$
- $\vec x=(\frac{3}{2}, \frac{3}{2}, 3) \vec y=(-\frac{1}{2}, -\frac{5}{2}, -3)$
- $\vec x=(\frac{7}{5}, -\frac{1}{5}, \frac{6}{5}) \vec y=(\frac{9}{5}, -\frac{12}{5}, -\frac{3}{5}) \vec z=(\frac{1}{5}, \frac{2}{5}, \frac{3}{5})$
- $\Vec{MB}$
- $(9, 6, 7)$
- $(2, -2, 6)$
- $\Vec{AB}=(3, 6, -3) \Vec{AC}=(5, 10, -5) \Vec{AC}=\frac{5}{3}\Vec{AB}$
- $x=0, y=0$ または $x=1, y=-2$
- $x=2$
- $5t^2-10t+14$
- $t=1$ のとき最小値 $3$
- $\Vec{AB}=(2, 2, 0) \Vec{BC}=(0, -2, 2) \Vec{CA}=(-2, 0, -2)$ で3辺の長さがすべて $2\sqrt{2}$ なので正三角形
- $(\frac{7}{3}, \frac{8}{3}, -\frac{1}{3})$
- P$(\frac{11}{3}, \frac{10}{3}, \frac{1}{3})$
- $(0, 0, 0) (1, -5, -2) (4, -1, -3) (2, -2, -4)$
Extra Lesson
three.js editor を使って、3Dの図形を表示してみましょう。
- Lesson 3D 1.(3) の内分点を表示してみましょう。
- Lesson 3D 6. の点B を表示してみましょう。
- Lesson 3D 7. の点D を表示してみましょう。
- Lesson 3D 8.を確認してみましょう。
- Lesson 3D 12. を確認、表示してみましょう。
- Lesson 3D 13. の頂点を表示してみましょう。
three.js editorの操作方法
視点移動
- SCENEタブでSceneをダブルクリックすると原点中心になる
- SCENEタブでオブジェクトをダブルクリックするとそのオブジェクトが中心に来て拡大される
- 左ボタンでマウスドラッグするとビューを画面の中心周りに回転できる
- 右ボタンでマウスドラッグするとビューを平行移動できる
オブジェクトの生成、変形
- Edit/Addでオブジェクト、ライト、カメラを追加できる
- SCENEタブで生成、変形したいオブジェクトを選べる
- Edit/Cloneで選ばれているオブジェクトを複製できる
- Edit/Deleteで選ばれているオブジェクトを消去できる
- OBJECTタブで名前Name、中心の位置Position、回転Rotation、拡大縮小Scaleを変更できる
- MATERIALタブで色などオブジェクトの材質を変更できる
データの保存
- File/Publishで、ウェブコンテンツとしてzipファイルで出力できる
- File/Export Sceneでシーン全体をJSON形式で保存、File/ImportでJSON形式のシーンを読み込みできる(SCRIPTは保存されないので注意!)
視点移動機能付の環境構築
- Add/Directional Light で光源を追加(2個追加して2方向から照らすのもよい)
- Scene に以下のコードをアタッチ
//ベクトルの成分 Lesson 3D 1. 3) const A=new THREE.Vector3(1, -4, 7); const B=new THREE.Vector3(7 , 2, 5); vector(A, B, 0.05); const C=new THREE.Vector3((A.x+B.x*2)/3, (A.y+B.y*2)/3, (A.z+B.z*2)/3); sphere(C, 0.5, 0xff0000); const distance=30; //原点からの距離 //以下は変更しないでください scene.add( new THREE.AxesHelper(100) );//座標軸 function sphere(position, radius, color=0xffffff){ const sphere = new THREE.Mesh( new THREE.SphereGeometry(radius,32,16), new THREE.MeshPhongMaterial({ color:color, specular:0x444444, shininess:30, emissive:color&0x333333 }) ); sphere.position.copy(position); scene.add(sphere); } function vector(start, end, radius, color=0xffffff){ const v=(new THREE.Vector3).subVectors(end,start); const l=v.length(); const material = new THREE.MeshPhongMaterial({ color:color, specular:0x444444, shininess:30, emissive:color&0x333333 }); const rotation = new THREE.Euler( Math.atan2(v.z,Math.sqrt(v.x*v.x+v.y*v.y)), 0, -Math.atan2(v.x,v.y), "ZXY" ); const cone=new THREE.Mesh( new THREE.ConeGeometry(radius*2, radius*6, 32), material ); cone.position.copy(new THREE.Vector3).addVectors( start, v.clone().multiplyScalar((l-0.15)/l) ); cone.rotation.copy(rotation); scene.add(cone); const cylinder=new THREE.Mesh( new THREE.CylinderGeometry(radius,radius,l-0.3,32), material ); cylinder.position.copy(new THREE.Vector3).addVectors( start, v.clone().multiplyScalar(0.5*(l-0.3)/l) ); cylinder.rotation.copy(rotation); scene.add(cylinder); } function line(position1, position2, color=0xfffff){ const line = []; line.push(position1); line.push(position2); scene.add(new THREE.Line( new THREE.BufferGeometry().setFromPoints(line), new THREE.LineBasicMaterial({color:color}) )); } function pointermove(event){ const longitude=(event.offsetX/window.innerWidth-0.5)*6.28; const latitude=(event.offsetY/window.innerHeight-0.5)*3; camera.position.set( Math.cos(longitude)*Math.cos(latitude), Math.sin(latitude), Math.sin(longitude)*Math.cos(latitude) ).multiplyScalar(distance); camera.lookAt( scene.position ); }
【事後学習】 ベクトルの始点、終点の座標とベクトルの要素の値の関係をイメージできるようになりましょう。