欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python判斷直線和矩形是否相交的方法

 更新時(shí)間:2015年07月14日 09:11:20   作者:G0561  
這篇文章主要介紹了Python判斷直線和矩形是否相交的方法,涉及Python坐標(biāo)系下的直線與矩形相關(guān)運(yùn)算,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了Python判斷直線和矩形是否相交的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

"""
A(ax,ay),B(px,py)為兩個(gè)點(diǎn) (x1,y1),(x2,y2)為矩形的左上角和右下角坐標(biāo) ,判斷A,B兩點(diǎn)是否和矩形相交 
"""
def Judge(ax, ay, px, py, x1, y1, x2, y2):
  #轉(zhuǎn)換為真除法
  ax, ay, px, py = float(ax), float(ay), float(px), float(py)
  x1, y1, x2, y2 = float(x1), float(y1), float(x2), float(y2)
  #判斷矩形上邊線和兩點(diǎn)直線相交的點(diǎn)
  sx = (y1 - ay) * (px - ax) / (py - ay) + ax
  if sx >= x1 and sx <= x2:
    return True
  #判斷矩形下邊線和兩點(diǎn)直線相交的點(diǎn)
  xx = (y1 - ay) * (px - ax) / (py - ay) + ax
  if sx >= x1 and sx <= x2:
    return True
  #判斷矩形左邊線和兩點(diǎn)直線相交的點(diǎn)
  zy = (y2 - ay) * (x2 - ax) / (px - ax) + ay
  if zy >= y1 and zy <= y2:
    return True
  #判斷矩形右邊線和兩點(diǎn)直線相交的點(diǎn)
  yy = (y2 - ay) * (x2 - ax) / (px - ax) + ay
  if yy <= y1 and yy >= y2:
    return True
  return False
ax = raw_input()
ay = input()
px = input()
py = input()
x1 = input()
y1 = input()
x2 = input()
y2 = input()
print Judge(ax, ay, px, py, x1, y1, x2, y2)

希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python?format格式化和數(shù)字格式化

    python?format格式化和數(shù)字格式化

    這篇文章主要介紹了python?format格式化和數(shù)字格式化,格式化字符串的函數(shù)?str.format(),它增強(qiáng)了字符串格式化的功能,基本語法是通過{}?和?:?來代替以前的?%?,下面內(nèi)容介紹,需要的朋友可以參考一下
    2022-02-02
  • Django 日志配置按日期滾動(dòng)的方法

    Django 日志配置按日期滾動(dòng)的方法

    今天小編就為大家分享一篇Django 日志配置按日期滾動(dòng)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • 編程語言Python的發(fā)展史

    編程語言Python的發(fā)展史

    這篇文章主要介紹了編程語言Python的發(fā)展史,本文詳細(xì)介紹了Python語言的發(fā)展歷史,需要的朋友可以參考下
    2014-09-09
  • Python實(shí)現(xiàn)單詞翻譯功能

    Python實(shí)現(xiàn)單詞翻譯功能

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)單詞翻譯功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Python Sql數(shù)據(jù)庫增刪改查操作簡單封裝

    Python Sql數(shù)據(jù)庫增刪改查操作簡單封裝

    這篇文章主要為大家介紹了Python Sql數(shù)據(jù)庫增刪改查操作簡單封裝,感興趣的小伙伴們可以參考一下
    2016-04-04
  • numpy基礎(chǔ)教程之np.linalg

    numpy基礎(chǔ)教程之np.linalg

    這篇文章主要給大家介紹了關(guān)于numpy基礎(chǔ)教程之np.linalg的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • python中wx將圖標(biāo)顯示在右下角的腳本代碼

    python中wx將圖標(biāo)顯示在右下角的腳本代碼

    python中wx將圖標(biāo)顯示在右下腳的代碼,此程序摘自wxdemo,不夠完善,只供參考用
    2013-03-03
  • 詳解如何用Python登錄豆瓣并爬取影評(píng)

    詳解如何用Python登錄豆瓣并爬取影評(píng)

    這篇文章主要介紹了如何用Python登錄豆瓣并爬取影評(píng),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • nginx+uwsgi+django環(huán)境搭建的方法步驟

    nginx+uwsgi+django環(huán)境搭建的方法步驟

    這篇文章主要介紹了nginx+uwsgi+django環(huán)境搭建的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Python爬蟲基礎(chǔ)之XPath語法與lxml庫的用法詳解

    Python爬蟲基礎(chǔ)之XPath語法與lxml庫的用法詳解

    這篇文章主要給大家介紹了關(guān)于Python爬蟲基礎(chǔ)之XPath語法與lxml庫用法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09

最新評(píng)論