RayMarching  0.0.1
Simple 3D engine based on a ray marching rendering
Public Member Functions | List of all members
RayMarching::Sphere Class Reference

Sphere Shape. More...

#include <models3.h>

Inheritance diagram for RayMarching::Sphere:
RayMarching::Shape RayMarching::SDFObject

Public Member Functions

 Sphere (Eigen::Vector3d p, double r=0, color_t color=BLACK)
 
 ~Sphere () override=default
 
double getDist (const Eigen::Vector3d &p) const override
 
double getRadius () const
 
- Public Member Functions inherited from RayMarching::Shape
 Shape (color_t color=BLACK)
 
 Shape (Eigen::Vector3d p, color_t color=BLACK)
 
virtual Eigen::Vector3d getPos () const
 
color_t getColor (const Eigen::Vector3d &p) const override
 
void setColor (color_t color)
 
- Public Member Functions inherited from RayMarching::SDFObject
virtual ~SDFObject ()=default
 
Line getReflection (const Line &ray) const
 

Additional Inherited Members

- Protected Attributes inherited from RayMarching::Shape
Eigen::Vector3d _pos
 
color_t _color
 

Detailed Description

Sphere Shape.

Constructor & Destructor Documentation

◆ Sphere()

RayMarching::Sphere::Sphere ( Eigen::Vector3d  p,
double  r = 0,
color_t  color = BLACK 
)
inlineexplicit

Default constructor

Parameters
pPosition in space
rradius
colorSphere color

◆ ~Sphere()

RayMarching::Sphere::~Sphere ( )
overridedefault

Default destructor

Member Function Documentation

◆ getDist()

double RayMarching::Sphere::getDist ( const Eigen::Vector3d &  p) const
overridevirtual

SDF function

Parameters
pRequesting point
Returns
distance to the SDFObject

Implements RayMarching::SDFObject.

◆ getRadius()

double RayMarching::Sphere::getRadius ( ) const
inline

Radius getter

Returns
Sphere radius

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