# Why would Cesium.Cartesian3.distance() be returning a NaN?

1. A concise explanation of the problem you’re experiencing.

Trying to compute the distance between two Cartesian3 points using Cesium.Cartesian3.distance() but returning NaN

2. A minimal code example. If you’ve found a bug, this helps us reproduce and repair it.

``````    clickPositions = removeDup(clickPositions); // Removes any duplicate values in the clickPositions array

// Adds an if loop to check there are only two points in the array
if (clickPositions.length = 2) {

var distance = (new Cesium.Cartesian3.fromArray(clickPositions[0]), new Cesium.Cartesian3.fromArray(clickPositions[1]));
console.log("Distance: " + distance);
confirm("First point is: " + clickPositions[0] +
"\nSecond Point is: " + clickPositions[1] +
"\nDistance: " + distance);
} else {
confirm("You have clicked on more than two points");
}
});
``````
``````
``````
``````[<img src="https://lh3.googleusercontent.com/-yMUc6waTxN8/WX9QksUsxBI/AAAAAAAAA4M/sgHGQJgc6Gc5KF40c6GjcapDFy3vC79hACLcBGAs/s320/Screen%2BShot%2B2017-07-31%2Bat%2B16.43.26.png" border="0" width="320" height="132">](https://lh3.googleusercontent.com/-yMUc6waTxN8/WX9QksUsxBI/AAAAAAAAA4M/sgHGQJgc6Gc5KF40c6GjcapDFy3vC79hACLcBGAs/s1600/Screen%2BShot%2B2017-07-31%2Bat%2B16.43.26.png)
``````
``````
``````

3. Context. Why do you need to do this? We might know a better way to accomplish your goal.

Trying to measure the distance between two points, in order to measure the height of a building for example.

4. The Cesium version you’re using, your operating system and browser.

Cesium ver: 1.34, OS: MacOS Sierra, Browser: Chrome

Any help would be appreciated.

Thanks,

Chris

Hi Chris,

In the code sample you’ve supplied, you are not actually using the function. Here’s the documentation if needed: https://cesiumjs.org/Cesium/Build/Documentation/Cartesian3.html#.distance

Thanks,

Gabby