Go to the documentation of this file. 1 #ifndef Geom_Cylinder_H
2 #define Geom_Cylinder_H
21 template <
typename... Args>
virtual float width() const =0
Scalar radius() const
Radius of the cylinder.
Side side(const LocalPoint &p, Scalar toler) const override
SurfaceOrientation::Side Side
ReferenceCountingPointer< Cylinder > BoundCylinderPointer
Plane fastTangent(const GlobalPoint &aPoint) const
tangent plane to surface from global point
Plane fastTangent(const LocalPoint &aPoint) const
tangent plane to surface from local point
TkRotation< float > RotationType
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
const Bounds & bounds() const
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
ConstReferenceCountingPointer< Cylinder > ConstBoundCylinderPointer
Cylinder(const PositionType &pos, const RotationType &rot, SimpleCylinderBounds const &bounds)
virtual float thickness() const =0
ConstReferenceCountingPointer< TangentPlane > tangentPlane(const GlobalPoint &) const override
tangent plane to surface from global point
static CylinderPointer build(const PositionType &pos, const RotationType &rot, Scalar radius, Bounds *bounds=nullptr)
Vector3DBase< typename PreciseFloatType< T, U >::Type, FrameTag > cross(const Vector3DBase< U, FrameTag > &v) const
static CylinderPointer build(Scalar radius, const PositionType &pos, const RotationType &rot, Bounds *bounds=nullptr)
ReferenceCountingPointer< Cylinder > CylinderPointer
ConstReferenceCountingPointer< Cylinder > ConstCylinderPointer
Cylinder(Scalar radius, Args &&... args)
const PositionType & position() const
virtual Side side(const LocalPoint &p, Scalar tolerance=0) const =0
static float computeRadius(Bounds const &bounds)
const RotationType & rotation() const