POV-Ray : Newsgroups : povray.general : Free Vector Editor exports to POV Server Time
31 Jul 2024 14:25:40 EDT (-0400)
  Free Vector Editor exports to POV (Message 43 to 52 of 52)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: Warp
Subject: Re: Free Vector Editor exports to POV
Date: 22 Apr 2007 15:35:07
Message: <462bb8eb@news.povray.org>
Nicolas George <nicolas$george@salle-s.org> wrote:
> Neither solution are satisfactory. For a long time, I think that PoV is
> missing a way to cleanly deal with coincident surface: some declaration in
> the scene that says "these surfaces are *meant* to be coincident, you must
> handle them that way"

  Yes. The way to to say that is to tell povray "this surface is lower
than this one". And you do that by translating the surface a bit.

-- 
                                                          - Warp


Post a reply to this message

From: Nicolas George
Subject: Re: Free Vector Editor exports to POV
Date: 22 Apr 2007 15:36:42
Message: <462bb94a$1@news.povray.org>
Chambers  wrote in message <462ba23c@news.povray.org>:
>> Neither solution are satisfactory. For a long time, I think that PoV is
>> missing a way to cleanly deal with coincident surface: some declaration in
>> the scene that says "these surfaces are *meant* to be coincident, you must
>> handle them that way"
> But how would it handle which texture to process first?

That is exactly the point: we need a way to tell PoV what to do.

 From a theoretical point of view, it is quite trivial: if two objects use
the same surface, PoV computes only once the intersection, applies the
user-given rules to determine which one comes first, and keeps a flags for
any light ray it must then follow from this point.

 From a practical point of view, devising a syntax for that would require to
example all possibilities, but it can be done.


Post a reply to this message

From: Darren New
Subject: Re: Free Vector Editor exports to POV
Date: 22 Apr 2007 15:36:48
Message: <462bb950$1@news.povray.org>
Warp wrote:
> Nicolas George <nicolas$george@salle-s.org> wrote:
>> The encoding can be wrong.
> 
>   How?

I suspect he means something like UTF-8 getting turned into ASCII.

>> The copy operation can insert strange markers (wrap indicators, for example;
>> it seems that it the case here).
> 
>   XML shouldn't break if extra whitespace is added between elements.

This is incorrect. XML in general is whitespace-sensitive.

>   I can't even begin to imagine why an SVG would contain such an element.

There is that.

-- 
   Darren New / San Diego, CA, USA (PST)
     His kernel fu is strong.
     He studied at the Shao Linux Temple.


Post a reply to this message

From: Nicolas George
Subject: Re: Free Vector Editor exports to POV
Date: 22 Apr 2007 15:37:53
Message: <462bb991@news.povray.org>
Warp  wrote in message <462bb8eb@news.povray.org>:
>   Yes. The way to to say that is to tell povray "this surface is lower
> than this one". And you do that by translating the surface a bit.

And you get inter-reflection and such.

Furthermore, translating a surface is not always easy.


Post a reply to this message

From: Warp
Subject: Re: Free Vector Editor exports to POV
Date: 22 Apr 2007 15:41:51
Message: <462bba7e@news.povray.org>
Darren New <dne### [at] sanrrcom> wrote:
> Warp wrote:
> > Nicolas George <nicolas$george@salle-s.org> wrote:
> >> The encoding can be wrong.
> > 
> >   How?

> I suspect he means something like UTF-8 getting turned into ASCII.

  I can't imagine why that would break XML, especially something like SVG.

> >   XML shouldn't break if extra whitespace is added between elements.

> This is incorrect. XML in general is whitespace-sensitive.

  The only thing which I can think can break is text strings, but even
that doesn't *break* the XML file, it just changes the text strings in
it. It should still be fully valid and readable.

-- 
                                                          - Warp


Post a reply to this message

From: Darren New
Subject: Re: Free Vector Editor exports to POV
Date: 22 Apr 2007 15:54:04
Message: <462bbd5c$1@news.povray.org>
Warp wrote:
>> I suspect he means something like UTF-8 getting turned into ASCII.
>   I can't imagine why that would break XML, especially something like SVG.

Well, in general, if the tag name is in Chinese, and you try to 
represent it in ASCII without doing some sort of transcoding, chances 
are it's not going to come out the same.

>>>   XML shouldn't break if extra whitespace is added between elements.
>> This is incorrect. XML in general is whitespace-sensitive.
> 
>   The only thing which I can think can break is text strings,

Err, no. If a tag is defined to not contain a body, then
<tag a="b"></tag>
and
<tag a="b">
</tag>
are two different elements.

In general. Likely something like SVG would be defined to ignore 
whitespace. But you actually do have to ignore it.

> that doesn't *break* the XML file, it just changes the text strings in
> it. It should still be fully valid and readable.

It may still be XML. Just not the XML you thought it was. In much the 
same way as I can take an XHTML file and change <h1> to <x1> everywhere, 
and it'll still be fully valid and readable, but it won't be xhtml.

-- 
   Darren New / San Diego, CA, USA (PST)
     His kernel fu is strong.
     He studied at the Shao Linux Temple.


Post a reply to this message

