Note: This shape isn't closed, so there may be odd lighting issues if it's oriented the wrong way.

csg_plane(x = 0, y = 0, z = 0, normal = c(0, 1, 0), width_x = 4, width_z = 4)

Arguments

x

Default `0`. An x-coordinate on the plane.

y

Default `0`. A y-coordinate on the plane.

z

Default `0`. A z-coordinate on the plane.

normal

Default `c(0,1,0)`. Surface normal of the plane.

width_x

Default `10`.

width_z

Default `10`.

Value

List describing the plane in the scene.

Examples

if(run_documentation()) {
#Generate a plane
csg_object(csg_plane(width_x=4, width_z=4), material=diffuse(checkercolor="purple")) %>% 
  add_object(sphere(y=5,x=5,material=light(intensity=40))) %>% 
  render_scene(clamp_value=10, samples=16)
 }

if(run_documentation()) {
#Combine the plane with a sphere
csg_object(csg_combine(
    csg_sphere(radius=0.5),
    csg_plane(width_x=4, width_z=4,y=-0.5), 
    operation="blend"),material=diffuse(checkercolor="purple")) %>% 
  add_object(sphere(y=5,x=5,material=light(intensity=40))) %>% 
  render_scene(clamp_value=10, samples=16)
  }

if(run_documentation()) {
#Re-orient the plane using the normal and 
csg_object(csg_combine(
    csg_sphere(radius=0.5),
    csg_plane(normal = c(1,1,0),width_x=4, width_z=4,y=-0.5), 
    operation="blend"),material=diffuse(checkercolor="purple")) %>% 
  add_object(sphere(y=5,x=5,material=light(intensity=40))) %>% 
  render_scene(clamp_value=10, samples=16)
}