7 #ifndef __surface_SurfaceDisk_h__ 8 #define __surface_SurfaceDisk_h__ 26 public SurfaceSphere::Impact,
32 #if FE_COUNTED_STORE_TRACKER 33 setName(
"SurfaceDisk::Impact");
36 virtual ~Impact(
void) {}
40 return transformVector(m_transform,
44 {
return m_intersection; }
62 using SurfaceSphere::sample;
67 using SurfaceSphere::nearestPoint;
70 Real a_maxDistance)
const 76 m_center,m_span,m_radius,
77 a_origin,direction,intersection);
78 if(a_maxDistance>0.0 && distance>a_maxDistance)
84 spImpact->setSurface(
this);
85 spImpact->setLocationLocal(m_center);
86 spImpact->setAxis(m_span/m_range);
87 spImpact->setRadius(m_radius);
88 spImpact->setOrigin(a_origin);
89 spImpact->setDirection(direction);
90 spImpact->setIntersectionLocal(intersection);
91 spImpact->setDistance(distance);
95 using SurfaceSphere::rayImpact;
99 Real a_maxDistance,BWORD a_anyHit)
const 104 m_center,m_span,m_radius,
105 a_origin,a_direction,intersection);
106 if(a_maxDistance>0.0 && distance>a_maxDistance)
112 spImpact->setSurface(
this);
113 spImpact->setLocationLocal(m_center);
114 spImpact->setAxis(m_span/m_range);
115 spImpact->setRadius(m_radius);
116 spImpact->setOrigin(a_origin);
117 spImpact->setDirection(a_direction);
118 spImpact->setIntersectionLocal(intersection);
119 spImpact->setDistance(distance);
123 using SurfaceSphere::draw;
133 m_range=magnitude(m_span);
143 virtual void updateSphere(
void) {}
144 virtual void cache(
void);
145 virtual void resolveImpact(
sp<ImpactI> a_spImpactI)
const Flat Circular Surface.
Definition: SurfaceDisk.h:20
Find intersection between ray and circular solid.
Definition: RayDiskIntersect.h:21
Base class providing protection counting for cp<>
Definition: Protectable.h:28
kernel
Definition: namespace.dox:3
Special vector for color (RGBA)
Definition: Color.h:21
Spherical Surface.
Definition: SurfaceSphere.h:20
Intrusive Smart Pointer.
Definition: src/core/ptr.h:53
Find point nearest to a circular solid.
Definition: PointDiskNearest.h:21
Per-class participation non-RTTI fallback dynamic casting mechanism.
Definition: Castable.h:192