POV-Ray : Newsgroups : povray.binaries.images : Table and chairs : Table and chairs Server Time
1 Aug 2024 22:20:32 EDT (-0400)
  Table and chairs  
From: PM 2Ring
Date: 10 Apr 2005 09:30:00
Message: <web.42592814c2a255b5ebf82b440@news.povray.org>
Is it a cheesy diner from the 60s, or a boardroom? You decide. :) I'm going
to get back to work on this scene soon. Chairs like these were in fashion
from the 50s through to the 70s. Feel free to check out the various crazy
carpets.

// Persistence of Vision Ray Tracer Scene Description File
// File: TableChairs.pov
// Vers: 3.5
// Desc: Tube frame table & chairs on a carpet in a simple room
// Date: 2004 Apr 7
// Auth: PM 2Ring
//
//
// +A0.25 +AM2 +R4 -J0
//

#version 3.5;

#include "colors.inc"
#include "textures.inc"
#include "metals.inc"
#include "skies.inc"
#include "woods.inc"
#include "glass.inc"

global_settings {
  assumed_gamma 1.0 //2.2
  max_trace_level 10
}

// ----------------------------------------

camera {
  location  <0.0, 12, -100> *.85
  direction 2*z
  right     x*image_width/image_height
  look_at   <0.0, 0.05,  0.0>
  //rotate    180*y
  //translate x*0.014 * 1.1 * 102.6109156
}

//light_source {<0.0, 85.0, -90.0> colour Gray95}
//light_source {<0.0, 50.0, 0.0> colour Gray20}
light_source {<0.0, 60.0, 0.0>
  White
  //rgb<1,.99,.9>
}
//light_source {<0.0, 250.0, 0.0> colour White}

// ---The Textures-------------------------

//For quicker renders of chrome tubing
#declare T_Test =
texture{
  pigment {LightSteelBlue}
  finish{
    //ambient .35
    phong 0.9
    phong_size 200
    //reflection 0.1
  }
}

//Upholstery
#declare T_Seat =
texture {
  pigment {
    //Black
    //Yellow
    //Red
    //DarkSlateBlue
    //DustyRose
    HuntersGreen
    //rgb <0.05, 0.05, 0.10>
    //rgb <0.10, 0.10, 0.12>
  }
  finish {
    //ambient 0.6
    //reflection 0.5
    phong 1.0
    phong_size 250
  }
  //scale <0.5, 5, .5>
}

//Floor coverings
#declare T_Lino =
texture {
  pigment {checker pigment{White} pigment{White_Marble} scale 10}
  //finish{Glossy}
}

//Layered texture
#declare T_MarbTiles =
texture{pigment{White_Marble scale 1.5*3}}
texture{
  pigment {
    checker
      pigment{White transmit .25 filter .25}
      pigment{HuntersGreen transmit .25 filter .25},
    scale 4 * sqrt(2.0)
  }
  finish {
    //Glossy
    //Shiny
    reflection 0.25
    ambient 0.2
    //diffuse 0.4
  }
  rotate 45 * y
}

#declare T_Carpet1 =
texture {
  pigment {
    // image maps into X-Y plane from <0,0,0> to <1,1,0>
    image_map {
      sys "Santa Fe Stucco.bmp" // Windows2000 wallpaper tile.
      map_type 0        // 0=planar, 1=spherical, 2=cylindrical, 5=torus
      interpolate 2     // 0=none, 1=linear, 2=bilinear, 4=normalized
distance
      // once           // for no repetitive tiling
    } // image_map
    rotate 90 * x
    scale 30
  }
}

