To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.dat.parts.primitivesOpen lugnet.cad.dat.parts.primitives in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / LDraw Files / Parts / Primitives / 237
236  |  238
Subject: 
Re: ring 3 to 5
Newsgroups: 
lugnet.cad.dat.parts.primitives
Date: 
Sat, 4 May 2002 06:33:29 GMT
Viewed: 
2930 times
  
In lugnet.cad.dat.parts.primitives, Steve Bliss writes:
In lugnet.cad.dat.parts.primitives, Chris Dee wrote:
In lugnet.cad.dat.parts.primitives, Steve Bliss writes:
Actually, for rounded elements, it's almost always[1] preferable to use
primitives.  That way, programs that do primitives substitution can replace
the polygonal primitive with a true round object.

There are some complex curved parts (e.g. most of the minifig headwear, the
minifig arm I'm working on right now, some wheels) where some regions can be
represented by the regular cyli, disc, cyls, cyls2 primitives, but there will
be regions that no amount of twisting or stretching can handle - and these • have
do be done as polygons, and cannot be substituted. Then there will be gaps !

Very true.  In some cases (like the minifig arms), is it better to go
with an all-polygon approach, or to use primitives as much as possible
and fill in the rest with polygons?


Are you suggesting that there is (should be) a command to prevent primitive
substitution, or that the primitive should be inlined?


Also, where any rectilinear region intersects with a curved region the
intersection edge should be different when rendered with the 16-agon
primitives, to when rendered with substituted "true" curved surfaces. Such
support is generally not written into the DAT file.

When filling in around a hole in a flat surface, one should 'always' use
the X-4ndis.dat primitives.  These are the only primitives that
'convert' from a round edge to a rectilinear edge.


Agreed. What I was more thinking of is the situation (in the minifig arm) where
one region is an irregularly truncated cylinder (and it is not possible to use
cyls.dat or cyls2.dat primitives). The fully circular section _can_ use a cyli
primitive, but the extension up to the irregular intersection can only be coded
as polygons. Take a look at the work-in-progress file at
http://news.lugnet.com/cad/dat/parts/?n=3587 in LDView with primitive
substitution on, and you should see what I mean. Actually some of these can be
replaced with cyls primitives, but it illustrates the point.

In other cases, overlap can be written into the part.  Or should we be
thinking about a 'phantom' primitive, that would serve to inform
primitive-substitutors that there are polygons adjoining a curved
surface?  Something like:

  1 16 0 0 0 10 0 0 0 1 0 0 0 10 ring4.dat
  1 16 0 0 0 10 0 0 0 1 0 0 0 10 ring4go.dat

Where the real file ring4go.dat is empty, but is a signal to
primitive-substitutors that the issue of gaps on the outside of the
primitive need to be addressed.

This could also be done as a meta-statement:

  0 FILLGAPS OUTER
  1 16 0 0 0 10 0 0 0 1 0 0 0 10 ring4.dat

Where the FILLGAPS meta-statement would direct the primitive-substitutor
to generate surface around the outside of the following primitive to
fill any gaps between the true round surface and LDraw's polygonal
approximation.

Steve

Chris



Message has 1 Reply:
  Re: ring 3 to 5
 
(...) I wasn't thinking of either, really. I was wondering if maybe the part should be modeled without any primitives at all. I suppose the practical result of that would be primitive-inlining. (...) In the case of the lower arm (forearm), I don't (...) (22 years ago, 6-May-02, to lugnet.cad.dat.parts.primitives)

Message is in Reply To:
  Re: ring 3 to 5  [DAT]
 
(...) Very true. In some cases (like the minifig arms), is it better to go with an all-polygon approach, or to use primitives as much as possible and fill in the rest with polygons? (...) When filling in around a hole in a flat surface, one should (...) (22 years ago, 3-May-02, to lugnet.cad.dat.parts.primitives)

28 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