From: scott
Subject: Re: Free Vector Editor exports to POV
Date: 23 Apr 2007 07:05:30
Message: <462c92fa$1@news.povray.org>
>> Neither solution are satisfactory. For a long time, I think that PoV is
>> missing a way to cleanly deal with coincident surface: some declaration 
>> in
>> the scene that says "these surfaces are *meant* to be coincident, you 
>> must
>> handle them that way"
>
> But how would it handle which texture to process first?

You could specify textures for boundaries rather than objects.

So the default would be the texture for the object/air boundary (same as 
existing syntax), but then you could specify additional "textures" for 
boundaries between two objects (eg glass/wine).  There could even be default 
boundary textures computed automatically using some (physically correct?) 
algorithm.

And then there could be a configurable "minimum gap", below which POV would 
assume two surfaces were coincident.


Post a reply to this message

From: Lukas Winter
Subject: Re: Free Vector Editor exports to POV
Date: 25 Apr 2007 13:32:25
Message: <pan.2007.04.25.17.32.23.512492@removeit.geloescht.net>
Am Sun, 22 Apr 2007 15:36:42 -0400 schrieb Nicolas George:

> 
> That is exactly the point: we need a way to tell PoV what to do.
> 
>  From a theoretical point of view, it is quite trivial: if two objects use
> the same surface, PoV computes only once the intersection, applies the
> user-given rules to determine which one comes first, and keeps a flags for
> any light ray it must then follow from this point.
> 
>  From a practical point of view, devising a syntax for that would require
>  to
> example all possibilities, but it can be done.

I thought about that for a long time, too. The "solution" I came up with
is to make a difference between shapes and materials. Then we could apply
rules for the boundaries and interiors of shapes, like
(shape X & shape Y) & !shape Z => material A;
material A > material B = surface_shader S;
material A.interior = interior_shader I;
or something similiar. That way we could also replace CSG and save
calculations because there are fewer intersections. There could be a some
mechanism to treat the room inside a lathe as a different (sub-)shape to
make modelling filled glasses even easier ;) On the other hand that
doesn't look very intuitive and a bit scary. Nevertheless that would be
one feature I'd like to have in PoV 4.

btw, I have already used Inkscape's PoV-export for modelling my
neighbourhood from a plan. I simpliy scanned it and marked the corners of
the houses. Later, I modified the PoV-code a bit for the housetops. It
worked very well.


Post a reply to this message

From: Alain
Subject: Re: Free Vector Editor exports to POV
Date: 25 Apr 2007 18:49:10
Message: <462fdae6@news.povray.org>
Nicolas George nous apporta ses lumieres en ce 22-04-2007 15:36:
> Chambers  wrote in message <462ba23c@news.povray.org>:
>>> Neither solution are satisfactory. For a long time, I think that PoV is
>>> missing a way to cleanly deal with coincident surface: some declaration in
>>> the scene that says "these surfaces are *meant* to be coincident, you must
>>> handle them that way"
>> But how would it handle which texture to process first?

> That is exactly the point: we need a way to tell PoV what to do.

>  From a theoretical point of view, it is quite trivial: if two objects use
> the same surface, PoV computes only once the intersection, applies the
> user-given rules to determine which one comes first, and keeps a flags for
> any light ray it must then follow from this point.

>  From a practical point of view, devising a syntax for that would require to
> example all possibilities, but it can be done.
You have "normal" textures.
You have interior_texture. (an optional element)
Add "coincident_texture" (as another optional element) with a 
coincidence_treshold parameter (defaulting to epsilon*2 for example) defining 
the maximum gap that can separate the surfaces to be considered as coincident.

For those unfamiliar with the term, the "epsilon" value is the smalest value you 
can have before it's considered as zero.

-- 
Alain
-------------------------------------------------
Christian Science: When shit happens, don't call a doctor - pray!


Post a reply to this message

From: Lukas Winter
Subject: Re: Free Vector Editor exports to POV
Date: 26 Apr 2007 08:14:23
Message: <pan.2007.04.26.12.14.22.449618@removeit.geloescht.net>
Am Wed, 25 Apr 2007 18:49:09 -0400 schrieb Alain:

> You have "normal" textures.
> You have interior_texture. (an optional element) Add "coincident_texture"
> (as another optional element) with a coincidence_treshold parameter
> (defaulting to epsilon*2 for example) defining the maximum gap that can
> separate the surfaces to be considered as coincident.
> 
> For those unfamiliar with the term, the "epsilon" value is the smalest
> value you can have before it's considered as zero.

I know epsilon as the lowest number, where the floating point
representation of the sum of this number and 1 and 1 is greater than 1.
Checking whether to floating point numbers are roughly the same is still
not that easy. If you want to be really correct abs(a-b) < epsilon is not
enough, because epsilon is more like a factor. It all depends on the
calculations done with a and b before.

I think that syntax would get us into a great mess. Is that texture
applied on both sides of these surfaces? Where will the ray be reflected
and transmitted? In my opinion a sort of CSG with more options than
"inside" and "outside" would be better.


Post a reply to this message

<<< Previous 10 Messages Goto Initial 10 Messages

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