(Difference between revisions)

HERE Maps API - Utility class Vector3D

From Nokia Developer Wiki
Jump to: navigation, search
avnee.nathani (Talk | contribs)
(Avnee.nathani - Updated the article to Nokia Maps Javascript API v2.0)
hamishwillee (Talk | contribs)

Revision as of 02:39, 13 January 2012

Article Metadata
Tested with
Devices(s): Opera 5.0.5, Firefox 5.0
Dependencies: Nokia Maps 2.1.0
Created: Maveric (28 Jun 2011)
Last edited: hamishwillee (13 Jan 2012)

This article explains how to use the Vector3D utility class.


This is a class representing a three dimensional vector. Full description is here:


Usage examples

Let's create a new Vector3D object:

>>> myVector = new nokia.maps.util.Vector3D (10, 10, 10) ;

This would return and object containing:

Object { x=10, y=10, z=10}

The "add(other)" method would create a sum of this vector and the added one.

We will create two Vector3D's and then create the third based on adding the 2nd to the 1st Vector3D.

>> myVector1 = new nokia.maps.util.Vector3D (10, 10, 10) ;
>> myVector2 = new nokia.maps.util.Vector3D (20, 20, 20) ;
>> myVector3 = myVector1.add(myVector2);

We would now have myVector3 to contain:

Object { x=30, y=30, z=30 }

With the method "angle" we can request, as the name says the relative angle: angle ([px, [py, [intertX, [intertY]]]]) : Number

Example on requesting angle for the myVector3:

>>> myVector3.angle();

Would return us a numeric value as follows:


And let's try one more operation with the "subtract" method. With it we can get the difference between two vectors:

>>> subtracted = myVector3.subtract(myVector1);

Would return us:

Object { x=20, y=20, z=20}

Feel free to try the other methods too, used in a similar manner.

Description of the angle method:

angle ([px, [py, [intertX, [intertY]]]]) : Number
Returns the angle of this vector in decimal degree to the given point within a
coordinate system that goes possitive to top/right.
For screen coordinates the Y-axis shall be inverted. For a normalized vector
the method can be called without parameters to return it's normalized angle.
{Number} [px]: The x-coordinate of the point to which the angle shall be calculated, if not given zero is used.
{Number} [py]: The y-coordinate of the point to which the angle shall be calculated, if not given zero is used.
{Boolean} [intertX]: If given and true, the x-axis is inverted, therefore the coordinates are increasing to the left and decreasing to the right.
{Boolean} [intertY]: If given and true, the y-axis is inverted, therefore the coordinates are increasing to the bottom and decreasing to the top.
{Number} The angle of this vector in degree, relative to the given coordinate.

Tested with

  • Opera 5.0.5
  • Firefox 5.0
86 page views in the last 30 days.