Subject:
|
Named rotation inheritance (Was: 2nd. Idea for a new feature to help rotation of parts in Ldraw Cad software)
|
Newsgroups:
|
lugnet.cad
|
Date:
|
Thu, 31 Aug 2000 18:46:24 GMT
|
Reply-To:
|
jsproat@io.com!IHateSpam!
|
Viewed:
|
772 times
|
| |
| |
James Reynolds wrote:
> In lugnet.cad, Jeremy H. Sproat writes:
> > Hmmm, kinda clunky. What we need is some kind of namespace
> > resolution for referring to lines from other parts.
> I don't know what namespace resolution is. It sounds like that means
> the user would have to look at the part's dat file. It would be nice to be
> able to avoid that (which is why I came up with this inherit idea).
Wouldn't the user have to look at the part's DAT anyway, to see what named
rotation centers the part has?
Anyway, briefly, namespace resolution is a means by which we can
specifically address (resolve) some thing from inside some other thing
(namespace). Like referring to a rotation center from inside a subpart.
The "specifically" part is important, as programmatical "magic" is bad. (1)
> 0 ROTATION INHERIT CENTER hinge elbow
> 0 ROTATION INHERIT AXIS hinge elbow
> 1 15 0 50 -34 1 0 0 0 0 -1 0 1 0 partWithHinge.DAT
> What if a model had several parts with hinges, and the user wanted to
> specify which part. Since parts aren't uniquely named in a dat file, I could
> only think of syntax that requires the part to appear immediately after the
> inheritance statement.
Oh, okay, I see what you're saying here. Before I disagree with your idea,
lemme just say that it has a lot of merit. But it kinda goes against what I
was suggesting, though, as I was taking a more object-oriented approach. I
feel that it's the part's responsibility to know its own rotation axes, and
not the containing part's. Likewise, I feel that it's the tool's
responsibility to handle the logic of the rotation (including scanning the
subpart for named rotation centers), not the containing part's. If done
right, the user wouldn't even have to open up the subpart to see if it has
named axes.
Now, named axis inheritance is still an extremely useful idea, in that you
would be able to create a new subpart (say, a mecha's wing) by
"sub-classing" (inheriting) an existing part (say <part:2429> Hinge Plate 1
x 4 Base) and adding a new piece to it (say <part:6636> Tile 1 x 6), and be
able to *keep* the named rotation center from 2429. IOW, your new subpart
consists of 2429 at the origin and 6636 on top of that, and since 2429 is at
the origin the new subpart can still be rotated appropriately using 2429's
named rotation centers.
This touches upon the concept of Stages from Karim Nassar's Artemis
Project. (2) I really really really like it. :-,
Cheers,
- jsproat
1. Unless you're a Perl programmer. ;-)
2. http://news.lugnet.com/cad/?n=4452
--
Jeremy H. Sproat <jsproat@io.com> ~~~ http://www.io.com/~jsproat/
Is it still illegal if I copy just the FBI warning?
|
|
Message has 1 Reply:
Message is in Reply To:
15 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
|
|
|
|