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