亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? refine.m

?? 一個功能強大的非結構網格劃分程序,可實現網格的自動剖分,及局部加密與質量控制
?? M
字號:
function [p,t,f] = refine(p,t,ti,f)

%  REFINE: Refine triangular meshes.
%
% Quadtree triangle refinement is performed, with each triangle split into
% four sub-triangles. The new triangles are created by joining nodes
% introduced at the edge midpoints. The refinement is "quality" preserving,
% with the aspect ratio of the sub-triangles being equal to that of the
% parent.
%
%  UNIFORM REFINEMENT:
%
%  [p,t] = refine(p,t);
%
%  p : Nx2 array of nodal XY coordinates, [x1,y1; x2,y2; etc]
%  t : Mx3 array of triangles as indices, [n11,n12,n13; n21,n22,n23; etc]
%
%  NON-UNIFORM REFINEMENT:
%
% Non-uniform refinement can also be performed by specifying which
% triangles are to be refined. Quadtree refinement is performed on
% specified triangles. Neighbouring triangles are also refined in order to
% preserve mesh compatibility. These triangles are refined using
% bi-section.
%
%  [p,t] = refine(p,t,ti);
%
%  ti : Mx1 logical array, with Ti(k) = TRUE if kth triangle is to be
%       refined
%
% Functions defined on the nodes in P can also be refined using linear
% interpolation through an extra input:
%
%  [p,t,f] = refine(p,t,ti,f);
%
%  f : NxK array of nodal function values. Each column in F corresponds to
%      a dependent function, F(:,1) = F1(P), F(:,2) = F2(P), etc.
%
% It is often useful to smooth the refined mesh using SMOOTHMESH. Generally
% this will improve element quality.
%
% Example:
%
%   [p,t] = refine(p,t,ti);
%
% See also SMOOTHMESH, MESH2D

%   Darren Engwirda : 2007
%   Email           : d_engwirda@hotmail.com
%   Last updated    : 08/07/2007 with MATLAB 7.0

if nargin<=4
   gotF = false;
   if (nargin<=2) || isempty(ti)                                           % Uniform refinement
      ti = true(size(t,1),1);
      if nargin<2
         error('Wrong number of inputs');
      end
   end
else
   gotF = true;
   if nargin>4
      error('Wrong number of inputs');
   end
end
if (gotF&&(nargout>3)) || (~gotF&&(nargout>2))
   error('Wrong number of outputs');
end
if numel(ti)~=size(t,1)
   error('Ti must be an Mx1 array');
end
if gotF && ((size(f,1)~=size(p,1)) || (ndims(f)>2))
   error('F must be an NxK array');
end

% Ensure we start with a consistent mesh
if gotF
   [p,t,f] = fixmesh(p,t,f);
else
   [p,t] = fixmesh(p,t);
end

% Edge connectivity
numt = size(t,1);
vect = 1:numt;
e = [t(:,[1,2]); t(:,[2,3]); t(:,[3,1])];                                  % Edges - not unique
[e,j,j] = unique(sort(e,2),'rows');                                        % Unique edges
te = [j(vect), j(vect+numt), j(vect+2*numt)];                              % Unique edges in each triangle

split = false(size(e,1),1);
split(te(ti,:)) = true;                                                    % True for edges to be split

% Flag tri's to be split
nsplit = length(find(split));
while true
   split3 = sum(double(split(te)),2)>=2;                                   % True for tri's where we will split 3 edges
   split(te(split3,:)) = true;                                             % Update split - the split2 case was turned into
   new = length(find(split))-nsplit;                                       % a split3 case, setting new edges to be split
   if new==0
      break
   end
   nsplit = nsplit+new;
end
split1 = sum(double(split(te)),2)==1;                                      % True for tri's where we will split 1 edge

% New nodes
np = size(p,1);
pm = 0.5*(p(e(split,1),:)+p(e(split,2),:));                                % Split edge midpoints
p = [p; pm];

% Map E(SPLIT) to index PM
i = zeros(size(e,1),1);
i(split) = (1:nsplit)'+np;

