POV-Ray : Newsgroups : povray.binaries.images : NURBS Server Time
22 Feb 2025 11:41:38 EST (-0500)
  NURBS (Message 16 to 25 of 55)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Le Forgeron
Subject: Re: NURBS
Date: 24 Jul 2016 13:19:10
Message: <5794f88e$1@news.povray.org>
Le 24/07/2016 18:32, clipka a écrit :
> Am 24.07.2016 um 18:10 schrieb Bald Eagle:
>> clipka <ano### [at] anonymousorg> wrote:
>>
>>>> Any suggestion of name for that container ?
>>>
>>> "nurbs_mesh"?
>>
>> If it's a closed 3d shape composed of NURBS mesh(es), then maybe "envelope" to
>> differentiate and disambiguate from a (simple) open mesh?
> 
> Sounds far too vague and unrelated. Besides, I think it would be smart
> to also support non-closed NURBS patch meshes, just like mesh also
> supports non-closed triangle meshes.
> 

"package", "bundle", "parcel", "lot", "bunch" ?????

On the same way as mesh supports flat triangle and smooth triangle, I do not see why
the "object" holding nurbs couldn't also hold other 2D finite primitives.
To the risk of getting another (bad & slow) kind of mesh (as a collection of
triangles).

nurbs, bicubic_patch... may be some other objects could also be added ?


Post a reply to this message

From: clipka
Subject: Re: NURBS
Date: 24 Jul 2016 13:48:18
Message: <5794ff62@news.povray.org>
Am 24.07.2016 um 19:19 schrieb Le_Forgeron:
> Le 24/07/2016 18:32, clipka a écrit :
>> Am 24.07.2016 um 18:10 schrieb Bald Eagle:
>>> clipka <ano### [at] anonymousorg> wrote:
>>>
>>>>> Any suggestion of name for that container ?
>>>>
>>>> "nurbs_mesh"?
>>>
>>> If it's a closed 3d shape composed of NURBS mesh(es), then maybe "envelope" to
>>> differentiate and disambiguate from a (simple) open mesh?
>>
>> Sounds far too vague and unrelated. Besides, I think it would be smart
>> to also support non-closed NURBS patch meshes, just like mesh also
>> supports non-closed triangle meshes.
>>
> 
> "package", "bundle", "parcel", "lot", "bunch" ?????
> 
> On the same way as mesh supports flat triangle and smooth triangle,
> I do not see why the "object" holding nurbs couldn't also hold other 2D finite
primitives.
> To the risk of getting another (bad & slow) kind of mesh (as a collection of
triangles).

I presume that the `nurbs_mesh` object's data structure and algorithms
would be optimized for nurbs patches, just like the `mesh` object's are
optimized for triangles.

Both triangle meshes and NURBS-based meshes have the property that any
one of them can be used to (approximately) represent arbitrary shapes.
It makes sense to support both, because each has its own unique
advantages and disadvantages, but any single object can be modelled
using just one of the two -- so it makes sense to design not just one
container to support both approaches, but to design different
containers, each optimized to support just one of them.

And even if the first implementation would be non-optimized and could
handle other 2D elements as well, it still makes sense to limit it to
NURBS patches, so that optimizations can easily be implemented in the
future.


As for having a generic container to combine surface-only primitives
into an object with a defined volume, I think that would be nice to have
as well, but that would be yet another thing (at least at the SDL level;
the NURBS-specific construct could initially be implemented by means of
such a more generic container, but as mentioned before, it would make
sense to provide a dedicated SDL syntax, so that future optimizations
are possible).


Post a reply to this message

From: StephenS
Subject: Re: NURBS
Date: 24 Jul 2016 13:48:30
Message: <5794ff6e$1@news.povray.org>
On 24/07/2016 1:19 PM, Le_Forgeron wrote:
> Le 24/07/2016 18:32, clipka a écrit :
>> Am 24.07.2016 um 18:10 schrieb Bald Eagle:
>>> clipka <ano### [at] anonymousorg> wrote:
>>>
>>>>> Any suggestion of name for that container ?
>>>>
>>>> "nurbs_mesh"?
>>>
>>> If it's a closed 3d shape composed of NURBS mesh(es), then maybe "envelope" to
>>> differentiate and disambiguate from a (simple) open mesh?
>>
>> Sounds far too vague and unrelated. Besides, I think it would be smart
>> to also support non-closed NURBS patch meshes, just like mesh also
>> supports non-closed triangle meshes.
>>
>
> "package", "bundle", "parcel", "lot", "bunch" ?????
group

> On the same way as mesh supports flat triangle and smooth triangle, I do not see why
the "object" holding nurbs couldn't also hold other 2D finite primitives.
> To the risk of getting another (bad & slow) kind of mesh (as a collection of
triangles).
>
> nurbs, bicubic_patch... may be some other objects could also be added ?
>
light_group{}
nurb_group{}, nurbs_group{}

Moray modeller used group to mean union{} only, so you can include 
lights and still transform them.

Stephen S


Post a reply to this message

From: clipka
Subject: Re: NURBS
Date: 24 Jul 2016 14:10:42
Message: <579504a2@news.povray.org>
Am 24.07.2016 um 19:47 schrieb StephenS:

> light_group{}
> nurb_group{}, nurbs_group{}

Just as a side note, NURBS is both singular and plural ;)
NURBS = Non-Uniform Rational B-Spline(s)

(B-Splines, in turn, is not to be confused with Bezier Splines.)


Post a reply to this message

From: Le Forgeron
Subject: Re: NURBS
Date: 24 Jul 2016 15:22:12
Message: <57951564@news.povray.org>
Le 24/07/2016 17:10, clipka a écrit :
> 
>> > Still any interest for nurbs.get_vertex() ? or can I forget it ?
> Sounds like a useful idea.
> 

