สำหรับการเรียนรู้เกี่ยวกับมุมระหว่างระนาบสองระนาบในแบบ 3 มิติ เราต้องเรียนรู้เกี่ยวกับระนาบและมุม
เครื่องบิน เป็นพื้นผิวสองมิติที่ขยายไปถึงอนันต์
มุม คือช่องว่างเป็นองศาระหว่างเส้นสองเส้นกับพื้นผิวที่ตัดกันที่จุดหนึ่ง
ดังนั้น ในปัญหานี้ เราต้องหา มุมระหว่างระนาบ 3D สองระนาบ . สำหรับสิ่งนี้ เรามีระนาบสองระนาบที่ตัดกันและเราต้องหามุมที่ระนาบตัดกัน
ในการคำนวณมุมระหว่างสอง 3D ระนาบ เราต้องคำนวณมุมระหว่างเส้นตั้งฉากของระนาบเหล่านี้
ที่นี่เรามีเครื่องบินสองลำ
p1 : ax + by + cz + d = 0 p2 : hx + iy + j z + k = 0
ทิศทางของเส้นตั้งฉากของระนาบ p1 และ p2 คือ (a,b,c) และ (h,i,j)
โดยใช้สูตรทางคณิตศาสตร์ที่สร้างขึ้นเพื่อหามุมระหว่างเส้นตั้งฉากของระนาบทั้งสองนี้
Cos Ø = {(a*h) + (b*i) + (c*j)} / [(a2 + b2 + c2)*(h2 + i2 + j2)]1/2
Ø = Cos-1 { {(a*h) + (b*i) + (c*j)} / [(a2 + b2 + c2)*(h2 + i2 + j2)]1/2 } ตัวอย่าง
#include <iostream>
#include <math.h>
using namespace std;
int main() {
float a = 2;
float b = 2;
float c = -1;
float d = -5;
float h = 3;
float i = -3;
float j = 5;
float k = -3;
float s = (a*h + b*i + c*j);
float t = sqrt(a*a + b*b + c*c);
float u = sqrt(h*h + i*i + j*j);
s = s / (t * u);
float pi = 3.14159;
float A = (180 / pi) * (acos(s));
cout<<"Angle is "<<A<<" degree";
return 0;
} ผลลัพธ์
Angle is 104.724 degree