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 / 424
423  |  425
Subject: 
Re: Suggested New Primitive: 4-4cyl12.dat (was: More cylinder primitives wanted)
Newsgroups: 
lugnet.cad.dat.parts.primitives
Date: 
Wed, 17 May 2006 13:36:01 GMT
Viewed: 
5014 times
  
[Lotsa snipping]

In lugnet.cad.dat.parts.primitives, Chris Dee wrote:
We could use "rod" as a short base name for these.

I'm fine with that.

Taking up the issues Chris raised (but out of order):

Do we need to allow for non-360 degree versions?

I think we need to allow for partial rods.

... so long as we don't go beyond one digit in the denominator. We could
still have hi-res, but only in multiples of eigths.

It seems fair to limit rods to single-digit denominators.  Since these are
primarily convenience primitives[1], I think it's reasonable to require authors
to use cyli, edge, disc and ndis when they are doing odd angles -- these
situations are 'relatively' uncommon.[2][3]

... we would never want a cylinder to disc/ndis interface without the
corresponding edge.

I can't think of a situation where the edge would need to be omitted.  But I'm
not completely sure.

But it's not really a 'never' question, it's more like 'would this happen often
enough to make it worth having a primitive?'.  And I'm really sure that it
wouldn't be common enough.[4]

Having said that, I think it's easy enough to allow the possibility (addressed a
bit further down).

1) If not, one would be to use a meaningful suffix. Since we only have four
variables to deal with (the bi-state presence or absence of an edge at each end
and the tri-state presence of a disc, ndis or nothing at each end) we could
designate that in a four character suffix (d=disc, e=edge, n=ndis, -=nothing).

2) With a litte less clarity would compress the suffix to two quad-state
indicators (e=edge-alone, d=disc+edge, n=ndis+edge, -=nothing) on the assumption
that we would never want a cylinder to disc/ndis interface without the
corresponding edge.

I like the 2-character version much better.  Especially since the 4-character
layout doesn't allow fractions.

With the addition of two additional states (for disc w/o edge and ndisc w/o
edge), there's no need to discard any options when going to 2 characters.

e=edge, d=disc, n=ndisc, c=closed (disc+edge), o=open (ndisc+edge),
nothing=plain

(I'm open to other code mappings -- I think 'd=disc+edge, n=ndisc+edge' are more
useful mappings, but I couldn't think of mnemonic alternates for disc-alone and
ndisc-alone)

Again, the "-" placeholders could be discarded :

Absolutely.  If no mirror-image primitives are allowed, and if we specify when
only one end of the rod is decorated, it must be the top end.  With those two
restrictions, there should be no ambiguity.

It'd be tidier to specify precedence for all 6 conditions, so we'd always know
where to place each end of the rod (and what name to expect for each primitive).
That is, if disc has a higher precedence than ndisc, then roddn is valid, but
rodnd is not.  My suggested precedence would be: closed, disc'ed, open,
ndisc'ed, edged, plain.

4) If we do need the fractional designation and we want to support segments
finer that eights then I see no opportunity to add meaning and we should just
use N-NNrod1 thru N-NNrod9 arbitrarily for these 9 combinations.

I'm not against going with a low-meaning, single-character indicator.  Although
I'd suggest alphabetics instead of digits, at least for the more-common flavors
(ie, e=edged, d=disc on one end, n=ndisc on one end).

My current preference is 2) without the "-" placeholders, or maybe 3) if someone
can make a good justification.

My preference is (3) (with my alterations), because I'm sure we'd want the
fractions.  And because it captures all the variations, while keeping the length
of the suffix down.

--
Steve
1) 'Convenience' because they are a shortcut replacement for using multiple
cyli, edge, etc.  In contrast to odd-angle curved primitives that add
information to the model, because ray-tracers can replace the approximated
curves with true curves.

2) Although it doesn't seem 'uncommon' in the middle of constructing one of
them.

3) Random thought -- it'd be cool to have a 'part developers kit', that would
provide things like arbitrary-angle cylinders, and would produce DAT files in a
format acceptable for publication.  Hmm, maybe just a !CYLINDER
meta-statement...

4) C'mon, someone show me wrong!



Message is in Reply To:
  Re: Suggested New Primitive: 4-4cyl12.dat (was: More cylinder primitives wanted)
 
(...) We could use "rod" as a short base name for these. Do we need to allow for non-360 degree versions? I didn't see any requirements for partial cylinders in the thread so far. Was that implicit in the request? 1) If not, one would be to use a (...) (19 years ago, 17-May-06, to lugnet.cad.dat.parts.primitives)

10 Messages in This Thread:


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

Custom Search

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