Changeset 10115 in josm
- Timestamp:
- 2016-04-07T00:02:22+02:00 (9 years ago)
- Location:
- trunk/src/org/openstreetmap/josm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/actions/mapmode/ExtrudeAction.java
r10001 r10115 763 763 } 764 764 return bestMovement; 765 766 767 765 } 768 766 … … 1026 1024 Point p4 = mv.getPoint(newN2en); 1027 1025 1028 Point2D normalUnitVector = getNormalUniVector();1026 Point2D normalUnitVector = activeMoveDirection != null ? getNormalUniVector() : null; 1029 1027 1030 1028 if (mode == Mode.extrude || mode == Mode.create_new) { … … 1033 1031 // Draw rectangle around new area. 1034 1032 GeneralPath b = new GeneralPath(); 1035 b.moveTo(p1.x, p1.y); b.lineTo(p3.x, p3.y); 1036 b.lineTo(p4.x, p4.y); b.lineTo(p2.x, p2.y); 1033 b.moveTo(p1.x, p1.y); 1034 b.lineTo(p3.x, p3.y); 1035 b.lineTo(p4.x, p4.y); 1036 b.lineTo(p2.x, p2.y); 1037 1037 b.lineTo(p1.x, p1.y); 1038 1038 g2.draw(b); … … 1042 1042 drawReferenceSegment(g2, mv, dualAlignSegment1); 1043 1043 drawReferenceSegment(g2, mv, dualAlignSegment2); 1044 } else if (activeMoveDirection != null ) {1044 } else if (activeMoveDirection != null && normalUnitVector != null) { 1045 1045 // Draw reference way 1046 1046 drawReferenceSegment(g2, mv, activeMoveDirection); … … 1052 1052 double headingMoveDir = Math.atan2(normalUnitVector.getY(), normalUnitVector.getX()); 1053 1053 double headingDiff = headingRefWS - headingMoveDir; 1054 if (headingDiff < 0) headingDiff += 2 * Math.PI; 1054 if (headingDiff < 0) 1055 headingDiff += 2 * Math.PI; 1055 1056 boolean mirrorRA = Math.abs(headingDiff - Math.PI) > 1e-5; 1056 1057 Point pr1 = mv.getPoint(activeMoveDirection.p1); -
trunk/src/org/openstreetmap/josm/tools/WindowGeometry.java
r9576 r10115 49 49 */ 50 50 public static WindowGeometry centerOnScreen(Dimension extent, String preferenceKey) { 51 Rectangle size = preferenceKey != null ? getScreenInfo(preferenceKey) 52 : getFullScreenInfo(); 51 Rectangle size = preferenceKey != null ? getScreenInfo(preferenceKey) : getFullScreenInfo(); 53 52 Point topLeft = new Point( 54 53 size.x + Math.max(0, (size.width - extent.width) /2), … … 117 116 */ 118 117 public WindowGeometry(Rectangle rect) { 119 this.topLeft = rect.getLocation(); 120 this.extent = rect.getSize(); 118 this(rect.getLocation(), rect.getSize()); 121 119 } 122 120 … … 426 424 */ 427 425 private static Rectangle getScreenInfo(Rectangle g) { 428 GraphicsEnvironment ge = GraphicsEnvironment 429 .getLocalGraphicsEnvironment(); 430 GraphicsDevice[] gs = ge.getScreenDevices(); 426 GraphicsDevice[] gs = GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices(); 431 427 int intersect = 0; 432 428 Rectangle bounds = null; … … 446 442 is = b.intersection(g); 447 443 s = is.width * is.height; 448 if ( bounds == null ||intersect < s) {444 if (intersect < s) { 449 445 intersect = s; 450 446 bounds = b; … … 460 456 } 461 457 } 462 return bounds ;458 return bounds != null ? bounds : g; 463 459 } 464 460
Note:
See TracChangeset
for help on using the changeset viewer.