I am attempting to write a java method which returns the height of an elliptic cone given a $(x, y)$ point within the base.
I have an elliptic cone centred at $(x_1, y_1)$, the major axis a, minor axis b and the height of the centre point h.
Given a point $(x_2, y_2)$ [assuming that the point is within the ellipse] how do I find the height of the cone's surface at $(x_2, y_2)$?
Thanks for your help
Jon
I don't know how to post diagrams so will have to ask you to draw your own.
Not quite sure if you said this but I am assuming the vertex of the cone is directly above the centre of the ellipse - if it's off-centre the problem will be rather more difficult.
Draw a cross section through the vertex and the points $(x_1,y_1)$ and $(x_2,y_2)$. You will see a triangle with two verticals - the larger one the height $h$ of the cone, the smaller one the height say $H$ that you want to calculate. Call the base of the triangle $r$ and the distance between the verticals $R$.
Hope this doesn't sound too complicated but as I said I don't know how to post diagrams.
By similar triangles, $$\frac{H}{r-R}=\frac{h}{r}\ .$$ Now we need to find $r$ and $R$. Draw another diagram showing your base ellipse centred at $(x_1,y_1)$ and the point of interest $(x_2,y_2)$. Draw a line from $(x_1,y_1)$ through $(x_2,y_2)$, intersecting the ellipse at $(x,y)$. Then $R$ is the distance between $(x_1,y_1)$ and $(x_2,y_2)$, given by $$R^2=(x_2-x_1)^2+(y_2-y_1)^2\ .$$ Also, $r$ is a factor say $\lambda$ times $R$. To find $\lambda$ we have from the diagram $$x-x_1=\lambda(x_2-x_1)\quad\hbox{and}\quad y-y_1=\lambda(y_2-y_1)\ .$$ Substituting into the equation of the ellipse $$\frac{(x-x_1)^2}{a^2}+\frac{(y-y_1)^2}{b^2}=1$$ gives $$\lambda^2\Bigl(\frac{(x_2-x_1)^2}{a^2}+\frac{(y_2-y_1)^2}{b^2}\Bigr)=1\ .$$ From this you can find $\lambda$ (clearly positive) and then you have everything.