POV-Ray : Newsgroups : povray.general : Artist WANTED! Server Time
9 Aug 2024 19:42:51 EDT (-0400)
  Artist WANTED! (Message 1 to 8 of 8)  
From: ZeroBlue
Subject: Artist WANTED!
Date: 6 Jun 2000 14:46:05
Message: <393d46ed@news.povray.org>
Mike Miller wanted, or atleast his gallery!
Anyone got an URL?


Post a reply to this message

From: Peter Popov
Subject: Re: Artist WANTED!
Date: 6 Jun 2000 17:53:53
Message: <72tqjs08vpr952eok8qee0ggj1dhffd3pu@4ax.com>
On Tue, 6 Jun 2000 20:45:38 +0200, "ZeroBlue" <zer### [at] swipnetse>
wrote:

>Mike Miller wanted, or atleast his gallery!
>Anyone got an URL?

From what I've heard his tracks were lost several years ago. I myself
have searched the web, usenet and people finders to no avail. Pity.
You might have more luck though.


Peter Popov ICQ : 15002700
Personal e-mail : pet### [at] usanet
TAG      e-mail : pet### [at] tagpovrayorg


Post a reply to this message

From: Ken
Subject: Re: Artist WANTED!
Date: 6 Jun 2000 17:56:47
Message: <393D7320.A9B73B6C@pacbell.net>
Peter Popov wrote:
> 
> On Tue, 6 Jun 2000 20:45:38 +0200, "ZeroBlue" <zer### [at] swipnetse>
> wrote:
> 
> >Mike Miller wanted, or atleast his gallery!
> >Anyone got an URL?
> 
> From what I've heard his tracks were lost several years ago. I myself
> have searched the web, usenet and people finders to no avail. Pity.
> You might have more luck though.

Even current members of the POV-Team seem to have lost touch with
Mike. I think about the only material available would be the sample
scenes included with POV-Ray and perhaps the odd old timer out there
that might have an old file of Mikes squirreled away somewhere.

-- 
Ken Tyler - 1400+ POV-Ray, Graphics, 3D Rendering, and Raytracing Links:
http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Simen Kvaal
Subject: Re: Artist WANTED!
Date: 7 Jun 2000 03:12:45
Message: <393df5ed$1@news.povray.org>
>Even current members of the POV-Team seem to have lost touch with
>Mike. I think about the only material available would be the sample
>scenes included with POV-Ray and perhaps the odd old timer out there
>that might have an old file of Mikes squirreled away somewhere.


I have a book called Image Lab, and there is an image "Mantel Clock" with
source, and how-to-build. If I find the disk (bundled with the book)
somewhere I can upload it.

Simen.


Post a reply to this message

From: khanna100
Subject: Re: Artist WANTED!
Date: 7 May 2016 14:10:01
Message: <web.572e2dba90bf54561a7fb7c70@news.povray.org>
"Simen Kvaal" <sim### [at] studentmatnatuiono> wrote:
> >Even current members of the POV-Team seem to have lost touch with
> >Mike. I think about the only material available would be the sample
> >scenes included with POV-Ray and perhaps the odd old timer out there
> >that might have an old file of Mikes squirreled away somewhere.
>
>
> I have a book called Image Lab, and there is an image "Mantel Clock" with
> source, and how-to-build. If I find the disk (bundled with the book)
> somewhere I can upload it.
>
> Simen.

Hi,
I also have that book and also the disk that accompanied it was corrupted and
unfortunately all the source was lost.
I have scanned the book and provided the code to the best of my ability (with
some tweaks to run on Povray for Windows 3.6). The two gif files required are
missing, sorry, I don't have them.

// POV Data - Mantel Clock II Modified for POV 1.00
// Mike Miller 11/1/91

#include "colors.inc"
#include "shapes.inc"
#include "textures.inc"

camera {
location <0 60 260>
//direction <0 1 1>
look_at <0 45 0>
//up <0 1 0>
//right <1.333 0 0>
}

object { //--LIGHT Source1--
light_source { <100 300 -100> color White}
}

object { //--LIGHT Source2--
light_source { <-100 200 -100> color White}
}

#declare GOLD = texture { finish {//--Bright Reflective Gold--
roughness 0.02 ambient 0.3 diffuse 0.5
reflection 0.6 brilliance 8.0 specular 0.5 }
pigment { color red 0.62 green 0.55 blue 0.0  }
}

#declare SILVER1 = texture { finish {//--Bright REFLECTIVE SILVER--
roughness 0.05 ambient 0.2 diffuse 0.5
reflection 0.6 brilliance 7.0 specular 0.5 }
pigment { color red 0.6 green 0.6 blue 0.6 }
}

#declare OCone = //--CONE POINT DOWN IPOINT at 000--
intersection {
quadric { Cone_Y scale <10 10 10> texture { GOLD } }
plane { <0 -1 0> 0 }
plane { <0 1 0> 1 }
}

#declare UCone = //--CONE POINT UP IPOINT at 000--
intersection {
quadric { Cone_Y scale <10 10 10> texture { GOLD } }
plane { <0 1 0> 0 }
plane { <0 1 0> (-1) inverse}
}

#declare AO1 = object { //clock base
     difference {
       union {
       quadric {Sphere scale <62 15 62> }
       quadric {Sphere scale <55 5 55> translate <0 10 0> }
       intersection { Disk_Y scale <50 3 50> translate <0 12 0> }
       intersection { Disk_Y scale <43 1 43> translate <0 15 0> }
       }
       plane { <0 1 0> 0 }
       }
       texture { GOLD }
       }

#declare AO2 = intersection { //RING
    Disk_Y scale <7 2 7> }

#declare AO3_1 = intersection { //RING
    Disk_Y scale <1 56 4> }

#declare AO3 = union { //Ribbed columns
     intersection { AO3_1 rotate <0 0 0> }
     intersection { AO3_1 rotate <0 30 0> }
     intersection { AO3_1 rotate <0 60 0> }
     intersection { AO3_1 rotate <0 90 0> }
     intersection { AO3_1 rotate <0 120 0> }
     intersection { AO3_1 rotate <0 150 0> }
    }

#declare AO4 = union { //Column Caps
    intersection { Disk_Y scale <5 5 5> }
    quadric { Sphere scale <4 2 4> translate <0 5 0> }
    quadric { Sphere scale <1.5 1.5 1.5> translate <0 8 0> }
    quadric { Sphere scale <3 2 3> translate <0 10 0> }
    }

#declare AO6 = object {
   union { //Column Caps
    intersection { Disk_Y scale <6 2 6> translate <27 -1 0> }
    intersection { Disk_Y scale <6 2 6> translate <-27 -1 0> }
    intersection { Cube scale <17 1 8.5> translate <0 0 10.5> }
    intersection { Cube scale <6 1 11.5> translate <0 0 10.5>
       rotate <0 45 0> translate <-27 0 0> }
    intersection { Cube scale <6 1 11.5> translate <0 0 11.5>
       rotate <0 -45 0> translate <27 0 0> }
    }
    texture { GOLD }
    bounded_by {
      intersection { Cube scale <35 2 14> translate <0 0 4> }
    }
    }

#declare AO7 = object {
      difference {
        union {
          intersection { Cube scale <17 8 0.5> }
          intersection { Cube scale <9 0.5 6.5>  translate <0 -7.5 7> }
        }
        quadric { Cylinder_Z scale <8 8 8> translate <-17 -8 0> }
        quadric { Cylinder_Z scale <8 8 8> translate <17 -8 0> }
      }
      texture { GOLD }
      bounded_by {
      intersection { Cube scale <18 9 8> translate <0 0 6.5> }
     }
    }

