void open_igs(std::string const& file, gpucast::gl::material const& m) { gpucast::igs_loader loader; gpucast::surface_converter converter; bool initialized_bbox = false; auto nurbs_objects = loader.load(file); for (auto nurbs_object : nurbs_objects) { auto bezier_object = std::make_shared<gpucast::beziersurfaceobject>(); converter.convert(nurbs_object, bezier_object); if (!initialized_bbox) { _bbox.min = bezier_object->bbox().min; _bbox.max = bezier_object->bbox().max; } else { _bbox.merge(bezier_object->bbox().min); _bbox.merge(bezier_object->bbox().max); } bezier_object->init(); auto drawable = std::make_shared<gpucast::gl::bezierobject>(*bezier_object); drawable->set_material(m); drawable->rendermode(gpucast::gl::bezierobject::tesselation); drawable->trimming(gpucast::beziersurfaceobject::contour_kd_partition); drawable->tesselation_max_pixel_error(1.0); _objects.push_back(drawable); } }
int main() { case_conversion(); trimming(); predicates(); find_algorithms(); join(); return 0; }
/*le o stdin um caracter*/ char le_caracter(){ char c = -1; char *in; char input[5]; fgets (input,5,stdin); in = trimming(input); if(strlen(in)>2) return -1; if(isalpha(in[0]) && in[1] == '\0'){ c = in[0]; c = toupper(c); } return c; }
/*le o stdin um inteiro*/ int le_inteiro(){ int n = -1; char input[20]; char *in; fgets (input, 20, stdin); in = trimming(input); if(strlen(in)>2) return -1; if(isdigit(in[0])) { if(isdigit(in[1]) || in[1] == '\0') n = atoi(in); } return n; }
/*le o stdin codigo de cliente*/ char* ler_CodigoCliente(){ char *r = NULL; char input[20]; char *in; fgets (input, 20, stdin); in = trimming(input); if(strlen(in)>5) return r; if(isalpha(in[0]) && isalpha(in[1]) && isdigit(in[2]) && isdigit(in[3]) && isdigit(in[4])) {r = in; in[0] = toupper(in[0]); in[1] = toupper(in[1]); in[5] = '\0';} return r; }
void mainwindow::update_interface ( ) { _menu->update(); _shading_menu->update(); trimming(); set_button_color(_current_ambient, _current_material.ambient); set_button_color(_current_diffuse, _current_material.diffuse); set_button_color(_current_specular, _current_material.specular); // update window QMainWindow::update(); }