#declare T_Carpet2 =
texture {
  pigment {
    //wrinkles      // for use with pigment{}
    //bozo
    granite
    //leopard
    color_map {
      [0.0 rgb <0.5, 0.6, 0.5>]
      [0.1 rgb <0.0, 0.3, 0.0>]
      [0.2 rgb 0]
      [0.3 rgb <0.0, 0.5, 0.1>]
      [0.5 rgb <0.9, 0.9, 0.2>]
      [0.6 rgb <0.1, 0.8, 0.3>]
      [0.7 color Black]
      [0.8 rgb <0.1, 0.8, 0.3>]
      [0.9 rgb <0.0, 0.4, 0.1>]
      [1.0 rgb <0.7, 0.7, 0.9>]
    }
    turbulence .5
    scale 30
  }
  normal{granite 0.75 scale 25}
}

#declare T_Carpet3 =
texture {
  pigment {
    wrinkles      // no parameter for use with pigment{}
    //granite
    //leopard
    color_map {
      [0.0 rgb <0.5, 0.0, 0.5>]
      [0.1 rgb <0.0, 0.0, 0.0>]
      [0.2 rgb 0]
      [0.3 rgb <0.0, 0.0, 0.1>]
      [0.5 rgb <0.9, 0.0, 0.2>]
      [0.6 rgb <0.1, 0.0, 0.3>]
      [0.65 color Black]
      [0.7 color Yellow]
      [0.75 color Black]
      [0.8 rgb <0.1, 0.0, 0.3>]
      [0.9 rgb <0.0, 0.0, 0.1>]
      [1.0 rgb <0.7, 0.0, 0.9>]
    }
    scale 2
  }
  normal{wrinkles 0.5 scale 4}
}

//Wall coverings
#declare P_Plain = pigment {
  //rgb<0.9, 0.85, 0.75>
  HuntersGreen
  }

#declare P_Panel1 =
pigment {
  wood
  color_map {
    [0.0 color DarkTan]
    [0.9 color DarkBrown]
    [1.0 color VeryDarkBrown]
  }
  turbulence 0.275
  scale <0.2, 0.3, 1> * .04
  rotate 90*x
}

#declare P_Panel2 = pigment{
  //bozo
  leopard
  color_map {
    [0.0 color DarkTan]
    [0.9 color DarkBrown]
    [1.0 color VeryDarkBrown]
  }
  turbulence 0.275
  scale <0.2, 0.3, 1> * .04
  rotate 90*x
}

//---------------Wall & floor settings------------------------------------

#declare P_Panel =
P_Panel1
//P_Panel2

#declare T_Floor =
T_MarbTiles
//T_Lino
//T_Carpet3

//#declare T_Seat = texture{T_Carpet2 finish{Glossy}}

//---------------------------------------------------

#declare T_Room =
texture {
  pigment {
    gradient y scale 91
    pigment_map
    {
      [0.0 White]
      [0.025 White]
      [0.025 P_Panel]
      [0.3275 P_Panel]
      [0.3275 White]
      [0.34 White]
      [0.34 P_Plain]
      [0.90 P_Plain]
      [0.90 White]
      [1.0 White]
    }
  }
  finish {
    //Glossy
    //Shiny
    ambient 0.1
    diffuse 0.2
    //brilliance 7
  }
}

// ----------The Objects-------------------

#declare FloorDepth = -0.5;

//The Room =
#declare S_Room = box { <-48,FloorDepth-.5,-100>, <48,90.5+FloorDepth,100> }

#declare Floor =
intersection{
  plane { y, FloorDepth texture {T_Floor} }
  object {S_Room}
}

#declare WW = 1.5;            //Window frame width
#declare Window =
union{
difference{
  box{<-40-WW, 40-WW, 99.5-2*WW>, <40+WW, 70+WW, 100.5+2*WW> pigment{White}}
 //Frame
  box{<-40, 40, 99.5-4*WW>, <40, 70, 100.5*4*WW> pigment{White}}
 //Hole
  }
  box{<-40, 40, 99.5>, <40, 70, 100.5>
 //Pane
    pigment{rgbt<.95,1,.925,1.0>}
    finish{
      //phong .75
      //phong_size 130
      specular 0.5
      roughness 0.00125
      reflection 0.25
      ambient 0.0
      diffuse 0.0
    }
    interior{I_Glass ior 1.5}
  }
  scale <.75, .85, 1>
  translate -3.5 * y
}


