void add_physical(std::string type, List_T *list, std::string fileName) { std::ostringstream sstream; sstream << "Physical " << type << "(" << NEWPHYSICAL() << ") = {" << list2string(list) << "};"; add_infile(sstream.str(), fileName); }
int main(){ Solution so; string line; while(getline(cin,line)){ cout<<list2string(so.deleteDuplicates(string2list(line)))<<endl; } }
void add_surfloop(List_T *list, std::string fileName, int *numloop) { if(recognize_surfloop(list, numloop)) return; *numloop = NEWSURFACELOOP(); std::ostringstream sstream; sstream << "Surface Loop(" << *numloop << ") = {" << list2string(list) << "};"; add_infile(sstream.str(), fileName); }
void extrude(List_T *list, std::string fileName, std::string what, std::string tx, std::string ty, std::string tz) { std::ostringstream sstream; sstream << "Extrude {" << tx << ", " << ty << ", " << tz << "} {\n " << what << "{" << list2string(list) << "};\n}"; add_infile(sstream.str(), fileName); }
void add_lineloop(List_T *list, std::string fileName, int *numloop) { if(recognize_loop(list, numloop)) return; *numloop = NEWLINELOOP(); std::ostringstream sstream; sstream << "Line Loop(" << *numloop << ") = {" << list2string(list) << "};"; add_infile(sstream.str(), fileName); }
void add_compound(std::string type, List_T *list, std::string fileName) { std::ostringstream sstream; if(SplitFileName(fileName)[2] != ".geo") sstream << "CreateTopology;\n"; if (type == "Surface"){ sstream << "Compound " << type << "(" << NEWSURFACE()+1000 << ") = {" << list2string(list) << "};"; } else if (type == "Line"){ sstream << "Compound " << type << "(" << NEWLINE()+1000 << ") = {" << list2string(list) << "};"; } else{ sstream << "Compound " << type << "(" << NEWREG() << ") = {" << list2string(list) << "};"; } add_infile(sstream.str(), fileName); }
void protude(List_T *list, std::string fileName, std::string what, std::string ax, std::string ay, std::string az, std::string px, std::string py, std::string pz, std::string angle) { std::ostringstream sstream; sstream << "Extrude {{" << ax << ", " << ay << ", " << az << "}, {" << px << ", " << py << ", " << pz << "}, " << angle << "} {\n " << what << "{" << list2string(list) << "};\n}"; add_infile(sstream.str(), fileName); }
void symmetry(int add, List_T *list, std::string fileName, std::string what, std::string sa, std::string sb, std::string sc, std::string sd) { std::ostringstream sstream; sstream << "Symmetry {" << sa << ", " << sb << ", " << sc << ", " << sd << "} {\n "; if(add) sstream << "Duplicata { "; sstream << what << "{" << list2string(list) << "};"; if(add) sstream << " }"; sstream << "\n}"; add_infile(sstream.str(), fileName); }
void dilate(int add, List_T *list, std::string fileName, std::string what, std::string dx, std::string dy, std::string dz, std::string df) { std::ostringstream sstream; sstream << "Dilate {{" << dx << ", " << dy << ", " << dz << "}, " << df << "} {\n "; if(add) sstream << "Duplicata { "; sstream << what << "{" << list2string(list) << "};"; if(add) sstream << " }"; sstream << "\n}"; add_infile(sstream.str(), fileName); }
void translate(int add, List_T *list, std::string fileName, std::string what, std::string tx, std::string ty, std::string tz) { std::ostringstream sstream; sstream << "Translate {" << tx << ", " << ty << ", " << tz << "} {\n "; if(add) sstream << "Duplicata { "; sstream << what << "{" << list2string(list) << "};"; if(add) sstream << " }"; sstream << "\n}"; add_infile(sstream.str(), fileName); }
void rotate(int add, List_T *list, std::string fileName, std::string what, std::string ax, std::string ay, std::string az, std::string px, std::string py, std::string pz, std::string angle) { std::ostringstream sstream; sstream << "Rotate {{" << ax << ", " << ay << ", " << az << "}, {" << px << ", " << py << ", " << pz << "}, " << angle << "} {\n "; if(add) sstream << "Duplicata { "; sstream << what << "{" << list2string(list) << "};"; if(add) sstream << " }"; sstream << "\n}"; add_infile(sstream.str(), fileName); }
void split_edge(int edge_id, List_T *vertices,std::string fileName) { std::ostringstream sstream; sstream << "Split Line(" << edge_id << ") {" << list2string(vertices) << "};"; add_infile(sstream.str(), fileName, true); }
void delet(List_T *list, std::string fileName, std::string what) { std::ostringstream sstream; sstream << "Delete {\n " << what << "{" << list2string(list) << "};\n}"; add_infile(sstream.str(), fileName, true); }
void add_vol(List_T *list, std::string fileName) { std::ostringstream sstream; sstream << "Volume(" << NEWVOLUME() << ") = {" << list2string(list) << "};"; add_infile(sstream.str(), fileName); }
void add_surf(std::string type, List_T *list, std::string fileName) { std::ostringstream sstream; sstream << type << "(" << NEWSURFACE() << ") = {" << list2string(list) << "};"; add_infile(sstream.str(), fileName); }
void add_recosurf(List_T *list, std::string fileName) { std::ostringstream sstream; sstream << "Recombine Surface {" << list2string(list) << "};"; add_infile(sstream.str(), fileName); }
void add_charlength(List_T *list, std::string fileName, std::string lc) { std::ostringstream sstream; sstream << "Characteristic Length {" << list2string(list) << "} = " << lc << ";"; add_infile(sstream.str(), fileName); }