作者changpolaris (挖勒是)
看板MATLAB
標題Re: [問題] Matlab很強大,但不知道能不能夠解...
時間Sat Aug 18 11:00:26 2007
※ 引述《takmath (努力做到最好)》之銘言:
: Matlab很強大,但有一個問題卻不知道MATLAB能不能夠解決...步驟依序為下
: 1. 因為四點決定一個矩型面積,我給兩組四點,也就是畫出兩個矩型面積
: 2. 讓這兩個面積重疊後做聯集,而這兩個矩型可以變成一個幾何圖形
: 3. 再給四點決定第三個矩型面積
: 4. 將第三個矩型面積與之前兩個聯集的集合圖形做差集
: 5. 然後取出差集的面積值: 以上的問題,我爬文後,發現很少有人問這類的問題,所以提出來請教大家
你的這個問題其實就是封閉聚合線做布林運算,跟是不是矩形沒有關係。
此類問題可試著去網路上計算機圖學(CG)或地理資訊系統(GIS)的論壇爬文,
看有沒有人寫過相關函數(不一定是用matlab)
就我所知,matlab並沒有現成的函數進行此類計算。
你可以試著由以下方向進行:
1.首先你必須有計算兩條聚合線(假設為線A和線B)交點的函數
(所謂聚合線就是由多段直線段合成的折線啦..)
2.利用交點,你可以將線A分為兩段,一段是被線B包含在內(稱作Ain好了)
,一段是在線B面積外(稱作Aout)
3.同理,線B也會分成兩段,一段是被線A包含在內(Bin)
,一段是在線A面積外部(Bout)
4.則A+B=Aout+Bout
5.A-B=Aout+Bin
--------- Aout= --------- Bout= -----
| A | | | |
| ---------- | |
| | | | | | |
----|---- | ---- | |
| | | |
| B | Ain= | | |
| | ---- ----------
| | Bin= ----
---------- |
A+B= Aout+Bout
---------
| A |
| -----
| |
---- |
| |
| B |
| |
| |
----------
A-B=Aout+Bin
---------
| A |
| -----
| |
----|
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.121.11.10
1F:推 sunev:專業~~ 08/18 11:25
2F:推 ykjiang:讓人印樣深刻 :) 08/18 22:06