Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Topic: Intersection between two cones
Replies: 6   Last Post: Feb 7, 2013 4:36 AM

 Messages: [ Previous | Next ]
 Roja Posts: 6 Registered: 4/16/12
Re: Intersection between two cones
Posted: Feb 7, 2013 2:47 AM

"Bill Whiten" <W.Whiten@uq.edu.au> wrote in message <keteb4\$gmc\$1@newscl01ah.mathworks.com>...
> "Doctor61" wrote in message <ket0to\$214\$1@newscl01ah.mathworks.com>...
> > I have two 3d circles (centre coordiantes and radii) with their normals passing through origin. If you consider the origin to be the vertex of a right cone having the circle as the base, how can I determine if there is an intersection between these cones?
>
> if centre is x1,y1,z1 and radius r set d^2=x1^2+y1^2+z1^2
> Cone is intersection of spheres a^2 (d^2+r^2)=x^2+y^2+z^2 and
> a^2 r^2 = (a x1-x)^2+(a y1-y)^2+(a z1-z)^2
>
> Eliminate a to get equation of cone:
> x^2+y^2+z^2 = (r^2+d^2) (x1 x+y1 y+z1 z)^2/d^4
> (check this)
>
> Set x^2+y^2+z^2=1 and solve for points on two cones and this sphere.
> E.g. Solve linear equations (1= (r^2+d^2) (x1 x+y1 y+z1 z)^2/d^4 etc)
> for x and y then substitute into x^2+y^2+z^2=1 to get quadratic for z.
>
> Regards

Hi Bruno,

I have actually thought about something like what you described, but I don't know how to implement it in matlab. I thought I can find the two circles at the same distance from origin and see if they have intersections. But I don't know how to do that. Based on what I have found so far, if t is the parameter then any point P on the circle is given by:
P=Rcos(t)u? +Rsin(t)n? ×u? +c
Where u is a unit vector from the centre of the circle to any point on the circumference; R is the radius; n is a unit vector perpendicular to the plane and c is the centre of the circle.

So if I have u1,n1,c1 and u2,n2 and c2, then how can I find the intersection?

Date Subject Author
2/6/13 Roja
2/6/13 Bruno Luong
2/6/13 Bill Whiten
2/7/13 Roja
2/7/13 Bruno Luong
2/7/13 Roja
2/7/13 Bill Whiten