#declare ASS1 = object { //--The column assembly--
    union {
    intersection { AO2 }
    union { AO3 translate <0 2 0> }
    intersection { AO4 translate <0 56 0> }
    }
    texture { GOLD }
    bounded_by {
      intersection {
       Disk_Y scale <7.2 71 7.2> translate <0 -0.5 0>
       }
     }
    }

#declare BO1 = intersection { //Bell brace--
    difference {
      union {
        intersection { Cube scale <1 10 0.6> translate <1 18 0> }
        intersection { Cube scale <5 3 0.6> translate <2 25 0> }
        intersection { Cube scale <6 1 0.6> translate <14 1 0> }
        intersection { Cube scale <5.8 1 0.6> rotate <0 0 -45> translate <4.5
4.5 0> }
      }
      quadric { Cylinder_Z scale <8 8 8> translate <10 22 0> }
    }
   }

#declare BO2 = union { //--Brass bells--
     quadric { Sphere scale <9 9 9> }
     quadric { Sphere scale <3 2 3> translate <0 12 0> }
     intersection { Disk_Y scale <3 2 3> translate <0 8 0> }
   }
#declare BO3 = object { //Combined ball and support
 union {
 intersection { BO1 }
 union { BO2 translate <13 11 0> }
 }
  texture { GOLD }
   bounded_by {
    intersection { Cube scale <14 15 9> translate <10 14 0> }
 }
}

#declare BO4 = object { //pivot support for BO3
  union {
  intersection { Cone_X scale <3 4 3> }
  intersection { Disk_Y scale <3 20 3> translate <0 4 0> }
  intersection { Disk_Y scale <2 10 2> translate <0 24 0> }
  intersection { Disk_Y scale <7 2 7> translate <0 28 0> }
  intersection { Disk_Y scale <1 13 1> translate <0 35 0> }
  intersection { Disk_Y scale <11 1 11> translate <0 34 0> }
  intersection { Cube scale <14 0.5 2> translate <0 7 0> }
  intersection { Cube scale <2 0.5 14> translate <0 7 0> }
  }
  texture { GOLD }
  bounded_by {
    intersection { Disk_Y scale <12 50 12> translate <0 -1 0> }
    }
  }

#declare ASS2 = composite { //pivot support w/balls
   object { BO4 }
   object { BO3 translate <8 4 0> rotate <0 0 0> }
   object { BO3 translate <8 4 0> rotate <0 90 0> }
   object { BO3 translate <8 4 0> rotate <0 180 0> }
   object { BO3 translate <8 4 0> rotate <0 270 0> }
   bounded_by {
   intersection {
     Disk_Y scale <32 50 32> translate <0 -1 0>
   }
  }
 }

#declare CO1 = intersection { Disk_Z scale <2 2 20> }

#declare CO2 = object { //gear box
   union {
  intersection { Cube scale <17 26 1> }
  intersection { Cube scale <17 26 1> translate <0 0 17> }
  intersection { CO1 translate <-14, -23, -1.5> }

  intersection { CO1 translate <14, -23, -1.5> }
  intersection { CO1 translate <-14, 23, -1.5> }
  intersection { CO1 translate <14, 23, -1.5> }
 }
 texture { GOLD }
 bounded_by {
   intersection { Cube scale <18 27 11> translate <0 0 9> }
 }
 }

#declare GO1 = intersection { //tooth of gear
   Cube scale <1 0.5 0.5> translate <12 0 0> }

#declare GO2 = intersection { //gear ring
   difference {
     intersection { Disk_Z scale <12 12 1> }
     quadric { Cylinder_Z scale <10 10 10> }
     }
   }

#declare GO3 = union { //gear spoke
    intersection { Cube scale <1.5 11 0.5> }
    intersection { Cube scale <11 1.5 0.5> }
   }

#declare GO4 = object {  //assemble the gear parts
   union {
      intersection { GO2 translate <0 0 -0.5> }
      union { GO3 }
      intersection { GO1 rotate <0 0 0> }
      intersection { GO1 rotate <0 0 10> }
      intersection { GO1 rotate <0 0 20> }
      intersection { GO1 rotate <0 0 30> }
      intersection { GO1 rotate <0 0 40> }
      intersection { GO1 rotate <0 0 50> }
      intersection { GO1 rotate <0 0 60> }
      intersection { GO1 rotate <0 0 70> }
      intersection { GO1 rotate <0 0 80> }
      intersection { GO1 rotate <0 0 90> }
      intersection { GO1 rotate <0 0 100> }
      intersection { GO1 rotate <0 0 110> }
      intersection { GO1 rotate <0 0 120> }
      intersection { GO1 rotate <0 0 130> }
      intersection { GO1 rotate <0 0 140> }
      intersection { GO1 rotate <0 0 150> }
      intersection { GO1 rotate <0 0 160> }
      intersection { GO1 rotate <0 0 170> }
      intersection { GO1 rotate <0 0 180> }
      intersection { GO1 rotate <0 0 190> }
      intersection { GO1 rotate <0 0 200> }
      intersection { GO1 rotate <0 0 210> }
      intersection { GO1 rotate <0 0 220> }
      intersection { GO1 rotate <0 0 230> }
      intersection { GO1 rotate <0 0 240> }
      intersection { GO1 rotate <0 0 250> }
      intersection { GO1 rotate <0 0 260> }
      intersection { GO1 rotate <0 0 270> }
      intersection { GO1 rotate <0 0 280> }
      intersection { GO1 rotate <0 0 290> }
      intersection { GO1 rotate <0 0 300> }
      intersection { GO1 rotate <0 0 310> }
      intersection { GO1 rotate <0 0 320> }
      intersection { GO1 rotate <0 0 330> }
      intersection { GO1 rotate <0 0 340> }
      intersection { GO1 rotate <0 0 350> }
 }
  texture { GOLD }
    bounded_by {
     intersection { Disk_Z scale <14 14 2> translate <0 0 -1> }
 }
}

#declare DO1 = object { //crown plate
  difference {
     union {
       intersection { Cube scale <24 17 1> }
       intersection { Cube scale <4 21 1> }
     }
     quadric { Cylinder_Z scale <6 6 6> translate <-10 17 0> }
     quadric { Cylinder_Z scale <6 6 6> translate <10 17 0> }
   }
    texture { GOLD }
 bounded_by {
   intersection { Cube scale <25 22 2> translate <0 0 -1> }
 }
 }

#declare DO2 = object { //--CROWN CAPS--
   union {
    intersection { UCone scale <2 14 2> translate <0 14 0> }
    quadric { Sphere scale <4 1 4> translate <0 3 0> }
    quadric { Sphere scale <0.7 10.7> translate <0 14 0> }
   }
    texture { GOLD }
     bounded_by {
      intersection {
        Disk_Y scale <4.5 16 4.5> translate <0 -0.5 0>
    }
   }
  }

#declare ASS3 = composite { //GEAR BOX & CROWN ASSEMBLY
   object { CO2 }
   object { DO1 translate <0 23 2> }
   object { DO2 translate <20 40 2> }
   object { DO2 translate <0 44 2> }
   object { DO2 translate <-20 40 2> }
     bounded_by {
       intersection { Cube scale <25 45 11> translate <0 15 8> }
  }
 }

#declare F01 = object { //--CLOCK FACE RIM
   quadric { Sphere scale <30 30 6>
   texture { GOLD}
}

#declare F02 = object { //--CLOCK FACE--
   quadric { Sphere scale <30 30 4> }
   texture { GOLD }
   //pigment {
     //image_map {<1.0 -1.0 0> gif "cface.gif"} }
     //scale <60 60 4> translate <-30 -30 -4>
     //ambient 0.3 diffuse 0.6 reflection 0.1
  }
}

