|
| AlignmentToPathMatrix | alignmentToPathDerivative (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const final |
| | Calculate the derivative of path length at the geometry constraint or point-of-closest-approach w.r.t.
|
| void | assignSurfaceBounds (std::shared_ptr< const ConeBounds > newBounds) |
| | Overwrite the existing surface bounds with new ones.
|
| const ConeBounds & | bounds () const final |
| | This method returns the ConeBounds by reference.
|
| const std::shared_ptr< const ConeBounds > & | boundsPtr () const |
| | This method returns the shared_ptr to the ConeBounds.
|
| Result< Vector2 > | globalToLocal (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, double tolerance=s_onSurfaceTolerance) const final |
| | Convert a global position to a local one this is the most generic interface, which is implemented by all surfaces.
|
| Result< Vector2 > | globalToLocal (const GeometryContext &gctx, const Vector3 &position, double tolerance=s_onSurfaceTolerance) const final |
| | Global to local transformation.
|
| MultiIntersection3D | intersect (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const BoundaryTolerance &boundaryTolerance=BoundaryTolerance::Infinite(), double tolerance=s_onSurfaceTolerance) const final |
| | Straight line intersection schema from position/direction.
|
| ActsMatrix< 2, 3 > | localCartesianToBoundLocalDerivative (const GeometryContext &gctx, const Vector3 &position) const final |
| | Calculate the derivative of bound track parameters local position w.r.t.
|
| Vector3 | localToGlobal (const GeometryContext &gctx, const Vector2 &lposition) const final |
| | Local to global transformation.
|
| Vector3 | localToGlobal (const GeometryContext &gctx, const Vector2 &lposition, const Vector3 &direction) const final |
| | Local to global transformation.
|
| std::string | name () const override |
| | Return properly formatted class name for screen output.
|
| Vector3 | normal (const GeometryContext &gctx, const Vector2 &lposition) const final |
| | Return method for surface normal information.
|
| Vector3 | normal (const GeometryContext &gctx, const Vector3 &pos, const Vector3 &direction) const final |
| | Calculate the normal vector of the surface This overload is fully generic, fulfills the Surface interface and accepts a global position and a direction.
|
| Vector3 | normal (const GeometryContext &gctx, const Vector3 &position) const final |
| | Return method for surface normal information.
|
| ConeSurface & | operator= (const ConeSurface &other) |
| | Assignment operator.
|
| double | pathCorrection (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const final |
| | The pathCorrection for derived classes with thickness.
|
| Polyhedron | polyhedronRepresentation (const GeometryContext &gctx, unsigned int quarterSegments=2u) const override |
| | Return a Polyhedron for the surfaces.
|
| RotationMatrix3 | referenceFrame (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const final |
| | Return the measurement frame - this is needed for alignment, in particular for StraightLine and Perigee Surface.
|
| Vector3 | referencePosition (const GeometryContext &gctx, AxisDirection aDir) const final |
| | The binning position method - is overloaded for r-type binning.
|
| virtual Vector3 | rotSymmetryAxis (const GeometryContext &gctx) const |
| SurfaceType | type () const override |
| | Return the surface type.
|
| Result< Vector2 > | globalToLocal (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, double tolerance=s_onSurfaceTolerance) const final |
| | Convert a global position to a local one this is the most generic interface, which is implemented by all surfaces.
|
| bool | isOnSurface (const GeometryContext &gctx, const Vector3 &position, const BoundaryTolerance &boundaryTolerance=BoundaryTolerance::None(), double tolerance=s_onSurfaceTolerance) const |
| | The geometric onSurface method.
|
| bool | isOnSurface (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const BoundaryTolerance &boundaryTolerance=BoundaryTolerance::None(), double tolerance=s_onSurfaceTolerance) const |
| | The geometric onSurface method.
|
| Vector3 | localToGlobal (const GeometryContext &gctx, const Vector2 &lposition, const Vector3 &direction) const final |
| | Local to global transformation.
|
| Vector3 | normal (const GeometryContext &gctx, const Vector3 &pos, const Vector3 &direction) const final |
| | Calculate the normal vector of the surface This overload is fully generic, fulfills the Surface interface and accepts a global position and a direction.
|
| | Surface (const GeometryContext &gctx, const Surface &other, const Transform3 &shift) noexcept |
| | Copy constructor with optional shift.
|
| | Surface (const Surface &other) noexcept |
| | Copy constructor.
|
| | Surface (const SurfacePlacementBase &placement) noexcept |
| | Constructor from SurfacePlacement: Element proxy.
|
| | Surface (const Transform3 &transform=Transform3::Identity()) |
| | Constructor with Transform3 as a shared object.
|
| | ~Surface () noexcept override |
| AlignmentToBoundMatrix | alignmentToBoundDerivative (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const FreeVector &pathDerivative) const |
| | The derivative of bound track parameters w.r.t.
|
| void | assignDetectorElement (const SurfacePlacementBase &detelement) |
| | Assign a detector element.
|
| void | assignIsSensitive (bool isSensitive) |
| | Assign whether the surface is sensitive.
|
| void | assignSurfaceMaterial (std::shared_ptr< const ISurfaceMaterial > material) |
| | Assign the surface material description.
|
| void | assignSurfacePlacement (const SurfacePlacementBase &placement) |
| | Assign a placement object which may dynamically align the surface in space.
|
| void | assignThickness (double thick) |
| | Assign the thickness of the surface in the orthogonal dimension.
|
| const DetectorElementBase * | associatedDetectorElement () const |
| | Return method for the associated Detector Element.
|
| const Layer * | associatedLayer () const |
| | Return method for the associated Layer in which the surface is embedded.
|
| void | associateLayer (const Layer &lay) |
| | Set Associated Layer Many surfaces can be associated to a Layer, but it might not be known yet during construction of the layer, this can be set afterwards.
|
| virtual BoundToFreeMatrix | boundToFreeJacobian (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const |
| | Calculate the jacobian from local to global which the surface knows best, hence the calculation is done here.
|
| virtual Vector3 | center (const GeometryContext &gctx) const |
| | Return method for the surface center.
|
| virtual Vector2 | closestPointOnBoundary (const Vector2 &lposition, const SquareMatrix2 &metric) const |
| | Calculates the closest point on the boundary of the surface to a given point in local coordinates.
|
| virtual double | distanceToBoundary (const Vector2 &lposition) const |
| | Calculates the distance to the boundary of the surface from a given point in local coordinates.
|
| virtual FreeToBoundMatrix | freeToBoundJacobian (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const |
| | Calculate the jacobian from global to local which the surface knows best, hence the calculation is done here.
|
| virtual FreeToPathMatrix | freeToPathDerivative (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction) const |
| | Calculate the derivative of path length at the geometry constraint or point-of-closest-approach w.r.t.
|
| std::shared_ptr< Surface > | getSharedPtr () |
| | Retrieve a std::shared_ptr for this surface (non-const version).
|
| std::shared_ptr< const Surface > | getSharedPtr () const |
| | Retrieve a std::shared_ptr for this surface (const version).
|
| virtual bool | insideBounds (const Vector2 &lposition, const BoundaryTolerance &boundaryTolerance=BoundaryTolerance::None()) const |
| | The insideBounds method for local positions.
|
| bool | isAlignable () const |
| | Returns whether the Surface is alignable.
|
| bool | isOnSurface (const GeometryContext &gctx, const Vector3 &position, const Vector3 &direction, const BoundaryTolerance &boundaryTolerance=BoundaryTolerance::None(), double tolerance=s_onSurfaceTolerance) const |
| | The geometric onSurface method.
|
| bool | isSensitive () const |
| | Returns whether the Surface is sensitive.
|
| const Transform3 & | localToGlobalTransform (const GeometryContext &gctx) const |
| | Return method for the surface Transform3 by reference In case a detector element is associated the surface transform is just forwarded to the detector element in order to keep the (mis-)alignment cache cetrally handled.
|
| Surface & | operator= (const Surface &other) |
| | Assignment operator.
|
| bool | operator== (const Surface &other) const |
| | Comparison (equality) operator The strategy for comparison is (a) first pointer comparison (b) then type comparison (c) then bounds comparison (d) then transform comparison.
|
| const ISurfaceMaterial * | surfaceMaterial () const |
| | Return method for the associated Material to this surface.
|
| const std::shared_ptr< const ISurfaceMaterial > & | surfaceMaterialSharedPtr () const |
| | Return method for the shared pointer to the associated Material.
|
| const SurfacePlacementBase * | surfacePlacement () const |
| | Return the associated surface placement if there is any.
|
| double | thickness () const |
| | Return the thickness of the surface in the normal direction.
|
| GeometryContextOstreamWrapper< Surface > | toStream (const GeometryContext &gctx) const |
| | Helper method for printing: the returned object captures the surface and the geometry context and will print the surface.
|
| std::string | toString (const GeometryContext &gctx) const |
| | Output into a std::string.
|
| const Transform3 & | transform (const GeometryContext &gctx) const |
| | Return method for the surface Transform3 by reference In case a detector element is associated the surface transform is just forwarded to the detector element in order to keep the (mis-)alignment cache cetrally handled.
|
| void | visualize (IVisualization3D &helper, const GeometryContext &gctx, const ViewConfig &viewConfig=s_viewSurface) const |
| | Visualize the surface for debugging and inspection.
|
| | GeometryObject ()=default |
| | Defaulted constructor.
|
| | GeometryObject (const GeometryIdentifier &geometryId) |
| | Constructor from a value.
|
| | GeometryObject (const GeometryObject &)=default |
| | Defaulted copy constructor.
|
| virtual | ~GeometryObject () noexcept=default |
| void | assignGeometryId (const GeometryIdentifier &geometryId) |
| | Set the value.
|
| GeometryIdentifier | geometryId () const |
| virtual double | referencePositionValue (const GeometryContext &gctx, AxisDirection aDir) const |
| | Implement the binningValue.
|
Class for a conical surface in the Tracking geometry.
It inherits from Surface.
The ConeSurface is special since no corresponding Track parameters exist since they're numerical instable at the tip of the cone. Propagations to a cone surface will be returned in curvilinear coordinates.