Package org.openstreetmap.josm.actions
Class AlignGridRotationAction
- java.lang.Object
-
- javax.swing.AbstractAction
-
- org.openstreetmap.josm.actions.JosmAction
-
- org.openstreetmap.josm.actions.AlignGridRotationAction
-
- All Implemented Interfaces:
java.awt.event.ActionListener,java.io.Serializable,java.lang.Cloneable,java.util.EventListener,javax.swing.Action,Destroyable
public class AlignGridRotationAction extends JosmAction
Rotates the grid drawn over the map so that its lines run parallel to the current selection: either a single way (the direction from its first to its last node) or exactly two nodes. Switches the grid to projected coordinates, since a latitude/longitude grid cannot be rotated, and enables it.- Since:
- 19640
- See Also:
MapGridPaintable,SetGridOriginAction, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.openstreetmap.josm.actions.JosmAction
JosmAction.ActiveLayerChangeAdapter, JosmAction.LayerChangeAdapter, JosmAction.SelectionChangeAdapter
-
-
Field Summary
-
Fields inherited from class org.openstreetmap.josm.actions.JosmAction
sc
-
-
Constructor Summary
Constructors Constructor Description AlignGridRotationAction()Constructs a newAlignGridRotationAction.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent e)(package private) static EastNorth[]getSelectedDirection(DataSet ds)Determines the direction given by the selection: a single way with at least two nodes, or exactly two nodes.static doublerotationOf(EastNorth from, EastNorth to)Computes the grid rotation (counter clockwise, in degrees, in the range [0, 90)) for which a grid line is parallel to the given direction.protected voidupdateEnabledState()Override in subclasses to update the enabled state of the action when something in the JOSM state changes, i.e.protected voidupdateEnabledState(java.util.Collection<? extends OsmPrimitive> selection)Override in subclasses to update the enabled state of the action if the collection of selected primitives changes.-
Methods inherited from class org.openstreetmap.josm.actions.JosmAction
buildActiveLayerChangeAdapter, buildLayerChangeAdapter, checkAndConfirmOutlyingOperation, destroy, getLayerManager, getShortcut, initEnabledState, installAdapters, listenToLayerChange, listenToSelectionChange, setHelpId, setToolbarId, setTooltip, updateEnabledStateOnCurrentSelection, updateEnabledStateOnCurrentSelection, updateEnabledStateOnModifiableSelection, waitFuture
-
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, isEnabled, putValue, removePropertyChangeListener, setEnabled
-
-
-
-
Constructor Detail
-
AlignGridRotationAction
public AlignGridRotationAction()
Constructs a newAlignGridRotationAction.
-
-
Method Detail
-
getSelectedDirection
static EastNorth[] getSelectedDirection(DataSet ds)
Determines the direction given by the selection: a single way with at least two nodes, or exactly two nodes.- Parameters:
ds- the data set, may be null- Returns:
- start and end point, or
nullif the selection does not define a direction
-
rotationOf
public static double rotationOf(EastNorth from, EastNorth to)
Computes the grid rotation (counter clockwise, in degrees, in the range [0, 90)) for which a grid line is parallel to the given direction.- Parameters:
from- start pointto- end point- Returns:
- the rotation in degrees
-
updateEnabledState
protected void updateEnabledState()
Description copied from class:JosmActionOverride in subclasses to update the enabled state of the action when something in the JOSM state changes, i.e. when a layer is removed or added. SeeJosmAction.updateEnabledState(Collection)to respond to changes in the collection of selected primitives. Default behavior is empty.- Overrides:
updateEnabledStatein classJosmAction- See Also:
JosmAction.updateEnabledState(Collection),JosmAction.initEnabledState(),JosmAction.listenToLayerChange()
-
updateEnabledState
protected void updateEnabledState(java.util.Collection<? extends OsmPrimitive> selection)
Description copied from class:JosmActionOverride in subclasses to update the enabled state of the action if the collection of selected primitives changes. This method is called with the new selection.- Overrides:
updateEnabledStatein classJosmAction- Parameters:
selection- the collection of selected primitives; may be empty, but not null- See Also:
JosmAction.updateEnabledState(),JosmAction.initEnabledState(),JosmAction.listenToSelectionChange()
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent e)
-
-