#declare CLOCK = composite { //--SOME ASSEMBLY REQUIRED--
   object { AO1 translate <0, -20, 0> }             //base
   object { ASS1 translate  <27 16 -19> }  //r.column
   object { ASS1 translate <-27 16 -19> }  //l.column
   object { AO6 translate <0 77 -19> }  //support
   object { AO7 translate <0 700.5> }  //pivotsup
   composite { ASS2 translate  <0 16 9> }  //balls
   composite { ASS3 translate <0 104 -17> }  //crown/box
   object { GO4 translate <-18 120 -3> }  //t.gear
   object { GO4 translate <-22 100 -5> }  //b.gear
   object { F01 translate <0 110 -21> }  //face rim
   object { F02 translate <0 110 -24>}  //face
     bounded_by {
      intersection {
        Disk_Y scale <64 170 64> translate <0 -1 0>
   }
  }
 }

//--PLACE CLOCK--
  composite { CLOCK rotate <0 180 0> }


Post a reply to this message

From: khanna100
Subject: Re: Artist WANTED!
Date: 7 May 2016 14:45:01
Message: <web.572e372890bf54569e219c6c0@news.povray.org>
"khanna100" <nomail@nomail> wrote:
> "Simen Kvaal" <sim### [at] studentmatnatuiono> wrote:
> > >Even current members of the POV-Team seem to have lost touch with
> > >Mike. I think about the only material available would be the sample
> > >scenes included with POV-Ray and perhaps the odd old timer out there
> > >that might have an old file of Mikes squirreled away somewhere.
> >
> >
> > I have a book called Image Lab, and there is an image "Mantel Clock" with
> > source, and how-to-build. If I find the disk (bundled with the book)
> > somewhere I can upload it.
> >
> > Simen.
>
> Hi,
> I also have that book and also the disk that accompanied it was corrupted and
> unfortunately all the source was lost.
> I have scanned the book and provided the code to the best of my ability (with
> some tweaks to run on Povray for Windows 3.6). The two gif files required are
> missing, sorry, I don't have them.
>

// POV Data - Mantel Clock II Modified for POV 1.00
// Mike Miller 11/1/91

#include "colors.inc"
#include "shapes.inc"
#include "textures.inc"

camera {
location <0 60 260>
//direction <0 1 1>
look_at <0 45 0>
//up <0 1 0>
//right <1.333 0 0>
}

object { //--LIGHT Source1--
light_source { <100 300 -100> color White}
}

object { //--LIGHT Source2--
light_source { <-100 200 -100> color White}
}

#declare GOLD = texture { finish {//--Bright Reflective Gold--
roughness 0.02 ambient 0.3 diffuse 0.5
reflection 0.6 brilliance 8.0 specular 0.5 }
pigment { color red 0.62 green 0.55 blue 0.0  }
}

#declare SILVER1 = texture { finish {//--Bright REFLECTIVE SILVER--
roughness 0.05 ambient 0.2 diffuse 0.5
reflection 0.6 brilliance 7.0 specular 0.5 }
pigment { color red 0.6 green 0.6 blue 0.6 }
}

#declare OCone = //--CONE POINT DOWN IPOINT at 000--
intersection {
quadric { Cone_Y scale <10 10 10> texture { GOLD } }
plane { <0 -1 0> 0 }
plane { <0 1 0> 1 }
}

#declare UCone = //--CONE POINT UP IPOINT at 000--
intersection {
quadric { Cone_Y scale <10 10 10> texture { GOLD } }
plane { <0 1 0> 0 }
plane { <0 1 0> (-1) inverse}
}

#declare AO1 = object { //clock base
     difference {
       union {
       quadric {Sphere scale <62 15 62> }
       quadric {Sphere scale <55 5 55> translate <0 10 0> }
       intersection { Disk_Y scale <50 3 50> translate <0 12 0> }
       intersection { Disk_Y scale <43 1 43> translate <0 15 0> }
       }
       plane { <0 1 0> 0 }
       }
       texture { GOLD }
       }


#declare AO2 = intersection { //RING
    Disk_Y scale <7 2 7> }

#declare AO3_1 = intersection { //RING
    Disk_Y scale <1 56 4> }

#declare AO3 = union { //Ribbed columns
     intersection { AO3_1 rotate <0 0 0> }
     intersection { AO3_1 rotate <0 30 0> }
     intersection { AO3_1 rotate <0 60 0> }
     intersection { AO3_1 rotate <0 90 0> }
     intersection { AO3_1 rotate <0 120 0> }
     intersection { AO3_1 rotate <0 150 0> }
    }

#declare AO4 = union { //Column Caps
    intersection { Disk_Y scale <5 5 5> }
    quadric { Sphere scale <4 2 4> translate <0 5 0> }
    quadric { Sphere scale <1.5 1.5 1.5> translate <0 8 0> }
    quadric { Sphere scale <3 2 3> translate <0 10 0> }
    }

#declare AO6 = object {
   union { //Column Caps
    intersection { Disk_Y scale <6 2 6> translate <27 -1 0> }
    intersection { Disk_Y scale <6 2 6> translate <-27 -1 0> }
    intersection { Cube scale <17 1 8.5> translate <0 0 10.5> }
    intersection { Cube scale <6 1 11.5> translate <0 0 10.5>
       rotate <0 45 0> translate <-27 0 0> }
    intersection { Cube scale <6 1 11.5> translate <0 0 11.5>
       rotate <0 -45 0> translate <27 0 0> }
    }
    texture { GOLD }
    bounded_by {
      intersection { Cube scale <35 2 14> translate <0 0 4> }
    }
    }

#declare AO7 = object {
      difference {
        union {
          intersection { Cube scale <17 8 0.5> }
          intersection { Cube scale <9 0.5 6.5>  translate <0 -7.5 7> }
        }
        quadric { Cylinder_Z scale <8 8 8> translate <-17 -8 0> }
        quadric { Cylinder_Z scale <8 8 8> translate <17 -8 0> }
      }
      texture { GOLD }
      bounded_by {
      intersection { Cube scale <18 9 8> translate <0 0 6.5> }
     }
    }

#declare ASS1 = object { //--The column assembly--
    union {
    intersection { AO2 }
    union { AO3 translate <0 2 0> }
    intersection { AO4 translate <0 56 0> }
    }
    texture { GOLD }
    bounded_by {
      intersection {
       Disk_Y scale <7.2 71 7.2> translate <0 -0.5 0>
       }
     }
    }

#declare BO1 = intersection { //Bell brace--
    difference {
      union {
        intersection { Cube scale <1 10 0.6> translate <1 18 0> }
        intersection { Cube scale <5 3 0.6> translate <2 25 0> }
        intersection { Cube scale <6 1 0.6> translate <14 1 0> }
        intersection { Cube scale <5.8 1 0.6> rotate <0 0 -45> translate <4.5
4.5 0> }
      }
      quadric { Cylinder_Z scale <8 8 8> translate <10 22 0> }
    }
   }

#declare BO2 = union { //--Brass bells--
     quadric { Sphere scale <9 9 9> }
     quadric { Sphere scale <3 2 3> translate <0 12 0> }
     intersection { Disk_Y scale <3 2 3> translate <0 8 0> }
   }
#declare BO3 = object { //Combined ball and support
 union {
 intersection { BO1 }
 union { BO2 translate <13 11 0> }
 }
  texture { GOLD }
   bounded_by {
    intersection { Cube scale <14 15 9> translate <10 14 0> }
 }
}

#declare BO4 = object { //pivot support for BO3
  union {
  intersection { Cone_X scale <3 4 3> }
  intersection { Disk_Y scale <3 20 3> translate <0 4 0> }
  intersection { Disk_Y scale <2 10 2> translate <0 24 0> }
  intersection { Disk_Y scale <7 2 7> translate <0 28 0> }
  intersection { Disk_Y scale <1 13 1> translate <0 35 0> }
  intersection { Disk_Y scale <11 1 11> translate <0 34 0> }
  intersection { Cube scale <14 0.5 2> translate <0 7 0> }
  intersection { Cube scale <2 0.5 14> translate <0 7 0> }
  }
  texture { GOLD }
  bounded_by {
    intersection { Disk_Y scale <12 50 12> translate <0 -1 0> }
    }
  }

