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 / 3060
3059  |  3061
Subject: 
Re: CW/CCW, vertex sequence, co-planar, convex
Newsgroups: 
lugnet.cad.dev
Date: 
Fri, 8 Oct 1999 07:55:12 GMT
Viewed: 
677 times
  
Gary Williams wrote in message ...
A part file is compliant if its polygon vertex orders are known.

The primitives used by the part file are completely irrelevant.

Well, inside/outside-ness also counts.
It doesn't make sense to certify a part before ALL its subfiles
have defined what is inside/outside. Until then you cannot
determine whether or not you need any INVERTS.

Ideally some group of people will organize the primitives so that they each
have a FACE directive, which will be chosen (sometimes arbitrarily) to
minimize the number of anticipated INVERTs for parts using the primitives.


Wait a minute, the FACE directive of a primitive is irrelevant.
A part should not care (or even know) whether a primitive uses CCW or
CW internally for its faces, it is a private matter for that primitive.
The part will use INVERT if it needs to invert the inside-out definition
of a primitive.

We need to define the inside/outside-ness of all primitives.
I think an appropriate place for these definitions is in
http://www.ldraw.org/memorial/archive/FAQ/Primitives_Reference
which should also be updated with the latest primitives.

Then the individual parts files will be cleaned up, but doing the primitives
first would have the biggest initial impact on performance.

Now the only questionable situation is when a part with unknown vertex order
references a primitive that is known.  In this case it may be necessary to
treat the primitive as unknown because the part obviously will not have been
checked to see if the primitive needs to be inverted.


Right, uncertified parts cannot benefit from certified primitives!

This raises an important issue:
I think the rendering program will have to distinguish between
models/submodels and parts/subparts and primitives, or more
precisely, between parts and non-parts.
(C)CW-certification shouldn't be required for models/submodels.
They may use mirroring, but will not (should not) use the INVERT
nor FACE meta-commands.

Only a part can enable the use of the (C)CW-info!

When the recursive rendering function encounters e.g. a certified
primitive, the (C)CW-info in it cannot be utilized unless the
function went through a certified part.

So, what is a part? Well, obviously a dat file loaded from the
PARTS directory. But to help part authors, who may keep their
parts-being-designed in any directory (some-one also suggested
an extended search path), and to utilize the (C)CW-info of
parts in an MPD file, I think we could do ourselves a favor by
adding a "0 PART" or "0 FILETYPE PART" to the part dat files.
It can conveniently be inserted while certifying the part.

Then the definition of a part is either a dat file loaded from
PARTS or a dat file having a "0 FILETYPE PART" (or of course both).

I don't know if there is any use for "0 FILETYPE PRIMITIVE", but
maybe in the future.
/Lars



Message has 2 Replies:
  Re: CW/CCW, vertex sequence, co-planar, convex
 
Lars mentions the problem of "uncertified" parts using "certified" primitives. Is it so much of a problem? <much thinking> I can't find any other easy solution than using different names for the "certified" versions of the _primitives_. That way we (...) (25 years ago, 8-Oct-99, to lugnet.cad.dev)
  Re: CW/CCW, vertex sequence, co-planar, convex
 
(...) Checking the order of points in a file should not depend on checking the inversion or subfiles for the file. That's why we've been talking about the 0 FACE UNKNOWN -- so parts of files can be fixed, even if the entire file can't be addressed. (...) (25 years ago, 8-Oct-99, to lugnet.cad.dev)

Message is in Reply To:
  Re: CW/CCW, vertex sequence, co-planar, convex
 
John VanZwieten wrote in message ... (...) Actually, I count three ideas. (...) messy. (...) when (...) the (...) to (...) only (...) have (...) in (...) CW (...) slightly (...) for (...) The third option, which I believe would be best, is similar (...) (25 years ago, 4-Oct-99, to lugnet.cad.dev)

53 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