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: 
1670 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 (...) (27 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. (...) (27 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 (...) (27 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
    

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