Ask Your Question

Revision history [back]

What is the meaning of cv::Point::cross()?

I noticed in the headers that cv::Point has a .cross() method returning a double.

Had it returned a cv::Point3d, it would have made sense as the cross-product of two 2D homogeneous points with the last coefficient implicitly being set to 1 (in this case, if the 2 points were 2D points in the image plane then the results is the 2D line passing through them).
In fact, the result of cv::Point::cross() is actually the 3rd element of the 3D cross-product above.

What is the intent and/or geometric meaning of the existing method?

What is the meaning of cv::Point::cross()?

I noticed in the headers that cv::Point has a .cross() method returning a double.

Had it returned a cv::Point3d, it would have made sense as the cross-product of two 2D homogeneous points with the last coefficient implicitly being set to 1 (in this case, if the 2 points were 2D points in the image plane then the results is the 2D line passing through them).
In fact, the result of cv::Point::cross() is actually the 3rd element of the 3D cross-product above.

What is the intent and/or geometric meaning of the existing method?method?
More specifically, is there a projective interpretation for this value, given that 2D points are represented by 3-element vectors in projective space?