POV-Ray : Newsgroups : povray.newusers : Faceted sphere? Server Time
29 Jul 2024 18:28:05 EDT (-0400)
  Faceted sphere? (Message 1 to 10 of 11)  
Goto Latest 10 Messages Next 1 Messages >>>
From: X-Caliber
Subject: Faceted sphere?
Date: 6 Mar 2005 22:00:00
Message: <web.422bc2902685c12fe6ef12d50@news.povray.org>
I want to create a faceted checkered sphere (much along the lines of the
Amiga "Boing!" ball).

To do this I figure I'd take a sphere, build a several rings of boxes (one
for each vertical level of facets, eight I guess), each ring rotationally
staggered from the one above/below (I figure seven boxes per ring, so each
staggered ring would be rotated along the vertical axis by 1/14th of a full
rotation), and then this superstructure would be merged together, given one
set of attributes to cut into the sphere with, spun 1/14th a turn, and cut
again with another set of attributes.

I could be pretty far ahead of myself here though, as I don't really know
how to do any of that. :-)


Post a reply to this message

From: Mienai
Subject: Re: Faceted sphere?
Date: 7 Mar 2005 03:10:02
Message: <web.422c0b6d1e707c60ce313a1c0@news.povray.org>
"X-Caliber" <nomail@nomail> wrote:
> I want to create a faceted checkered sphere (much along the lines of the
> Amiga "Boing!" ball).
>
> To do this I figure I'd take a sphere, build a several rings of boxes (one
> for each vertical level of facets, eight I guess), each ring rotationally
> staggered from the one above/below (I figure seven boxes per ring, so each
> staggered ring would be rotated along the vertical axis by 1/14th of a full
> rotation), and then this superstructure would be merged together, given one
> set of attributes to cut into the sphere with, spun 1/14th a turn, and cut
> again with another set of attributes.
>
> I could be pretty far ahead of myself here though, as I don't really know
> how to do any of that. :-)

You could write a quick loop to do this, though I'd do intersections of
planes instead of removing cubes from a sphere... Or at least I'd think it
would be quicker (render wise).


Post a reply to this message

From: X-Caliber
Subject: Re: Faceted sphere?
Date: 7 Mar 2005 03:40:00
Message: <web.422c12851e707c60e6ef12d50@news.povray.org>
"Mienai" <Mienai> wrote:
> "X-Caliber" <nomail@nomail> wrote:
> > I want to create a faceted checkered sphere (much along the lines of the
> > Amiga "Boing!" ball).
> >
> > To do this I figure I'd take a sphere, build a several rings of boxes (one
> > for each vertical level of facets, eight I guess), each ring rotationally
> > staggered from the one above/below (I figure seven boxes per ring, so each
> > staggered ring would be rotated along the vertical axis by 1/14th of a full
> > rotation), and then this superstructure would be merged together, given one
> > set of attributes to cut into the sphere with, spun 1/14th a turn, and cut
> > again with another set of attributes.
> >
> > I could be pretty far ahead of myself here though, as I don't really know
> > how to do any of that. :-)
>
> You could write a quick loop to do this, though I'd do intersections of
> planes instead of removing cubes from a sphere... Or at least I'd think it
> would be quicker (render wise).

If planes would work, I imagine proper bounding would limit their negative
effect, and it'd prolly be easier to generate numbers for positioning.

I don't follow how they would actually work though, as opposed to boxes
which are > 2 dimensional, therefore much saner to operate on 3 dimensional
objects with.

I figured a few loops would do the box setup conveniently (and with partial
effective adjustably!). Not that I know how to pull that off, being a mere
highly technical noob. I'm meandering about the web for scripts that I can
learn from, not going very fast though (my trig skills are nonexistant, so
I expect this to hurt a bit).


Post a reply to this message

From: Shay
Subject: Re: Faceted sphere?
Date: 7 Mar 2005 10:51:09
Message: <422c786d$1@news.povray.org>
X-Caliber wrote:
> 
> I don't follow how they [planes] would actually work though, as
> opposed to boxes which are > 2 dimensional, therefore much saner
> to operate on 3 dimensional objects with.

Planes are three dimensional. You are looking at the surface, but 
everything "below" the surface is considered inside the plane. Look at 
this object, for instance:

