diff --git a/src/ol/interaction/dragrotateinteraction.js b/src/ol/interaction/dragrotateinteraction.js index c0a1915224..8d8c061657 100644 --- a/src/ol/interaction/dragrotateinteraction.js +++ b/src/ol/interaction/dragrotateinteraction.js @@ -1,7 +1,6 @@ goog.provide('ol.interaction.DragRotate'); goog.require('goog.asserts'); -goog.require('ol.View2D'); goog.require('ol.interaction.ConditionType'); goog.require('ol.interaction.Drag'); goog.require('ol.interaction.Interaction'); @@ -54,12 +53,12 @@ ol.interaction.DragRotate.prototype.handleDrag = function(mapBrowserEvent) { Math.atan2(size[1] / 2 - offset[1], offset[0] - size[0] / 2); if (goog.isDef(this.lastAngle_)) { var delta = theta - this.lastAngle_; - var view = map.getView(); // FIXME works for View2D only - goog.asserts.assertInstanceof(view, ol.View2D); + var view = map.getView().getView2D(); + var view2DState = view.getView2DState(); map.requestRenderFrame(); ol.interaction.Interaction.rotateWithoutConstraints( - map, view, view.getRotation() - delta); + map, view, view2DState.rotation - delta); } this.lastAngle_ = theta; }; @@ -71,9 +70,9 @@ ol.interaction.DragRotate.prototype.handleDrag = function(mapBrowserEvent) { ol.interaction.DragRotate.prototype.handleDragEnd = function(mapBrowserEvent) { var map = mapBrowserEvent.map; // FIXME works for View2D only - var view = map.getView(); - goog.asserts.assertInstanceof(view, ol.View2D); - ol.interaction.Interaction.rotate(map, view, view.getRotation(), undefined, + var view = map.getView().getView2D(); + var view2DState = view.getView2DState(); + ol.interaction.Interaction.rotate(map, view, view2DState.rotation, undefined, ol.interaction.DRAGROTATE_ANIMATION_DURATION); }; @@ -86,9 +85,6 @@ ol.interaction.DragRotate.prototype.handleDragStart = var browserEvent = mapBrowserEvent.browserEvent; if (browserEvent.isMouseActionButton() && this.condition_(browserEvent)) { var map = mapBrowserEvent.map; - // FIXME supports View2D only - var view = map.getView(); - goog.asserts.assertInstanceof(view, ol.View2D); map.requestRenderFrame(); this.lastAngle_ = undefined; return true;