1. 程式人生 > >C++裡已知三個三維點,求他們的平面方程,怎麼做?

C++裡已知三個三維點,求他們的平面方程,怎麼做?

已知三個點座標為P1(x1,y1,z1), P2(x2,y2,z2), P3(x3,y3,z3)
所以可以設方程為A(x - x1) + B(y - y1) + C(z - z1) = 0 (點法式) (也可設為過另外兩個點)

核心程式碼:
//在此之前寫好錄入三個三維點的程式碼,然後就是處理待定係數,如下:
A = (y3 - y1)*(z3 - z1) - (z2 -z1)*(y3 - y1);
B = (x3 - x1)*(z2 - z1) - (x2 - x1)*(z3 - z1);
C = (x2 - x1)*(y3 - y1) - (x3 - x1)*(y2 - y1);

即得過P1,P2,P3的平面方程
方程也可寫為    Ax + By + Cz + D = 0 (一般式)    其中D = -(A * x1 + B * y1 + C * z1)

相關推薦

C++他們平面方程怎麼

已知三個點座標為P1(x1,y1,z1), P2(x2,y2,z2), P3(x3,y3,z3) 所以可以設方程為A(x - x1) + B(y - y1) + C(z - z1) = 0 (點法式) (也可設為過另外兩個點) 核心程式碼: //在此之前寫好錄入三個三維點

C++ 時間(年月日)日期差

求日期差 例如,我想算一下現在(2016.11.21)到明年高考(2017.6.7)還有多少天 #include<iostream> #include <ctime> using namespace std;

資料結構--C語言--線性表中的元素以值遞增有序排列並以單鏈表作儲存結構。試寫一高效演算法刪除表中所有值大於mink且小於maxk的元素

#include<stdio.h> #include<stdlib.h> #define OK 1 #define ERROR 0 #define LEN sizeof(struct LNode) struct LNode{ int data;//資料域 struct

圓上座標圓半徑 r 和 圓心座標

問題: 已知圓上三個點座標分別為(x1,y1)、(x2,y2)、(x3,y3) 求圓半徑R和圓心座標(X,Y) X,Y,R為未知數,x1,y1,x2,y2,x3,y3為常數 則由圓公式: (x1-X)²+(y1-Y)²=R²     

矩形的頂點座標最後一個的頂點座標(向量求法)

做car的旅行路線遇到的,先用向量法找出直角邊,再利用對角線上的點橫座標之和等於中點橫座標的二倍求出。 例如上面這個矩形,當已知三個點的時候,我們很容易可以用向量法求出哪個點是直角點。 我們可以判斷(x2-x1)*(x3-x1)+(y2-y1)*(y3-y1)是否為0,如果為0,則證明

python 平行四邊形第四

import numpy as np #已知平行四邊形三個點,求第四個點 #計算兩點之間的距離 def CalcEuclideanDistance(point1,point2): vec1 = np.array(point1) vec2 = np.array(

圓上座標圓心和半徑

R半徑 PCenter圓點座標  public void GetCircular(PointF P1,PointF P2,PointF P3,ref float R,ref PointF PCenter) { float a

圓上座標圓心

//求圓心座標 getCenterPos:function(x1,y1,x2,y2,x3,y3){ var a=2*(x2-x1); var b=2*(y2-y1); var c=x2*x2+y2*y2-x1*x1-y

某學生科考試成績此學生考試成績總和及平均分要求平均分保留2位小數。

import java.util.Scanner;public class average { public static void main(String[] args)  {  Scanner ina =new Scanner(System.in);  int a = i

有一對兔子從出生後第3月起每個月都生一對兔子小兔子長到第月後每個月又生一對兔子假如兔子都不死問每個月的兔子總數為多少?

package src pac spa scanner span warnings warning resource 分析: 第一個月-----------------1 第二個月-----------------1 第三個月-----------------2 第四個月-

例子 —JAVA發送http get/post請求調用http接口、方法

客戶 trace some php += dom 取數據 響應頭 get方法 三個例子 —JAVA發送http get/post請求,調用http接口、方法 例1:使用 HttpClient import java.io.ByteArrayInputStream; imp

連結串列A和B分別表示兩集合其元素遞增排列。請設計一個演算法用於出A與B的交集並存放在A連結串列中。

語言:C++ #include <iostream> using namespace std; typedef struct LNode { int data; LNode *next; }LNode,*LinkList; //建立連結串列 int CreateList(Li

java 地點經緯度算距離 非常精確

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

java經典題丨有一對兔子從出生後第3月起每個月都生一對兔子小兔子長到第月後每個月又生一對兔子假如兔子都不死問每個月的兔子總對數為多少?

兔子問題,習題練習: public class Rubbit { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("請輸入月份");

線性表的合併集合A和B現要求一個新的集合A=A∪B。例如設A=(7,5,3,11)B=(2,6,3)合併後A=(7,5,3,11,2,6)。

#include<iostream> using namespace std; #define MAXSIZE 100 #define OK 1 #define ERROR -1 #define OVERFLOW -2 #define  MAXSIZE 100 &n

時間、得出相差幾天

// 取得兩個日期之間的相差多少天    public static long getDaysBetween(Date date0, Date date1) {   long daysBetween = (date0.getTime() - date1.getTime() + 1000000

C#起點座標、角度、長度終點座標(三角函式)

在一個CAD繪圖工具開發過程中需要根據起點座標、角度、長度求終點座標,作為一個數學渣來說,遇到這個問題真的感覺非常對不起初中數學老師,重新撿起三角函式學了兩天,當然,最後還是沒學太明白,但是還是把這個方法寫出來了,真的太簡單了,這種初級的數學知識都不會,我真的感覺很羞愧,想想還是記錄一下吧,

古典問題:有一對兔子從出生後第3月起每個月都生一對兔子 小兔子長到第月後每個月又生一對兔子 假如兔子都不死問每個月的兔子總數為多少

思路分析:   月份          兔子數                  說明   1      1(對)            從開始有一對兔子   2      1   3      1+1       原本有一對  從第三個月開始 生了一對 一共是兩對兔