From 463a5320259b315fba5818b4af8b5e4663e0bad0 Mon Sep 17 00:00:00 2001 From: "nor..67" Date: Thu, 7 Feb 2013 16:17:16 +0000 Subject: [PATCH] - add javadoc for Vector3f.project - add Vector3f.projectLocal git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@10359 75d07b2b-3a1a-0410-a2c5-0572b91ccdca --- engine/src/core/com/jme3/math/Vector3f.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/engine/src/core/com/jme3/math/Vector3f.java b/engine/src/core/com/jme3/math/Vector3f.java index 28aa5d888..c3a22602b 100644 --- a/engine/src/core/com/jme3/math/Vector3f.java +++ b/engine/src/core/com/jme3/math/Vector3f.java @@ -383,12 +383,31 @@ public final class Vector3f implements Savable, Cloneable, java.io.Serializable return this; } + /** + * Projects this vector onto another vector + * + * @param other The vector to project this vector onto + * @return A new vector with the projection result + */ public Vector3f project(Vector3f other){ float n = this.dot(other); // A . B float d = other.lengthSquared(); // |B|^2 return new Vector3f(other).normalizeLocal().multLocal(n/d); } + /** + * Projects this vector onto another vector, stores the result in this + * vector + * + * @param other The vector to project this vector onto + * @return This Vector3f, set to the projection result + */ + public Vector3f projectLocal(Vector3f other){ + float n = this.dot(other); // A . B + float d = other.lengthSquared(); // |B|^2 + return set(other).normalizeLocal().multLocal(n/d); + } + /** * Returns true if this vector is a unit vector (length() ~= 1), * returns false otherwise.