#declare ASS2 = composite { //pivot support w/balls
   object { BO4 }
   object { BO3 translate <8 4 0> rotate <0 0 0> }
   object { BO3 translate <8 4 0> rotate <0 90 0> }
   object { BO3 translate <8 4 0> rotate <0 180 0> }
   object { BO3 translate <8 4 0> rotate <0 270 0> }
   bounded_by {
   intersection {
     Disk_Y scale <32 50 32> translate <0 -1 0>
   }
  }
 }

#declare CO1 = intersection { Disk_Z scale <2 2 20> }

#declare CO2 = object { //gear box
   union {
  intersection { Cube scale <17 26 1> }
  intersection { Cube scale <17 26 1> translate <0 0 17> }
  intersection { CO1 translate <-14, -23, -1.5> }

  intersection { CO1 translate <14, -23, -1.5> }
  intersection { CO1 translate <-14, 23, -1.5> }
  intersection { CO1 translate <14, 23, -1.5> }
 }
 texture { GOLD }
 bounded_by {
   intersection { Cube scale <18 27 11> translate <0 0 9> }
 }
 }

#declare GO1 = intersection { //tooth of gear
   Cube scale <1 0.5 0.5> translate <12 0 0> }

#declare GO2 = intersection { //gear ring
   difference {
     intersection { Disk_Z scale <12 12 1> }
     quadric { Cylinder_Z scale <10 10 10> }
     }
   }

#declare GO3 = union { //gear spoke
    intersection { Cube scale <1.5 11 0.5> }
    intersection { Cube scale <11 1.5 0.5> }
   }

#declare GO4 = object {  //assemble the gear parts
   union {
      intersection { GO2 translate <0 0 -0.5> }
      union { GO3 }
      intersection { GO1 rotate <0 0 0> }
      intersection { GO1 rotate <0 0 10> }
      intersection { GO1 rotate <0 0 20> }
      intersection { GO1 rotate <0 0 30> }
      intersection { GO1 rotate <0 0 40> }
      intersection { GO1 rotate <0 0 50> }
      intersection { GO1 rotate <0 0 60> }
      intersection { GO1 rotate <0 0 70> }
      intersection { GO1 rotate <0 0 80> }
      intersection { GO1 rotate <0 0 90> }
      intersection { GO1 rotate <0 0 100> }
      intersection { GO1 rotate <0 0 110> }
      intersection { GO1 rotate <0 0 120> }
      intersection { GO1 rotate <0 0 130> }
      intersection { GO1 rotate <0 0 140> }
      intersection { GO1 rotate <0 0 150> }
      intersection { GO1 rotate <0 0 160> }
      intersection { GO1 rotate <0 0 170> }
      intersection { GO1 rotate <0 0 180> }
      intersection { GO1 rotate <0 0 190> }
      intersection { GO1 rotate <0 0 200> }
      intersection { GO1 rotate <0 0 210> }
      intersection { GO1 rotate <0 0 220> }
      intersection { GO1 rotate <0 0 230> }
      intersection { GO1 rotate <0 0 240> }
      intersection { GO1 rotate <0 0 250> }
      intersection { GO1 rotate <0 0 260> }
      intersection { GO1 rotate <0 0 270> }
      intersection { GO1 rotate <0 0 280> }
      intersection { GO1 rotate <0 0 290> }
      intersection { GO1 rotate <0 0 300> }
      intersection { GO1 rotate <0 0 310> }
      intersection { GO1 rotate <0 0 320> }
      intersection { GO1 rotate <0 0 330> }
      intersection { GO1 rotate <0 0 340> }
      intersection { GO1 rotate <0 0 350> }
 }
  texture { GOLD }
   bounded_by {
    intersection { Disk_Z scale <14 14 2> translate <0 0 -1> }
 }
}

#declare DO1 = object { //crown plate
  difference {
     union {
       intersection { Cube scale <24 17 1> }
       intersection { Cube scale <4 21 1> }
     }
     quadric { Cylinder_Z scale <6 6 6> translate <-10 17 0> }
     quadric { Cylinder_Z scale <6 6 6> translate <10 17 0> }
   }
    texture { GOLD }
 bounded_by {
   intersection { Cube scale <25 22 2> translate <0 0 -1> }
 }
 }

#declare DO2 = object { //--CROWN CAPS--
   union {
    intersection { UCone scale <2 14 2> translate <0 14 0> }
    quadric { Sphere scale <4 1 4> translate <0 3 0> }
    quadric { Sphere scale <0.7 10.7> translate <0 14 0> }
   }

    texture { GOLD }
    bounded_by {
      intersection {
        Disk_Y scale <4.5 16 4.5> translate <0 -0.5 0>
    }
   }
  }

#declare ASS3 = composite { //GEAR BOX & CROWN ASSEMBLY
   object { CO2 }
   object { DO1 translate <0 23 2> }
   object { DO2 translate <20 40 2> }
   object { DO2 translate <0 44 2> }
   object { DO2 translate <-20 40 2> }
     bounded_by {
       intersection { Cube scale <25 45 11> translate <0 15 8> }
  }
 }

#declare F01 = object { //--CLOCK FACE RIM
   quadric { Sphere scale <30 30 6>
   texture { GOLD}
}

#declare F02 = object { //--CLOCK FACE--
   quadric { Sphere scale <30 30 4> }
   texture { GOLD }
   //pigment {
     //image_map {<1.0 -1.0 0> gif "cface.gif"} }
     //scale <60 60 4> translate <-30 -30 -4>
     //ambient 0.3 diffuse 0.6 reflection 0.1
  }
}

#declare CLOCK = composite { //--SOME ASSEMBLY REQUIRED--
   object { AO1 translate <0, -20, 0> }             //base
   object { ASS1 translate  <27 16 -19> }  //r.column
   object { ASS1 translate <-27 16 -19> }  //l.column
   object { AO6 translate <0 77 -19> }  //support
   object { AO7 translate <0 700.5> }  //pivotsup
   composite { ASS2 translate  <0 16 9> }  //balls
   composite { ASS3 translate <0 104 -17> }  //crown/box
   object { GO4 translate <-18 120 -3> }  //t.gear
   object { GO4 translate <-22 100 -5> }  //b.gear
   object { F01 translate <0 110 -21> }  //face rim
   object { F02 translate <0 110 -24>}  //face
     bounded_by {
      intersection {
        Disk_Y scale <64 170 64> translate <0 -1 0>
   }
  }
 }

//--PLACE CLOCK--
  composite { CLOCK rotate <0 180 0> }

//--FLOOR PLANE-object {
//plane { <0 1 0> (-3)
//texture { pigment { color Black } finish { ambient 0.8 reflection 0.3 phong
0.5 } }
//}

//--BACK DROP--object {
intersection { Cube scale <1000 500 5>  texture {  GOLD }
//pigment {
   //image_map {<1.0 -1.0 0> gif "st.gif"}     }
   //scale <2000 2000 5> translate <-1000 -1000 -5>
   //ambient 0.4 diffuse 0.0
//}
rotate <0 0 0> translate <0 400 1200>
}


Post a reply to this message

