Skip to content

Commit fbd01fb

Browse files
committed
refactor
1 parent 490a9aa commit fbd01fb

2 files changed

Lines changed: 2294 additions & 2184 deletions

File tree

plugins/projectbuilder/include/ProjectBuilder.h

Lines changed: 57 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -213,31 +213,36 @@ struct canopy {
213213

214214
//! Object struct
215215
struct object{
216-
int index;
217-
uint objID;
218-
std::string name;
219-
std::string file;
220-
std::string data_group;
221-
std::vector<uint> UUIDs;
222-
helios::vec3 position;
223-
helios::vec3 prev_position;
224-
helios::vec3 orientation;
225-
helios::vec3 prev_orientation;
226-
helios::vec3 scale;
227-
helios::vec3 prev_scale;
228-
helios::RGBcolor color;
229-
helios::RGBcolor prev_color;
230-
bool use_texture_file;
231-
bool is_dirty;
216+
int index;
217+
uint objID;
218+
std::string name;
219+
std::string file;
220+
std::string data_group;
221+
std::vector<uint> UUIDs;
222+
helios::vec3 position;
223+
helios::vec3 prev_position;
224+
helios::vec3 orientation;
225+
helios::vec3 prev_orientation;
226+
helios::vec3 scale;
227+
helios::vec3 prev_scale;
228+
helios::RGBcolor color;
229+
helios::RGBcolor prev_color;
230+
bool use_texture_file;
231+
bool is_dirty;
232232
};
233233

234234
//! Rig struct
235235
struct rig {
236+
int num_images;
236237
std::string label;
237238
std::vector<distribution> position_noise;
239+
std::vector<distribution> lookat_noise;
238240
helios::RGBcolor color;
239241
helios::vec3 position;
240242
helios::vec3 lookat;
243+
std::vector<helios::vec3> camera_positions;
244+
std::vector<helios::vec3> camera_lookats;
245+
std::vector<int> keypoint_frames;
241246
std::set<std::string> camera_labels;
242247
std::set<std::string> light_labels;
243248
bool write_depth;
@@ -476,6 +481,10 @@ class ProjectBuilder {
476481
//! XML Error String
477482
std::string xml_error_string;
478483

484+
rig default_rig{1, "default_rig", {}, {}, helios::RGBcolor(1, 0, 0),
485+
helios::vec3(0, 0, 1), helios::vec3(0, 0, 0), {helios::vec3(0, 0, 1)}, {helios::vec3(0, 0, 0)},
486+
{1}, {}, {}, false, false, false};
487+
479488
//! Rig labels
480489
std::vector<std::string> rig_labels;
481490

@@ -515,6 +524,9 @@ class ProjectBuilder {
515524
//! Map keyed by rig name that returns rig index
516525
std::map<std::string, int> rig_dict;
517526

527+
//! Map keyed by rig name that returns the corresponding rig struct.
528+
std::map<std::string, rig> rig_dict_;
529+
518530
//! Rig labels
519531
std::set<std::string> rig_labels_set;
520532

@@ -1106,8 +1118,30 @@ class ProjectBuilder {
11061118
//! Dictionary containing UUIDs for every camera model
11071119
std::map<std::string, std::vector<uint>> camera_models_dict;
11081120

1121+
//! General tab
1122+
void generalTab();
1123+
1124+
//! Canopy tab
1125+
void canopyTab();
1126+
1127+
//! Camera tab
1128+
void cameraTab();
1129+
1130+
//! Calculation tab
1131+
void calculationTab();
1132+
1133+
//! Object tab
11091134
void objectTab();
11101135

1136+
//! Radiation tab
1137+
void radiationTab();
1138+
1139+
//! Rig tab
1140+
void rigTab();
1141+
1142+
//! Light tab
1143+
void lightTab();
1144+
11111145
//! Function to delete arrows denoting rig movement
11121146
void deleteArrows();
11131147

@@ -1826,10 +1860,16 @@ class ProjectBuilder {
18261860

18271861
//! Delete rig
18281862
/**
1829-
* \param[in] curr_rig Rig to be deleted
1863+
* \param[in] curr_rig Name of rig to be deleted
18301864
*/
18311865
void deleteRig(std::string curr_rig);
18321866

1867+
//! Add rig
1868+
/**
1869+
* \param[in] new_rig_label Name of rig to be added
1870+
*/
1871+
void addRig(std::string new_rig_label);
1872+
18331873
#ifdef ENABLE_HELIOS_VISUALIZER
18341874
//! Create dropdown widget
18351875
/**

0 commit comments

Comments
 (0)