andreped commited on
Commit
7ad4738
·
1 Parent(s): d223af2

Added zoom and position tracking to right-hand sidebar

Browse files
Files changed (1) hide show
  1. index.html +43 -2
index.html CHANGED
@@ -30,8 +30,12 @@
30
  <div id="annotation-toolbar"></div>
31
 
32
  <div class="sidebar-right" style="float: right; width: 10%;">
33
- <div class="position"></div>
34
- <div class="zoom" style="margin-top: 3em;"></div>
 
 
 
 
35
  </div>
36
 
37
  <div id="annotation_list" style="display: none;"></div>
@@ -133,6 +137,43 @@
133
  viewer.setMouseNavEnabled(true);
134
  }
135
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
  </script>
137
  </body>
138
  </html>
 
30
  <div id="annotation-toolbar"></div>
31
 
32
  <div class="sidebar-right" style="float: right; width: 10%;">
33
+ <h2 style="color: white; padding: 0 0.5em; font-size: 14px;">Info</h2>
34
+ <hr style="border: 0.25px solid white;">
35
+
36
+ <div class="position" style="color: white; padding: 0 0.5em; font-size: 14px;"></div>
37
+ <hr style="border: 0.25px solid white;">
38
+ <div class="zoom" style="color: white; padding: 0 0.5em; font-size: 14px;"></div>
39
  </div>
40
 
41
  <div id="annotation_list" style="display: none;"></div>
 
137
  viewer.setMouseNavEnabled(true);
138
  }
139
  });
140
+
141
+ // Add a listener to the viewer to update the position and zoom info
142
+ var positionEl = document.querySelectorAll('.sidebar-right .position')[0];
143
+ var zoomEl = document.querySelectorAll('.sidebar-right .zoom')[0];
144
+
145
+ // Default values
146
+ positionEl.innerHTML = 'Web:<br> (NA) <br><br>Viewport:<br> (NA) <br><br>Image:<br> (NA)';
147
+ zoomEl.innerHTML = 'Zoom:<br> NA <br><br>Image Zoom:<br> NA';
148
+
149
+ var updateZoom = function() {
150
+ var zoom = viewer.viewport.getZoom(true);
151
+ var imageZoom = viewer.viewport.viewportToImageZoom(zoom);
152
+
153
+ zoomEl.innerHTML = 'Zoom:<br>' + (Math.round(zoom * 100) / 100) +
154
+ '<br><br>Image Zoom:<br>' + (Math.round(imageZoom * 100) / 100);
155
+ }
156
+
157
+ viewer.addHandler('open', function() {
158
+ var tracker = new OpenSeadragon.MouseTracker({
159
+ element: viewer.container,
160
+ moveHandler: function(event) {
161
+ var webPoint = event.position;
162
+ var viewportPoint = viewer.viewport.pointFromPixel(webPoint);
163
+ var imagePoint = viewer.viewport.viewportToImageCoordinates(viewportPoint);
164
+ var zoom = viewer.viewport.getZoom(true);
165
+ var imageZoom = viewer.viewport.viewportToImageZoom(zoom);
166
+
167
+ positionEl.innerHTML = 'Web:<br>' + webPoint.toString() +
168
+ '<br><br>Viewport:<br>' + viewportPoint.toString() +
169
+ '<br><br>Image:<br>' + imagePoint.toString();
170
+
171
+ updateZoom();
172
+ }
173
+ });
174
+ tracker.setTracking(true);
175
+ viewer.addHandler('animation', updateZoom);
176
+ });
177
  </script>
178
  </body>
179
  </html>