intersection {
   plane { x, 1 }
   plane { -x, 1 }
   plane { y, 1 }
   plane { -y, 1 }
   plane { z, 1 }
   plane { -z, 1 }
   pigment { rgb y }
}
camera {
   location <5,5,5>
   look_at <0,0,0>
}
light_source {
   <25,250,500>
   color rgb 1
}

This makes a cube. Intersecting planes can also be rotated to make a 
faceted sphere, although a mesh would be tons easier. Rotate points 
around an axis and then connect the points with triangles.

  -Shay


Post a reply to this message

From: X-Caliber
Subject: Re: Faceted sphere?
Date: 7 Mar 2005 23:15:01
Message: <web.422d260f1e707c60e6ef12d50@news.povray.org>
Shay <ema### [at] yourhostcom> wrote:
> Planes are three dimensional. You are looking at the surface, but
> everything "below" the surface is considered inside the plane. Look at
> this object, for instance:
>
> intersection {
>    plane { x, 1 }
>    plane { -x, 1 }
>    plane { y, 1 }
>    plane { -y, 1 }
>    plane { z, 1 }
>    plane { -z, 1 }
>    pigment { rgb y }
> }
> camera {
>    location <5,5,5>
>    look_at <0,0,0>
> }
> light_source {
>    <25,250,500>
>    color rgb 1
> }
>
> This makes a cube. Intersecting planes can also be rotated to make a
> faceted sphere, although a mesh would be tons easier. Rotate points
> around an axis and then connect the points with triangles.

Cool demo.

I dunno how to do it meshwise, so I ended up with an object intersection
define of 56 planes which gets intersected with itsself later on. Heres the
short version...


camera {
 location <1, 2.5, 4>
 look_at <0, 0, 0>
}

light_source { <5, 5, 3> color <1, 1, .8> }
light_source { <-5, 0, 3> color <1, .8, 1> }
light_source { <5, 0, -3> color <.8, 1, 1> }

background {}

#declare CircCount = 7;
#declare VertCount = 8;
#declare CircFreq = 360 / CircCount;
#declare VertFreq = 180 / VertCount;

#declare HalfBoingSlice =
 intersection {
  plane { z, 2 rotate <-VertFreq*3.5, 0, 0> }
  plane { z, 2 rotate <-VertFreq*2.5, CircFreq*0.5, 0> }
  plane { z, 2 rotate <-VertFreq*1.5, 0, 0> }
  plane { z, 2 rotate <-VertFreq*0.5, CircFreq*0.5, 0> }
  plane { z, 2 rotate <VertFreq*0.5, 0, 0> }
  plane { z, 2 rotate <VertFreq*1.5, CircFreq*0.5, 0> }
  plane { z, 2 rotate <VertFreq*2.5, 0, 0> }
  plane { z, 2 rotate <VertFreq*3.5, CircFreq*0.5, 0> }
 }

#declare HalfBoing =
 intersection {
  object { HalfBoingSlice }
  object { HalfBoingSlice rotate CircFreq*y }
  object { HalfBoingSlice rotate CircFreq*2*y }
  object { HalfBoingSlice rotate CircFreq*3*y }
  object { HalfBoingSlice rotate CircFreq*4*y }
  object { HalfBoingSlice rotate CircFreq*5*y }
  object { HalfBoingSlice rotate CircFreq*6*y }
  object { HalfBoingSlice rotate CircFreq*7*y }
 }


object {
 intersection {
 object { HalfBoing pigment { color <1, .2, .2> } }
 object { HalfBoing pigment { color <1, 1, 1> } rotate <0, CircFreq*0.5, 0>
}
 }
 bounded_by {sphere {0, 2.2}}
}


Post a reply to this message

From: kurtz le pirate
Subject: Re: Faceted sphere?
Date: 8 Mar 2005 13:40:52
Message: <kurtzlepirate-042EE5.19405208032005@news.povray.org>
In article <web.422bc2902685c12fe6ef12d50@news.povray.org>,
 "X-Caliber" <nomail@nomail> wrote:

>>I want to create a faceted checkered sphere (much along the lines of the
>>Amiga "Boing!" ball).
>>
>>To do this I figure I'd take a sphere, build a several rings of boxes (one
>>for each vertical level of facets, eight I guess), each ring rotationally
>>staggered from the one above/below (I figure seven boxes per ring, so each
>>staggered ring would be rotated along the vertical axis by 1/14th of a full
>>rotation), and then this superstructure would be merged together, given one
>>set of attributes to cut into the sphere with, spun 1/14th a turn, and cut
>>again with another set of attributes.
>>
>>I could be pretty far ahead of myself here though, as I don't really know
>>how to do any of that. :-)

  hi,

  have a look in povray.binaries.images.
  and yes, it's a mesh {}.

  klp


