婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 矩形相交以及求出相交的區(qū)域的原理解析

矩形相交以及求出相交的區(qū)域的原理解析

熱門標(biāo)簽:去哪里辦卡 熱血傳奇沃瑪森林地圖標(biāo)注 鄭州中國(guó)移動(dòng)400電話申請(qǐng) 無錫電銷機(jī)器人銷售 招聘信息 地圖標(biāo)注植物名稱 地圖標(biāo)注審核工作怎么樣注冊(cè) 福建ai電銷機(jī)器人加盟公司 揭陽(yáng)外呼系統(tǒng)公司 南召400電話辦理資費(fèi)
(1)設(shè)計(jì)一個(gè)算法,確定兩個(gè)矩形是否相交(即有重疊區(qū)域)
(2)如果兩個(gè)矩形相交,設(shè)計(jì)一個(gè)算法,求出相交的區(qū)域矩形

(1) 對(duì)于這個(gè)問題,一般的思路就是判斷一個(gè)矩形的四個(gè)頂點(diǎn)是否在另一個(gè)矩形的區(qū)域內(nèi)。這個(gè)思路最簡(jiǎn)單,但是效率不高,并且存在錯(cuò)誤,錯(cuò)誤在哪里,下面分析一 下。

如上圖,把矩形的相交(區(qū)域重疊)分成三種(可能也有其他劃分),對(duì)于第三種情況,如圖中的(3),兩個(gè)矩形相交,但并不存在一個(gè)矩形的頂點(diǎn)在另一個(gè)矩形 內(nèi)部。所以那種思路存在一個(gè)錯(cuò)誤,對(duì)于這種情況的相交則檢查不出。

仔細(xì)觀察上圖,想到另一種思路,那就是判斷兩個(gè)矩形的中心坐標(biāo)的水平和垂直距離,只要這兩個(gè)值滿足某種條件就可以相交。
矩形A的寬 Wa = Xa2-Xa1 高 Ha = Ya2-Ya1
矩形B的寬 Wb = Xb2-Xb1 高 Hb = Yb2-Yb1
矩形A的中心坐標(biāo) (Xa3,Ya3) = ( (Xa2+Xa1)/2 ,(Ya2+Ya1)/2 )
矩形B的中心坐標(biāo) (Xb3,Yb3) = ( (Xb2+Xb1)/2 ,(Yb2+Yb1)/2 )
所以只要同時(shí)滿足下面兩個(gè)式子,就可以說明兩個(gè)矩形相交。1) | Xb3-Xa3 | = Wa/2 + Wb/2
2) | Yb3-Ya3 | = Ha/2 + Hb/2
即:
| Xb2+Xb1-Xa2-Xa1 | = Xa2-Xa1 + Xb2-Xb1
| Yb2+Yb1-Ya2-Ya1 | =Y a2-Ya1 + Yb2-Yb1

(2) 對(duì)于這個(gè)問題,假設(shè)兩個(gè)矩形相交,設(shè)相交之后的矩形為C,且矩形C的左上角坐標(biāo)為(Xc1,Yc1),右下角坐標(biāo)為(Xc2,Yc2),經(jīng)過觀察上圖,很 顯然可以得到:
Xc1 = max(Xa1,Xb1)
Yc1 = max(Ya1,Yb1)
Xc2 = min(Xa2,Xb2)
Yc2 = min(Ya2,Yb2)
這樣就求出了矩形的相交區(qū)域。
另外,注意到在不假設(shè)矩形相交的前提下,定義(Xc1,Yc1),(Xc2,Yc2),且Xc1,Yc1,Xc2,Yc2的值由上面四個(gè)式子得出。這樣, 可以依據(jù)Xc1,Yc1,Xc2,Yc2的值來判斷矩形相交。
Xc1,Yc1,Xc2,Yc2只要同時(shí)滿足下面兩個(gè)式子,就可以說明兩個(gè)矩形相交。
3) Xc1 = Xc2
4) Yc1 = Yc2
即:
max(Xa1,Xb1) = min(Xa2,Xb2)
max(Ya1,Yb1) = min(Ya2,Yb2)
您可能感興趣的文章:
  • Android實(shí)現(xiàn)矩形區(qū)域截屏的方法
  • 解決IntelliJ IDEA中鼠標(biāo)拖動(dòng)選擇為矩形區(qū)域問題

標(biāo)簽:景德鎮(zhèn) 南昌 文山 鹽城 黔南 宣城 桂林 東莞

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《矩形相交以及求出相交的區(qū)域的原理解析》,本文關(guān)鍵詞  矩形,相交,以及,求出,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《矩形相交以及求出相交的區(qū)域的原理解析》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于矩形相交以及求出相交的區(qū)域的原理解析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 东安县| 南乐县| 阳东县| 阜宁县| 丘北县| 鲜城| 高淳县| 三亚市| 陈巴尔虎旗| 永寿县| 左云县| 方山县| 吉隆县| 大石桥市| 兰溪市| 宜州市| 海门市| 阳东县| 抚远县| 夹江县| 新源县| 屏南县| 元阳县| 拜城县| 临西县| 铜山县| 嘉黎县| 乳源| 开远市| 镇雄县| 上饶县| 瑞昌市| 安徽省| 苏尼特右旗| 出国| 红原县| 西乌珠穆沁旗| 城步| 交口县| 永福县| 金塔县|