- Timestamp:
- Mar 4, 2009, 6:58:22 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/visualization/OpenGL/src/G4OpenGLStoredSceneHandler.cc
r936 r938 83 83 fTopPODL (0), 84 84 fLastPolymarker(), 85 fLastPolymarkers() 85 fLastPolymarkers(), 86 nbDoublons(0) 86 87 {} 87 88 … … 210 211 { 211 212 213 std::vector< G4Polymarker > poly; 212 214 // 40,83 N03 lancement 213 215 // 289,69 10Gev supp doublons + bitmap 21 frame en 10 sec 214 216 // 343,45 10Gev full polymarker + bitmap 15 frame en 10 sec 215 217 // 351,67 10Gev full polymarker - bitmap 31 frame en 10 sec 216 // 2 94,90 10Gev supp doublons - bitmap 42 frame en 10 sec218 // 257,90 10Gev supp doublons MAX - bitmap 42 frame en 10 sec 45757 markers et 16243 enleves 217 219 // Check 218 220 int reste = polymarker.size(); 219 for (unsigned int a=0; a< fLastPolymarkers.size();a++) { 221 bool res = false; 222 if (fLastPolymarkers.size() > 0 ) { 220 223 for (unsigned int b=0; b< polymarker.size();b++) { 221 if (( fLastPolymarkers[a].GetPosition().x() == polymarker[b].x()) && 222 ( fLastPolymarkers[a].GetPosition().y() == polymarker[b].y()) && 223 ( fLastPolymarkers[a].GetPosition().z() == polymarker[b].z())) { 224 reste --; 225 printf("G4OpenGLStoredSceneHandler::AddPrimitive DOUBLON %d et pos %d reste %d ----------- point %f %f %f\n",a,b,reste,polymarker[b].x(),polymarker[b].y(),polymarker[b].z()); 224 res= false; 225 int size= fLastPolymarkers.size()-1; 226 for (unsigned int a=0; a< fLastPolymarkers.size() ;a++) { 227 if (( fLastPolymarkers[size-a].GetPosition().x() == polymarker[b].x()) && 228 ( fLastPolymarkers[size-a].GetPosition().y() == polymarker[b].y()) && 229 ( fLastPolymarkers[size-a].GetPosition().z() == polymarker[b].z())) { 230 reste --; 231 res= true; 232 nbDoublons++; 233 printf("G4OpenGLStoredSceneHandler::AddPrimitive DOUBLON %d total:%d et pos %d reste %d ----------- point %f %f %f\n",size-a,nbDoublons,b,reste,polymarker[b].x(),polymarker[b].y(),polymarker[b].z()); 234 } 226 235 } 227 } 228 } 229 // Add 230 for (unsigned int a=0; a< polymarker.size();a++) { 231 G4Polymarker tmp; 232 tmp.SetPosition(polymarker[a]); 233 fLastPolymarkers.push_back(tmp); 234 } 235 236 // Add 237 if (!res) { 238 G4Polymarker tmp; 239 tmp.SetPosition(polymarker[b]); 240 fLastPolymarkers.push_back(tmp); 241 poly.push_back(tmp); 242 } 243 } 244 } else { 245 for (unsigned int b=0; b< polymarker.size();b++) { 246 G4Polymarker tmp; 247 tmp.SetPosition(polymarker[b]); 248 fLastPolymarkers.push_back(tmp); 249 poly.push_back(tmp); 250 } 251 } 236 252 #define TEST_MARKER 1 237 253 #ifdef TEST_MARKER 238 254 // if it is already done 239 if (poly marker.size() >0) {240 if (( fLastPolymarker.GetPosition().x() == polymarker[0].x()) &&241 ( fLastPolymarker.GetPosition().y() == polymarker[0].y()) &&242 ( fLastPolymarker.GetPosition().z() == polymarker[0].z())) {243 if (fpViewer->GetViewParameters().IsPicking()) {244 glLoadName(++fPickName);245 fPickMap[fPickName] = 0;246 }247 printf("G4OpenGLStoredSceneHandler::AddPrimitive SUPPR ----------- point %f %f %f\n",polymarker[0].x(),polymarker[0].y(),polymarker[0].z());248 const G4Colour& c = GetColour (polymarker);249 glColor3d (c.GetRed (), c.GetGreen (), c.GetBlue ());250 G4OpenGLSceneHandler::AddPrimitive(polymarker);251 fLastPolymarker.SetPosition(polymarker[polymarker.size()-1]);252 return;253 }255 if (poly.size() == 1 ) { 256 // if (polymarker.size() >0) { 257 // if (( fLastPolymarker.GetPosition().x() == polymarker[0].x()) && 258 // ( fLastPolymarker.GetPosition().y() == polymarker[0].y()) && 259 // ( fLastPolymarker.GetPosition().z() == polymarker[0].z())) { 260 // if (fpViewer->GetViewParameters().IsPicking()) { 261 // glLoadName(++fPickName); 262 // fPickMap[fPickName] = 0; 263 // } 264 // printf("G4OpenGLStoredSceneHandler::AddPrimitive SUPPR ----------- point %f %f %f\n",polymarker[0].x(),polymarker[0].y(),polymarker[0].z()); 265 const G4Colour& c = GetColour (polymarker); 266 glColor3d (c.GetRed (), c.GetGreen (), c.GetBlue ()); 267 G4OpenGLSceneHandler::AddPrimitive(poly[0]); 268 // fLastPolymarker.SetPosition(polymarker[poly]); 269 return; 254 270 } 255 271 #endif … … 258 274 G4OpenGLSceneHandler::AddPrimitive(polymarker); 259 275 AddPrimitivePostamble(); 260 fLastPolymarker.SetPosition(polymarker[polymarker.size()-1]);276 // fLastPolymarker.SetPosition(polymarker[polymarker.size()-1]); 261 277 } 262 278
Note: See TracChangeset
for help on using the changeset viewer.