科创数模树模城市微小区地图对应数据txt_第1页
科创数模树模城市微小区地图对应数据txt_第2页
科创数模树模城市微小区地图对应数据txt_第3页
科创数模树模城市微小区地图对应数据txt_第4页
科创数模树模城市微小区地图对应数据txt_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

line_number=1;pointnumber=index_list=i=whiletline=ifstr2num(tline(1))==0pointnumber=0;data.X(line_number)=str2num(tline(1:21));line_number=line_number+1;pointnumber=pointnumber+1;ift=index_list=forindex_list=holdon;t=t+clearallcloseall;tp= tp=tp+cot((pi-a2+a1)/2/n).*F(k*L*2*(cos((2*pi*n*N1-a2+a1)/2)).^2);tp=tp-cot((pi+a2+a1)/2/n).*F(k*L*2*(cos((2*pi*n*N2-a2-a1)/2)).^2);tp=tp-cot((pi-a2-a1)/2/n).*F(k*L*2*(cos((2*pi*n*N1-a2-a1)/2)).^2);symstx=xall(i);ifelseifx>10elseif(x>=0.001)&&(x<=10);1111111111111-111111%[500;200]开始,(7次以内clearallN=z_end=[300;350];%接收点fori=1:N%对于每个角度tht=2*pi/N*i;path{i}=N_rflzeros(1,2);%while f_seek_intersec(z_bgn,tht,rec_seg_y,'row'); f_seek_intersec(z_bgn,tht,rec_seg_x,'clm');ifdistance_y<distance_xintersec=intersec_y;typ_rfl=typ_rfl_y;

intersec=intersec_x;typ_rfl=typ_rfl_x;clearilne_min_yintersec_ytheta_intersec_ydistance_ytyp_rfl_yilne_min_xintersec_xtheta_intersec_xdistance_xtyp_rfl_xiftyp_rflN_rfl(typ_rfl)=N_rfl(typ_rfl)+

iff_ifExceedTimes(N_rfl)z_bgn=

tht=clearintersecp(:,1)=p(:,2)=ifj<7+1end;clearj;%hold end;clearifunction[ilne_min,intersec,theta_intersec,distance,typ_rfl]=f_seek_intersec(z,theta,segs,%z为起点,thetasegstyprow'时为横线段集合'clm'%纵线段时,90度计算,再做相应变换即可,因此首先只需考虑横theta0=ifstrcmp(typ,'clm')z=flipud(z);%theta_intersec=-distance=1e10;fori=ydfr=segs(i,1)-ifsegs(i,4)*sin(theta)<0&&sin(theta)*ydfr>%外法方向与射线方向相反,intersec=z(1)-

intersec=z(1)+if(intersec-segs(i,2))*(intersec-segs(i,3))<=0%若交点段端点中间%?考虑绕射时,须改disnow=(intersec-z(1))^2+ydfr^2;ifdisnow<distanceilne_min=intersec_min= distance=disnow;

if1

typ_rfl1;%typ_rfl2;%clearend;cleartheta_intersec=pi-theta0;%clear

theta_intersec=-theta0;%clearilne_min=-ifsin(theta)>ybiankuang=

ybiankuang=ifstrcmp(typ,'clm')intersec=z(1)-

intersec=z(1)+

typ_rfl=0;intersec=intersec=rec_seg_y=load('SegY.txt');rec_seg_x=load('SegX.txt');rec_seg_x=sortrows(rec_seg_x,1);if_E=0;ifN(1)>7+1||N(2)>if_E=%%close%p_bgnz_end之间,n_mostrfl%p_bgn=%z_end=%z_end=%n_mostrfl=%N=Np_bgn射出的均匀射线的条数[rec_seg_y,rec_seg_x]=f_rec_seg();eps_frl=1;fl_rec_Nrfl=fopen('Rec_Nrfl.txt','w');if_success=zeros(N,1);Nrfl_success=[];fori1:N%z_bgn=p_bgn;tht0=2*pi/N*i;tht=tht0;N_rfl=0;%反射次数while1 f_seek_intersec(z_bgn,tht,rec_seg_y,'row',z_end,eps_frl); f_seek_intersec(z_bgn,tht,rec_seg_x,'clm',z_end,eps_frl);ifdistance_y<ilne_min=[1;ilne_min_y];%注意:ilne_min

intersec=intersec_y;typ_rfl=typ_rfl_y;ilne_min=[2;ilne_min_x];intersec=intersec_x;typ_rfl=typ_rfl_x;clearilne_min_yintersec_ytheta_intersec_ydistance_ytyp_rfl_yilne_min_xintersec_xtheta_intersec_xdistance_xtyp_rfl_xswitchtyp_rflcase1%此时已经到达终点,if_success(i)=1;case0caseN_rflN_rfl1;case2%衍射

z_bgn=intersec;clearintersecforj=1:size(path{i},2)-1p(:,2)=ifj<n_mostrflend;clearj;hold%%forj=1:size(path{i},2)-1p(:,2)=ifj<n_mostrflend;clear hold Nrfl_success(end+1)=N_rfl; %pauseend;clearifunction[ilne_min,intersec,theta_intersec,distance,typ_rfl]=f_seek_intersec(p_bgn,theta,segs,typ,p_end,eps_ys)%p_bgn为起点,thetasegs的最近交点以及反射线的角typrow'时为横线段集合'clm'%纵线段时,90度计算,再做相应变换即可,theta0theta;z=p_bgn;ifstrcmp(typ,'clm')z=flipud(z);%theta_intersec=-distance=1e10;no_seg_ys=fori=ydfr=segs(i,1)-ifsegs(i,4)*sin(theta)<0&&sin(theta)*ydfr>%外法方向与射线方向相反,intersec=z(1)-

intersec=z(1)+if(intersec-segs(i,2))*(intersec-segs(i,3))<0%若交点段端点中disnow=(intersec-z(1))^2+%记录更近的交点所ilne_min=i;distance=disnow;%如果交点太靠端点,不考虑为反射现象,但需单独记录该线段的编号,因为ifabs(intersec-segs(i,2))<eps_ys||abs(intersec-segs(i,3))<eps_ysno_seg_ys=[no_seg_ys,i]; if typ_rfl1;% typ_rfl2;% clear

theta_intersec=pi-theta0;%cleartheta_intersec_mintheta_intersec=-theta0;%cleartheta_intersec_minilne_min=-ifsin(theta)>ybiankuang=

ybiankuang=ifstrcmp(typ,'clm')intersec=z(1)-

intersec=z(1)+

typ_rfl=0;typ_rfl=1;%判断最近交点处是否为衍射现象,若是,typ_rfl=2;intersec=%%p_endp_bgnintersec之间,p_endscl=(p_end-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论