[Bf-committers] CAD/Robotics extensions to Blender (Was Re: CVS commit: editobject.c)

Herman Bruyninckx bf-committers@blender.org
Tue, 27 Jul 2004 16:57:47 +0200 (CEST)


On Tue, 27 Jul 2004, Ton Roosendaal wrote:

[...]
> One of these design concepts was to always try to provide a non-exact, 
> interactive & visual toolset. No axis-awareness (x-axis, y, z), no coordinate 
> awareness (typing in location/size/rot for adding object), and no scale 
> awareness (we have the "blender unit").
>
> That's giving a nice focus for designing features (and I'm the first to admit 
> many things in Blender don't do well still). But it's not an axioma; when 
> exact editing is needed (like exact rotation around exact location) you 
> should have the tools to do so. But it's secondary, and not primary like in 
> most CAD tools.

So, what should I conclude as someone who is mainly interested in
Blender for its "CAD potential" and "exactness"? Will additions to
Blender that focus on the points you mentioned above (realistic
measures, axis-awareness, etc.) have a chance to be accepted? And yes,
under what conditions?

To be a bit more concrete: I am interested in developing additions to
Blender that make it into a powerful 3D visualisation and CAD tool for
robotics and machine tools. Roughly, the missing features of Blender in
this context are:
- creation of "mechanical" devices, which has traditionally a somewhat
   different user interface than animation and games.
- addition of kinematics routines for "robot like" devices, which are
   not like the animation armatures that have only spherical joints, but
   are mostly built from revolute and prismatic joints. The kinematics for
   this kind of structures can be made _much_ more efficient than the
   current IK of Blender. Also if natural dynamics are included.
   (And no, the ODE way of doing things is _not_ optimal for robot-like
   kinematic structures. But it is nicely complementary.)
- addition of physical properties to parts, especially inertia.
- addition of the IK of mechanical structures with closed chains,
   including the code to close the chains during "assembly" of the
   structures.
- addition of IPOs that are common in robotics, e.g., for redundant
   systems, with so-called "trapezoidal acceleration profiles" etc

We just started working on this "project" with an eye on integration in
Blender. I have now a student working on using Blender to visualise
robot motions that are fed to Blender from a real robot (via a Python
script, and a CORBA EventChannel). I hope to get some real robot systems
animated in a month or so.

We have most of the mentioned kinematics algorithms in one form or
another, but the effort to bring them into Blender in a way that can
serve the long-term goals I have outlined above (_and_ that is optimally
useful for other Blender users too!) is still substantial. So, don't
hold your breath :-)

[...]
> And for myself, yes I reserve the right to veto out stuff. Won't do that 
> easily, but definitely on obscure additions. And always after feedback of the 
> other project admins.
I respect this policy! But it would be nice to get an idea about the
"veto proneness" of the "robotics additions"  I suggested above.
If you think they are of really secondary importance, than I'd better
start looking elsewhere :-)

Herman Bruyninckx
http://www.orocos.org

-- 
   K.U.Leuven, Mechanical Engineering, Robotics Research Group
<http://people.mech.kuleuven.ac.be/~bruyninc> Tel: +32 16 322480