From 7d075e6af8d16d495f9b52da750ae97af7baf9f1 Mon Sep 17 00:00:00 2001
From: Damon Kohler <damonkohler@google.com>
Date: Tue, 14 Aug 2012 11:10:11 +0200
Subject: [PATCH] Pulls out constants for commonly used vectors.

---
 .../main/java/org/ros/rosjava_geometry/Vector3.java | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/rosjava_geometry/src/main/java/org/ros/rosjava_geometry/Vector3.java b/rosjava_geometry/src/main/java/org/ros/rosjava_geometry/Vector3.java
index 87739cad..b5c84ebf 100644
--- a/rosjava_geometry/src/main/java/org/ros/rosjava_geometry/Vector3.java
+++ b/rosjava_geometry/src/main/java/org/ros/rosjava_geometry/Vector3.java
@@ -28,6 +28,11 @@ import java.util.List;
  */
 public class Vector3 {
 
+  private static final Vector3 ZERO = new Vector3(0, 0, 0);
+  private static final Vector3 X_AXIS = new Vector3(1, 0, 0);
+  private static final Vector3 Y_AXIS = new Vector3(0, 1, 0);
+  private static final Vector3 Z_AXIS = new Vector3(0, 0, 1);
+
   private final double x;
   private final double y;
   private final double z;
@@ -41,19 +46,19 @@ public class Vector3 {
   }
 
   public static Vector3 zero() {
-    return new Vector3(0, 0, 0);
+    return ZERO;
   }
 
   public static Vector3 xAxis() {
-    return new Vector3(1, 0, 0);
+    return X_AXIS;
   }
 
   public static Vector3 yAxis() {
-    return new Vector3(0, 1, 0);
+    return Y_AXIS;
   }
 
   public static Vector3 zAxis() {
-    return new Vector3(0, 0, 1);
+    return Z_AXIS;
   }
 
   public Vector3(double x, double y, double z) {
-- 
GitLab