source: development/momentum_sink/create_buildings.py @ 2322

Last change on this file since 2322 was 2322, checked in by nicholas, 19 years ago

fixed import statement. running in command line produces a .tsh file

File size: 1.5 KB
Line 
1
2
3
4# add inundation dir to your pythonpath
5from pmesh.mesh import Mesh
6from coordinate_transforms.geo_reference import Geo_reference
7
8
9def create_mesh(maximum_triangle_area,
10                mesh_file=None,
11                triangles_in_name = False):
12    """
13    triangles_in_name, if True is used to append the number of
14    triangles in the mesh to the mesh file name.
15    """
16    # create a mesh instance
17    m = Mesh()
18
19    #
20    outer_polygon = [[0,0],[100,0],[100,100],[0,100]]
21    m.add_region_from_polygon(outer_polygon, tags={'wall':[0,1,2], 'wave':[3]})
22
23    # inner polygons
24    polygon = [[10,10],[20,10],[20,20],[10,20]]
25    m.add_hole_from_polygon(polygon, tags={'wall':[0,1,2,3]})
26
27    polygon = [[40,40],[50,40],[50,50],[40,50]]
28    m.add_hole_from_polygon(polygon, tags={'wall':[0,1,2,3]})
29
30    m.add_circle([20,70], 5, hole=True, tag='wall')
31    m.generate_mesh(maximum_triangle_area=maximum_triangle_area)
32    triangle_count = m.get_triangle_count()
33   
34    if mesh_file is None:   
35        return m, triangle_count
36    else:
37        if triangles_in_name is True:
38            mesh_file = mesh_file[:-4] + '_' + str(triangle_count) \
39                        + mesh_file[-4:]
40        m.export_mesh_file(mesh_file)
41        return mesh_file, triangle_count
42
43#-------------------------------------------------------------
44if __name__ == "__main__":
45    _, triangle_count = create_mesh(10,mesh_file="test.tsh")
46    print "triangle_count",triangle_count
Note: See TracBrowser for help on using the repository browser.