因為必修4沒有學好導致計算幾何掛掉了,所以來補一補tat
1.(自由)向量的定義:
起始點任意,方向和長度固定的有向線段。
2.向量的代數表示:
向量a記作a⃗
3.向量的幾何表示:
可以用乙個有向線段來表示向量。
我們現在先要證明平面向量基本定理:
定理內容:
對於平面向量a⃗
=mi⃗
+nj⃗
,其中i⃗
,j⃗ 為任意兩個不共線的向量。
這個是個公理啊tat
4.向量的座標表示:
在二維向量中,分別取與x軸y軸平行的兩個單位(長度)向量i⃗
,j⃗ 。
則由平面向量基本定理可以知道,任意向量都能被i⃗
,j⃗ 表示出來。 設a
⃗ =mi
⃗ +nj
⃗
那麼我們就可以把向量a寫成座標形式:a⃗
(m,n
) 很好,我們已經有了向量的座標表示了。
向量的運算:
數乘:a⃗ =
(m,n
),ka
⃗ =(k
m,kn
);加法:a⃗
=(m,
n),b
⃗ =(p
,q)c
⃗ =a⃗
+b⃗ =
(m+p
,n+q
) 減法同理。
數量積(點積)的代數定義:a⃗
=(m,
n),b
⃗ =(p
,q),
a⃗ ⋅b
⃗ =mp
+nq;
數量積(點積)的幾何定義:a⃗
⋅b⃗ =
|a||
b|co
sθ其中|a
|,|b
| 為a⃗
,b⃗
向量(叉)積的代數定義:a×
b=(x
a∗yb
−ya∗
xb)
可以寫成行列式形式: |x
1y1|
|x2y2|
這樣就好記多了。
實際上,n維方陣的行列式的值代表的是n個向量組成的圖形的n維積。
向量(叉)積的幾何定義:好像沒有幾何定義tat
向量積的(大小)計算式:a⃗
×b⃗ =
|a||
b|si
nθ即a和b的平行四邊形的面積。
我好像忘記我為什麼要寫向量的運算了tat
直線求交點:
定比分點公式:
在直線ab上,對於任意一點p(x,y),有: λ=
ap→/
pb→
x=xa
+λxb
1+λ,
y=ya
+λyb
1+λ
證明可以直接向量證明。
求直線ab和cd的交點o,我們可以求oc : od,然後根據定比分點來計算o的座標。
現在問題在於怎麼計算比值。 oc
:od=
sδoa
b:sδ
oac
根據叉積求面積即可。
#include
#include
#include
#include
#define rep(i,n) for(int i = 1;i <= n;i ++)
using
namespace
std;
const
int n = 100005;
struct point
}p[n];
point operator+(const point &x,const point &y);}
point operator-(const point &x,const point &y);}
double
operator/(const point &x,const point &y)
double dot(const point &x,const point &y)
double crs(const point &x,const point &y)
point get(const point &x,const point &y,const point &p,const point &q) //計算xy與pq的交點
;}
向量的運算到此就截止了,如果有其他時間我應該會補上三角函式的公式。 向量的運算
description 編寫類vector,用於表示乙個向量。顯然 1.它有三個資料成員,假定均為int型別的量,表示3個方向上的分量。2.定義其無參建構函式,初始化三個分量為0。3.定義帶參建構函式,用於初始化向量。4.過載 和 運算子。其中 和 不改變運算元的值,只是返回運算結果 實現兩種乘法,...
向量運算簡介
向量運算簡介 作 者 老赫 如果不好好學,那麼下回我介紹乙個3d engine的時候你就麻煩大了。質量保證 只討論可以任意平移自由向量 以下原理適於你個人開發的3d系統,d3d系統,opengl系統 一.兩點距離 2d系統 point1 x1,y1 point2 x2,y2 距離d sqr x1 x...
向量運算及習題
向量定義 既有大小又有方向的量叫做向量。在空間中,向量用一段有方向的線段來表示。應用十分廣泛,可用於描述具有大小和方向兩個屬性的物理量,例如物體運動的速度 加速度 攝像機觀察方向 剛體受到的力等都是向量。因此向量是物理 動畫 三維圖形的基礎。模 向量的長度標準化 normalizing 保持方向不變...