Homogenize unit tests and remove useless files

This commit is contained in:
Guille Gutierrez 2023-06-05 13:42:15 -04:00
parent 1819541a21
commit 8d3d1ac427
13 changed files with 37 additions and 517563 deletions

View File

@ -22,7 +22,6 @@ class TestCityMerge(TestCase):
""" """
self._example_path = (Path(__file__).parent / 'tests_data').resolve() self._example_path = (Path(__file__).parent / 'tests_data').resolve()
self._output_path = (Path(__file__).parent / 'tests_outputs').resolve() self._output_path = (Path(__file__).parent / 'tests_outputs').resolve()
self._weather_file = (self._example_path / 'CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').resolve()
self._executable = 'sra' self._executable = 'sra'
def _get_citygml(self, file): def _get_citygml(self, file):

View File

@ -264,7 +264,7 @@ class TestConstructionFactory(TestCase):
self._check_thermal_openings(thermal_boundary) self._check_thermal_openings(thermal_boundary)
self._check_surfaces(thermal_boundary) self._check_surfaces(thermal_boundary)
file_path = (self._example_path / 'concordia.geojson').resolve() file_path = (self._example_path / 'test.geojson').resolve()
self._city = GeometryFactory('geojson', self._city = GeometryFactory('geojson',
path=file_path, path=file_path,
height_field='citygml_me', height_field='citygml_me',

View File

@ -134,25 +134,25 @@ class TestGeometryFactory(TestCase):
""" """
Test geojson import Test geojson import
""" """
file = Path(self._example_path / '2000_buildings.geojson').resolve() file = Path(self._example_path / 'test.geojson').resolve()
city = GeometryFactory('geojson', city = GeometryFactory('geojson',
path=file, path=file,
height_field='building_height', height_field='citygml_me',
year_of_construction_field='ANNEE_CONS', year_of_construction_field='ANNEE_CONS',
aliases_field=['ID_UEV', 'CIVIQUE_DE', 'NOM_RUE'], aliases_field=['ID_UEV', 'CIVIQUE_DE', 'NOM_RUE'],
function_field='CODE_UTILI', function_field='CODE_UTILI',
function_to_hub=MontrealFunctionToHubFunction().dictionary).city function_to_hub=MontrealFunctionToHubFunction().dictionary).city
hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export() hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export()
for building in city.building_alias('01040584'): for building in city.building_alias('01002777'):
self.assertEqual('0', building.name, 'Wrong building name when looking for alias') self.assertEqual('1', building.name, 'Wrong building name when looking for alias')
self.assertEqual(14, len(city.building_alias('rue Sherbrooke Ouest (MTL+MTO+WMT)'))) self.assertEqual(8, len(city.building_alias('rue Sherbrooke Ouest (MTL+MTO+WMT)')))
self.assertEqual(1964, len(city.buildings), 'wrong number of buildings') self.assertEqual(17, len(city.buildings), 'wrong number of buildings')
def test_map_neighbours(self): def test_map_neighbours(self):
""" """
Test neighbours map creation Test neighbours map creation
""" """
file = 'neighbours.geojson' file = 'test.geojson'
city = self._get_city(file, 'geojson', city = self._get_city(file, 'geojson',
year_of_construction_field='ANNEE_CONS', year_of_construction_field='ANNEE_CONS',
@ -165,12 +165,24 @@ class TestGeometryFactory(TestCase):
info_lod1 = GeometryHelper.city_mapping(city, plot=False) info_lod1 = GeometryHelper.city_mapping(city, plot=False)
hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export() hub.exports.exports_factory.ExportsFactory('obj', city, self._output_path).export()
self.assertEqual(info_lod0, info_lod1) self.assertEqual(info_lod0, info_lod1)
for building in city.buildings: self.assertEqual(2, len(city.city_object('1').neighbours))
self.assertEqual(2, len(building.neighbours)) self.assertEqual(3, len(city.city_object('2').neighbours))
self.assertEqual(2, len(city.city_object('3').neighbours))
self.assertEqual(2, len(city.city_object('4').neighbours))
self.assertEqual(3, len(city.city_object('5').neighbours))
self.assertEqual(3, len(city.city_object('6').neighbours))
self.assertEqual(1, len(city.city_object('8').neighbours))
self.assertEqual(2, len(city.city_object('9').neighbours))
self.assertEqual(2, len(city.city_object('10').neighbours))
self.assertEqual(2, len(city.city_object('11').neighbours))
self.assertEqual(2, len(city.city_object('12').neighbours))
self.assertEqual(1, len(city.city_object('13').neighbours))
self.assertEqual(2, len(city.city_object('14').neighbours))
self.assertEqual(1, len(city.city_object('15').neighbours))
self.assertEqual(1, len(city.city_object('16').neighbours))
self.assertEqual(2, len(city.city_object('67').neighbours))
self.assertEqual(1, len(city.city_object('68').neighbours))
self.assertEqual('2', city.city_object('1').neighbours[0].name) self.assertEqual('12', city.city_object('8').neighbours[0].name)
self.assertEqual('3', city.city_object('1').neighbours[1].name) self.assertEqual('14', city.city_object('13').neighbours[0].name)
self.assertEqual('1', city.city_object('2').neighbours[0].name) self.assertEqual('14', city.city_object('15').neighbours[0].name)
self.assertEqual('3', city.city_object('2').neighbours[1].name)
self.assertEqual('1', city.city_object('3').neighbours[0].name)
self.assertEqual('2', city.city_object('3').neighbours[1].name)

View File

@ -39,8 +39,7 @@ class TestResultsImport(TestCase):
UsageFactory('nrcan', self._city).enrich() UsageFactory('nrcan', self._city).enrich()
def test_sra_import(self): def test_sra_import(self):
weather_file = (self._example_path / 'CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').resolve() ExportsFactory('sra', self._city, self._output_path).export()
ExportsFactory('sra', self._city, self._output_path, weather_file=weather_file, weather_format='epw').export()
sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve()
subprocess.run(['sra', str(sra_path)]) subprocess.run(['sra', str(sra_path)])
ResultFactory('sra', self._city, self._output_path).enrich() ResultFactory('sra', self._city, self._output_path).enrich()
@ -50,8 +49,7 @@ class TestResultsImport(TestCase):
self.assertIsNotNone(surface.global_irradiance) self.assertIsNotNone(surface.global_irradiance)
def test_meb_import(self): def test_meb_import(self):
weather_file = (self._example_path / 'CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').resolve() ExportsFactory('sra', self._city, self._output_path, weather_file='CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw', weather_format='epw').export()
ExportsFactory('sra', self._city, self._output_path, weather_file=weather_file, weather_format='epw').export()
sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve()
subprocess.run(['sra', str(sra_path)]) subprocess.run(['sra', str(sra_path)])
ResultFactory('sra', self._city, self._output_path).enrich() ResultFactory('sra', self._city, self._output_path).enrich()
@ -69,8 +67,7 @@ class TestResultsImport(TestCase):
def test_peak_loads(self): def test_peak_loads(self):
# todo: this is not technically a import # todo: this is not technically a import
weather_file = (self._example_path / 'CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').resolve() ExportsFactory('sra', self._city, self._output_path, weather_file='CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw', weather_format='epw').export()
ExportsFactory('sra', self._city, self._output_path, weather_file=weather_file, weather_format='epw').export()
sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve()
subprocess.run(['sra', str(sra_path)]) subprocess.run(['sra', str(sra_path)])
ResultFactory('sra', self._city, self._output_path).enrich() ResultFactory('sra', self._city, self._output_path).enrich()

View File

@ -16,6 +16,7 @@ from hub.exports.exports_factory import ExportsFactory
from hub.helpers.dictionaries import Dictionaries from hub.helpers.dictionaries import Dictionaries
from hub.imports.construction_factory import ConstructionFactory from hub.imports.construction_factory import ConstructionFactory
from hub.imports.geometry_factory import GeometryFactory from hub.imports.geometry_factory import GeometryFactory
from hub.imports.weather_factory import WeatherFactory
from hub.imports.results_factory import ResultFactory from hub.imports.results_factory import ResultFactory
from hub.imports.usage_factory import UsageFactory from hub.imports.usage_factory import UsageFactory
from hub.imports.energy_systems_factory import EnergySystemsFactory from hub.imports.energy_systems_factory import EnergySystemsFactory
@ -57,8 +58,8 @@ class TestSystemsFactory(TestCase):
""" """
ConstructionFactory('nrcan', self._city).enrich() ConstructionFactory('nrcan', self._city).enrich()
UsageFactory('nrcan', self._city).enrich() UsageFactory('nrcan', self._city).enrich()
weather_file = (self._example_path / 'CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').resolve() WeatherFactory('epw', self._city, file_name='CAN_PQ_Montreal.Intl.AP.716270_CWEC.epw').enrich()
ExportsFactory('sra', self._city, self._output_path, weather_file=weather_file, weather_format='epw').export() ExportsFactory('sra', self._city, self._output_path).export()
sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve() sra_path = (self._output_path / f'{self._city.name}_sra.xml').resolve()
subprocess.run(['sra', str(sra_path)]) subprocess.run(['sra', str(sra_path)])
ResultFactory('sra', self._city, self._output_path).enrich() ResultFactory('sra', self._city, self._output_path).enrich()
@ -112,4 +113,3 @@ class TestSystemsFactory(TestCase):
self.assertLess(0, building.cooling_consumption[cte.YEAR][0]) self.assertLess(0, building.cooling_consumption[cte.YEAR][0])
self.assertLess(0, building.domestic_hot_water_consumption[cte.YEAR][0]) self.assertLess(0, building.domestic_hot_water_consumption[cte.YEAR][0])
self.assertLess(0, building.onsite_electrical_production[cte.YEAR][0]) self.assertLess(0, building.onsite_electrical_production[cte.YEAR][0])
print(building.heating_consumption[cte.YEAR][0], building.cooling_consumption[cte.YEAR][0], building.domestic_hot_water_consumption[cte.YEAR][0], building.onsite_electrical_production[cte.YEAR][0])

View File

@ -130,7 +130,7 @@ class TestUsageFactory(TestCase):
""" """
Enrich the city with the usage information from nrcan and verify it Enrich the city with the usage information from nrcan and verify it
""" """
file = 'concordia.geojson' file = 'test.geojson'
file_path = (self._example_path / file).resolve() file_path = (self._example_path / file).resolve()
city = GeometryFactory('geojson', city = GeometryFactory('geojson',
path=file_path, path=file_path,

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,594 +0,0 @@
{
"type":"FeatureCollection",
"features":[
{
"type":"Feature",
"id":1,
"geometry":{
"type":"Polygon",
"coordinates":[
[
[
-73.580414175680588,
45.497641136608358
],
[
-73.580414175680588,
45.498641136608358
],
[
-73.581414175680588,
45.498641136608358
],
[
-73.581414175680588,
45.497641136608358
],
[
-73.580414175680588,
45.497641136608358
]
]
]
},
"properties":{
"OBJECTID_12":1,
"gml_id":"1340908",
"gml_parent":"fme-gen-5fa2a82b-c38e-4bf0-9e8f-10a47b9f64f7",
"citygml_ta":"http://www.opengis.net/citygml/building/2.0",
"citygml_fe":"cityObjectMember",
"citygml__1":" ",
"citygml__2":" ",
"gml_descri":" ",
"gml_name":" ",
"citygml_cr":" ",
"citygml_te":" ",
"externalRe":" ",
"external_1":" ",
"external_2":" ",
"citygml_ge":" ",
"citygml_re":" ",
"citygml__3":" ",
"citygml_ap":" ",
"citygml_cl":" ",
"citygml__4":" ",
"citygml_fu":" ",
"citygml__5":" ",
"citygml_us":" ",
"citygml__6":" ",
"citygml_ye":" ",
"citygml__7":" ",
"citygml_ro":" ",
"citygml__8":" ",
"citygml_me":21.824000000000002,
"citygml__9":"#m",
"citygml_st":" ",
"citygml_10":" ",
"citygml_11":" ",
"citygml_12":" ",
"citygml_13":" ",
"citygml_14":" ",
"citygml_ou":" ",
"citygml_in":" ",
"citygml_bo":" ",
"citygml_le":" ",
"citygml_15":" ",
"citygml_co":" ",
"citygml_ad":" ",
"Volume":"2783.169",
"parcelle":" ",
"OBJECTID":778,
"gml_id_1":"ebc7f916-d094-4de0-8c35-fc18eb8622f2",
"gml_pare_1":"1340908",
"citygml_16":"http://www.opengis.net/citygml/building/2.0",
"citygml_17":"boundedBy",
"citygml_18":" ",
"citygml_19":" ",
"gml_desc_1":" ",
"gml_name_1":" ",
"citygml_20":" ",
"citygml_21":" ",
"external_3":" ",
"external_4":" ",
"external_5":" ",
"citygml_22":" ",
"citygml_23":" ",
"citygml_24":" ",
"citygml_25":" ",
"citygml_26":" ",
"citygml_op":" ",
"Area":"229.287",
"FID_":0,
"Join_Count":2,
"TARGET_FID":779,
"gml_id_12":"1340908",
"gml_pare_2":"fme-gen-5fa2a82b-c38e-4bf0-9e8f-10a47b9f64f7",
"citygml_27":"http://www.opengis.net/citygml/building/2.0",
"citygml_28":"cityObjectMember",
"citygml_29":" ",
"citygml_30":" ",
"gml_desc_2":" ",
"gml_name_2":" ",
"citygml_31":" ",
"citygml_32":" ",
"external_6":" ",
"external_7":" ",
"external_8":" ",
"citygml_33":" ",
"citygml_34":" ",
"citygml_35":" ",
"citygml_36":" ",
"citygml_37":" ",
"citygml_38":" ",
"citygml_39":" ",
"citygml_40":" ",
"citygml_41":" ",
"citygml_42":" ",
"citygml_43":" ",
"citygml_44":" ",
"citygml_45":" ",
"citygml_46":" ",
"citygml_47":21.824000000000002,
"citygml_48":"#m",
"citygml_49":" ",
"citygml_50":" ",
"citygml_51":" ",
"citygml_52":" ",
"citygml_53":" ",
"citygml_54":" ",
"citygml_55":" ",
"citygml_56":" ",
"citygml_57":" ",
"citygml_58":" ",
"citygml_59":" ",
"citygml_60":" ",
"citygml_61":" ",
"Volume_1":"2783.169",
"Field":0,
"Field1":0,
"OBJECTID_1":778,
"gml_id_12_":"ebc7f916-d094-4de0-8c35-fc18eb8622f2",
"gml_pare_3":"1340908",
"citygml_62":"http://www.opengis.net/citygml/building/2.0",
"citygml_63":"boundedBy",
"citygml_64":" ",
"citygml_65":" ",
"gml_desc_3":" ",
"gml_name_3":" ",
"citygml_66":" ",
"citygml_67":" ",
"external_9":" ",
"externa_10":" ",
"externa_11":" ",
"citygml_68":" ",
"citygml_69":" ",
"citygml_70":" ",
"citygml_71":" ",
"citygml_72":" ",
"citygml_73":" ",
"Area_1":"229.287",
"cityGML_hi":0,
"Z_Min":49.0745,
"Z_Max":69.165000000000006,
"Shape_Leng":59.532834838799999,
"ID_UEV":"01002777",
"CIVIQUE_DE":" 1460",
"CIVIQUE_FI":" 1460",
"NOM_RUE":"rue Sherbrooke Ouest (MTL+MTO+WMT)",
"MUNICIPALI":"50",
"ETAGE_HORS":3,
"NOMBRE_LOG":1,
"ANNEE_CONS":1885,
"CODE_UTILI":"5010",
"LIBELLE_UT":"Immeuble commercial",
"CATEGORIE_":"Régulier",
"MATRICULE8":"9839-57-1941-6-000-0000",
"SUPERFICIE":193,
"SUPERFIC_1":609,
"NO_ARROND_":"REM19",
"Shape_Le_1":0.00076452447366199996,
"Shape_Ar_1":2.2162879886799998e-08,
"Z_Min_1":null,
"Z_Max_1":null,
"Shape_Length":59.532834838827348,
"Shape_Area":161.83671944596372
}
},
{
"type":"Feature",
"id":2,
"geometry":{
"type":"Polygon",
"coordinates":[
[
[
-73.581414175680588,
45.497641136608358
]
,
[
-73.581414175680588,
45.498441136608358
],
[
-73.582214175680588,
45.498441136608358
],
[
-73.582214175680588,
45.497641136608358
],
[
-73.581414175680588,
45.497641136608358
]
]
]
},
"properties":{
"OBJECTID_12":2,
"gml_id":"1340974",
"gml_parent":"fme-gen-5fa2a82b-c38e-4bf0-9e8f-10a47b9f64f7",
"citygml_ta":"http://www.opengis.net/citygml/building/2.0",
"citygml_fe":"cityObjectMember",
"citygml__1":" ",
"citygml__2":" ",
"gml_descri":" ",
"gml_name":" ",
"citygml_cr":" ",
"citygml_te":" ",
"externalRe":" ",
"external_1":" ",
"external_2":" ",
"citygml_ge":" ",
"citygml_re":" ",
"citygml__3":" ",
"citygml_ap":" ",
"citygml_cl":" ",
"citygml__4":" ",
"citygml_fu":" ",
"citygml__5":" ",
"citygml_us":" ",
"citygml__6":" ",
"citygml_ye":" ",
"citygml__7":" ",
"citygml_ro":" ",
"citygml__8":" ",
"citygml_me":21.643999999999998,
"citygml__9":"#m",
"citygml_st":" ",
"citygml_10":" ",
"citygml_11":" ",
"citygml_12":" ",
"citygml_13":" ",
"citygml_14":" ",
"citygml_ou":" ",
"citygml_in":" ",
"citygml_bo":" ",
"citygml_le":" ",
"citygml_15":" ",
"citygml_co":" ",
"citygml_ad":" ",
"Volume":"8410.522",
"parcelle":" ",
"OBJECTID":779,
"gml_id_1":"96e73b07-262d-43a8-84ce-608133b39f16",
"gml_pare_1":"1340974",
"citygml_16":"http://www.opengis.net/citygml/building/2.0",
"citygml_17":"boundedBy",
"citygml_18":" ",
"citygml_19":" ",
"gml_desc_1":" ",
"gml_name_1":" ",
"citygml_20":" ",
"citygml_21":" ",
"external_3":" ",
"external_4":" ",
"external_5":" ",
"citygml_22":" ",
"citygml_23":" ",
"citygml_24":" ",
"citygml_25":" ",
"citygml_26":" ",
"citygml_op":" ",
"Area":"553.859",
"FID_":0,
"Join_Count":3,
"TARGET_FID":780,
"gml_id_12":"1340974",
"gml_pare_2":"fme-gen-5fa2a82b-c38e-4bf0-9e8f-10a47b9f64f7",
"citygml_27":"http://www.opengis.net/citygml/building/2.0",
"citygml_28":"cityObjectMember",
"citygml_29":" ",
"citygml_30":" ",
"gml_desc_2":" ",
"gml_name_2":" ",
"citygml_31":" ",
"citygml_32":" ",
"external_6":" ",
"external_7":" ",
"external_8":" ",
"citygml_33":" ",
"citygml_34":" ",
"citygml_35":" ",
"citygml_36":" ",
"citygml_37":" ",
"citygml_38":" ",
"citygml_39":" ",
"citygml_40":" ",
"citygml_41":" ",
"citygml_42":" ",
"citygml_43":" ",
"citygml_44":" ",
"citygml_45":" ",
"citygml_46":" ",
"citygml_47":21.643999999999998,
"citygml_48":"#m",
"citygml_49":" ",
"citygml_50":" ",
"citygml_51":" ",
"citygml_52":" ",
"citygml_53":" ",
"citygml_54":" ",
"citygml_55":" ",
"citygml_56":" ",
"citygml_57":" ",
"citygml_58":" ",
"citygml_59":" ",
"citygml_60":" ",
"citygml_61":" ",
"Volume_1":"8410.522",
"Field":0,
"Field1":0,
"OBJECTID_1":779,
"gml_id_12_":"96e73b07-262d-43a8-84ce-608133b39f16",
"gml_pare_3":"1340974",
"citygml_62":"http://www.opengis.net/citygml/building/2.0",
"citygml_63":"boundedBy",
"citygml_64":" ",
"citygml_65":" ",
"gml_desc_3":" ",
"gml_name_3":" ",
"citygml_66":" ",
"citygml_67":" ",
"external_9":" ",
"externa_10":" ",
"externa_11":" ",
"citygml_68":" ",
"citygml_69":" ",
"citygml_70":" ",
"citygml_71":" ",
"citygml_72":" ",
"citygml_73":" ",
"Area_1":"553.859",
"cityGML_hi":0,
"Z_Min":47.817900000000002,
"Z_Max":69.462000000000003,
"Shape_Leng":124.143194192,
"ID_UEV":"01002773",
"CIVIQUE_DE":" 1438",
"CIVIQUE_FI":" 1438",
"NOM_RUE":"rue Sherbrooke Ouest (MTL+MTO+WMT)",
"MUNICIPALI":"50",
"ETAGE_HORS":3,
"NOMBRE_LOG":2,
"ANNEE_CONS":1885,
"CODE_UTILI":"1000",
"LIBELLE_UT":"Logement",
"CATEGORIE_":"Régulier",
"MATRICULE8":"9839-57-4570-0-000-0000",
"SUPERFICIE":249,
"SUPERFIC_1":506,
"NO_ARROND_":"REM19",
"Shape_Le_1":0.00099703639048799998,
"Shape_Ar_1":2.8543276304299999e-08,
"Z_Min_1":null,
"Z_Max_1":null,
"Shape_Length":124.143194192441,
"Shape_Area":464.30094602931189
}
},
{
"type":"Feature",
"id":3,
"geometry":{
"type":"Polygon",
"coordinates":[
[
[
-73.581914175680588,
45.498441136608358
],
[
-73.581414175680588,
45.498441136608358
],
[
-73.581414175680588,
45.498641136608358
],
[
-73.580914175680588,
45.498641136608358
],
[
-73.580914175680588,
45.499641136608358
],
[
-73.581914175680588,
45.499641136608358
],
[
-73.581914175680588,
45.498441136608358
]
]
]
},
"properties":{
"OBJECTID_12":3,
"gml_id":"1340910",
"gml_parent":"fme-gen-5fa2a82b-c38e-4bf0-9e8f-10a47b9f64f7",
"citygml_ta":"http://www.opengis.net/citygml/building/2.0",
"citygml_fe":"cityObjectMember",
"citygml__1":" ",
"citygml__2":" ",
"gml_descri":" ",
"gml_name":" ",
"citygml_cr":" ",
"citygml_te":" ",
"externalRe":" ",
"external_1":" ",
"external_2":" ",
"citygml_ge":" ",
"citygml_re":" ",
"citygml__3":" ",
"citygml_ap":" ",
"citygml_cl":" ",
"citygml__4":" ",
"citygml_fu":" ",
"citygml__5":" ",
"citygml_us":" ",
"citygml__6":" ",
"citygml_ye":" ",
"citygml__7":" ",
"citygml_ro":" ",
"citygml__8":" ",
"citygml_me":21.916,
"citygml__9":"#m",
"citygml_st":" ",
"citygml_10":" ",
"citygml_11":" ",
"citygml_12":" ",
"citygml_13":" ",
"citygml_14":" ",
"citygml_ou":" ",
"citygml_in":" ",
"citygml_bo":" ",
"citygml_le":" ",
"citygml_15":" ",
"citygml_co":" ",
"citygml_ad":" ",
"Volume":"2257.436",
"parcelle":" ",
"OBJECTID":780,
"gml_id_1":"8222a1c7-e161-421a-8478-22d2a116e0b4",
"gml_pare_1":"1340910",
"citygml_16":"http://www.opengis.net/citygml/building/2.0",
"citygml_17":"boundedBy",
"citygml_18":" ",
"citygml_19":" ",
"gml_desc_1":" ",
"gml_name_1":" ",
"citygml_20":" ",
"citygml_21":" ",
"external_3":" ",
"external_4":" ",
"external_5":" ",
"citygml_22":" ",
"citygml_23":" ",
"citygml_24":" ",
"citygml_25":" ",
"citygml_26":" ",
"citygml_op":" ",
"Area":"144.697",
"FID_":0,
"Join_Count":2,
"TARGET_FID":781,
"gml_id_12":"1340910",
"gml_pare_2":"fme-gen-5fa2a82b-c38e-4bf0-9e8f-10a47b9f64f7",
"citygml_27":"http://www.opengis.net/citygml/building/2.0",
"citygml_28":"cityObjectMember",
"citygml_29":" ",
"citygml_30":" ",
"gml_desc_2":" ",
"gml_name_2":" ",
"citygml_31":" ",
"citygml_32":" ",
"external_6":" ",
"external_7":" ",
"external_8":" ",
"citygml_33":" ",
"citygml_34":" ",
"citygml_35":" ",
"citygml_36":" ",
"citygml_37":" ",
"citygml_38":" ",
"citygml_39":" ",
"citygml_40":" ",
"citygml_41":" ",
"citygml_42":" ",
"citygml_43":" ",
"citygml_44":" ",
"citygml_45":" ",
"citygml_46":" ",
"citygml_47":21.916,
"citygml_48":"#m",
"citygml_49":" ",
"citygml_50":" ",
"citygml_51":" ",
"citygml_52":" ",
"citygml_53":" ",
"citygml_54":" ",
"citygml_55":" ",
"citygml_56":" ",
"citygml_57":" ",
"citygml_58":" ",
"citygml_59":" ",
"citygml_60":" ",
"citygml_61":" ",
"Volume_1":"2257.436",
"Field":0,
"Field1":0,
"OBJECTID_1":780,
"gml_id_12_":"8222a1c7-e161-421a-8478-22d2a116e0b4",
"gml_pare_3":"1340910",
"citygml_62":"http://www.opengis.net/citygml/building/2.0",
"citygml_63":"boundedBy",
"citygml_64":" ",
"citygml_65":" ",
"gml_desc_3":" ",
"gml_name_3":" ",
"citygml_66":" ",
"citygml_67":" ",
"external_9":" ",
"externa_10":" ",
"externa_11":" ",
"citygml_68":" ",
"citygml_69":" ",
"citygml_70":" ",
"citygml_71":" ",
"citygml_72":" ",
"citygml_73":" ",
"Area_1":"144.697",
"cityGML_hi":0,
"Z_Min":48.983400000000003,
"Z_Max":67.617000000000004,
"Shape_Leng":52.283656634099998,
"ID_UEV":"01002775",
"CIVIQUE_DE":" 1448",
"CIVIQUE_FI":" 1448",
"NOM_RUE":"rue Sherbrooke Ouest (MTL+MTO+WMT)",
"MUNICIPALI":"50",
"ETAGE_HORS":3,
"NOMBRE_LOG":1,
"ANNEE_CONS":1885,
"CODE_UTILI":"5010",
"LIBELLE_UT":"Immeuble commercial",
"CATEGORIE_":"Régulier",
"MATRICULE8":"9839-57-3057-9-000-0000",
"SUPERFICIE":167,
"SUPERFIC_1":354,
"NO_ARROND_":"REM19",
"Shape_Le_1":0.00074417728924999998,
"Shape_Ar_1":1.92186900974e-08,
"Z_Min_1":null,
"Z_Max_1":null,
"Shape_Length":52.283656634094768,
"Shape_Area":123.24449716965384
}
}
]
}

File diff suppressed because one or more lines are too long