図1に示すように、平面の点の間の直線距離。
コード:
構造体のポイント{ ダブルX。 ダブルY; } 構造体PlaneEquation { ダブルA。 ダブルB; ダブルC; } // 计算点到面距离 ダブル DIST(ポイント・PT、PlaneEquation&PE)// 点と平面との間の距離 { ダブル DT = 0.0 。 ダブルミリアンペア、ヘクトパスカル、MC、MX、MY; ミリアンペア = pe.A。 ヘクトパスカル = pe.B。 mCの = pe.C。 MX = pt.X。 俺の= Pt.Y; IF(MC * + MCのMBにミリアンペア+ミリアンペア* MB)// もしミリアンペア*ミリアンペア+ヘクトパスカル*ヘクトパスカル+ mCと* mCと== 0 直記載収縮点 { DT = ABS(MX +ミリアンペア* MCの* + MY MB)/ SQRT(ミリアンペア+ミリアンペア* MBののMB); } 他 { STD :: COUT << " 式::入力エラー係数がすべてゼロである!!" ; DT = pt.mod() ; } // ザのをポイントする平面ザ原点(PT)に還元される(ゼロ)の距離.. 戻りDT; }
図2に示すように、空間の点の間の直線距離:
// 直線外点のための空間線形2点の使用(X0 Y0 Z0) Xcの =(X2-X1)* T + X1、 YC =(Y2-Y1)* T + Y1; Zcは =(Z2-Z1)* T + Z1; // ペダル T =((X1-X2)*(X1-X0)+(YL-Y2)*(Y0イル)+の-ZL)*(Z0)の(ZL-Z2)/((X2- X1)*(X1-X2)+(YL-Y2)*(YL-Y2)+(のZL-Z2)*(Z2- Z1から)) D = SQRT((X0-XC)*(X0-XC)+( YC-Y0)*(Y0-YC)+の-ZC(Z0)の-ZC *(Z0)) // 2ノルムを解決