第一次做物理建模這事,還挺有意思,由於只是demo,沒有深入研究下去,所以這個目標也就比較淺顯,只是:檢測旋轉到某1角度不要發生碰撞,不帶重力
from shapely.geometry import polygonfrom shapely import affinity
import matplotlib.pyplot as plt
def make_car(leftx, lefty, width, height):
car_lines = polygon([(leftx, lefty), (leftx+width, lefty), (leftx+width, lefty+height), (leftx, lefty+height), (leftx, lefty)])
return car_lines
def showcar(car):
# x, y = car.xy
x, y=car.exterior.xy
plt.plot(x, y)
def showcars(cars):
for car in cars:
showcar(car)
car_width=4.7
car_height=2.5
car1 = make_car(1, 1, car_width, car_height)
car2 = make_car(6, 1, car_width, car_height)
car3 = make_car(11, 1, car_width, car_height)
car4 = make_car(16, 1, car_width, car_height)
car5 = make_car(1, 6, car_width, car_height)
car6 = make_car(6, 6, car_width, car_height)
car7 = make_car(11, 6, car_width, car_height)
car8 = make_car(16, 6, car_width, car_height)
plt.axis('equal')
plt.ion()
cars = [car1, car2, car3, car4, car5, car6, car7, car8]
showcars(cars)
plt.pause(1)
for i in range(1, 30):
plt.cla()
rotated_car3 = affinity.rotate(car3, i)
showcars([car1, car2, rotated_car3, car4, car5, car6, car7, car8])
#計算是否碰撞
print('********************===', i, '********************')
cars = [car1, car2, car4, car5, car6, car7, car8]
conflict=false
for car in cars:
if rotated_car3.intersects(car):
conflict=true
break
if conflict:
print('撞到了,當前旋轉角度:', i)
**比較簡單,用到的有幾何庫:shapely
Hadoop HBase物理模型
包含訪問hbase的介面並維護cache,加快對hbase的訪問zookeeper 保證任何時候,集群中只有乙個master 存貯所有region的定址入口。實時監控region server的上線和下線資訊。並實時通知給master 儲存hbase的schema和table元資料 hmaster ...
資料庫建模三步驟 概念模型 邏輯模型 物理模型
概念模型就是在了解了使用者的需求,使用者的業務領域工作情況以後,經過分析和總結,提煉出來的用以描述使用者業務需求的一些概念的東西。如銷售業務中的 客戶 和 定單 還有就是 商品 業務員 用usecase來描述就是 業務員 與 客戶 就購買 商品 之事簽定下 定單 此時可以不包含屬性,只有實體集,聯絡...
資料庫建模三步驟 概念模型 邏輯模型 物理模型
概念模型就是在了解了使用者的需求,使用者的業務領域工作情況以後,經過分析和總結,提煉出來的用以描述使用者業務需求的一些概念的東西。如銷售業務中的 客戶 和 定單 還有就是 商品 業務員 用use case來描述就是 業務員 與 客戶 就購買 商品 之事簽定下 定單 此時可以不包含屬性,只有實體集,聯...