September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
|
|
@ -1,5 +1,5 @@
|
|||
func normalize (vec) { vec »/» (vec »*« vec -> sum.sqrt) }
|
||||
func dot (x, y) { -(x »*« y -> sum) ^max^ 0 }
|
||||
func dot (x, y) { -(x »*« y -> sum) `max` 0 }
|
||||
|
||||
var x = var y = 255
|
||||
x += 1 if x.is_even # must be odd
|
||||
|
|
@ -15,7 +15,7 @@ func draw_sphere(rad, k, ambient) {
|
|||
if ((var x2 = x*x) + (var y2 = y*y) < r2) {
|
||||
var vector = normalize([x, y, (r2 - x2 - y2).sqrt])
|
||||
var intensity = (dot(light, vector)**k + ambient)
|
||||
var pixel = (0 ^max^ (intensity*depth -> int) ^min^ depth)
|
||||
var pixel = (0 `max` (intensity*depth -> int) `min` depth)
|
||||
pixels << pixel
|
||||
}
|
||||
else {
|
||||
|
|
@ -29,5 +29,5 @@ var outfile = %f'sphere-sidef.pgm'
|
|||
var out = outfile.open('>:raw')
|
||||
|
||||
out.say("P5\n#{x} #{y}\n#{depth}") # .pgm header
|
||||
out.write(draw_sphere((x-1)/2, .9, .2).map{.chr}.join)
|
||||
out.print(draw_sphere((x-1)/2, .9, .2).map{.chr}.join)
|
||||
out.close
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue