Obtaining 3-d polygon in Matlab, by picking points.
5 次查看(过去 30 天)
显示 更早的评论
I need to plot am extensive framework of 3d polygons in Matlab. putting point values and then drawing is a very cumbersome task. Is there any way that I can do this thing by either picking points in 3-d (like in paintbrush) ? Or any other alternate software and then export in matlab?
0 个评论
回答(3 个)
Shivaputra Narke
2014-2-2
NumOfPoints=10; hax=gca; axis([0 10 0 5]) [x y] =ginput(NumOfPoints); plot(x,y);
2 个评论
Shivaputra Narke
2014-2-2
Yes you can do it for 3-D also but you have to write 'ButtonDownFcn' for axes that you are going to use.That involves pretty much lengthy code.
for your second question that is viewing selected points...
use following code,
NumOfPoints=10; hax=gca; axis([0 10 0 5]) ; hold on; allX=zeros(1,NumOfPoints); allY=zeros(1,NumOfPoints); vertices=[]; for i=1:NumOfPoints [x y] =ginput(1); plot(x,y,'ro'); vertices=[vertices;x y]; end cla; plot(vertices(:,1),vertices(:,2));
Shivaputra Narke
2014-2-2
Hope this help you... use following code... function MainPlotPoly global POINTS POINTS=[]; hax=gca; axis([0 10 0 10 -5 5]) set(hax,'NextPlot','add'); grid on; set(hax,'ButtonDownFcn',@PlotPoly);
function PlotPoly(varargin)
global POINTS Cp=get(varargin{1},'CurrentPoint'); POINTS=[POINTS;Cp]; plot3(POINTS(:,1),POINTS(:,2),POINTS(:,3),'Marker','O');
0 个评论
Matt J
2014-2-2
编辑:Matt J
2014-2-2
You can use PLOTREGION, possibly in conjunction with VERT2LCON , if you don't know the polyhedron in inequality form.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!