Java examples for java.lang:Math Vector
Calculates the normalized dot product of two vectors.
//package com.java2s; import java.awt.geom.Point2D; public class Main { /**/*from w w w . j av a 2s .c o m*/ * Calculates the normalized dot product of two vectors. * {@code a * b / (|a| * |b|)} * * @param a The first vector. * @param b The second vector. * @return The normalized dot product. */ public static double dotNorm(final Point2D a, final Point2D b) { return dot(a, b) / (vecLength(a) * vecLength(b)); } /** * Calculates the dot product of two vectors. * * @param a The first vector. * @param b The second vector. * @return The dot product. */ public static double dot(final Point2D a, final Point2D b) { return a.getX() * b.getX() + a.getY() * b.getY(); } /** * Calculates the length of a vector. This operation is relatively expensive. * To compare two distances, use {@link #vecLengthSqr(Point2D)}. * * @param v The vector. * @return The length of the vector. */ public static double vecLength(final Point2D v) { return Math.sqrt(vecLengthSqr(v)); } /** * Calculates the squared length of a vector. This method is much cheaper than * {@link #vecLength(Point2D)}. * * @param v The vector. * @return The squared length. */ public static double vecLengthSqr(final Point2D v) { return dot(v, v); } }