Unions Rectangle2D : Geometry « 2D Graphics GUI « Java

Home
Java
1.2D Graphics GUI
2.3D
3.Advanced Graphics
4.Ant
5.Apache Common
6.Chart
7.Class
8.Collections Data Structure
9.Data Type
10.Database SQL JDBC
11.Design Pattern
12.Development Class
13.EJB3
14.Email
15.Event
16.File Input Output
17.Game
18.Generics
19.GWT
20.Hibernate
21.I18N
22.J2EE
23.J2ME
24.JavaFX
25.JDK 6
26.JDK 7
27.JNDI LDAP
28.JPA
29.JSP
30.JSTL
31.Language Basics
32.Network Protocol
33.PDF RTF
34.Reflection
35.Regular Expressions
36.Scripting
37.Security
38.Servlets
39.Spring
40.Swing Components
41.Swing JFC
42.SWT JFace Eclipse
43.Threads
44.Tiny Application
45.Velocity
46.Web Services SOA
47.XML
Java » 2D Graphics GUI » Geometry 




Unions Rectangle2D
    
/*
 * $Id: RectUtils.java,v 1.2 2008/02/28 14:38:48 david Exp $
 *
 * Copyright (c) 2008 Gaudenz Alder
 *
 */


import java.awt.geom.Rectangle2D;

public class RectUtils {
  /**
   * Unions the pair of source <code>Rectangle2D</code> objects and puts the
   * result into the returned <code>Rectangle2D</code> object. This method
   * extends the Rectangle2D version by checking for null parameters, the
   * returned value will also be <code>null</code> if the two input
   * rectangles are <code>null</code>
   
   @param src1
   *            the first of a pair of <code>Rectangle2D</code> objects to
   *            be combined with each other
   @param src2
   *            the second of a pair of <code>Rectangle2D</code> objects to
   *            be combined with each other
   
   */
  public static Rectangle2D union(Rectangle2D src1, Rectangle2D src2) {
    Rectangle2D result = null;
    if (src1 == null && src2 == null) {
      result = null;
    else if (src1 != null && src2 != null) {
      double x1 = Math.min(src1.getMinX(), src2.getMinX());
      double y1 = Math.min(src1.getMinY(), src2.getMinY());
      double x2 = Math.max(src1.getMaxX(), src2.getMaxX());
      double y2 = Math.max(src1.getMaxY(), src2.getMaxY());
      result = new Rectangle2D.Double();
      result.setFrameFromDiagonal(x1, y1, x2, y2);
    else if (src1 != null) {
      double x1 = src1.getMinX();
      double y1 = src1.getMinY();
      double x2 = src1.getMaxX();
      double y2 = src1.getMaxY();
      result = new Rectangle2D.Double();
      result.setFrameFromDiagonal(x1, y1, x2, y2);
    else {
      // only src2 is non-null
      double x1 = src2.getMinX();
      double y1 = src2.getMinY();
      double x2 = src2.getMaxX();
      double y2 = src2.getMaxY();
      result = new Rectangle2D.Double();
      result.setFrameFromDiagonal(x1, y1, x2, y2);
    }
    return result;
  }
}

   
    
    
    
  














Related examples in the same category
1.Collection of geometry utility methods
2.Interpolates points given in the 2D plane
3.Returns distance between two sets of coords
4.Returns distance between 3D set of coords
5.Returns closest point on segment to point
6.Calculate Angle From
7.Returns distance to segment
8.Hexagon demo
9.Implements an Vector in 3D space.
10.Implementation of the 4 dimensional vector.
11.Quaternion
12.Circle shape
13.Geometry Utilities
14.This is a Polygon that allows the user to flip and swap the points along it's axis.
15.Fast trigonometric operationsFast trigonometric operations
16.A class to represent a latitude and longitude
17.An undirected graph that keeps track of connected components (groups).
18.Generates n logarithmically-spaced points between d1 and d2 using the provided base.
19.Returns a dimension where width and height are inside the bounds of the maxWidth and maxHeight parameters
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.