Post a reply to this message

From: X-Caliber
Subject: Re: Faceted sphere?
Date: 8 Mar 2005 16:55:00
Message: <web.422e1ecf1e707c60e6ef12d50@news.povray.org>
kurtz le pirate <kur### [at] yahoofr> wrote:
>  X-Caliber wrote:
> >>I want to create a faceted checkered sphere (much along the lines of the
> >>Amiga "Boing!" ball).
>
>   hi,
>
>   have a look in povray.binaries.images.
>   and yes, it's a mesh {}.

Cool. That could be a decent disco ball. :-)

Can alternating face attributes be easily set to it?

Is there a bit of iterating script in there to generate the mesh? (the long
version of my Boing! description begs for some nested loop goodness, though
the smaller version I posted seems to render about 21% faster, I'm too lazy
to verify at the moment though).

I'm also curious to see mesh code.


Post a reply to this message

From: kurtz le pirate
Subject: Re: Faceted sphere?
Date: 9 Mar 2005 13:09:30
Message: <kurtzlepirate-5A7970.19093009032005@news.povray.org>
In article <web.422e1ecf1e707c60e6ef12d50@news.povray.org>,
 "X-Caliber" <nomail@nomail> wrote:

>>kurtz le pirate <kur### [at] yahoofr> wrote:
>>>  X-Caliber wrote:
>>> >>I want to create a faceted checkered sphere (much along the lines of the
>>> >>Amiga "Boing!" ball).
>>>
>>>   hi,
>>>
>>>   have a look in povray.binaries.images.
>>>   and yes, it's a mesh {}.
>>
>>Cool. That could be a decent disco ball. :-)
>>
>>Can alternating face attributes be easily set to it?
>>
>>Is there a bit of iterating script in there to generate the mesh? (the long
>>version of my Boing! description begs for some nested loop goodness, though
>>the smaller version I posted seems to render about 21% faster, I'm too lazy
>>to verify at the moment though).
>>
>>I'm also curious to see mesh code.

  no problem. give me a valid email.
  klp


Post a reply to this message

From: X-Caliber
Subject: Re: Faceted sphere?
Date: 9 Mar 2005 20:00:00
Message: <web.422f9af81e707c60e6ef12d50@news.povray.org>
X-Caliber wrote:
> I dunno how to do it meshwise, so I ended up with an object intersection
> define of 56 planes which gets intersected with itsself later on. Heres the
> short version...

Seeing a demo of nested #whiles, I achieved major code shrinkage again. And
this time the facet count can be changed in either direction with some
#defines.

Thanks Bancquart Sebastien for posting your code!


camera {
  location <1, 2.5, 4>
  look_at <0, 0, 0>
}

light_source { <5, 5, 3> color <1, 1, .8> }
light_source { <-5, 0, 3> color <1, .8, 1> }
light_source { <5, 0, -3> color <.8, 1, 1> }

background {}

#declare CircCount = 14;
#declare VertCount = 8;

#declare HalfBoing = intersection { #declare a=VertCount;
  #while (a>0) #declare a=a-1; #declare b=CircCount;
    #while (b>0) #declare b=b-1;
      plane { z, 2 rotate <180/VertCount*(a+0.5)-90, 720/CircCount*(b+
(a/2-int(a/2)) ), 0> }
#end #end }

object {
  intersection {
  object { HalfBoing pigment { color <1, .2, .2> } }
  object { HalfBoing pigment { color <1, 1, 1> } rotate <0, 360/CircCount,
0> }
  }
  bounded_by {sphere {0, 2.2}}
}


Post a reply to this message

From: X-Caliber
Subject: Re: Faceted sphere?
Date: 10 Mar 2005 10:25:00
Message: <web.423066b41e707c60e6ef12d50@news.povray.org>
X-Caliber wrote:
> Seeing a demo of nested #whiles, I achieved major code shrinkage again. And
> this time the facet count can be changed in either direction with some
> #defines.

....and quadrupling both defines leads to amazingly long render times.

(2 minutes becomes 13 hours)

If I ever plan on using high counts (I don't actually) using a mesh may be
really necessary.


Post a reply to this message

Goto Latest 10 Messages Next 1 Messages >>>

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