emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/osm 4d044d3400 2/7: Simplify2


From: ELPA Syncer
Subject: [elpa] externals/osm 4d044d3400 2/7: Simplify2
Date: Thu, 10 Mar 2022 11:57:48 -0500 (EST)

branch: externals/osm
commit 4d044d3400b74ce4725044ae56d2d76d17ee819d
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>

    Simplify2
---
 osm.el | 19 ++++++-------------
 1 file changed, 6 insertions(+), 13 deletions(-)

diff --git a/osm.el b/osm.el
index 855da2c347..e30064ac93 100644
--- a/osm.el
+++ b/osm.el
@@ -630,10 +630,8 @@ Should be at least 7 days according to the server usage 
policies."
 ;; Sometimes artifacts occur, set osm-tile-border=debug.
 (defun osm--compute-tracks ()
   "Compute track hash table."
-  (let ((tracks (make-hash-table :test #'equal))
-        (segs (make-hash-table :test #'equal)))
+  (let ((tracks (make-hash-table :test #'equal)))
     (dolist (file osm--gpx-files)
-      (clrhash segs)
       (dolist (seg (cadr file))
         (let ((p0 (cons (osm--lon-to-x (cdar seg) osm--zoom)
                         (osm--lat-to-y (caar seg) osm--zoom))))
@@ -656,22 +654,17 @@ Should be at least 7 days according to the server usage 
policies."
                        (err (+ dx dy)))
                 ;; Bresenham
                 (while
-                    (let ((ex (< (* err 2) dx))
-                          (ey (> (* err 2) dy))
-                          (key (cons x0 y0)))
-                      (unless (equal (gethash key segs) p0)
-                        (push p0 (gethash key segs)))
-                      (push p1 (gethash key segs))
+                    (let ((err2 (* err 2)))
+                      (push (cons p0 p1) (gethash (cons x0 y0) tracks))
                       (unless (and (= x0 x1) (= y0 y1))
-                        (when ey
+                        (when (< err2 dy)
                           (cl-incf err dy)
                           (cl-incf x0 sx))
-                        (when ex
+                        (when (< err2 dx)
                           (cl-incf err dx)
                           (cl-incf y0 sy))
                         t)))
-                (setq p0 p1)))))))
-      (maphash (lambda (k v) (push v (gethash k tracks))) segs))
+                (setq p0 p1))))))))
     tracks))
 
 (defun osm--get-overlays (x y)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]