class RayTracer::Material
- RayTracer::Material
- Reference
- Object
Included Modules
Defined in:
ray_tracer/material.crConstructors
Instance Method Summary
-
#==(other)
Returns
false
(other can only be aValue
here). - #ambient : Float32
- #ambient=(ambient : Float32)
- #diffuse : Float32
- #diffuse=(diffuse : Float32)
-
#dup(deep = false)
Returns a shallow copy of this object.
- #lighting(object, light, point, eyev, normalv, in_shadow = false)
- #pattern : Pattern
- #pattern=(pattern : Pattern)
- #shininess : Float32
- #shininess=(shininess : Float32)
- #specular : Float32
- #specular=(specular : Float32)
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 methods inherited from module RayTracer::Color
abs(c : COLOR)
abs,
add(c1 : COLOR, c2 : COLOR)
add,
color(r : Float32, g : Float32, b : Float32)color(h : Int32) color, divide(c : COLOR, s : Float32) divide, multiply(c : COLOR, s : Float32)
multiply(c1 : COLOR, c2 : COLOR) multiply, subtract(c1 : COLOR, c2 : COLOR) subtract
Constructor Detail
def self.new(pattern : Pattern = SolidPattern.new(WHITE), ambient : Float32 = 0.1_f32, diffuse : Float32 = 0.9_f32, specular : Float32 = 0.9_f32, shininess : Float32 = 200.0_f32)
#
Instance Method Detail
def ==(other)
#
Description copied from class Reference
Returns false
(other can only be a Value
here).
def dup(deep = false)
#
Description copied from class Reference
Returns a shallow copy of this object.
This allocates a new object and copies the contents of
self
into it.