#version 3.8; global_settings { assumed_gamma 1 } #declare Grey05 = srgb <0.05,0.05,0.05>; background { color Grey05 } #declare Camera00 = camera { perspective location <3,3,-3.001> sky y angle 35 right x*(image_width/image_height) look_at <0,0,0> } #declare White = srgb <1,1,1>; #declare Light00 = light_source { <0,0,0>, White } #declare SphereEncloseLight = sphere { <0,0,0>, 0.1 } #include "functions.inc" #declare FnctOnion = function { pattern {onion sine_wave frequency 50} } #declare FnctAt0 = function (x,y,z) { 0 } #declare FnctAt1 = function (x,y,z) { 1 } #declare FnctLight00 = function (x,y,z) { FnctOnion(x,0,z) } #declare PigLight00 = pigment { user_defined { function { FnctAt1(x,y,z) }, function { FnctAt1(x,y,z) }, function { FnctAt1(x,y,z) }, function { FnctAt0(x,y,z) }, function { FnctLight00(x,y,z) } } } #declare TxtrLight00 = texture { pigment { PigLight00 } } #declare ObjLight00 = object { SphereEncloseLight texture { TxtrLight00 } hollow } #declare UnionLight00 = union { light_source { Light00 } object { ObjLight00 } } #declare LightFxtr01 = object { UnionLight00 translate <0,2,0> } #declare LightFxtr02 = object { UnionLight00 rotate z*45 translate <-2,2,0> } #declare Plane00 = plane { <0,1,0>, 0 pigment { color White } } #declare Red = srgb <1,0,0>; #declare CylinderX = cylinder { <-1,0,0>, <1,0,0>, 0.01 pigment { color Red } } #declare Green = srgb <0,1,0>; #declare CylinderY = cylinder { <0,-1,0>, <0,1,0>, 0.01 pigment { color Green } } #declare Blue = srgb <0,0,1>; #declare CylinderZ = cylinder { <0,0,-1>, <0,0,1>, 0.01 pigment { color Blue } } //--- scene --- camera { Camera00 } object { CylinderX } object { CylinderY } object { CylinderZ } // object { LightFxtr01 } object { LightFxtr02 } object { Plane00 }