#declare Room =
difference{
  union{
    object{S_Room hollow texture {T_Room}}
    object{Floor}
  }
  object{Window}
}

// ----------------------------------------

#declare TubeR = 0.50;
#declare ChairFrame =
sphere_sweep {
  linear_spline,
  11,

  <-5, 0, 5>, TubeR
  < 5, 0, 5>, TubeR
  < 5, 0,-5>, TubeR

  < 5,10,-5>, TubeR
  < 5,10, 5>, TubeR

  < 5,20, 5>, TubeR
  <-5,20, 5>, TubeR

  <-5,10, 5>, TubeR
  <-5,10,-5>, TubeR

  <-5, 0,-5>, TubeR
  <-5, 0, 5>, TubeR

  //tolerance 1.0e-4
  texture{
    //T_Test
    T_Chrome_2D
    //finish{reflection 0.25}
  }
}

#declare Seat =
superellipsoid {
  <0.9, 0.7>
  texture{T_Seat}

  scale <6.5, 0.75, 6.5>
  translate (10+TubeR) * y
}

#declare Back =
superellipsoid {
  <0.4, 0.4>
  texture{T_Seat}

  scale <6.5, 3.5, 0.5>
  translate <0, 18.5, 5-0.5*TubeR>
}

#declare Chair =
union {
  object{ChairFrame}
  object{Seat}
  object{Back}
  translate (TubeR+FloorDepth) * y
}

//A row of chairs
#declare ChairRow =
union {
#declare Count=0;
#declare MaxCount=2;            //Number of chairs - 1
#declare TS = 10 * MaxCount;    //Table length

#while (Count <= MaxCount)
 object{Chair translate x * (14 * Count - 7*MaxCount)}
 #declare Count=Count+1;
#end
}

// ----------------------------------------

//Table height
#declare TH = 18.0;

#declare TableFrame =
sphere_sweep {
  linear_spline,
  9,
  <-10, 0, -TS>, TubeR
  < 10, 0, -TS>, TubeR
  < 10,TH, -TS>, TubeR
  < 10,TH,  TS>, TubeR
  < 10, 0,  TS>, TubeR
  <-10, 0,  TS>, TubeR
  <-10,TH,  TS>, TubeR
  <-10,TH, -TS>, TubeR
  <-10, 0, -TS>, TubeR

  //tolerance 1.0e-4
  texture{
    //T_Test
    T_Chrome_2D
    //finish{reflection 0.25}
  }
}

#declare TableTop =
superellipsoid {
  <0.2, 0.2> scale<15, 1.0, (TS+2)> translate <0,TH+0.6,0>
//box{
//  <-15, TH, -(TS+2)>, <15, TH+1.2, TS+2>
  texture{
    //White_Marble
    T_Wood28
    //T_Wood17
    //finish{Glossy}

    translate <10,20,50>
    scale 4.5
  }
}

#declare Table =
union{
  object{TableFrame}
  object{TableTop}

  translate (TubeR+FloorDepth) * y
  translate 30 * z
}

// ---The actual scene----------------------------

sky_sphere {S_Cloud5 scale .2 rotate -45 * x}

union{
  object{Room}

  //sphere {<20, 42, 35>, 6 texture{T_Wood34 scale 20} }
  //object{Chair scale 1.5 rotate y * 15 translate <0, 0, 15>}

  object{Table}
  object{ChairRow rotate -90*y translate <-20, 0, 30>}
  object{ChairRow rotate  90*y translate < 20, 0, 30>}

  translate -25 * y
}

// ----------------End of scene------------------------


Post a reply to this message


Attachments:
Download 'tablechairs1h.jpg' (141 KB)

Preview of image 'tablechairs1h.jpg'
tablechairs1h.jpg


 

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.