honeybee-radiance-postprocess 0.4.383__py2.py3-none-any.whl → 0.4.385__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,6 +7,7 @@ import click
7
7
  import numpy as np
8
8
 
9
9
  from honeybee.model import Model
10
+ from ladybug_geometry.geometry3d.face import Face3D
10
11
 
11
12
  from ..vis_metadata import _abnt_nbr_15575_daylight_levels_vis_metadata
12
13
 
@@ -56,7 +57,8 @@ def abnt_nbr_15575(
56
57
  return x1, x2, y1, y2
57
58
 
58
59
  def get_value(x, y, x_coords, y_coords, values):
59
- index = np.where((x_coords == x) & (y_coords == y))
60
+ tolerance = 0.001
61
+ index = np.where((np.abs(x_coords - x) <= tolerance) & (np.abs(y_coords - y) <= tolerance))
60
62
  return values[index][0]
61
63
 
62
64
  def perform_interpolation(x, y, x_coords, y_coords, pit_values):
@@ -105,10 +107,13 @@ def abnt_nbr_15575(
105
107
  illuminance_levels_folder.mkdir(parents=True, exist_ok=True)
106
108
 
107
109
  summary_file = sub_folder.joinpath('abnt_nbr_15575.json')
110
+ summary_rooms_file = sub_folder.joinpath('abnt_nbr_15575_rooms.json')
108
111
  folder_names = ['4_930AM', '4_330PM', '10_930AM', '10_330PM']
109
112
 
110
113
  metric_info_dict = _abnt_nbr_15575_daylight_levels_vis_metadata()
111
114
  summary_output = {}
115
+ summary_rooms_output = {}
116
+ pof_sensor_grids = {}
112
117
  for _subfolder in folder_names:
113
118
  res_folder = folder.joinpath(_subfolder, 'results')
114
119
  with open(res_folder.joinpath('grids_info.json')) as data_f:
@@ -123,7 +128,22 @@ def abnt_nbr_15575(
123
128
 
124
129
  x_coords = sensor_points[:, 0]
125
130
  y_coords = sensor_points[:, 1]
126
- x, y = sensor_grid.mesh.center.x, sensor_grid.mesh.center.y
131
+
132
+ pof_sensor_grid = \
133
+ pof_sensor_grids.get(grid_info['full_id'], None)
134
+ # if pof is not calculated for this grid
135
+ if pof_sensor_grid is None:
136
+ faces_3d = [Face3D(face_vertices) for face_vertices in sensor_grid.mesh.face_vertices]
137
+ face_3d_union = Face3D.join_coplanar_faces(faces_3d, 0.05)
138
+ assert len(face_3d_union) == 1
139
+ if face_3d_union[0].is_convex:
140
+ centroid = face_3d_union[0].centroid
141
+ pof_sensor_grids[grid_info['full_id']] = (centroid.x, centroid.y)
142
+ else:
143
+ pof = face_3d_union[0].pole_of_inaccessibility(0.01)
144
+ pof_sensor_grids[grid_info['full_id']] = (pof.x, pof.y)
145
+
146
+ x, y = pof_sensor_grids[grid_info['full_id']]
127
147
  f_xy = perform_interpolation(x, y, x_coords, y_coords, pit_values)
128
148
 
129
149
  if f_xy >= 120:
@@ -135,6 +155,19 @@ def abnt_nbr_15575(
135
155
  else:
136
156
  level = 'Não atende'
137
157
 
158
+ room_summary = \
159
+ summary_rooms_output.get(grid_info['full_id'], None)
160
+ if room_summary is None:
161
+ summary_rooms_output[grid_info['full_id']] = {
162
+ 'nível': level,
163
+ 'iluminância': f_xy,
164
+ 'grids_info': grid_info
165
+ }
166
+ else:
167
+ if f_xy < room_summary['iluminância']:
168
+ room_summary['nível'] = level
169
+ room_summary['iluminância'] = f_xy
170
+
138
171
  sub_output.append(
139
172
  {
140
173
  'nível': level,
@@ -166,6 +199,9 @@ def abnt_nbr_15575(
166
199
  with summary_file.open(mode='w', encoding='utf-8') as output_file:
167
200
  json.dump(summary_output, output_file, indent=4, ensure_ascii=False)
168
201
 
202
+ with summary_rooms_file.open(mode='w', encoding='utf-8') as output_file:
203
+ json.dump(summary_rooms_output, output_file, indent=4, ensure_ascii=False)
204
+
169
205
  except Exception:
170
206
  _logger.exception('Failed to calculate ABNT NBR 15575 metrics.')
171
207
  sys.exit(1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: honeybee-radiance-postprocess
3
- Version: 0.4.383
3
+ Version: 0.4.385
4
4
  Summary: Postprocessing of Radiance results and matrices
5
5
  Home-page: https://github.com/ladybug-tools/honeybee-radiance-postprocess
6
6
  Author: Ladybug Tools
@@ -14,7 +14,7 @@ honeybee_radiance_postprocess/type_hints.py,sha256=4R0kZgacQrqzoh8Tq7f8MVzUDzynV
14
14
  honeybee_radiance_postprocess/util.py,sha256=-J5k1dhvyYJkb42jvTS_xxtokfGbmcucVPXdMWU1jUk,5098
15
15
  honeybee_radiance_postprocess/vis_metadata.py,sha256=darKbj987NXW72GNcTdKQmgqSTpeG39OBwEgbJGEgPw,1820
16
16
  honeybee_radiance_postprocess/cli/__init__.py,sha256=4RkpR91GPXWatDE4I_27ce-N4FwolQoO6WO7H24DMXE,777
17
- honeybee_radiance_postprocess/cli/abnt.py,sha256=UjyOBbyskK7lpJ1PkcxomjO3HeWiIIdcrBDwYeYUPxE,7203
17
+ honeybee_radiance_postprocess/cli/abnt.py,sha256=fTMqgzuaZ6d7BE8CI4GWQBr1_r-qWhpay0cPdfrIoR4,9017
18
18
  honeybee_radiance_postprocess/cli/grid.py,sha256=6peLEAPVe-iw05_wdRpFruZLqO8myvC-_QT5W1q5sk8,10677
19
19
  honeybee_radiance_postprocess/cli/leed.py,sha256=QBR6AMJJWuZ0TevyMi2tXCWMLdS-ZSqtVTZDgqxwa7M,3112
20
20
  honeybee_radiance_postprocess/cli/mtxop.py,sha256=UZJnjNpPjDmShy1-Mxos4H2vTUqk_yP3ZyaC1_LLFeI,5015
@@ -27,9 +27,9 @@ honeybee_radiance_postprocess/results/__init__.py,sha256=1agBQbfT4Tf8KqSZzlfKYX8
27
27
  honeybee_radiance_postprocess/results/annual_daylight.py,sha256=o4Y5kbD3a4X4KRfsbOlWzgrnNKU365GcivM6qQGUGXU,31605
28
28
  honeybee_radiance_postprocess/results/annual_irradiance.py,sha256=5zwrr4MNeHUebbSRpSBbscPOZUs2AHmYCQfIIbdYImY,8298
29
29
  honeybee_radiance_postprocess/results/results.py,sha256=jkjsxTuvVfBus6tM2UjQE3ZKPooLInWEd2guqO61v9E,53600
30
- honeybee_radiance_postprocess-0.4.383.dist-info/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
31
- honeybee_radiance_postprocess-0.4.383.dist-info/METADATA,sha256=D8eU9dvU2XRJyDN95fs7fsqivPqQjHLa2NRmx5QVmcA,2245
32
- honeybee_radiance_postprocess-0.4.383.dist-info/WHEEL,sha256=unfA4MOaH0icIyIA5oH6E2sn2Hq5zKtLlHsWapZGwes,110
33
- honeybee_radiance_postprocess-0.4.383.dist-info/entry_points.txt,sha256=gFtVPx6UItXt27GfEZZO00eOZChJJEL6JwGSAB_O3rs,96
34
- honeybee_radiance_postprocess-0.4.383.dist-info/top_level.txt,sha256=4-sFbzy7ewP2EDqJV3jeFlAFx7SuxtoBBELWaKAnLdA,30
35
- honeybee_radiance_postprocess-0.4.383.dist-info/RECORD,,
30
+ honeybee_radiance_postprocess-0.4.385.dist-info/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
31
+ honeybee_radiance_postprocess-0.4.385.dist-info/METADATA,sha256=4jb_DnWRE1U3g9BHMZSA6b7hTG3C-4fgQwkQkFPK4JU,2245
32
+ honeybee_radiance_postprocess-0.4.385.dist-info/WHEEL,sha256=unfA4MOaH0icIyIA5oH6E2sn2Hq5zKtLlHsWapZGwes,110
33
+ honeybee_radiance_postprocess-0.4.385.dist-info/entry_points.txt,sha256=gFtVPx6UItXt27GfEZZO00eOZChJJEL6JwGSAB_O3rs,96
34
+ honeybee_radiance_postprocess-0.4.385.dist-info/top_level.txt,sha256=4-sFbzy7ewP2EDqJV3jeFlAFx7SuxtoBBELWaKAnLdA,30
35
+ honeybee_radiance_postprocess-0.4.385.dist-info/RECORD,,