|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
About a recent post in p.general:
When is a triangle degenerate?
I think that one case is when two of the vertices or all the three are
actually the same point. In this case it would be just an infinitely thin
line or point.
I faintly remember that povray also considers denerate a smooth triangle
with the vertex normals pointing to different sides of the triangle. Is
this so?
Any other case?
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
A cylinder with both ends the same position in space is not a disc but a
degenereate cylinder.
I've gotten this one. I'm pretty sure a box with the same two vectors will
also generate the degenerate error.
A smooth triangle with opposing normals is something different, I think. But
it still won't render.
Josh
Warp wrote:
> About a recent post in p.general:
>
> When is a triangle degenerate?
> I think that one case is when two of the vertices or all the three are
> actually the same point. In this case it would be just an infinitely thin
> line or point.
> I faintly remember that povray also considers denerate a smooth triangle
> with the vertex normals pointing to different sides of the triangle. Is
> this so?
> Any other case?
>
> --
> main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
> ):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
--
Josh English
eng### [at] spiritonecom
"May your hopes, dreams, and plans not be destroyed by a few zeros."
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Mon, 05 Jun 2000 08:21:11 -0700, Josh English wrote:
>
>A smooth triangle with opposing normals is something different, I think. But
>it still won't render.
Sometimes it renders. Sometimes it crashes. Depends on the compiler
used to build your copy of POV.
--
Ron Parker http://www2.fwi.com/~parkerr/traces.html
My opinions. Mine. Not anyone else's.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On 5 Jun 2000 06:01:51 -0400, Warp wrote:
> About a recent post in p.general:
>
> When is a triangle degenerate?
> I think that one case is when two of the vertices or all the three are
>actually the same point. In this case it would be just an infinitely thin
>line or point.
Or when they fall in a line, such as x, 2*x, 3*x. The actual condition is
"when the cross product of P1-P2 and P3-P2 is zero." Note that this is not
the usual "within epsilon of zero" condition; it must actually be zero.
> I faintly remember that povray also considers denerate a smooth triangle
>with the vertex normals pointing to different sides of the triangle. Is
>this so?
The comment in triangle.c says
/* Degenerate if smooth normals are more than 90 from actual normal
or its inverse. */
where the actual normal is the aforementioned cross product after
normalization. The actual test, however, makes more sense: it requires
that the signs of the dot products of the corner normals with the actual
normal must either be all positive or all negative. In short, what you
said, with the additional requirement that corner normals in the plane
of the triangle are also degenerate.
This calculation, too, ignores epsilon.
--
Ron Parker http://www2.fwi.com/~parkerr/traces.html
My opinions. Mine. Not anyone else's.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Warp wrote:
>
> About a recent post in p.general:
>
> When is a triangle degenerate?
When it starts buying lap dances at the local strip club.
--
ICQ: 46085459
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
ARGH! I don't beleive that I missed this one, as well. The cross product
definition is the most inclusive. I should have seen that. We just covered it
in calculus
Josh
Ron Parker wrote:
> On 5 Jun 2000 06:01:51 -0400, Warp wrote:
> > About a recent post in p.general:
> >
> > When is a triangle degenerate?
> > I think that one case is when two of the vertices or all the three are
> >actually the same point. In this case it would be just an infinitely thin
> >line or point.
>
> Or when they fall in a line, such as x, 2*x, 3*x. The actual condition is
> "when the cross product of P1-P2 and P3-P2 is zero." Note that this is not
> the usual "within epsilon of zero" condition; it must actually be zero.
>
> > I faintly remember that povray also considers denerate a smooth triangle
> >with the vertex normals pointing to different sides of the triangle. Is
> >this so?
>
> The comment in triangle.c says
>
> /* Degenerate if smooth normals are more than 90 from actual normal
> or its inverse. */
>
> where the actual normal is the aforementioned cross product after
> normalization. The actual test, however, makes more sense: it requires
> that the signs of the dot products of the corner normals with the actual
> normal must either be all positive or all negative. In short, what you
> said, with the additional requirement that corner normals in the plane
> of the triangle are also degenerate.
>
> This calculation, too, ignores epsilon.
>
> --
> Ron Parker http://www2.fwi.com/~parkerr/traces.html
> My opinions. Mine. Not anyone else's.
--
Josh English
eng### [at] spiritonecom
"May your hopes, dreams, and plans not be destroyed by a few zeros."
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Ron Parker <ron### [at] povrayorg> wrote:
:>when two of the vertices or all the three are actually the same point.
: when they fall in a line
: if smooth normals are more than 90 from actual normal or its inverse.
Ok, thanks. There seems to be three clear cases when a triangle is
degenerate. My program only checks the first one. I have to add the other
two as well.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|