我有一個矩形(稱爲目標),並希望放置另一個矩形(稱爲衛星)旁邊。該衛星有一個位置(頂部,底部,左側,右側),用於確定相對於目標的放置邊緣。它還有一個對齊方式(左,中,右爲頂部和底部位置,頂部,中部和底部爲左右位置)。優雅的方式來定位兩個矩形
實施例:
+----------+----------------------------+
| | |
| Target | Satellite, Position=RIGHT, |
| | Align=TOP |
| | |
| |----------------------------+
| |
+----------+
我知道左上座標的目標以及其寬度和高度的。我也知道衛星的寬度和高度,並且想要計算它的左上角座標。我可以將它作爲一系列12 if
從句,但也許有更優雅的數學或算法的方法來完成它。有沒有其他的方法來解決這個問題:
# s = satellite, t = target
if pos == "top" && align == "left"
s.x = t.x
s.y = t.y - s.height
else if pos == "top" && align == "center"
s.x = t.x + t.width/2 - s.width/2
s.y = t.y - s.height
# etc, etc
Ruby或JavaScript的任何好的解決方案?
哥們,好文圖!你有沒有使用任何特殊的工具來生成它? – bowsersenior 2011-04-15 22:43:19
是的,我用JavE,一個專門的ASCII圖編輯器:http://www.jave.de/ – chiborg 2011-04-16 00:33:58
男人你爲什麼不把'language-agnostic'標籤? – 2011-04-16 04:37:35