% New tri's in the split3 case
tnew = t(~(split1|split3),:);
if any(split3)
   n1 = t(split3,1);
   n2 = t(split3,2);
   n3 = t(split3,3);
   n4 = i(te(split3,1));
   n5 = i(te(split3,2));
   n6 = i(te(split3,3));
   tnew = [tnew; n1,n4,n6; n4,n2,n5; n5,n3,n6; n4,n5,n6];
end

% New tri's in the split1 case
if any(split1)
   [row,col] = find(split(te(split1,:)));                                  % Find split edges in tri's

   N1 = col;                                                               % Transform so that the split is always between n1 & n2
   N2 = col+1;
   N3 = col+2;
   N2(N2>3) = N2(N2>3)-3;
   N3(N3>3) = N3(N3>3)-3;

   n1 = 0*N1;
   n2 = n1;
   n3 = n1;
   n4 = n1;

   split1 = find(split1);
   split1 = split1(row);
   for k = 1:length(col)
      n1(k) = t(split1(k),N1(k));
      n2(k) = t(split1(k),N2(k));
      n3(k) = t(split1(k),N3(k));
      n4(k) = i(te(split1(k),col(k)));
   end
   tnew = [tnew; n1,n4,n3; n4,n2,n3];
end
t = tnew;

% Linear interpolation to new nodes
if gotF
   f = [f; 0.5*(f(e(split,1),:)+f(e(split,2),:))];
