Subject:
|
Re: Idea for a new feature to help rotation of parts in Ldraw Cad software
|
Newsgroups:
|
lugnet.cad
|
Date:
|
Thu, 24 Aug 2000 21:17:53 GMT
|
Viewed:
|
897 times
|
| |
| |
In lugnet.cad, Rui Manuel Silva Martins writes:
> I this is a very good ideia, which I have also been researching due to LSim.
>
> Basically it's a good ideia for two main reasons:
> 1 - it allows for an easyer/faster placement of axel/axis connected parts, so
> it's good for editing and model authoring.
>
> 2 - it is one of the basic elements to allow a mechanical simulator to respect
> the connections while it is simulating movement (but some more are
> required), so it's good for animation.
>
> Also, we probably don't need to keep/save the connections on the model file,
> since if the editor supports this, all the axels/axis will be correctly
> alligned, which allows us to easilly detect them. But for animation, I' thinking
> more on the line of an animation configuration file, which will use submodels
> (*.dat files) with their local origin set so that it can be used as submodel
> axis (like in a robot arm). The only problem with this approach, is that it
> would only allow for one axis per submodel, which is not acceptable, so that's
> way the animation configuration file is on the drawing board.
>
> See ya
>
> P.S.
> Keep up the good ideias, together we will make a better lego world.
>
> Rui Martins
This is a very good idea. I have been working on ways to make
animations for a long time. The easiest way I have been able to do it is
just how Rui Martins described it.
I have a foot. That foot's rotational axis is centered around 0,0,0. Then, I
make a dummy dat file that just specifies the foot at 0,0,0, nothing else.
Then I specify the dummy dat file in the lower leg file. Instead of
changing the axis of the foot in the lower leg file, I change the axis of the
dummy dat file. If the foot's rotational axis wasn't centered at 0,0,0, it
would not rotate around the rotational axis, but some other place. This
would make the foot appear to move as well as rotate.
The reason why I linked the foot at all to the lower leg is so that any
change of rotation I made to the lower leg also affected the foot. That is,
the foot stays where the foot is suppose to stay.
If anyone wants to see my dat files, I can post them in a day or two. LMK.
But this brings up a problem that Rui Martins also brought up: what if I
wanted to rotate the model around the foot? Because the foot isn't linked
to the leg, any change made to the leg wont affect the rest of the model.
If there was some way to specify each rotation point (and axis for parts
such as the ones demonstrated on http://marc.klein.free.fr/rotation.html),
then they could be linked in some fashion like this:
subModelPivotPointName(submodel, x, y, z)
or
leftFoot1(leftFoot.dat, #, #, #)
leftLowerLeg1(leftLowerLeg.dat, #, #, #)
leftLowerLeg2(leftLowerLeg.dat, #, #, #)
leftupperLeg1(leftupperLeg.dat, #, #, #)
leftupperLeg1(leftupperLeg.dat, #, #, #)
etc.,.
Then:
pivotStruct(sideOneName, sideTwoName)
or
pivotPoint1(leftFoot1, lowerLeg2)
pivotPoint2(leftLowerLeg1, leftUpperLeg2)
pivotPoint3(leftupperLeg1, hipLeft)
etc.,.
Then, to rotate a segment of the model, you just specify which pivot point
to rotate, and how much rotation should be applied to the different sides.
For example:
pivot(pivotPointName, percentAppledToSideOne, xrotation, yrotation,
zrotation)
or
pivot(pivotPoint2, 100, 10, 10, 10)
which would apply 100% of the rotation to the the leftLowerLeg1.
Since the lower left leg is also linked to the foot, the foot will move with
the lower left leg!
Just write an app that will change the pivotpoints according to equations
given the starting and ending rotation, location, and frames. Have it
export every frame as a regular Ldraw .dat file, then convert them all to
POV-Ray...
This method could make animation VERY EASY, which leads to movies...
There are even more applications of this. Optimize every subpart. Video
games anyone?
James
|
|
Message has 1 Reply:
Message is in Reply To:
12 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
|
|
|
|