判斷乙個三維座標點在不在乙個面上,不確定有沒有問題

2021-10-08 02:32:55 字數 1472 閱讀 5422

//判斷乙個三維座標點在不在乙個面上

public class judgethreedimensional

//判斷length和wide在不在x1和x2之間以及y1和y2之間

if (height == z1&& length < math.min(x1, x2) || length > math.max(x1, x2)

|| wide < math.min(y1, y2) || wide > math.max(y1, y2)) /* else */

}//假設高度相同 經度不同和緯度相同

if (z1==z2 && y1 == y2 && x1 != x2)

//假設高度相同 經度相同和緯度不同

if (z1 == z2 && x1 ==x2 && y1 != y2)

//假設高度相同 經度和緯度相同

if (x1==x2 &&y1==y2 && z1==z1)

//假設高度不同 經度相同 和 緯度不同

if (z1 !==z2 && x1 == x2 &&y1 != y2)

//長度等於x(經度)與 高度不在最小z(高度)和最大z(高度)之間 不在平面, 或 , 寬度不在最小y(緯度)和最大y(緯度)之間 不在平面

if (length == x1 && height < math.min(z1, z2) || height > math.max(z1, z2) ||

wide < math.min(y1, y2) || wide > math.max(y1, y2)) /* else */

}//假設高度不同 經度不同與緯度相同

if (z1 != z2&& y1 != y2 && x1 == x2)

//寬度相等 長度不在最小x和最大x之間,不在平面上 或 高度不在最大z和最小z之間,不在平面上

if (wide == y1 && math.min(x1, x2) > length || length > math.max(x1, x2) ||

math.min(z1, z2) > height || math.max(z1, z2) < height) /* else */

}//假設高度、經度、緯度不同

if (z1 !==z2 && x1 != x2 && y1 != y2)

//高度在最大z(高度)和最小z(高度)之間與 長度不在最小x(經度)和最大x(經度)之間 不在平面上, 或 寬度不在最小y(寬度)

// 和最大y(寬度)之間 不在平面上

if (height <= math.max(z1, z2) && height >= math.min(z1, z2) && length < math.min(x1, x2) ||

length > math.max(x1, x2) || wide < math.min(y1, y2) || wide > math.max(y1, y2)) /*else */

}return true;

}}

多邊形問題( 判斷乙個點在不在多邊形內)

試題一 災區已經非常困難,災民需要帳篷 衣物 食品和血漿。可通往災區的道路到處都是塌方,70 以上的路面損壞,橋梁全部被毀。中國空軍立即啟動應急預案,展開史上最大強度非作戰空運行動,準備向災區空投急需物資。由於餘震不斷,天氣惡劣,怎樣知道空投的物資是否落在某災區的區域內呢?經過空中觀測,某災區為一凸...

建立乙個三維陣列

題目 建立乙個三維陣列,4 4 4個元素,數字隨機生成,找出每行最大的數,每面最大的數,以及整個陣列中最大的數的位址,具體實現如下 cpp view plain copy include include include void printmaxvalbyindex int pdata 4 4 in...

建立乙個三維陣列

題目 建立乙個三維陣列,4 4 4個元素,數字隨機生成,找出每行最大的數,每面最大的數,以及整個陣列中最大的數的位址,具體實現如下 include include include void printmaxvalbyindex int pdata 4 4 int nrows int planmaxv...