我有一個存儲爲向量矢量的x,y點列表,我想找出邊界。獲取x,y點列表的邊界
例如,給定這樣的:
[[0 0] [20 30] [-50 -70] [200 300]]
其結果將是:
{:x -50, :y -70, :x2 200, :y2 300}
這裏是我到目前爲止所。它給出了期望的結果,但似乎冗長而且對我來說不是很合適。
(defn get-stroke-bounds [vector-of-points]
(reduce (fn [m [x y]]
{:x (min (:x m Integer/MAX_VALUE) x)
:y (min (:y m Integer/MAX_VALUE) y)
:x2 (max (:x2 m Integer/MIN_VALUE) x)
:y2 (max (:y2 m Integer/MIN_VALUE) y)})
{}
(vector-of-points)))
有關如何改進它的任何想法?謝謝!
將'first'和'second'映射到列表中以獲得可排序的內容!當然!謝謝! – jhickner