Tôi có một danh sách các điểm x, y được lưu trữ dưới dạng vectơ của vectơ và tôi muốn tìm các giới hạn.nhận được giới hạn của một danh sách các điểm x, y
Ví dụ, đưa ra này:
[[0 0] [20 30] [-50 -70] [200 300]]
Kết quả sẽ là:
{:x -50, :y -70, :x2 200, :y2 300}
Dưới đây là những gì tôi có cho đến nay. Nó mang lại kết quả mong muốn, nhưng có vẻ dài dòng và không phải là rất khó hiểu với tôi.
(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)))
Bất kỳ ý tưởng nào về cách cải thiện? Cảm ơn!
Lập bản đồ 'first' và' second' vào danh sách để có thứ gì đó có thể sắp xếp! Tất nhiên! Cảm ơn! – jhickner