class Hitable::InterpolatedTriangle

Direct Known Subclasses

Defined in:

hitables/triangle.cr

Constructors

Instance Method Summary

Instance methods inherited from class Hitable::Triangle

a : Point a, b : Point b, barycentric_coordinates(p) barycentric_coordinates, c : Point c, edge1 : Vector edge1, edge2 : Vector edge2, get_normal(ray, point, u, v) get_normal, get_uv(ray, point, u, v) get_uv, hit(ray) hit, material : Material material, material=(material : Material) material=, normal : Normal normal

Constructor methods inherited from class Hitable::Triangle

new(a, b, c, material, flipped = false) new

Instance methods inherited from class BoundedHitable

bounding_box : AABB bounding_box, bounding_box=(bounding_box : AABB) bounding_box=

Constructor methods inherited from class BoundedHitable

new new

Instance methods inherited from class Hitable

area : Float64 area, area_light : Light? area_light, area_light=(area_light : Light?) area_light=, hit(ray : Ray) : HitRecord? hit, pdf(point : Point, wi : Vector) : Float64
pdf(point : Point) : Float64
pdf
, rotate(axis : Vector, degrees : Float64) : Hitable rotate, rotate_x(degrees : Float64) : Hitable rotate_x, rotate_y(degrees : Float64) : Hitable rotate_y, rotate_z(degrees : Float64) : Hitable rotate_z, sample(origin) : ::Tuple(Point, Normal)
sample : ::Tuple(Point, Normal)
sample
, scale(size : Float64) : Hitable scale, translate(offset : Vector) : Hitable translate

Constructor Detail

def self.new(a, b, c, na, nb, nc, material) #

[View source]

Instance Method Detail

def get_normal(ray, point, u, v) #

[View source]
def na : Normal #

Vertex normals


[View source]
def nb : Normal #

Vertex normals


[View source]
def nc : Normal #

Vertex normals


[View source]