Ignore:
Timestamp:
Dec 22, 2010, 3:52:27 PM (14 years ago)
Author:
garnier
Message:

geant4 tag 9.4

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/geometry/navigation/src/G4GeomTestSegment.cc

    r1337 r1347  
    2525//
    2626//
    27 // $Id: G4GeomTestSegment.cc,v 1.11 2007/11/16 09:39:14 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-04-beta-01 $
     27// $Id: G4GeomTestSegment.cc,v 1.13 2010/08/20 09:03:54 gcosmo Exp $
     28// GEANT4 tag $Name: geant4-09-04-ref-00 $
    2929//
    3030// --------------------------------------------------------------------
     
    275275  G4bool entering;
    276276  G4double vSurfN;
    277   // G4cout<<"Entering Find Some Points vSearch="<<vSearch<<" p="<<p<<G4endl;
    278   //
     277 
    279278  // Look for nearest intersection point in the specified
    280279  // direction and return if there isn't one
     
    283282  switch(solid->Inside(p)) {
    284283    case kInside:
    285        dist = solid->DistanceToOut(p,vSearch);
    286        // G4cout<<"Inside DistToOut="<<dist<<G4endl;
     284      dist = solid->DistanceToOut(p,vSearch);
    287285      if (dist >= kInfinity) {
    288286        logger->SolidProblem( solid,
     
    290288        return;
    291289      }
    292      
    293290      s += sign*dist;
    294291      entering = false;
     
    296293    case kOutside:
    297294      dist = solid->DistanceToIn(p,vSearch);
    298       //G4cout<<"Outside DistToIn="<<dist<<G4endl;
    299295      if (dist >= kInfinity) return;
    300      
    301296      s += sign*dist;
    302297      entering = true;
    303298      break;
    304299    case kSurface:
    305       vSurfN=vSearch.dot(solid->SurfaceNormal(p));
    306       if(std::abs(vSurfN)<kCarTolerance)vSurfN=0;
     300      vSurfN=v.dot(solid->SurfaceNormal(p));
     301      if(std::fabs(vSurfN)<kCarTolerance)vSurfN=0;
    307302      entering = (vSurfN < 0);
    308       //G4cout<<"Surface SurfN="<<solid->SurfaceNormal(p)<<" v.dotN="<<vSurfN<<" entering="<<entering<<G4endl;
    309303      break;
    310304    default:
     
    361355      //
    362356      points.push_back( G4GeomTestPoint( p, s, entering==forward ) );
    363       //G4cout<<"Add point p"<<p<<" s="<<s<<" entering="<<entering<<G4endl;
     357     
    364358    }
    365359   
     
    369363    if (entering) {
    370364      dist = solid->DistanceToOut(p,vSearch);
    371       //G4cout<<"if entering distToOut="<<dist<<G4endl;
    372365      if (dist >= kInfinity) {
    373366        logger->SolidProblem( solid,
     
    389382        return;
    390383      }
    391 
    392        if(std::abs(dist)<=kCarTolerance){
    393           G4double push = 1E-6;
    394           s += sign*push;
    395           p = p0 + s*v;
    396           EInside inside = solid->Inside(p);
    397           if (inside == kOutside) {
    398           entering = false;
    399           break;
    400         }
    401       }
    402 
    403      
     384           
    404385      entering = false;
    405386    }
    406387    else {
    407388      dist = solid->DistanceToIn(p,vSearch);
    408       //G4cout<<"if exiting distToIn="<<dist<<G4endl;
    409389      if (dist >= kInfinity) return;
    410390     
Note: See TracChangeset for help on using the changeset viewer.