From: khanna100
Subject: Re: Artist WANTED!
Date: 8 May 2016 08:50:00
Message: <web.572f34bc90bf54569e219c6c0@news.povray.org>
"khanna100" <nomail@nomail> wrote:
> "khanna100" <nomail@nomail> wrote:
> > "Simen Kvaal" <sim### [at] studentmatnatuiono> wrote:
> > > >Even current members of the POV-Team seem to have lost touch with
> > > >Mike. I think about the only material available would be the sample
> > > >scenes included with POV-Ray and perhaps the odd old timer out there
> > > >that might have an old file of Mikes squirreled away somewhere.
> > >
> > >
> > > I have a book called Image Lab, and there is an image "Mantel Clock" with
> > > source, and how-to-build. If I find the disk (bundled with the book)
> > > somewhere I can upload it.
> > >
> > > Simen.
> >
> > Hi,
> > I also have that book and also the disk that accompanied it was corrupted and
> > unfortunately all the source was lost.
> > I have scanned the book and provided the code to the best of my ability (with
> > some tweaks to run on Povray for Windows 3.6). The two gif files required are
> > missing, sorry, I don't have them.
> >
>
> // POV Data - Mantel Clock II Modified for POV 1.00
> // Mike Miller 11/1/91
>
> #include "colors.inc"
> #include "shapes.inc"
> #include "textures.inc"
>
> camera {
> location <0 60 260>
> //direction <0 1 1>
> look_at <0 45 0>
> //up <0 1 0>
> //right <1.333 0 0>
> }
>
> object { //--LIGHT Source1--
> light_source { <100 300 -100> color White}
> }
>
> object { //--LIGHT Source2--
> light_source { <-100 200 -100> color White}
> }
>
> #declare GOLD = texture { finish {//--Bright Reflective Gold--
> roughness 0.02 ambient 0.3 diffuse 0.5
> reflection 0.6 brilliance 8.0 specular 0.5 }
> pigment { color red 0.62 green 0.55 blue 0.0  }
> }
>
> #declare SILVER1 = texture { finish {//--Bright REFLECTIVE SILVER--
> roughness 0.05 ambient 0.2 diffuse 0.5
> reflection 0.6 brilliance 7.0 specular 0.5 }
> pigment { color red 0.6 green 0.6 blue 0.6 }
> }
>
> #declare OCone = //--CONE POINT DOWN IPOINT at 000--
> intersection {
> quadric { Cone_Y scale <10 10 10> texture { GOLD } }
> plane { <0 -1 0> 0 }
> plane { <0 1 0> 1 }
> }
>
> #declare UCone = //--CONE POINT UP IPOINT at 000--
> intersection {
> quadric { Cone_Y scale <10 10 10> texture { GOLD } }
> plane { <0 1 0> 0 }
> plane { <0 1 0> (-1) inverse}
> }
>
> #declare AO1 = object { //clock base
>      difference {
>        union {
>        quadric {Sphere scale <62 15 62> }
>        quadric {Sphere scale <55 5 55> translate <0 10 0> }
>        intersection { Disk_Y scale <50 3 50> translate <0 12 0> }
>        intersection { Disk_Y scale <43 1 43> translate <0 15 0> }
>        }
>        plane { <0 1 0> 0 }
>        }
>        texture { GOLD }
>        }
>
>
> #declare AO2 = intersection { //RING
>     Disk_Y scale <7 2 7> }
>
> #declare AO3_1 = intersection { //RING
>     Disk_Y scale <1 56 4> }
>
> #declare AO3 = union { //Ribbed columns
>      intersection { AO3_1 rotate <0 0 0> }
>      intersection { AO3_1 rotate <0 30 0> }
>      intersection { AO3_1 rotate <0 60 0> }
>      intersection { AO3_1 rotate <0 90 0> }
>      intersection { AO3_1 rotate <0 120 0> }
>      intersection { AO3_1 rotate <0 150 0> }
>     }
>
> #declare AO4 = union { //Column Caps
>     intersection { Disk_Y scale <5 5 5> }
>     quadric { Sphere scale <4 2 4> translate <0 5 0> }
>     quadric { Sphere scale <1.5 1.5 1.5> translate <0 8 0> }
>     quadric { Sphere scale <3 2 3> translate <0 10 0> }
>     }
>
> #declare AO6 = object {
>    union { //Column Caps
>     intersection { Disk_Y scale <6 2 6> translate <27 -1 0> }
>     intersection { Disk_Y scale <6 2 6> translate <-27 -1 0> }
>     intersection { Cube scale <17 1 8.5> translate <0 0 10.5> }
>     intersection { Cube scale <6 1 11.5> translate <0 0 10.5>
>        rotate <0 45 0> translate <-27 0 0> }
>     intersection { Cube scale <6 1 11.5> translate <0 0 11.5>
>        rotate <0 -45 0> translate <27 0 0> }
>     }
>     texture { GOLD }
>     bounded_by {
>       intersection { Cube scale <35 2 14> translate <0 0 4> }
>     }
>     }
>
> #declare AO7 = object {
>       difference {
>         union {
>           intersection { Cube scale <17 8 0.5> }
>           intersection { Cube scale <9 0.5 6.5>  translate <0 -7.5 7> }
>         }
>         quadric { Cylinder_Z scale <8 8 8> translate <-17 -8 0> }
>         quadric { Cylinder_Z scale <8 8 8> translate <17 -8 0> }
>       }
>       texture { GOLD }
>       bounded_by {
>       intersection { Cube scale <18 9 8> translate <0 0 6.5> }
>      }
>     }
>
> #declare ASS1 = object { //--The column assembly--
>     union {
>     intersection { AO2 }
>     union { AO3 translate <0 2 0> }
>     intersection { AO4 translate <0 56 0> }
>     }
>     texture { GOLD }
>     bounded_by {
>       intersection {
>        Disk_Y scale <7.2 71 7.2> translate <0 -0.5 0>
>        }
>      }
>     }
>
> #declare BO1 = intersection { //Bell brace--
>     difference {
>       union {
>         intersection { Cube scale <1 10 0.6> translate <1 18 0> }
>         intersection { Cube scale <5 3 0.6> translate <2 25 0> }
>         intersection { Cube scale <6 1 0.6> translate <14 1 0> }
>         intersection { Cube scale <5.8 1 0.6> rotate <0 0 -45> translate <4.5
> 4.5 0> }
>       }
>       quadric { Cylinder_Z scale <8 8 8> translate <10 22 0> }
>     }
>    }
>
> #declare BO2 = union { //--Brass bells--
>      quadric { Sphere scale <9 9 9> }
>      quadric { Sphere scale <3 2 3> translate <0 12 0> }
>      intersection { Disk_Y scale <3 2 3> translate <0 8 0> }
>    }
> #declare BO3 = object { //Combined ball and support
>  union {
>  intersection { BO1 }
>  union { BO2 translate <13 11 0> }
>  }
>   texture { GOLD }
>    bounded_by {
>     intersection { Cube scale <14 15 9> translate <10 14 0> }
>  }
> }
>
> #declare BO4 = object { //pivot support for BO3
>   union {
>   intersection { Cone_X scale <3 4 3> }
>   intersection { Disk_Y scale <3 20 3> translate <0 4 0> }
>   intersection { Disk_Y scale <2 10 2> translate <0 24 0> }
>   intersection { Disk_Y scale <7 2 7> translate <0 28 0> }
>   intersection { Disk_Y scale <1 13 1> translate <0 35 0> }
>   intersection { Disk_Y scale <11 1 11> translate <0 34 0> }
>   intersection { Cube scale <14 0.5 2> translate <0 7 0> }
>   intersection { Cube scale <2 0.5 14> translate <0 7 0> }
>   }
>   texture { GOLD }
>   bounded_by {
>     intersection { Disk_Y scale <12 50 12> translate <0 -1 0> }
>     }
>   }
>
> #declare ASS2 = composite { //pivot support w/balls
>    object { BO4 }
>    object { BO3 translate <8 4 0> rotate <0 0 0> }
>    object { BO3 translate <8 4 0> rotate <0 90 0> }
>    object { BO3 translate <8 4 0> rotate <0 180 0> }
>    object { BO3 translate <8 4 0> rotate <0 270 0> }
>    bounded_by {
>    intersection {
>      Disk_Y scale <32 50 32> translate <0 -1 0>
>    }
>   }
>  }
>
> #declare CO1 = intersection { Disk_Z scale <2 2 20> }
>
> #declare CO2 = object { //gear box
>    union {
>   intersection { Cube scale <17 26 1> }
>   intersection { Cube scale <17 26 1> translate <0 0 17> }
>   intersection { CO1 translate <-14, -23, -1.5> }
>
>   intersection { CO1 translate <14, -23, -1.5> }
>   intersection { CO1 translate <-14, 23, -1.5> }
>   intersection { CO1 translate <14, 23, -1.5> }
>  }
>  texture { GOLD }
>  bounded_by {
>    intersection { Cube scale <18 27 11> translate <0 0 9> }
>  }
>  }
>
> #declare GO1 = intersection { //tooth of gear
>    Cube scale <1 0.5 0.5> translate <12 0 0> }
>
> #declare GO2 = intersection { //gear ring
>    difference {
>      intersection { Disk_Z scale <12 12 1> }
>      quadric { Cylinder_Z scale <10 10 10> }
>      }
>    }
>
> #declare GO3 = union { //gear spoke
>     intersection { Cube scale <1.5 11 0.5> }
>     intersection { Cube scale <11 1.5 0.5> }
>    }
>
> #declare GO4 = object {  //assemble the gear parts
>    union {
>       intersection { GO2 translate <0 0 -0.5> }
>       union { GO3 }
>       intersection { GO1 rotate <0 0 0> }
>       intersection { GO1 rotate <0 0 10> }
>       intersection { GO1 rotate <0 0 20> }
>       intersection { GO1 rotate <0 0 30> }
>       intersection { GO1 rotate <0 0 40> }
>       intersection { GO1 rotate <0 0 50> }
>       intersection { GO1 rotate <0 0 60> }
>       intersection { GO1 rotate <0 0 70> }
>       intersection { GO1 rotate <0 0 80> }
>       intersection { GO1 rotate <0 0 90> }
>       intersection { GO1 rotate <0 0 100> }
>       intersection { GO1 rotate <0 0 110> }
>       intersection { GO1 rotate <0 0 120> }
>       intersection { GO1 rotate <0 0 130> }
>       intersection { GO1 rotate <0 0 140> }
>       intersection { GO1 rotate <0 0 150> }
>       intersection { GO1 rotate <0 0 160> }
>       intersection { GO1 rotate <0 0 170> }
>       intersection { GO1 rotate <0 0 180> }
>       intersection { GO1 rotate <0 0 190> }
>       intersection { GO1 rotate <0 0 200> }
>       intersection { GO1 rotate <0 0 210> }
>       intersection { GO1 rotate <0 0 220> }
>       intersection { GO1 rotate <0 0 230> }
>       intersection { GO1 rotate <0 0 240> }
>       intersection { GO1 rotate <0 0 250> }
>       intersection { GO1 rotate <0 0 260> }
>       intersection { GO1 rotate <0 0 270> }
>       intersection { GO1 rotate <0 0 280> }
>       intersection { GO1 rotate <0 0 290> }
>       intersection { GO1 rotate <0 0 300> }
>       intersection { GO1 rotate <0 0 310> }
>       intersection { GO1 rotate <0 0 320> }
>       intersection { GO1 rotate <0 0 330> }
>       intersection { GO1 rotate <0 0 340> }
>       intersection { GO1 rotate <0 0 350> }
>  }
>   texture { GOLD }
>    bounded_by {
>     intersection { Disk_Z scale <14 14 2> translate <0 0 -1> }
>  }
> }
>
> #declare DO1 = object { //crown plate
>   difference {
>      union {
>        intersection { Cube scale <24 17 1> }
>        intersection { Cube scale <4 21 1> }
>      }
>      quadric { Cylinder_Z scale <6 6 6> translate <-10 17 0> }
>      quadric { Cylinder_Z scale <6 6 6> translate <10 17 0> }
>    }
>     texture { GOLD }
>  bounded_by {
>    intersection { Cube scale <25 22 2> translate <0 0 -1> }
>  }
>  }
>
> #declare DO2 = object { //--CROWN CAPS--
>    union {
>     intersection { UCone scale <2 14 2> translate <0 14 0> }
>     quadric { Sphere scale <4 1 4> translate <0 3 0> }
>     quadric { Sphere scale <0.7 10.7> translate <0 14 0> }
>    }
>
>     texture { GOLD }
>     bounded_by {
>       intersection {
>         Disk_Y scale <4.5 16 4.5> translate <0 -0.5 0>
>     }
>    }
>   }
>
> #declare ASS3 = composite { //GEAR BOX & CROWN ASSEMBLY
>    object { CO2 }
>    object { DO1 translate <0 23 2> }
>    object { DO2 translate <20 40 2> }
>    object { DO2 translate <0 44 2> }
>    object { DO2 translate <-20 40 2> }
>      bounded_by {
>        intersection { Cube scale <25 45 11> translate <0 15 8> }
>   }
>  }
>
> #declare F01 = object { //--CLOCK FACE RIM
>    quadric { Sphere scale <30 30 6>
>    texture { GOLD}
> }
>
> #declare F02 = object { //--CLOCK FACE--
>    quadric { Sphere scale <30 30 4> }
>    texture { GOLD }
>    //pigment {
>      //image_map {<1.0 -1.0 0> gif "cface.gif"} }
>      //scale <60 60 4> translate <-30 -30 -4>
>      //ambient 0.3 diffuse 0.6 reflection 0.1
>   }
> }
>
> #declare CLOCK = composite { //--SOME ASSEMBLY REQUIRED--
>    object { AO1 translate <0, -20, 0> }             //base
>    object { ASS1 translate  <27 16 -19> }  //r.column
>    object { ASS1 translate <-27 16 -19> }  //l.column
>    object { AO6 translate <0 77 -19> }  //support
>    object { AO7 translate <0 700.5> }  //pivotsup
>    composite { ASS2 translate  <0 16 9> }  //balls
>    composite { ASS3 translate <0 104 -17> }  //crown/box
>    object { GO4 translate <-18 120 -3> }  //t.gear
>    object { GO4 translate <-22 100 -5> }  //b.gear
>    object { F01 translate <0 110 -21> }  //face rim
>    object { F02 translate <0 110 -24>}  //face
>      bounded_by {
>       intersection {
>         Disk_Y scale <64 170 64> translate <0 -1 0>
>    }
>   }
>  }
>
> //--PLACE CLOCK--
>   composite { CLOCK rotate <0 180 0> }
>
> //--FLOOR PLANE-object {
> //plane { <0 1 0> (-3)
> //texture { pigment { color Black } finish { ambient 0.8 reflection 0.3 phong
> 0.5 } }
> //}
>
> //--BACK DROP--object {
> intersection { Cube scale <1000 500 5>  texture {  GOLD }
> //pigment {
>    //image_map {<1.0 -1.0 0> gif "st.gif"}     }
>    //scale <2000 2000 5> translate <-1000 -1000 -5>
>    //ambient 0.4 diffuse 0.0
> //}
> rotate <0 0 0> translate <0 400 1200>
> }

