csg_cone: CSG Cone

View source: R/csg_construct.R

csg_coneR Documentation

CSG Cone

Description

CSG Cone

Usage

csg_cone(start = c(0, 0, 0), end = c(0, 1, 0), radius = 0.5)

Arguments

start

Default 'c(0, 0, 0)'. Start point of the cone, specifing 'x', 'y', 'z'.

end

Default 'c(0, 1, 0)'. End point of the cone, specifing 'x', 'y', 'z'.

radius

Default '1'. Radius of the bottom of the cone.

Value

List describing the box in the scene.

Examples

if(run_documentation()) {
#Generate a basic cone:
generate_ground(material=diffuse(checkercolor="grey20")) %>% 
  add_object(csg_object(csg_cone(),material=glossy(color="red"))) %>% 
  render_scene(clamp_value=10,fov=20)
  }
if(run_documentation()) {
#Change the orientation by specifying a start and end
generate_ground(material=diffuse(color="dodgerblue4",checkercolor="grey10")) %>% 
  add_object(csg_object(csg_cone(start = c(-1,0.5,-2), end = c(1,0.5,-2),
  radius=0.5),material=glossy(checkercolor="red"))) %>% 
  render_scene(clamp_value=10,fov=20,
               lookat=c(0,0.5,-2),lookfrom=c(3,3,10))
 }
if(run_documentation()) {
#Show the effect of changing the radius
generate_ground(material=diffuse(color="dodgerblue4",checkercolor="grey10")) %>% 
  add_object(csg_object(
    csg_combine(
    csg_cone(start = c(-1,0.5,-2), end = c(1,0.5,-2), radius=0.5),
    csg_cone(start = c(-0.5,1.5,-2), end = c(0.5,1.5,-2), radius=0.2)),
    material=glossy(checkercolor="red"))) %>% 
  render_scene(clamp_value=10,fov=20,
               lookat=c(0,0.5,-2),lookfrom=c(-3,3,10))
    }
if(run_documentation()) {           
#Render a glass cone in a Cornell box
generate_cornell() %>% 
  add_object(csg_object(
    csg_cone(start = c(555/2,0,555/2), end = c(555/2,555/2+100,555/2), radius=100),
    material=dielectric(attenuation=c(1,1,0.3)/100))) %>% 
  render_scene(clamp_value=10)
}

rayrender documentation built on Sept. 11, 2024, 8:31 p.m.