Merge commit '42b2e5ca519766e37ce6941ba4faecc9691cc403' into upstream
[debian/openrocket] / core / src / net / sf / openrocket / util / Coordinate.java
index 3bc981aaa8d1a618b2bf0067fa320fd5ea236f0f..0f65ffa4935a498f1c9c898b7934c7be024948b2 100644 (file)
@@ -12,8 +12,11 @@ import net.sf.openrocket.startup.Application;
  * 
  * @author Sampo Niskanen <sampo.niskanen@iki.fi>
  */
-public final class Coordinate implements Serializable {
+public final class Coordinate implements Cloneable, Serializable {
        private static final LogHelper log = Application.getLogger();
+
+       // Defined for backwards compatibility after adding clone().
+       static final long serialVersionUID = 585574649794259293L;
        
        ////////  Debug section
        /*
@@ -68,8 +71,6 @@ public final class Coordinate implements Serializable {
        private double length = -1; /* Cached when calculated */
        
        
-
-
        public Coordinate() {
                this(0, 0, 0, 0);
        }
@@ -315,6 +316,10 @@ public final class Coordinate implements Serializable {
                else
                        return String.format("(%.3f,%.3f,%.3f)", x, y, z);
        }
-       
+
+       @Override
+       public Coordinate clone() {
+               return new Coordinate(  this.x, this.y, this.z, this.weight );
+       }
 
 }