File Exchange

image thumbnail

Cone-plane intersection

version (5.9 KB) by Sylvain Calinon
Compute the intersection of a cone and a plane, where the result is represented as an ellipse


Updated 24 Jul 2009

View Version History

View License

This function computes the intersection of a cone and a plane, where the result is represented either as an ellipse or in the form of a Gaussian distribution.

This algorithm can be used to extract probabilistically information concerning gazing or pointing direction. Indeed, by representing a visual field as a cone and representing a table as a plane, the Gaussian distribution can be used to compute the probability that one object on the table is observed/pointed by the user.

The source code is an implementation of the algorithms described in the book "Robot Programming by Demonstration: A Probabilistic Approach", EPFL/CRC Press (more information on

Cite As

Sylvain Calinon (2021). Cone-plane intersection (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (4)

James Farrell


anyone advise on how to normalize the coneDir vector?

Val Schmidt

I want to comment on my own comment The author of this package emailed me directly, pointing out that I had failed to normalize the coneDir vector.


The error was mine!


Gavriel Aminov

The very thing I need! I had a need of a routine that calculates the intersection of antenna beam with the terrain surface. This routine has helped me. Some more features I need in this routine are the next:
1) How do I model the cone of two different angles at its two axes - the axis of elevation and the axis of azimuth? Which parameters must be changed at the cone matrix in order to achieve such an "ellipsoid" cone?
2) How can I modulate the gain of the intersection instead of the modulation by PDF function? E.g. modulation by the sinc function (as is at the common antennas)?

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!