To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 4506
4505  |  4507
Subject: 
Re: BFC: LITS 2
Newsgroups: 
lugnet.cad.dev
Date: 
Tue, 18 Apr 2000 22:13:44 GMT
Viewed: 
980 times
  
Steve Bliss wrote...
Another problem (that L3P handles in most cases) is that POV-Ray refuses
to process objects with singular matrices.

I'not sure if placing a one on the specific place has exactly the
same graphic behaviour ?
can someone confirm ?

A reference with a singular matrix only works correctly on 2D objects.
Well, it can be used to flatten 3D objects, but this is considered a Bad
Thing.  I should know, because I once proposed that we didn't need ring
primitives, we could just use conic primitives with singular matrices.
I got severly clobbered for that one.

As far as I know, there are no singular matrix references in the LDraw
parts library, except against 2D primitives like 4-4disc and 2-4edge.

Running "l3p -check" (checks all DAT's in P and PARTS) revals:
SKIPPING "4285.DAT" Line 981: Singular matrix: 1 16 10 4 10  6 0 0  0 0 0  0 0 6 1-4cyli.dat
SKIPPING "6043.DAT" Line 17: Singular matrix:  1 16 0 20 -16 8 0 0 0 0 8 0 0 0 4-4cyli.dat
SKIPPING "3741.DAT" Line 7: Singular matrix:  1 16 0 16 0 1 0 0 0 0 0 0 0 1 stud4.dat
SKIPPING "6267.DAT" Line 85: Singular matrix: 1 16 110 96 -10 2 0 0 0 0 0 0 0 -2 1-4con3.dat
SKIPPING "6267.DAT" Line 86: Singular matrix: 1 16 110 96 -10 2 0 0 0 0 0 0 0 -2 1-4con4.dat
SKIPPING "6267.DAT" Line 88: Singular matrix: 1 16 -110 96 -10 -2 0 0 0 0 0 0 0-2 1-4con3.dat
SKIPPING "6267.DAT" Line 89: Singular matrix: 1 16 -110 96 -10 -2 0 0 0 0 0 0 0-2 1-4con4.dat
SKIPPING "4095.DAT" Line 15: Singular matrix:  1 16 0 12 0 4 0 0 0 0 0 0 0 4 4-4cyli.dat
SKIPPING "4095.DAT" Line 18: Singular matrix:  1 16 0 0 0 6 0 0 0 0 0 0 0 6 4-4cyli.dat

Running "l3p -check -w3" (highest warning level, lots of output) revals
15985 (!) singular matrix references to 2D primitives, that L3P is able to fix.
But L3Lab will have to turn clipping off for these!

BTW, this gives the CERTIFY tag something to define besides clipping and
winding.  In order to cleanly certify a file, it should *not* have any
subfile commands with singular matrices.

Even so, CERTIFY is still functionally redundant...

Use my proposal:
0 CERTIFY BFC MTX

where MTX is Matrix, correct non singular matrices

But that would be an extra flag that would complicate processing, and
slow the rendering engine down.

I see the MTX more like an administrative info. The renderer should always
check the file...

Actually, I did once consider having a BFC-flag to indicate that the
subfile references were all clean.  I'm not sure if I ever publicized
that one or not.

The BFC-checker program must refuse to certify a part if any subfile
is not certified. So that flag would be implied in CERTIFY.

No matter what we specify, the rendering engine should still check for
singular matrices (that's pretty low impact, as it's the same
calculation as checking for matrix reversal) and disable BFC processing
if necessary.

Right.

I'm not yet convinced that there isn't another way that renderers could
handle the problem.  Which is part of the reason I've been in favor of a
NOWIND or DOUBLESIDED option -- most renders would treat it just like a
NOCLIP command, but if a better solution was found in the future, the
part files would already contain the little bit of extra information
needed to take advantage of the new solution.

Good point.
/Lars



Message has 1 Reply:
  Re: BFC: LITS 2
 
(...) Whew! Only one of those files is mine! :\ (...) True. (...) I don't think that's necessary. If a subfile is not certified, then the renderer will not apply BFC processing to the subfile. Besides, if having all subfiles certified was a (...) (25 years ago, 19-Apr-00, to lugnet.cad.dev)

Message is in Reply To:
  Re: BFC: LITS 2
 
(...) Actually, the problem is that their determinant is 0, neither positive nor negative. So the renderer would have to disable BFC processing for any file with this kind of reference. Another problem (that L3P handles in most cases) is that (...) (25 years ago, 7-Apr-00, to lugnet.cad.dev)

24 Messages in This Thread:







Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR