def test_floor_area(self): self.df_buildings['area'] = self.df_buildings.geometry.area self.df_buildings['floor_area'] = mm.floor_area( self.df_buildings, 'height', 'area') check = self.df_buildings.geometry[0].area * ( self.df_buildings.height[0] // 3) assert self.df_buildings['floor_area'][0] == check
def test_floor_area_array(self): area = self.df_buildings.geometry.area height = np.linspace(10., 30., 144) self.df_buildings['floor_area'] = mm.floor_area( self.df_buildings, height, area) check = self.df_buildings.geometry[0].area * ( self.df_buildings.height[0] // 3) assert self.df_buildings['floor_area'][0] == check
def setup_method(self): test_file_path = mm.datasets.get_path('bubenec') self.df_buildings = gpd.read_file(test_file_path, layer='buildings') self.df_streets = gpd.read_file(test_file_path, layer='streets') self.df_tessellation = gpd.read_file(test_file_path, layer='tessellation') self.df_streets['nID'] = mm.unique_id(self.df_streets) self.df_buildings['height'] = np.linspace(10., 30., 144) self.df_tessellation['area'] = self.df_tessellation.geometry.area self.df_buildings['area'] = self.df_buildings.geometry.area self.df_buildings['fl_area'] = mm.floor_area(self.df_buildings, 'height') self.df_buildings['nID'] = mm.get_network_id(self.df_buildings, self.df_streets, 'uID', 'nID') self.df_buildings, self.df_tessellation, self.blocks = mm.blocks( self.df_tessellation, self.df_streets, self.df_buildings, 'bID', 'uID')
def test_floor_area_missing_col(self): with pytest.raises(KeyError): self.df_buildings['floor_area'] = mm.floor_area( self.df_buildings, 'height', 'area')
def test_courtyard_missing_col(self): with pytest.raises(KeyError): self.df_buildings['courtyard_area'] = mm.floor_area( self.df_buildings, 'area')