class
OffsetGeometry
: public Geometry
(Return to index)
A geometry which offset with respect to some global geometry.
OffsetGeometry effectively acts as a bridge between two geometries,
designated as the global geometry and the local geometry. The global
geometry is used to define a segment of the true global geometry, and
so most functions are delegated to the global geometry. The local and
global geometries are ``offset'' with respect to each other by a single
transformation (Euclid3D object), which defines the transformation from
the global geometry's Local Frame to the local geometry's Local Frame.
The two patch functions return the necessary transformations to/from the
global/local geometries. OffsetGeometry primary task is to calculate
these two patches. Note that when OffsetGeometry is being used to model
an alignment error, the local and global geometries can both refer to
the same geometry.
Type: |
Instantiable |
Superclasses: |
public Geometry |
Include file: |
./BeamlineGeometry/OffsetGeometry.hh |
Inheritance
Synopsis (including inherited members):
Documentation:
- Public members:
-
OffsetGeometry
(const Geometry&,const Geometry&,const Euclid3D&)
;
- Constructor.
Assign the global and local geometries,
and the displacement euclid between their origins.
-
OffsetGeometry
(const Geometry&,const Euclid3D&)
;
- Constructor.
Both global and local geometries are set to geom,
and the displacement is euclid.
-
virtual double getArcLength
()const
;
- Get arc length.
Return the length of the global geometry,
measured along its design arc.
-
virtual double getElementLength
()const
;
- Get design length.
Return the design length of the global geometry,
measured along its design polygone.
-
virtual double getEntrance
()const
;
- Get entrance position.
Return the arc length from the origin to the entrance of the
global geometry (non-positive).
-
virtual Euclid3D getEntranceFrame
()const
;
- Get transform.
Equivalent to getTransform(0.0, getEntrance()).
Return the transform of the local coordinate system from the
global origin to the entrance of the element.
-
virtual Euclid3D getEntrancePatch
()const
;
- Get patch.
Return the entrance patch (transformation) which is used to transform
the global geometry to the local geometry at entrance.
-
virtual double getExit
()const
;
- Get exit position.
Return the arc length from the origin to the exit of the
global geometry (non-negative).
-
virtual Euclid3D getExitFrame
()const
;
- Get transform.
Equivalent to getTransform(0.0, getExit()).
Return the transform of the local coordinate system from the
global origin to the exit of the element.
-
virtual Euclid3D getExitPatch
()const
;
- Get patch.
Returns the entrance patch (transformation) which is used to transform
the local geometry to the global geometry at exit.
-
Euclid3D getGlobalToLocalTransform
(double,double)const
;
- Transform global to local.
Special OffsetGeometry function which calculates the transformation
from position globalS on the global geometry to position
localS on the local geometry.
-
Euclid3D getGtoL
()const
;
- Get displacement.
Return the displacement from the global to the local origin.
-
virtual double getOrigin
()const
;
- Get origin.
Return the arc length from the entrance to the origin of the
global geometry (non-negative).
-
virtual Euclid3D getTotalTransform
()const
;
- Get transform.
Equivalent to getTransform(getEntrance(), getExit()).
Return the transform of the global coordinate system from the
entrance to the exit of the element.
-
virtual Euclid3D getTransform
(double,double)const
;
- Get transform.
Return the transform of the global coordinate system from the
position fromS to the position toS.
-
virtual Euclid3D getTransform
(double)const
;
- Get transform.
Equivalent to getTransform(0.0, s).
Return the transform of the local coordinate system from the
global origin at s.
-
void setGtoL
(const Euclid3D&)
;
- Set displacement.
Assign the displacement from the global to the local origin.
Documentation generated by fci on Mon Feb 7 11:41:47 2000