Changeset 10867 in josm


Ignore:
Timestamp:
2016-08-21T15:38:50+02:00 (8 years ago)
Author:
Don-vip
Message:

fix #13397 - segment did not display anymore middle plus signs (patch by michael2402) - regression of r10827 or r10824 - gsoc-core

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/MapViewState.java

    r10856 r10867  
    4747     * @since 10827
    4848     */
    49     public static final int OUTSIDE_LEFT = 3;
     49    public static final int OUTSIDE_LEFT = 4;
    5050
    5151    /**
     
    5353     * @since 10827
    5454     */
    55     public static final int OUTSIDE_RIGHT = 4;
     55    public static final int OUTSIDE_RIGHT = 8;
    5656
    5757    private final Projecting projecting;
     
    499499         */
    500500        public double oneNormInView(MapViewPoint p2) {
    501             return Math.abs(getInViewX() - p2.getInViewX()) + Math.abs(getInViewY()) - p2.getInViewY();
     501            return Math.abs(getInViewX() - p2.getInViewX()) + Math.abs(getInViewY() - p2.getInViewY());
    502502        }
    503503
  • trunk/test/unit/org/openstreetmap/josm/gui/MapViewStateTest.java

    r10856 r10867  
    1717import org.openstreetmap.josm.data.coor.LatLon;
    1818import org.openstreetmap.josm.gui.MapViewState.MapViewPoint;
     19import org.openstreetmap.josm.gui.MapViewState.MapViewRectangle;
    1920
    2021/**
     
    151152
    152153    /**
     154     * Test {@link MapViewState#OUTSIDE_BOTTOM} and similar constants.
     155     */
     156    @Test
     157    public void testOutsideFlags() {
     158        assertEquals(1, Integer.bitCount(MapViewState.OUTSIDE_BOTTOM));
     159        assertEquals(1, Integer.bitCount(MapViewState.OUTSIDE_TOP));
     160        assertEquals(1, Integer.bitCount(MapViewState.OUTSIDE_LEFT));
     161        assertEquals(1, Integer.bitCount(MapViewState.OUTSIDE_RIGHT));
     162        assertEquals(4, Integer.bitCount(MapViewState.OUTSIDE_BOTTOM | MapViewState.OUTSIDE_TOP
     163                | MapViewState.OUTSIDE_LEFT | MapViewState.OUTSIDE_RIGHT));
     164    }
     165
     166    /**
     167     * Test {@link MapViewPoint#getOutsideRectangleFlags(MapViewRectangle)}
     168     */
     169    @Test
     170    public void testPointGetOutsideRectangleFlags() {
     171        MapViewRectangle rect = state.getForView(0, 0).rectTo(state.getForView(10, 10));
     172        assertEquals(0, state.getForView(1, 1).getOutsideRectangleFlags(rect));
     173        assertEquals(0, state.getForView(1, 5).getOutsideRectangleFlags(rect));
     174        assertEquals(0, state.getForView(9, 1).getOutsideRectangleFlags(rect));
     175        assertEquals(0, state.getForView(10 - 1e-10, 1e-10).getOutsideRectangleFlags(rect));
     176        assertEquals(0, state.getForView(10 - 1e-10, 10 - 1e-10).getOutsideRectangleFlags(rect));
     177
     178
     179        assertEquals(MapViewState.OUTSIDE_TOP, state.getForView(1, -11).getOutsideRectangleFlags(rect));
     180        assertEquals(MapViewState.OUTSIDE_TOP, state.getForView(1, -1e20).getOutsideRectangleFlags(rect));
     181
     182        assertEquals(MapViewState.OUTSIDE_BOTTOM, state.getForView(1, 11).getOutsideRectangleFlags(rect));
     183        assertEquals(MapViewState.OUTSIDE_BOTTOM, state.getForView(1, 1e20).getOutsideRectangleFlags(rect));
     184
     185        assertEquals(MapViewState.OUTSIDE_LEFT, state.getForView(-11, 1).getOutsideRectangleFlags(rect));
     186        assertEquals(MapViewState.OUTSIDE_LEFT, state.getForView(-1e20, 1).getOutsideRectangleFlags(rect));
     187        assertEquals(MapViewState.OUTSIDE_RIGHT, state.getForView(11, 1).getOutsideRectangleFlags(rect));
     188        assertEquals(MapViewState.OUTSIDE_RIGHT, state.getForView(1e20, 1).getOutsideRectangleFlags(rect));
     189
     190        assertEquals(MapViewState.OUTSIDE_RIGHT | MapViewState.OUTSIDE_TOP, state.getForView(11, -11).getOutsideRectangleFlags(rect));
     191        assertEquals(MapViewState.OUTSIDE_RIGHT | MapViewState.OUTSIDE_BOTTOM, state.getForView(11, 11).getOutsideRectangleFlags(rect));
     192        assertEquals(MapViewState.OUTSIDE_LEFT | MapViewState.OUTSIDE_TOP, state.getForView(-11, -11).getOutsideRectangleFlags(rect));
     193        assertEquals(MapViewState.OUTSIDE_LEFT | MapViewState.OUTSIDE_BOTTOM, state.getForView(-11, 11).getOutsideRectangleFlags(rect));
     194    }
     195
     196    /**
     197     * Test {@link MapViewPoint#oneNormInView(MapViewPoint)}
     198     */
     199    @Test
     200    public void testPointOneNormInView() {
     201        MapViewPoint p = state.getForView(5, 15);
     202        assertEquals(0, p.oneNormInView(p), 1e-10);
     203        assertEquals(6, p.oneNormInView(state.getForView(-1, 15)), 1e-10);
     204        assertEquals(5, p.oneNormInView(state.getForView(5, 20)), 1e-10);
     205        assertEquals(22, p.oneNormInView(state.getForView(-1, -1)), 1e-10);
     206        assertEquals(40, p.oneNormInView(state.getForView(30, 30)), 1e-10);
     207    }
     208
     209    /**
    153210     * Test {@link MapViewState.MapViewViewPoint#toString()} and {@link MapViewState.MapViewEastNorthPoint#toString()}
    154211     */
Note: See TracChangeset for help on using the changeset viewer.