class RayTracer::Plane

Defined in:

ray_tracer/plane.cr

Constant Summary

NORMAL = Tuple.vector(0, 1, 0)

Instance Method Summary

Instance methods inherited from class RayTracer::Shape

==(other) ==, intersect(ray : Ray) : Intersections intersect, inverse_transform : Matrix inverse_transform, local_intersect(ray : Ray) : Intersections local_intersect, local_normal_at(point : TUPLE) local_normal_at, material : RayTracer::Material material, material=(material : RayTracer::Material) material=, normal_at(point : TUPLE) normal_at, transform : Matrix transform, transform=(val : Matrix) transform=, transpose_inverse_transform : Matrix transpose_inverse_transform

Constructor methods inherited from class RayTracer::Shape

new(transform : RayTracer::Matrix = Matrix::IDENTITY_4, material : RayTracer::Material = Material.new) new

Instance methods inherited from module RayTracer::Tuple

add(a1 : TUPLE, a2 : TUPLE) add, cross(a1 : TUPLE, a2 : TUPLE) cross, divide(a : TUPLE, s : Float64) divide, dot(a1 : TUPLE, a2 : TUPLE) dot, magnitude(a : TUPLE) magnitude, multiply(a : TUPLE, s : Float64) multiply, negate(a : TUPLE) negate, normalize(a : TUPLE) normalize, point(x : Float64, y : Float64, z : Float64) point, point?(tuple : TUPLE) point?, reflect(v : TUPLE, n : TUPLE) reflect, subtract(a1 : TUPLE, a2 : TUPLE) subtract, tuple(x : Float64, y : Float64, z : Float64, w : Float64)
tuple(vals : Array(Float64))
tuple
, vector(x : Float64, y : Float64, z : Float64) vector, vector?(tuple : TUPLE) vector?

Instance Method Detail

def local_intersect(ray : Ray) : Intersections #

[View source]
def local_normal_at(point : TUPLE) #

[View source]