end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国av一区二区三区四区| 精品一区二区三区免费视频| 成人av资源在线观看| 欧美精品欧美精品系列| 亚洲国产精品一区二区久久| 色综合久久久久久久久| 国产精品美女久久久久久久久久久| 青青青爽久久午夜综合久久午夜| 欧美精品日韩精品| 久久电影国产免费久久电影| 久久久久久久久蜜桃| 美国一区二区三区在线播放| 欧美高清dvd| 国产精品亚洲第一区在线暖暖韩国| 日韩一区和二区| 东方aⅴ免费观看久久av| 中文字幕乱码亚洲精品一区 | 成人中文字幕合集| 亚洲人成在线播放网站岛国| 欧美视频一区在线观看| 天堂久久一区二区三区| 亚洲国产精品国自产拍av| av资源网一区| 全国精品久久少妇| 中文字幕在线免费不卡| 正在播放亚洲一区| 99vv1com这只有精品| 精品视频色一区| 亚洲18女电影在线观看| 精品嫩草影院久久| 欧美一区二区三区的| 欧美体内she精视频| 在线亚洲一区观看| 精品视频在线免费| 欧美大片在线观看一区二区| 欧美精品少妇一区二区三区| 欧美一区二区在线播放| 久久久99久久| 精品欧美一区二区在线观看| 在线精品国精品国产尤物884a| 处破女av一区二区| 色综合久久久久| 欧美日韩视频在线观看一区二区三区 | 蜜桃传媒麻豆第一区在线观看| 国产精品区一区二区三| 亚洲综合免费观看高清完整版在线 | 国产激情视频一区二区三区欧美 | 中文成人综合网| 国产性天天综合网| 精品乱码亚洲一区二区不卡| 色噜噜狠狠成人网p站| 成人污视频在线观看| 不卡欧美aaaaa| 国产精品原创巨作av| 国产一区二区三区高清播放| 成人免费黄色在线| 欧美精品粉嫩高潮一区二区| 欧美午夜电影一区| 精品粉嫩超白一线天av| 精品国产亚洲一区二区三区在线观看| 欧美电影免费观看高清完整版在线 | 一级日本不卡的影视| 精彩视频一区二区三区| 欧美日韩视频一区二区| 中文字幕的久久| 久久国产精品99精品国产| 欧美精品vⅰdeose4hd| 亚洲视频一二三| 欧美精品电影在线播放| 青青草国产精品97视觉盛宴| 日韩一区二区三区四区| 狠狠色2019综合网| 日本一区二区三区国色天香 | 久久国产三级精品| 99久久综合色| 久久99精品国产麻豆婷婷| 精品成人一区二区三区四区| www.av精品| 国产激情91久久精品导航| 三级成人在线视频| 亚洲乱码中文字幕综合| 精品久久久久香蕉网| 欧美视频一区二区| 色婷婷av一区二区三区之一色屋| 99久久国产免费看| 亚洲综合免费观看高清完整版 | 开心九九激情九九欧美日韩精美视频电影| 青青草国产精品97视觉盛宴| 91啪亚洲精品| 亚洲猫色日本管| 欧美特级限制片免费在线观看| 亚洲精品免费视频| 91成人在线免费观看| 亚洲一区二区三区视频在线播放 | 91美女福利视频| 亚洲美女淫视频| 欧美色电影在线| 国产一区二区三区久久久| 国产婷婷色一区二区三区| 国产精品亚洲视频| 夜夜爽夜夜爽精品视频| 日韩久久久精品| 色婷婷精品久久二区二区蜜臀av | 丝袜国产日韩另类美女| 精品人伦一区二区色婷婷| 九九视频精品免费| 亚洲国产成人在线| 精品国产免费一区二区三区四区 | 亚洲影视在线播放| 色综合天天综合给合国产| 亚洲在线一区二区三区| 日韩女优电影在线观看| 欧美三级日韩三级| 国产精品免费久久久久| 美脚の诱脚舐め脚责91| 另类小说图片综合网| 青青草成人在线观看| 视频一区国产视频| 日韩国产在线观看| 免费成人av资源网| 久久电影网站中文字幕| 国产另类ts人妖一区二区| 国产精品1区2区3区在线观看| 国产在线视视频有精品| 成人午夜免费视频| 91麻豆精东视频| 欧美日韩免费在线视频| 91麻豆精品91久久久久同性| 日韩欧美亚洲另类制服综合在线| 欧美成人精品高清在线播放| 久久女同精品一区二区| 中文字幕中文字幕一区| 一区二区三区丝袜| 男女性色大片免费观看一区二区| 91精品国产一区二区三区蜜臀| 色综合久久中文综合久久牛| 成人免费看片app下载| 美女精品自拍一二三四| 日日夜夜精品视频天天综合网| 国产精品高潮久久久久无| 精品国产一区二区在线观看| 欧美一区二区三区在线视频 | 日韩欧美一二三| 日本一区二区成人在线| 久久综合中文字幕| 中文字幕成人在线观看| 亚洲一区二区三区四区不卡| 久国产精品韩国三级视频| 成人av午夜电影| 欧美日韩在线播放三区| 久久久99精品久久| 国产精品麻豆99久久久久久| 亚洲卡通欧美制服中文| av高清久久久| 91久久精品日日躁夜夜躁欧美| 日韩一区二区不卡| 久久久久久99久久久精品网站| 久久精品欧美一区二区三区麻豆 | 欧美影院一区二区| 91啪九色porn原创视频在线观看| 精品99久久久久久| 国产日韩欧美精品综合| 中文字幕一区二区三区不卡在线| 天堂成人免费av电影一区| 成人精品视频一区二区三区| 日韩一卡二卡三卡| 一二三区精品福利视频| 国产精品18久久久久久久久 | 亚洲日本一区二区三区| 成人手机电影网| 日韩精品在线一区二区| 伊人开心综合网| 91久久国产综合久久| 欧美国产日韩在线观看| 久久精品免费看| 欧美中文字幕久久| 亚洲人快播电影网| 色综合网色综合| 国产成人亚洲精品青草天美| 久久精工是国产品牌吗| 在线影院国内精品| 国产精品第一页第二页第三页| 久久福利资源站| 欧美大尺度电影在线| 亚洲国产精品精华液网站| 色综合一区二区| 中文字幕一区二区三区在线观看 | 欧美在线观看视频在线| 日本一区二区三级电影在线观看 | 91美女视频网站| 国产精品久久久久7777按摩 | 精品无码三级在线观看视频| 91麻豆精品国产91久久久久久久久| 亚洲免费观看高清| 91婷婷韩国欧美一区二区| 国产精品视频第一区| 成人午夜视频网站| 亚洲欧洲精品一区二区精品久久久| 国产成人免费视频网站| 久久综合久久久久88|