Changeset 980 for GTP/trunk/Lib/Geom/shared/GeoTool/src/GeoMeshViewUI.cpp
- Timestamp:
- 05/24/06 10:47:49 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Geom/shared/GeoTool/src/GeoMeshViewUI.cpp
r895 r980 63 63 { 64 64 // Create a mesh saver with mesh bounds. 65 mesh_saver = new GeoMeshSaver( mMeshBounds);65 mesh_saver = new GeoMeshSaver(); 66 66 67 67 // Save the file mesh. … … 99 99 if (fcho->value()) 100 100 { 101 mesh_saver = new GeoMeshSaver( mMeshBounds);101 mesh_saver = new GeoMeshSaver(); 102 102 mesh_saver->save(mGeoMesh,filename_name(fcho->value())); 103 103 delete mesh_saver; … … 953 953 // Simplify the mesh object. 954 954 simplifyEdgeCollapse(); 955 956 delete mMeshSimplifier; 957 geoMeshView->restoreContext(); 955 958 } 956 959 break; … … 1043 1046 // Create the qslim simplification sequence. 1044 1047 createQslimSequence(); 1048 1049 delete mMeshSimplifier; 1050 geoMeshView->restoreContext(); 1045 1051 } 1046 1052 … … 1053 1059 1054 1060 // Set the leaves submesh. 1055 geoMeshView->setLeavesSub mesh(idMeshLeaves);1061 geoMeshView->setLeavesSubMesh(idMeshLeaves); 1056 1062 1057 1063 // Refresh mesh info. … … 1193 1199 geoMeshView->setMesh(mGeoMesh); 1194 1200 1195 mesh_saver = new GeoMeshSaver( mMeshBounds);1201 mesh_saver = new GeoMeshSaver(); 1196 1202 file_name[strlen(file_name) - 4] = '\0'; 1197 1203 mesh_saver->save(mGeoMesh, strcat(file_name,".mesh")); … … 1354 1360 mGeometryBased->set(); 1355 1361 1356 m ImageBased->set_visible();1357 m ImageBased->activate();1362 mViewPointDriven->set_visible(); 1363 mViewPointDriven->activate(); 1358 1364 1359 1365 /* … … 1401 1407 mGeometryBased->deactivate(); 1402 1408 1403 m ImageBased->hide();1404 m ImageBased->deactivate();1409 mViewPointDriven->hide(); 1410 mViewPointDriven->deactivate(); 1405 1411 1406 1412 /* … … 1443 1449 mGeometryBased->set(); 1444 1450 1445 m ImageBased->set_visible();1446 m ImageBased->activate();1451 mViewPointDriven->set_visible(); 1452 mViewPointDriven->activate(); 1447 1453 1448 1454 /* … … 1486 1492 mGeometryBased->deactivate(); 1487 1493 1488 m ImageBased->hide();1489 m ImageBased->deactivate();1494 mViewPointDriven->hide(); 1495 mViewPointDriven->deactivate(); 1490 1496 1491 1497 /* … … 1662 1668 char *cadena=new char[12]; 1663 1669 1664 if (geoMeshView->getLeavesSub mesh() >= 0)1670 if (geoMeshView->getLeavesSubMesh() >= 0) 1665 1671 { 1666 if (geoMeshView->getLeavesSub mesh() == i)1672 if (geoMeshView->getLeavesSubMesh() == i) 1667 1673 { 1668 1674 strcpy(type,"(Leaves)"); … … 1693 1699 } 1694 1700 1695 char *cadena2=new char[30]; 1696 sprintf(cadena2, "Number of indexes: %d",mGeoMesh->mSubMesh[i].mIndexCount); 1697 fltk::Item *numberIndex = new fltk::Item(cadena2); 1701 // Adds material name. 1702 char *cadena2=new char[100]; 1703 sprintf(cadena2, "Material: %s",mGeoMesh->mSubMesh[i].mMaterialName); 1704 1705 fltk::Item *geomaterial = new fltk::Item(cadena2); 1706 1707 char *cadena3=new char[100]; 1708 1709 sprintf(cadena3, "Number of indexes: %d",mGeoMesh->mSubMesh[i].mIndexCount); 1710 fltk::Item *numberIndex = new fltk::Item(cadena3); 1698 1711 if (mGeoMesh->mSubMesh[i].mType==Geometry::GEO_TRIANGLE_LIST) 1699 1712 { … … 1884 1897 } 1885 1898 1886 geoMeshView->set ColorSubmeshi(meshNumber);1899 geoMeshView->setSubMeshSelected(meshNumber); 1887 1900 geoMeshView->redraw(); 1888 1901 … … 1897 1910 Real percent; 1898 1911 1899 simplificacionState = QSLIM; 1900 1901 mMeshSimplifier = new GeometryBasedSimplifier(mGeoMesh, progress_function); 1912 //----------------- 1913 geoMeshView->saveContext(); 1914 1915 // Gets simplify option. 1916 if (mGeometryBased->value()) 1917 { 1918 simplificationState = QSLIM; 1919 mMeshSimplifier = new GeometryBasedSimplifier(mGeoMesh, 1920 progress_function); 1921 } 1922 else 1923 { 1924 simplificationState = VIEWPOINTDRIVEN; 1925 mMeshSimplifier = new ViewPointDrivenSimplifier(mGeoMesh, 1926 progress_function); 1927 } 1902 1928 1903 1929 mMeshSimplifier->setMeshLeaves(idMeshLeaves); 1904 1930 1905 if (mPercent->value() == true)1931 if (mPercent->value()) 1906 1932 { 1907 1933 // Simplificación por porcentaje … … 1910 1936 percent = mMeshReduction->fvalue(); 1911 1937 percent = percent / 100.0; 1938 1912 1939 1913 1940 // Simplifica el geomesh -> Parámetro es un factor LOD [0,1]. … … 1928 1955 // Visualize mesh. 1929 1956 geoMeshView->setMesh(mGeoMesh); 1957 1930 1958 } 1931 1959 else … … 1970 1998 // Initialize error flag. 1971 1999 error = false; 1972 2000 1973 2001 // Check submeshes for triangles strips. 1974 2002 for (int i = 0; i < mGeoMesh->mSubMeshCount; i++) … … 1980 2008 } 1981 2009 } 1982 2010 1983 2011 // if the mesh is stripified. 1984 2012 if (error) … … 1988 2016 // if the mesh is in triangle list. 1989 2017 else 1990 { 1991 simplifica cionState = HOJAS;2018 { 2019 simplificationState = HOJAS; 1992 2020 1993 2021 mTreeSimplifier = new TreeSimplifier(mGeoMesh, progress_function); … … 2308 2336 geoMeshView->setMesh(mGeoMesh); 2309 2337 2310 // Get the mesh bounds.2311 mMeshBounds = geoMeshView->getBoundingBox();2312 2313 2338 // Hide right panel. 2314 2339 hideRightPanel(); … … 2400 2425 { 2401 2426 fltk::Group* o; 2402 o = MainView = new fltk::Group(0, 0, 600, 500);2427 o = MainView = new fltk::Group(0, 0, 500, 530); 2403 2428 o->begin(); 2404 2429 2405 2430 { 2406 2431 fltk::InvisibleBox* o; 2407 o = cframe = new fltk::InvisibleBox(0, 0, 600, 500);2432 o = cframe = new fltk::InvisibleBox(0, 0, 500, 530); 2408 2433 o->box(fltk::FLAT_BOX); 2409 2434 o->color((fltk::Color)0xffffff00); … … 2413 2438 { 2414 2439 GeoMeshView* o; 2415 o = geoMeshView = new GeoMeshView( 0,0, 600,500,0,this);2440 o = geoMeshView = new GeoMeshView( 0,0,500,530,0,this); 2416 2441 } 2417 2442 … … 2424 2449 { 2425 2450 fltk::Group* o; 2426 o = MainView = new fltk::Group( 600, 0, 200, 500);2451 o = MainView = new fltk::Group(500, 0, 300, 530); 2427 2452 o->begin(); 2428 2453 … … 2509 2534 { 2510 2535 mGeometryBased = new fltk::RadioButton(0, 8, 25, 25, "Geometry based"); 2511 m ImageBased = new fltk::RadioButton(0, 23, 25, 25, "Image based");2536 mViewPointDriven = new fltk::RadioButton(0, 23, 25, 25, "Viewpoint driven"); 2512 2537 } 2513 2538 o->end(); … … 2517 2542 2518 2543 { 2519 mProcessTitle = new fltk::Widget(0, 0, 200, 25, "");2544 mProcessTitle = new fltk::Widget(0, 0, 300, 25, ""); 2520 2545 fltk::Widget* o = mProcessTitle; 2521 2546 o->set_vertical(); … … 2582 2607 2583 2608 { 2584 fltk::Browser* o = mMeshInfo = new fltk::Browser(0, 20, 200, 380);2609 fltk::Browser* o = mMeshInfo = new fltk::Browser(0, 20, 300, 380); 2585 2610 o->set_vertical(); 2586 2611 o->callback((fltk::Callback*)cb_mMeshInfo); … … 2618 2643 } 2619 2644 2620 //{2621 //fltk::Item* o = menuMeshExportOBJ = new fltk::Item("Export to OBJ");2622 //o->callback((fltk::Callback*)cb_menuMeshExportOBJ);2623 //}2645 { 2646 fltk::Item* o = menuMeshExportOBJ = new fltk::Item("Export to OBJ"); 2647 o->callback((fltk::Callback*)cb_menuMeshExportOBJ); 2648 } 2624 2649 2625 2650 //{
Note: See TracChangeset
for help on using the changeset viewer.