anchor.diff:           ;; i-j edge
            (let ((box (glaw:create-bbox-from-shape (edition-screen-selection-shape scr)))
                  x1 y1 x2 y2)
  -           (multiple-value-bind (x y z) (glaw:shape-get-vertex (edition-screen-shape scr) i)
  +           (multiple-value-bind (x y z) (glaw:shape-get-vertex/values (edition-screen-shape scr) i)
                (declare (ignore z))
                (multiple-value-bind (scr-x scr-y) (glaw:view-to-screen x y (edition-screen-view scr))
                  (setf x1 scr-x y1 scr-y)))
  -           (multiple-value-bind (x y z) (glaw:shape-get-vertex (edition-screen-shape scr) j)
  +           (multiple-value-bind (x y z) (glaw:shape-get-vertex/values (edition-screen-shape scr) j)
                (declare (ignore z))
                (multiple-value-bind (scr-x scr-y) (glaw:view-to-screen x y (edition-screen-view scr))
                  (setf x2 scr-x y2 scr-y)))
  
positive.code:   (setf (edition-screen-selection-boxes scr) '())
    (loop for i below (glaw:shape-nb-vertices (edition-screen-shape scr)) do
         (let ((box (glaw:create-bbox-from-shape (edition-screen-selection-shape scr))))
           (multiple-value-bind (x y z) (glaw:shape-get-vertex (edition-screen-shape scr) i)
             (declare (ignore z))
             (multiple-value-bind (scr-x scr-y) (glaw:view-to-screen x y (edition-screen-view scr))
               (glaw:bbox-translate box scr-x scr-y)))
  
negative.code: 
  (defun edition-screen-translate-vertex (scr index dx dy)
    (let ((shape (edition-screen-shape scr)))
      (multiple-value-bind (x y z) (glaw:shape-get-vertex/values shape index)
        (glaw:shape-set-vertex shape index (+ x dx) (+ y dy) z)))
    (edition-screen-update-boxes scr))
  
  