Hi again.
I wish there was a way to just edit the previous post.
I have done a little fix to the code in the UCone and OCone definitions.

// POV Data - Mantel Clock II Modified for POV 1.00
// Mike Miller 11/1/91

#include "colors.inc"
#include "shapes.inc"
#include "textures.inc"

camera {
location <0 60 260>
//direction <0 1 1>
look_at <0 45 0>
//up <0 1 0>
//right <1.333 0 0>
}


object { //--LIGHT Source1--
light_source { <100 300 -100> color White}
}

object { //--LIGHT Source2--
light_source { <-100 200 -100> color White}
}

#declare GOLD = texture { finish {//--Bright Reflective Gold--
roughness 0.02 ambient 0.3 diffuse 0.5
reflection 0.6 brilliance 8.0 specular 0.5 }
pigment { color red 0.62 green 0.55 blue 0.0  }
}

#declare SILVER1 = texture { finish {//--Bright REFLECTIVE SILVER--
roughness 0.05 ambient 0.2 diffuse 0.5
reflection 0.6 brilliance 7.0 specular 0.5 }
pigment { color red 0.6 green 0.6 blue 0.6 }

}


#declare OCone = //--CONE POINT DOWN IPOINT at 000--
intersection {
quadric { Cone_Y scale <1 1 1> texture { GOLD } }
plane { <0 -1 0> 0 }
plane { <0 1 0> 1 }
}

