在线时间 3 小时 最后登录 2016-7-29 注册时间 2016-6-29 听众数 12 收听数 0 能力 0 分 体力 97 点 威望 0 点 阅读权限 20 积分 44 相册 0 日志 0 记录 0 帖子 23 主题 18 精华 0 分享 0 好友 2
升级 41.05%
TA的每日心情 慵懒 2016-7-13 15:45
签到天数: 6 天
[LV.2]偶尔看看I
自我介绍 好还哦好海鸥
clear all;clc
load samp22.txt
idx=find(samp22(:,4)==1);
pointS=samp22(idx,1:3);
data.x=pointS(:,1);
data.y=pointS(:,2);
data.z=pointS(:,3);
nPoint=length(data.x);
pointS=[data.x';data.y';data.z'];ch=convhull(data.x,data.y);
area=polyarea(data.x(ch,1),data.y(ch,1));
densityHorizontal=nPoint/area;
xDis=1/sqrt(densityHorizontal);
xDis=ceil(xDis*10)/10;
yDis=xDis;
ch1=convhull(data.x,data.z);
area1=polyarea(data.x(ch,1),data.z(ch,1));
densityHorizontal1=nPoint/area1;
xDis1=1/sqrt(densityHorizontal1);
xDis1=ceil(xDis1*10)/10;
ch2=convhull(data.y,data.z);
area2=polyarea(data.y(ch,1),data.z(ch,1));
densityHorizontal2=nPoint/area2;
yDis1=1/sqrt(densityHorizontal2);
yDis1=ceil(yDis1*10)/10;
zDis=min(xDis1,yDis1);%%%取y,z和x,z之中比较小的
min_x=min(pointS(1, ); max_x=max(pointS(1, );
min_y=min(pointS(2, ); max_y=max(pointS(2, );
min_z=min(pointS(3, ); max_z=max(pointS(3, );
Column=ceil((max_x-floor(min_x))/xDis);%列(j)
Row = ceil((max_y-floor(min_y))/yDis);%行 (i)
Height= ceil((max_z-floor(min_z))/zDis);%高(k)
elementMesh=zeros(Row,Column,Height);
X=pointS(1, ; Y=pointS(2, ; Z=pointS(3, ;
>> for i=1:nPoint
xColumn=ceil((X(i)-floor(min_x))/xDis);
yRow=ceil((Y(i)-floor(min_y))/yDis);
zHeight=ceil((Z(i)-floor(min_z))/zDis);
elementMesh(yRow,xColumn,zHeight)=1;
end
clear i
出现这样的错误:
??? Attempted to access elementMesh(2,0,21); index must be a positive integer or logical.
这是由于什么引起的,对别的数据没有事,但是对这组数据就出现这样的问题,麻烦大神指导一下!!
zan