From 67080b9f6975ef9d52494b0b681770cc84da24c6 Mon Sep 17 00:00:00 2001 From: mostaphaRoudsari Date: Thu, 19 Jan 2023 15:38:38 -0500 Subject: [PATCH] fix: add additional steps for creating visualization-set --- .../daylight_factor/_postprocess_results.py | 36 ++++++++++++++++++- pollination/daylight_factor/entry.py | 9 +++++ 2 files changed, 44 insertions(+), 1 deletion(-) diff --git a/pollination/daylight_factor/_postprocess_results.py b/pollination/daylight_factor/_postprocess_results.py index d1d6c1c..ee698d0 100644 --- a/pollination/daylight_factor/_postprocess_results.py +++ b/pollination/daylight_factor/_postprocess_results.py @@ -5,6 +5,8 @@ from pollination.honeybee_radiance.grid import MergeFolderData from pollination.honeybee_radiance_postprocess.post_process import GridSummaryMetrics +from pollination.honeybee_radiance.post_process import DaylightFactorVisMetadata +from pollination.honeybee_display.translate import ModelToVis @dataclass @@ -12,7 +14,8 @@ class DaylightFactorPostProcessResults(GroupedDAG): """Daylight factor results post-process.""" model = Inputs.file( - description='Input Honeybee model.', + description='A Honeybee Model in either JSON or Pkl format. This can also ' + 'be a zipped honeybee-radiance folder.', extensions=['json', 'hbjson', 'pkl', 'hbpkl', 'zip'] ) @@ -63,6 +66,37 @@ def grid_summary_metrics( } ] + @task( + template=DaylightFactorVisMetadata, + needs=[restructure_results] + ) + def create_vis_metadata(self): + return [ + { + 'from': DaylightFactorVisMetadata()._outputs.cfg_file, + 'to': 'results/vis_metadata.json' + } + ] + + @task( + template=ModelToVis, + needs=[create_vis_metadata, copy_grid_info] + ) + def create_vsf( + self, model=model, grid_data='results', output_format='vsf' + ): + return [ + { + 'from': ModelToVis()._outputs.output_file, + 'to': 'visualization.vsf' + } + ] + + visualization = Outputs.file( + source='visualization.vsf', + description='Result visualization in VisualizationSet format.' + ) + results = Outputs.folder( source='results', description='Daylight factor results.' diff --git a/pollination/daylight_factor/entry.py b/pollination/daylight_factor/entry.py index 3a045bf..bfccf78 100644 --- a/pollination/daylight_factor/entry.py +++ b/pollination/daylight_factor/entry.py @@ -132,9 +132,18 @@ def post_process_results( { 'from': DaylightFactorPostProcessResults()._outputs.grid_summary, 'to': 'grid_summary.csv' + }, + { + 'from': DaylightFactorPostProcessResults()._outputs.visualization, + 'to': 'visualization.vsf' } ] + visualization = Outputs.file( + source='visualization.vsf', + description='Result visualization in VisualizationSet format.' + ) + results = Outputs.folder( source='results', description='Folder with raw result files ' '(.res) that contain daylight factor values for each sensor.',