MATLAB Answers

How to define a cone with an irregular basis

3 ビュー (過去 30 日間)
matteo
matteo 2014 年 11 月 21 日
編集済み: matteo 2014 年 11 月 21 日
Hi, I have a problem I really don't know how to solve. I have a series of point [X,Y] (with lengthX=lengthY=2000) that define a closed curve in the xy plan (z=0) and a point in a coordinate (x,y,z>0).
How can I define a volume or/and a surface from this two inputs? it must be a sort of cone that has for basis the curve and for vertex the single point?
And after that I have to use something like inpolygon in order to know if others points I will enter are or aren't inside this cone volume.

  0 件のコメント

サインインしてコメントする。

回答 (1 件)

Roger Stafford
Roger Stafford 2014 年 11 月 21 日
Using your X and Y for points along the curve and (x0,y0,z0) for the "cone" vertex coordinates (with z0>0,) let (x,y,z) be coordinates of some point for which we wish to determine whether it lies inside the cone or not.
in = inpolygon(z0/(z0-z)*(x-x0)+x0,z0/(z0-z)*(y-y0)+y0,X,Y) & z<z0 & z>=0;
will be true if (x,y,z) is inside the cone. (I am assuming the cone stops at the x,y plane. Otherwise remove the z>=0 condition.)

  2 件のコメント

matteo
matteo 2014 年 11 月 21 日
hi thanks for your help but how can i plot all of this? Because I need to know if it's working. so I have to plot the cone and then the points.
matteo
matteo 2014 年 11 月 21 日
ps
my real problem is a little bit different, I have this 3d curve (X-Y-Z, I attached) and my point (the cone vertex) is
x0=3.838475517142584e+03
y0=-5.093829057940791e+03
z0=0

サインインしてコメントする。

Community Treasure Hunt

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

Start Hunting!

Translated by