#declare UCone = //--CONE POINT UP IPOINT at 000--
intersection {
quadric { Cone_Y scale <1 1 1> texture { GOLD } }
plane { <0 1 0> 0 }
plane { <0 1 0> (-1) inverse}
}

#declare AO1 = object { //clock base
     difference {
       union {
       quadric {Sphere scale <62 15 62> }
       quadric {Sphere scale <55 5 55> translate <0 10 0> }
       intersection { Disk_Y scale <50 3 50> translate <0 12 0> }
       intersection { Disk_Y scale <43 1 43> translate <0 15 0> }
       }
       plane { <0 1 0> 0 }
       }
       texture { GOLD }
       }


#declare AO2 = intersection { //RING
    Disk_Y scale <7 2 7> }

#declare AO3_1 = intersection { //RING
    Disk_Y scale <1 56 4> }

#declare AO3 = union { //Ribbed columns
     intersection { AO3_1 rotate <0 0 0> }
     intersection { AO3_1 rotate <0 30 0> }
     intersection { AO3_1 rotate <0 60 0> }
     intersection { AO3_1 rotate <0 90 0> }
     intersection { AO3_1 rotate <0 120 0> }
     intersection { AO3_1 rotate <0 150 0> }
    }

#declare AO4 = union { //Column Caps
    intersection { Disk_Y scale <5 5 5> }
    quadric { Sphere scale <4 2 4> translate <0 5 0> }
    quadric { Sphere scale <1.5 1.5 1.5> translate <0 8 0> }
    quadric { Sphere scale <3 2 3> translate <0 10 0> }
    }

#declare AO6 = object {
   union { //Column Caps
    intersection { Disk_Y scale <6 2 6> translate <27 -1 0> }
    intersection { Disk_Y scale <6 2 6> translate <-27 -1 0> }
    intersection { Cube scale <17 1 8.5> translate <0 0 10.5> }
    intersection { Cube scale <6 1 11.5> translate <0 0 10.5>
       rotate <0 45 0> translate <-27 0 0> }
    intersection { Cube scale <6 1 11.5> translate <0 0 11.5>
       rotate <0 -45 0> translate <27 0 0> }
    }
    texture { GOLD }
    bounded_by {
      intersection { Cube scale <35 2 14> translate <0 0 4> }
    }
    }

#declare AO7 = object {
      difference {
        union {
          intersection { Cube scale <17 8 0.5> }
          intersection { Cube scale <9 0.5 6.5>  translate <0 -7.5 7> }
        }
        quadric { Cylinder_Z scale <8 8 8> translate <-17 -8 0> }
        quadric { Cylinder_Z scale <8 8 8> translate <17 -8 0> }
      }
      texture { GOLD }
      bounded_by {
      intersection { Cube scale <18 9 8> translate <0 0 6.5> }
     }
    }

#declare ASS1 = object { //--The column assembly--
    union {
    intersection { AO2 }
    union { AO3 translate <0 2 0> }
    intersection { AO4 translate <0 56 0> }
    }
    texture { GOLD }
    bounded_by {
      intersection {
       Disk_Y scale <7.2 71 7.2> translate <0 -0.5 0>
       }
     }
    }

#declare BO1 = intersection { //Bell brace--
    difference {
      union {
        intersection { Cube scale <1 10 0.6> translate <1 18 0> }
        intersection { Cube scale <5 3 0.6> translate <2 25 0> }
        intersection { Cube scale <6 1 0.6> translate <14 1 0> }
        intersection { Cube scale <5.8 1 0.6> rotate <0 0 -45> translate <4.5
4.5 0> }
      }
      quadric { Cylinder_Z scale <8 8 8> translate <10 22 0> }
    }
   }

#declare BO2 = union { //--Brass bells--
     quadric { Sphere scale <9 9 9> }
     quadric { Sphere scale <3 2 3> translate <0 12 0> }
     intersection { Disk_Y scale <3 2 3> translate <0 8 0> }
   }

#declare BO3 = object { //Combined ball and support
 union {
 intersection { BO1 }
 union { BO2 translate <13 11 0> }
 }

  texture { GOLD }
   bounded_by {
    intersection { Cube scale <14 15 9> translate <10 14 0> }
 }
}

#declare BO4 = object { //pivot support for BO3
  union {
  intersection { Cone_X scale <3 4 3> }
  intersection { Disk_Y scale <3 20 3> translate <0 4 0> }
  intersection { Disk_Y scale <2 10 2> translate <0 24 0> }
  intersection { Disk_Y scale <7 2 7> translate <0 28 0> }
  intersection { Disk_Y scale <1 13 1> translate <0 35 0> }
  intersection { Disk_Y scale <11 1 11> translate <0 34 0> }
  intersection { Cube scale <14 0.5 2> translate <0 7 0> }
  intersection { Cube scale <2 0.5 14> translate <0 7 0> }
  }
  texture { GOLD }
   bounded_by {
    intersection { Disk_Y scale <12 50 12> translate <0 -1 0> }
    }
  }

#declare ASS2 = composite { //pivot support w/balls
   object { BO4 }
   object { BO3 translate <8 4 0> rotate <0 0 0> }
   object { BO3 translate <8 4 0> rotate <0 90 0> }
   object { BO3 translate <8 4 0> rotate <0 180 0> }
   object { BO3 translate <8 4 0> rotate <0 270 0> }
   bounded_by {
    intersection {
     Disk_Y scale <32 50 32> translate <0 -1 0>
   }
  }
 }

#declare CO1 = intersection { Disk_Z scale <2 2 20> }

#declare CO2 = object { //gear box
   union {
  intersection { Cube scale <17 26 1> }
  intersection { Cube scale <17 26 1> translate <0 0 17> }

  intersection { CO1 translate <-14, -23, -1.5> }
  intersection { CO1 translate <14, -23, -1.5> }
  intersection { CO1 translate <-14, 23, -1.5> }
  intersection { CO1 translate <14, 23, -1.5> }
 }
 texture { GOLD }
  bounded_by {
   intersection { Cube scale <18 27 11> translate <0 0 9> }
  }
 }

#declare GO1 = intersection { //tooth of gear
   Cube scale <1 0.5 0.5> translate <12 0 0> }

#declare GO2 = intersection { //gear ring
   difference {
     intersection { Disk_Z scale <12 12 1> }
     quadric { Cylinder_Z scale <10 10 10> }
     }
   }

#declare GO3 = union { //gear spoke
    intersection { Cube scale <1.5 11 0.5> }
    intersection { Cube scale <11 1.5 0.5> }
   }

