source: issm/trunk/src/m/model/mesh/meshconvert.m@ 9732

Last change on this file since 9732 was 9732, checked in by Mathieu Morlighem, 14 years ago

Fixed numberofedges

File size: 1.4 KB
RevLine 
[3354]1function md=meshconvert(md,varargin)
2%CONVERTMESH - convert mesh to bamg mesh
3%
4% Usage:
5% md=meshconvert(md);
6% md=meshconvert(md,index,x,y);
7
8if nargin~=1 & nargin~=4,
9 help meshconvert
10 error('meshconvert error message: bad usage');
11end
12
13if nargin==1,
14 x=md.x;
15 y=md.y;
16 index=md.elements;
17else
18 x=varargin{1};
19 y=varargin{2};
20 index=varargin{3};
21end
22
23%call Bamg
24[bamgmesh_out bamggeom_out]=BamgConvertMesh(index,x,y);
25
26% plug results onto model
[9614]27md.private.bamg=struct();
28md.private.bamg.mesh=bamgmesh(bamgmesh_out);
29md.private.bamg.geometry=bamggeom(bamggeom_out);
[3354]30md.x=bamgmesh_out.Vertices(:,1);
31md.y=bamgmesh_out.Vertices(:,2);
32md.elements=bamgmesh_out.Triangles(:,1:3);
[5093]33md.edges=bamgmesh_out.IssmEdges;
[9714]34md.mesh.segments=bamgmesh_out.IssmSegments(:,1:3);
35md.mesh.segmentmarkers=bamgmesh_out.IssmSegments(:,4);
[3354]36
37%Fill in rest of fields:
[9719]38md.mesh.dimension=2;
[9725]39md.mesh.numberofelements=size(md.elements,1);
40md.mesh.numberofvertices=length(md.x);
[9732]41md.mesh.numberofedges=size(md.edges,1);
[9725]42md.z=zeros(md.mesh.numberofvertices,1);
[9729]43md.mesh.vertexonbed=ones(md.mesh.numberofvertices,1);
[9725]44md.mask.vertexonwater=zeros(md.mesh.numberofvertices,1);
[9729]45md.mesh.vertexonsurface=ones(md.mesh.numberofvertices,1);
46md.mesh.elementonbed=ones(md.mesh.numberofelements,1);
47md.mesh.elementonsurface=ones(md.mesh.numberofelements,1);
[9725]48md.mesh.vertexonboundary=zeros(md.mesh.numberofvertices,1); md.mesh.vertexonboundary(md.mesh.segments(:,1:2))=1;
Note: See TracBrowser for help on using the repository browser.