Example #1
0
    def test_csv2building_polygons(self):
        """test_csv2building_polygons
        """
        
        path = get_pathname_from_package('anuga.shallow_water')                
        testfile = os.path.join(path, 'tests', 'data', 'polygon_values_example.csv')                

        polygons, values = load_csv_as_building_polygons(testfile, 
                                                 floor_height=3)

        assert len(polygons) == 7, 'Must have seven polygons'
        assert len(values) == 7, 'Must have seven values'
            
        # Known floor values
        floors = {'1': 6, '2': 0, '3': 3, '4': 6, '5': 0, '8': 3, '9': 3}
        
                
        for id in ['1', '2', '3', '4', '5' ,'8' ,'9']:
            assert id in polygons.keys()
            assert id in values.keys()            

            assert float(values[id]) == float(floors[id])
Example #2
0
                        filename=project.combined_elevation+'.pts',
                        use_cache=True,
                        verbose=True,
                        alpha=project.alpha)
    Stage = domain.quantities['stage']
    Elev  = domain.quantities['elevation']
    
    domain.set_quantity('stage', 0.8, use_cache=False, verbose=True)
    
    

    if project.use_buildings:
        # Add buildings from file
        log.critical('Reading building polygons')
        
        building_polygons, building_heights = load_csv_as_building_polygons(project.building_polygon, floor_height=3.)
        #clipping_polygons=project.building_area_polygons)

        log.critical('Creating %d building polygons' % len(building_polygons))
        def create_polygon_function(building_polygons, geo_reference=None):
            L = []
            for i, key in enumerate(building_polygons):
                if i%100==0: log.critical(i)
                poly = building_polygons[key]
                elev = building_heights[key]
                L.append((poly, elev))
                
                buildings = anuga.Polygon_function(L, default=0.0,
                                             geo_reference=geo_reference)
            return buildings
Example #3
0
    domain.set_quantity('elevation',
                        filename=project.combined_elevation + '.pts',
                        use_cache=True,
                        verbose=True,
                        alpha=project.alpha)
    Stage = domain.quantities['stage']
    Elev = domain.quantities['elevation']

    domain.set_quantity('stage', 0.8, use_cache=False, verbose=True)

    if project.use_buildings:
        # Add buildings from file
        log.critical('Reading building polygons')

        building_polygons, building_heights = load_csv_as_building_polygons(
            project.building_polygon, floor_height=3.)
        #clipping_polygons=project.building_area_polygons)

        log.critical('Creating %d building polygons' % len(building_polygons))

        def create_polygon_function(building_polygons, geo_reference=None):
            L = []
            for i, key in enumerate(building_polygons):
                if i % 100 == 0: log.critical(i)
                poly = building_polygons[key]
                elev = building_heights[key]
                L.append((poly, elev))

                buildings = anuga.Polygon_function(L,
                                                   default=0.0,
                                                   geo_reference=geo_reference)