#declare GO4 = object {  //assemble the gear parts
   union {
      intersection { GO2 translate <0 0 -0.5> }
      union { GO3 }
      intersection { GO1 rotate <0 0 0> }
      intersection { GO1 rotate <0 0 10> }
      intersection { GO1 rotate <0 0 20> }
      intersection { GO1 rotate <0 0 30> }
      intersection { GO1 rotate <0 0 40> }
      intersection { GO1 rotate <0 0 50> }
      intersection { GO1 rotate <0 0 60> }
      intersection { GO1 rotate <0 0 70> }
      intersection { GO1 rotate <0 0 80> }
      intersection { GO1 rotate <0 0 90> }
      intersection { GO1 rotate <0 0 100> }
      intersection { GO1 rotate <0 0 110> }
      intersection { GO1 rotate <0 0 120> }
      intersection { GO1 rotate <0 0 130> }
      intersection { GO1 rotate <0 0 140> }
      intersection { GO1 rotate <0 0 150> }
      intersection { GO1 rotate <0 0 160> }
      intersection { GO1 rotate <0 0 170> }
      intersection { GO1 rotate <0 0 180> }
      intersection { GO1 rotate <0 0 190> }
      intersection { GO1 rotate <0 0 200> }
      intersection { GO1 rotate <0 0 210> }
      intersection { GO1 rotate <0 0 220> }
      intersection { GO1 rotate <0 0 230> }
      intersection { GO1 rotate <0 0 240> }
      intersection { GO1 rotate <0 0 250> }
      intersection { GO1 rotate <0 0 260> }
      intersection { GO1 rotate <0 0 270> }
      intersection { GO1 rotate <0 0 280> }
      intersection { GO1 rotate <0 0 290> }
      intersection { GO1 rotate <0 0 300> }
      intersection { GO1 rotate <0 0 310> }
      intersection { GO1 rotate <0 0 320> }
      intersection { GO1 rotate <0 0 330> }
      intersection { GO1 rotate <0 0 340> }
      intersection { GO1 rotate <0 0 350> }
 }

  texture { GOLD }
 bounded_by {
   intersection { Disk_Z scale <14 14 2> translate <0 0 -1> }
 }
}

#declare DO1 = object { //crown plate
  difference {
     union {
       intersection { Cube scale <24 17 1> }
       intersection { Cube scale <4 21 1> }
     }
     quadric { Cylinder_Z scale <6 6 6> translate <-10 17 0> }
     quadric { Cylinder_Z scale <6 6 6> translate <10 17 0> }
   }
    texture { GOLD }
 bounded_by {
   intersection { Cube scale <25 22 2> translate <0 0 -1> }
 }
 }


#declare DO2 = object { //--CROWN CAPS--
   union {
    intersection { UCone scale <2 14 2> translate <0 14 0> }
    quadric { Sphere scale <4 1 4> translate <0 3 0> }
    quadric { Sphere scale <0.7 10.7> translate <0 14 0> }
   }

    texture { GOLD }
    bounded_by {
      intersection {
        Disk_Y scale <4.5 16 4.5> translate <0 -0.5 0>
    }
   }
  }

#declare ASS3 = composite { //GEAR BOX & CROWN ASSEMBLY
   object { CO2 }
   object { DO1 translate <0 23 2> }
   object { DO2 translate <20 40 2> }
   object { DO2 translate <0 44 2> }
   object { DO2 translate <-20 40 2> }
     bounded_by {
       intersection { Cube scale <25 45 11> translate <0 15 8> }
  }
 }

#declare F01 = object { //--CLOCK FACE RIM
   quadric { Sphere scale <30 30 6>
   texture { GOLD}
}


#declare F02 = object { //--CLOCK FACE--
   quadric { Sphere scale <30 30 4> }
   texture { GOLD }
   //pigment {
     //image_map {<1.0 -1.0 0> gif "cface.gif"} }
     //scale <60 60 4> translate <-30 -30 -4>
     //ambient 0.3 diffuse 0.6 reflection 0.1
  }
}

#declare CLOCK = composite { //--SOME ASSEMBLY REQUIRED--
   object { AO1 translate <0, -20, 0> }             //base
   object { ASS1 translate  <27 16 -19> }  //r.column
   object { ASS1 translate <-27 16 -19> }  //l.column
   object { AO6 translate <0 77 -19> }  //support
   object { AO7 translate <0 700.5> }  //pivotsup
   composite { ASS2 translate  <0 16 9> }  //balls
   composite { ASS3 translate <0 104 -17> }  //crown/box
   object { GO4 translate <-18 120 -3> }  //t.gear
   object { GO4 translate <-22 100 -5> }  //b.gear
   object { F01 translate <0 110 -21> }  //face rim
   object { F02 translate <0 110 -24>}  //face
     bounded_by {
      intersection {
        Disk_Y scale <64 170 64> translate <0 -1 0>
   }
  }
 }

//--PLACE CLOCK--
  composite { CLOCK rotate <0 180 0> }

//--FLOOR PLANE-object {
plane { <0 1 0> (-20)
texture { pigment { color Black } finish { ambient 0.8 reflection 0.3 phong 0.5
} }
}

//--BACK DROP--object {
intersection { Cube scale <1000 500 5>  texture {  GOLD }
//pigment {
   //image_map {<1.0 -1.0 0> gif "st.gif"}     }
   //scale <2000 2000 5> translate <-1000 -1000 -5>
   //ambient 0.4 diffuse 0.0
//}
rotate <0 0 0> translate <0 400 1200>
}


Post a reply to this message

From: Alain
Subject: Re: Artist WANTED!
Date: 8 May 2016 12:50:19
Message: <572f6e4b$1@news.povray.org>


>
> Hi again.
> I wish there was a way to just edit the previous post.
> I have done a little fix to the code in the UCone and OCone definitions.
When replying, you can cut out parts of the original post that are no 
longer relevant.

>
> // POV Data - Mantel Clock II Modified for POV 1.00
> // Mike Miller 11/1/91
>

Those textures fall short regarding the physical concistency.
First, you don't want those to actualy glow...

#declare GOLD = texture { finish {//--Bright Reflective Gold--
roughness 0.02 ambient 0.3 diffuse 0.5
reflection 0.6 brilliance 8.0 specular 0.5 }
pigment { color red 0.62 green 0.55 blue 0.0  }
}

#declare SILVER1 = texture { finish {//--Bright REFLECTIVE SILVER--
roughness 0.05 ambient 0.2 diffuse 0.5
reflection 0.6 brilliance 7.0 specular 0.5 }
pigment { color red 0.6 green 0.6 blue 0.6 }
}

Try those metallic textures instead:

#declare GOLD = texture{
  finish{ambient 0 diffuse albedo 0.2
   brilliance 8 specular albedo 0.5 roughness 0.02 metallic
   reflection{0.6 metallic}
  pigment{rgb<0.62, 0.55, 0>}
}
#declare SILVER1 = texture{
  finish{ambient 0 diffuse albedo 0.2
   brilliance 7 specular albedo 0.5 roughness 0.05 metallic
   reflection{0.6 metallic}
  pigment{rgb 0.6}
}

You'll probably notice a nice improvement in your scene.
When that scene was cerated, several features where not created.

>
> #declare OCone = //--CONE POINT DOWN IPOINT at 000--
> intersection {
> quadric { Cone_Y scale <1 1 1> texture { GOLD } }
> plane { <0 -1 0> 0 }
> plane { <0 1 0> 1 }
> }
>
> #declare UCone = //--CONE POINT UP IPOINT at 000--
> intersection {
> quadric { Cone_Y scale <1 1 1> texture { GOLD } }
> plane { <0 1 0> 0 }
> plane { <0 1 0> (-1) inverse}
> }

Much beter definitions for those objects follow:
#declare OCone = cone{0, 0, y, 1 texture {GOLD}}
#declare UCone = cone{0, 0, -y, 1 texture {GOLD}}

Those render faster and are bounded shapes. The cone primitive render 
faster than the quartic, and you don't need an intersection of 3 elements.
The originals are unbounded, or treated as "infinite" objects. An 
intersection of infinite primitives is itself unbounded.


Alain


Post a reply to this message

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