in scripts/ui/export.py [0:0]
def update_flags_from_data(self, flags):
"""Updates flags from the UI elements.
Args:
flags (dict[str, _]): Flags corresponding to the tab default binary.
"""
dlg = self.dlg
rig_fn = getattr(self, "path_rig_json", "")
flags["rig"] = rig_fn
flags["input_root"] = self.parent.path_project
flags["output_root"] = self.path_video
flags["log_dir"] = self.path_logs
flags["width"] = dlg.val_export_options_res.text()
flags["first"] = dlg.dd_export_data_first.currentText()
flags["last"] = dlg.dd_export_data_last.currentText()
flags["force_recompute"] = dlg.cb_export_recompute.isChecked()
color_type = dlg.dd_export_data_type.currentText()
if color_type == "background_color":
flags["color"] = self.path_bg_color
flags["disparity"] = self.path_bg_disparity
flags["color_type"] = "background_color"
flags["disparity_type"] = "background_disp"
else:
flags["color"] = self.path_video_color
flags["disparity"] = self.path_video_disparity
flags["color_type"] = "color"
flags["disparity_type"] = "disparity"
if self.is_farm and self.parent.is_aws:
flags["master"] = ""
flags["workers"] = ""
flags["cloud"] = "aws"
rig_bn = os.path.basename(flags["rig"])
flags["input_root"] = self.parent.ui_flags.project_root
flags["output_root"] = os.path.join(
self.parent.ui_flags.project_root, config.OUTPUT_ROOT_NAME
)
flags["rig"] = os.path.join(
self.parent.ui_flags.project_root, "rigs", rig_bn
)
flags["log_dir"] = os.path.join(flags["output_root"], "logs")
elif self.is_farm and self.parent.is_lan:
flags["master"] = self.parent.ui_flags.master
flags["workers"] = ",".join(dlg.dd_export_farm_workers.checkedItems())
flags["cloud"] = ""
flags["username"] = self.parent.ui_flags.username
flags["password"] = self.parent.ui_flags.password
else: # local
flags["master"] = ""
flags["workers"] = ""
flags["cloud"] = ""
flags["file_type"] = dlg.dd_export_data_file_type.currentText()
flags["format"] = self.get_format()
is6dof = flags["format"].startswith("6dof")
if is6dof:
flags["format"] = "6dof"
flags["run_convert_to_binary"] = (
is6dof and "Meshing" in dlg.dd_export_data_format.currentText()
)
flags["run_fusion"] = (
is6dof and "Striping" in dlg.dd_export_data_format.currentText()
)
flags["run_simple_mesh_renderer"] = not is6dof
flags["color_scale"] = self.get_color_scale(flags["width"], color_type)
if self.parent.is_aws:
create_flagfile = os.path.join(
self.path_flags, self.app_name_to_flagfile[self.app_aws_create]
)
if os.path.exists(create_flagfile):
create_flags = get_flags_from_flagfile(create_flagfile)
if "cluster_size" in create_flags:
dlg.spin_export_farm_num_workers.setValue(
int(create_flags["cluster_size"])
)
if "instance_type" in create_flags:
dlg.dd_export_farm_ec2.setCurrentText(create_flags["instance_type"])