PhotoGENius V1.0.0
A basic library for generating photorealistic images, developed for the course Numerical techniques for photorealistic image generation.
Public Member Functions | Public Attributes | List of all members
PGENLib.Shape Class Reference

Interface for a generic 3D shape: the method RayIntersection is implemented in different concrete shapes. More...

Inheritance diagram for PGENLib.Shape:
PGENLib.Cylinder PGENLib.Sphere PGENLib.XyPlane

Public Member Functions

virtual ? HitRecord RayIntersection (Ray ray)
 Compute the intersection between a ray and a shape More...
 
virtual bool QuickRayIntersection (Ray ray)
 Determine whether a ray hits the shape or not More...
 

Public Attributes

Transformation Transf
 
Material Material
 

Detailed Description

Interface for a generic 3D shape: the method RayIntersection is implemented in different concrete shapes.

Member Function Documentation

◆ QuickRayIntersection()

virtual bool PGENLib.Shape.QuickRayIntersection ( Ray  ray)
virtual

Determine whether a ray hits the shape or not

Parameters
ray
Returns
Exceptions
NotImplementedException

Reimplemented in PGENLib.Sphere, PGENLib.XyPlane, and PGENLib.Cylinder.

◆ RayIntersection()

virtual ? HitRecord PGENLib.Shape.RayIntersection ( Ray  ray)
virtual

Compute the intersection between a ray and a shape

Parameters
ray
Returns
Exceptions
NotImplementedException

Reimplemented in PGENLib.Sphere, PGENLib.XyPlane, and PGENLib.Cylinder.


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