MATLAB実装平面または三点によって形成される三角形の空間領域

説明するために単純な原理

我々は、三角形= 1/2××Bの面積知る ×SINC、 Cは辺ABとの間の角度です。
式フォークを使用して(使用中のMATLAB ()関数のクロス実現)、我々はabsinCを得ることができるが、今回は結果を有する3次元ベクトルであった関数)ノルム(鋳型の配向量が成長することができます。


三角関数の面積を求めて

function s=area(A,B,C)
if length(A)==2  %输入三点是二维平面坐标,变成三维
    AB=[B-A 0];
    BC=[C-B 0];
elseif length(A)==3  %输入三点是三维空间坐标
    AB=B-A;
    BC=C-B;
end
    Z=cross(AB,BC);  %叉乘
    s=1/2*norm(Z);  %取模
end

テスト

  • 二次元座標の結果入力
    入力:
A=[2 2];
B=[0 0];
C=[2 -2];
s=area(A,B,C)

出力:
ここに画像を挿入説明

  • 3次元座標の結果を入力
    入力を:
A=[0 0 0];
B=[1 1 1];
C=[0 0 1];
s=area(A,B,C)

出力:
ここに画像を挿入説明

公開された26元の記事 ウォン称賛32 ビュー10000 +

おすすめ

転載: blog.csdn.net/Clover_pofu/article/details/104885646