Open 3D Engine AzToolsFramework API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AzToolsFramework::Picking::ManipulatorBoundTorus Class Reference

Inherits AzToolsFramework::Picking::BoundShapeInterface.

Public Member Functions

 AZ_RTTI (ManipulatorBoundTorus, "{46E4711C-178A-4F97-BC14-A048D096E7A1}", BoundShapeInterface)
 
 AZ_CLASS_ALLOCATOR (ManipulatorBoundTorus, AZ::SystemAllocator)
 
 ManipulatorBoundTorus (RegisteredBoundId boundId)
 
bool IntersectRay (const AZ::Vector3 &rayOrigin, const AZ::Vector3 &rayDir, float &rayIntersectionDistance) override
 
void SetShapeData (const BoundRequestShapeBase &shapeData) override
 
- Public Member Functions inherited from AzToolsFramework::Picking::BoundShapeInterface
 AZ_RTTI (BoundShapeInterface, "{C639CB8E-1957-4E4F-B889-3BE1DFBC358D}")
 
 BoundShapeInterface (const RegisteredBoundId boundId)
 
RegisteredBoundId GetBoundId () const
 
virtual bool IntersectRay (const AZ::Vector3 &rayOrigin, const AZ::Vector3 &rayDir, float &rayIntersectionDistance)=0
 
virtual void SetShapeData (const BoundRequestShapeBase &shapeData)=0
 
void SetValidity (bool valid)
 
bool IsValid () const
 

Public Attributes

AZ::Vector3 m_center = AZ::Vector3::CreateZero()
 
AZ::Vector3 m_axis = AZ::Vector3::CreateZero()
 
float m_majorRadius = 0.0f
 Usually denoted as "R", the distance from the center of the tube to the center of the torus.
 
float m_minorRadius = 0.0f
 Usually denoted as "r", the radius of the tube.
 

Member Function Documentation

◆ IntersectRay()

bool AzToolsFramework::Picking::ManipulatorBoundTorus::IntersectRay ( const AZ::Vector3 &  rayOrigin,
const AZ::Vector3 &  rayDir,
float &  rayIntersectionDistance 
)
overridevirtual
Parameters
rayOriginThe origin of the ray to test with.
rayDirThe direction of the ray to test with.
[out]rayIntersectionDistanceThe distance of the intersecting point closest to the ray origin.
Returns
Boolean indicating whether there is a least one intersecting point between this bound shape and the ray.

Implements AzToolsFramework::Picking::BoundShapeInterface.

◆ SetShapeData()

void AzToolsFramework::Picking::ManipulatorBoundTorus::SetShapeData ( const BoundRequestShapeBase shapeData)
overridevirtual

The documentation for this class was generated from the following file: