🐛 Fix incorrect grid calcultation condition on compv2 migration script

This commit is contained in:
Andrey Antukh 2024-04-08 17:13:20 +02:00 committed by Andrés Moya
parent 7ebf8dd702
commit e8b29c3cfc
2 changed files with 21 additions and 23 deletions

View file

@ -1600,29 +1600,28 @@
nil nil
true)) true))
new-shapes (volatile! []) new-shapes (volatile! [])
add-shape #(vswap! new-shapes conj %)
add-shape (fn [shape]
(vswap! new-shapes conj shape))
fdata' (create-media-grid fdata page-id (:id frame) grid assets add-shape) fdata' (create-media-grid fdata page-id (:id frame) grid assets add-shape)
;; When svgs had different width&height and viewport, sometimes the old graphics ;; When svgs had different width&height and viewport,
;; importer didn't calculate well the media object size. So, after migration we ;; sometimes the old graphics importer didn't
;; recalculate grid size from the actual size of the created shapes. ;; calculate well the media object size. So, after
new-grid (ctst/generate-shape-grid @new-shapes position grid-gap) ;; migration we recalculate grid size from the actual
;; size of the created shapes.
{new-width :width new-height :height} (meta new-grid) fdata' (if-let [grid (ctst/generate-shape-grid @new-shapes position grid-gap)]
(let [{new-width :width new-height :height} (meta grid)]
fdata'' (if-not (and (mth/close? width new-width) (mth/close? height new-height)) (if-not (and (mth/close? width new-width) (mth/close? height new-height))
(do (do
(l/inf :hint "fixing graphics sizes" (l/inf :hint "fixing graphics sizes"
:file-id (str (:id fdata)) :file-id (str (:id fdata))
:group group-name) :group group-name)
(fix-graphics-size fdata' new-grid page-id (:id frame))) (fix-graphics-size fdata' grid page-id (:id frame)))
fdata'))
fdata')] fdata')]
(recur (next groups) (recur (next groups)
fdata'' fdata'
(gpt/add position (gpt/point 0 (+ height (* 2 grid-gap) frame-gap)))))))))) (gpt/add position (gpt/point 0 (+ height (* 2 grid-gap) frame-gap))))))))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

View file

@ -461,16 +461,15 @@
row-size (+ (reduce d/max ##-Inf (map :height bounds)) gap) row-size (+ (reduce d/max ##-Inf (map :height bounds)) gap)
column-size (+ (reduce d/max ##-Inf (map :width bounds)) gap) column-size (+ (reduce d/max ##-Inf (map :width bounds)) gap)
get-next (fn get-next get-next (fn get-next [counter]
[counter]
(let [row (quot counter grid-size) (let [row (quot counter grid-size)
column (mod counter grid-size) column (mod counter grid-size)
position (->> (gpt/point (* column column-size) position (->> (gpt/point (* column column-size)
(* row row-size)) (* row row-size))
(gpt/add start-position))] (gpt/add start-position))]
(cons position
(lazy-seq (lazy-seq
(cons position (get-next (inc counter))))))] (get-next (inc counter))))))]
(with-meta (get-next 0) (with-meta (get-next 0)
{:width (* grid-size column-size) {:width (* grid-size column-size)
:height (* grid-size row-size)})))) :height (* grid-size row-size)}))))