POV-Ray : Newsgroups : povray.binaries.images : "Meshyfied" Bezier patch (116KB) Server Time
18 Nov 2024 20:38:32 EST (-0500)
  "Meshyfied" Bezier patch (116KB) (Message 1 to 5 of 5)  
From: Tor Olav Kristensen
Subject: "Meshyfied" Bezier patch (116KB)
Date: 6 Mar 2002 21:34:13
Message: <3C86CF96.F364BECD@hotmail.com>
This image shows a very similar bezier
patch to the one I posted to this group
nearly two days ago.

The big difference is that this image
now parses in 1 minute and renders in
5 minutes on my 100 MHz Pentium (Win98).

The parametric{} surface in my last
image took about 2 hours to render (IIRC).

Since there is a long mesh2{} discussion
going on here in this group at the
moment, I thought that I should try to
make a macro that would output a mesh2
when given 3 parametric functions like
those my bezier patch macro outputs.

And it seems that it works quite ok.

The mesh it spits out "contains" smoothed
normals and uv_vectors. The upper shape
shows an image uv-mapped onto the mesh.

The left shape shows how the different
triangles are chosen within the mesh.
I find the patterns quite interesting.

The mesh consists of 30x30 pairs of
triangles.


Does anyone else have comments on this ?


Tor Olav


Post a reply to this message


Attachments:
Download 'beziermesh07.jpg' (116 KB)

Preview of image 'beziermesh07.jpg'
beziermesh07.jpg


 

From: Christoph Hormann
Subject: Re: "Meshyfied" Bezier patch (116KB)
Date: 7 Mar 2002 05:02:21
Message: <3C873AA9.DBCC4206@gmx.de>
Tor Olav Kristensen wrote:
> 
> [...]
> Since there is a long mesh2{} discussion
> going on here in this group at the
> moment, I thought that I should try to
> make a macro that would output a mesh2
> when given 3 parametric functions like
> those my bezier patch macro outputs.
> 
> And it seems that it works quite ok.
> 

You know ingo already made a macro for converting parametrics into meshes?

news://news.povray.org/Xns915C94A8BA293seed7@povray.org
http://www.econym.demon.co.uk/isotut/param.htm

Christoph

-- 
POV-Ray tutorials, IsoWood include,                 
TransSkin and more: http://www.tu-bs.de/~y0013390/  
Last updated 21 Feb. 2002 _____./\/^>_*_<^\/\.______


Post a reply to this message

From: Shay
Subject: Re: "Meshyfied" Bezier patch (116KB)
Date: 7 Mar 2002 17:21:16
Message: <3c87e7dc$1@news.povray.org>
Tor Olav Kristensen <tor### [at] hotmailcom> wrote in message
news:3C86CF96.F364BECD@hotmail.com...

Looks good.
I played around with these surfaces the first time I saw them on a web page,
but Povray has NOT taught me any patience, so I only ever use very simple
isos for anything serious. I like the idea of having Povray build and create
curves and shapes for me based on only a few control points, but I don't
like the idea of waiting for my computer to perform the calculations every
time I render.

Turning these surfaces into a mesh is a good idea. Your technique can
probably be easily modified to build a surface around a cylinder, or one
that doubles back over itself, something which I don't believe is possible
with iso parametric surfaces.

 -Shay


Post a reply to this message

From: Tor Olav Kristensen
Subject: Re: "Meshyfied" Bezier patch (116KB)
Date: 7 Mar 2002 18:27:10
Message: <3C87F509.6BB43E98@hotmail.com>
Christoph Hormann wrote:
> 
> Tor Olav Kristensen wrote:
> >
> > [...]
> > Since there is a long mesh2{} discussion
> > going on here in this group at the
> > moment, I thought that I should try to
> > make a macro that would output a mesh2
> > when given 3 parametric functions like
> > those my bezier patch macro outputs.
> >
> > And it seems that it works quite ok.
> >
> 
> You know ingo already made a macro for converting parametrics into meshes?
> 
> news://news.povray.org/Xns915C94A8BA293seed7@povray.org
> http://www.econym.demon.co.uk/isotut/param.htm

Yes, I noticed that once while visiting
Mike's nice online iso-tutorials.

But I just had to try to do it my way.

I don't like the idea of passing
globally declared macros or functions
to macros as parameters.

Instead I prefer declarations like this:

#declare ContolPoints =
array[5][10] {
  { <1, 3, -3>, ... <2, -6, 0> }
  .
  .
  .
  { <-4, 2, 7>, ... <-1, -1, 5> }
}


object {
  ParametricMesh(
    BezierPatchFunction(CtrlPoints, x),
    BezierPatchFunction(CtrlPoints, y),
    BezierPatchFunction(CtrlPoints, z),
    <0, 0>, <1, 1>, <30, 30>
  )
  texture {
    uv_mapping
    pigment {
      image_map {
        png "someimage"
        map_type 0
        interpolate 2
      }
    }
  }
}


Tor Olav


Post a reply to this message

From: Tor Olav Kristensen
Subject: Re: "Meshyfied" Bezier patch (116KB)
Date: 7 Mar 2002 18:45:21
Message: <3C87F94B.A40A0FDF@hotmail.com>
Shay wrote:
> 
> Tor Olav Kristensen <tor### [at] hotmailcom> wrote in message
> news:3C86CF96.F364BECD@hotmail.com...
> 
> Looks good.

Thank you Shay.


> I played around with these surfaces the first time I saw them on a web page,
> but Povray has NOT taught me any patience, so I only ever use very simple
> isos for anything serious. I like the idea of having Povray build and create
> curves and shapes for me based on only a few control points, but I don't
> like the idea of waiting for my computer to perform the calculations every
> time I render.

Yes, at first I too was a bit discouraged 
by the very slow rendering times of the
built in parametric {} shapes, but now I'm
eager to try out more of the ideas I have.


> Turning these surfaces into a mesh is a good idea. Your technique can
> probably be easily modified to build a surface around a cylinder, or one
> that doubles back over itself, something which I don't believe is possible
> with iso parametric surfaces.

I'm thinking and reading a bit now about
techniques for construction of different
types of parametric surfaces.

The main challenge is to write macros that
are general at the same time as they are
fast, memory efficient and user friendly
(and that they don't rely on declarations
of global variables).

My computer at home is really too slow to
use for exploration of the built in para-
metric surfaces, so I'm not quite sure of
its capabilities yet.

One thing would like to know is how it
generates the surface normals, especially
at the extremes of the u and v parameters.


Tor Olav


Post a reply to this message

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