Message: Coordinates transformation in the G4NormalNavigation Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

Question Coordinates transformation in the G4NormalNavigation 

Forum: Geometry
Date: 07 Mar, 2014
From: Yuefeng Qiu <Yuefeng Qiu>

Hello everyone,

I have a question on the G4NormalNavigation about the transformation of points.

In the G4NormalNavigation::LevelLocate() method, a Point for Daugther volume is calculated using

        samplePoint = history.GetTopTransform().TransformPoint(globalPoint);

But I think it should be transform from a localPoint inside its mother LV using its transformation:

        samplePoint = history.GetTopTransform().TransformPoint(localPoint);

why?

Another question is that, in the G4NormalNavigation::ComputeSafety() method, a Point for Dauther volume is calculated using

G4AffineTransform sampleTf(samplePhysical->GetRotation(),
                               samplePhysical->GetTranslation());
    sampleTf.Invert();
    const G4ThreeVector samplePoint =
            sampleTf.TransformPoint(localPoint);

why we need to INVERT this transformation?

Actually I am not understanding the geometry transformation mechanism in Geant4 very well. I am expecting patient answers for me. Thanks a lot!

Best regards, Yuefeng

 Add Message Add Message
to: "Coordinates transformation in the G4NormalNavigation"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]