Ok, done (with a different syntax, dot was not appropriate )

nurbs_vertex( NURBS_ID, U_Value, V_Value )
nurbs_normal( NURBS_ID, U_Value, V_Value )


I also removed some useless computations on the main core of nurbs, speed up a bit the
rendering.(less allocation, less computation)

----------------------------------------------------------------------------
Render Statistics
Image Resolution 1280 x 960
----------------------------------------------------------------------------
Pixels:          1305600   Samples:          789102   Smpls/Pxl: 0.60
Rays:            2094702   Saved:                 0   Max Level: 1/10
----------------------------------------------------------------------------
Ray->Shape Intersection          Tests       Succeeded  Percentage
----------------------------------------------------------------------------
Box                             336551           50706     15.07
Cone/Cylinder                  1918809          286999     14.96
Nurbs                          9422584         1377518     14.62
Sphere                         1045795          330840     31.64
Bounding Box                 119974750        36967270     30.81
----------------------------------------------------------------------------
Shadow Ray Tests:           2685134   Succeeded:                398144
Shadow Cache Hits:           395904
----------------------------------------------------------------------------
----------------------------------------------------------------------------
Render Time:
  Photon Time:      No photons
  Radiosity Time:   No radiosity
  Trace Time:       0 hours  0 minutes 38 seconds (38.230 seconds)
              using 12 thread(s) with 434.075 CPU-seconds total
POV-Ray finished


Post a reply to this message


Attachments:
Download 'bb.png' (183 KB) Download 'bb.pov.txt' (2 KB)

Preview of image 'bb.png'
bb.png

From: LanuHum
Subject: Re: NURBS
Date: 24 Jul 2016 15:45:01
Message: <web.57951a946d1ce2047a3e03fe0@news.povray.org>
When can I test?


Post a reply to this message

From: Le Forgeron
Subject: Re: NURBS
Date: 25 Jul 2016 06:50:08
Message: <5795eee0$1@news.povray.org>
Le 24/07/2016 21:44, LanuHum a écrit :
> 
> When can I test?
> 

Now also available in hg-povray.


Post a reply to this message

From: Nekar Xenos
Subject: Re: NURBS
Date: 26 Jul 2016 13:06:27
Message: <57979893$1@news.povray.org>
Yay, NURBS!

Yippee!

=D

-- 
________________________________________

-Nekar Xenos-


Post a reply to this message

From: LanuHum
Subject: Re: NURBS
Date: 29 Jul 2016 11:15:01
Message: <web.579b72a26d1ce2047a3e03fe0@news.povray.org>
Does not work. Empty image. :(

#version 3.7;

#include "functions.inc"
global_settings {
    assumed_gamma 1.000000
    max_trace_level 3
    charset utf8
}
sky_sphere {
    pigment {rgb<0.051, 0.051, 0.051>}
}

#declare Default_texture = texture{pigment {rgb 0.8}}

#declare data_SurfPatch_ob =
nurbs {7,4 accuracy 0.01
 <-1.5000,-5.4790,0.0000> <-1.5000,-4.3181,2.0249> <-1.5000,-2.8825,0.0000>
<-1.5000,-1.5000,0.0000> <-1.5000,-0.5000,0.0000>
 <-1.5000,0.5000,0.0000> <-1.5000,1.5000,0.0000> <-0.5000,-5.4790,0.0000>
<-0.5000,-4.3181,0.0000>
 <-0.5000,-2.8825,1.7624> <-0.5000,-1.5000,0.0000> <-0.5000,-0.5000,1.0000>
<-0.5000,0.5000,1.0000>
 <-0.5000,1.5000,0.0000> <0.5000,-5.4790,0.0000> <0.5000,-4.3181,0.0000>
<0.5000,-2.8825,0.0000>
 <0.5000,-1.5000,1.1552> <0.5000,-0.5000,1.0000> <0.5000,0.5000,1.0000>
<0.5000,1.5000,0.0000>
 <1.5000,-5.4790,1.9780> <1.5000,-4.3181,0.0000> <1.5000,-2.8825,0.0000>
<1.5000,-1.5000,0.0000>
 <1.5000,-0.5000,0.0000> <1.5000,0.5000,0.0000> <1.5000,1.5000,0.0000>
texture{Default_texture}
}
object {data_SurfPatch_ob
    matrix <1.000000, 0.000000, 0.000000,  0.000000, -0.000000, -1.000000,
0.000000, 1.000000, -0.000000,  0.000000, -0.000000, -3.620508>
}

light_source {
    <4.08,5.9,-1.01>
    color rgb<1, 1, 1>
    fade_distance 29.9999828339
    fade_power 1
}
camera {
    perspective
    location  <0,0,0>
    look_at  <0,0,-1>
    right <-1.7777777777777777, 0, 0>
    up <0, 1, 0>
    angle  49.134343
    rotate  <-26.440706, 46.691945, -0.000003>
    translate <7.481132, 5.343666, 6.507640>
}


Post a reply to this message

From: LanuHum
Subject: Re: NURBS
Date: 29 Jul 2016 12:05:00
Message: <web.579b7df96d1ce2047a3e03fe0@news.povray.org>
"LanuHum" <Lan### [at] yandexru> wrote:
> Does not work. Empty image. :(

Sorry!I do not put a fourth option 'W'!
It works, but the model is different from the render result.


Post a reply to this message


Attachments:
Download 'nurbs.jpg' (131 KB)

Preview of image 'nurbs.jpg'
nurbs.jpg


 

<<< Previous 10 Messages Goto Latest 10 Messages Next 10 Messages >>>

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