To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 7981
7980  |  7982
Subject: 
Re: Problem with LDraw-Mode and LDDP Bezier Curve plugin
Newsgroups: 
lugnet.cad.dev
Date: 
Mon, 21 Oct 2002 16:25:21 GMT
Viewed: 
475 times
  
"Don Heyse" <dheyse@hotmail.spam.go.away.com> writes:

In lugnet.cad.dev, Fredrik Glöckner writes:

I am also curious how ldraw mode generates the control points.


It is fairly well described here:

    http://folk.uio.no/fredrigl/technic/ldraw-mode/bezier-curve/

Basically, I push the control points back and forth until the length
of the curve is correct.  This is done by numerical integration, and
is rather CPU intensive.


I wish Frederic could whip up a short paragraph on how he uses
the length to position the control points.  I'm not bright enough
to digest an algorithm that big.  (I read the page on advanced
hose generation, but it didn't seem to be up to date with the rest
of the documentation).


Oh, you've already read it?  It's not true that it's not up to date.
Rather, I have added a simpler interface after writing the above
paragraphs, but the old method still works.  I've added functions to
compose many types of predefined hoses, but you can still use the
older, more basic method to insert any kind of flexible element.  So
the example presented on the page is sort of out dated because you can
use the new interface more simply, but the method described is still
useable.


On the technical side, though, both methods are just the same.  As I
said, I've just added a more human friendly front end.


Having read parts of the documentations again, I realize that the
language is not that well done.  I'm not that fluent in technical
English, I suppose.


If you try to angle the end points slightly towards each other, you
will probably get even better results.  But keep in mind that the
curve is essentially straight in this case, so it's length must not
exceed the distance between the points by a large margin.

That sounds tricky.  Blindly locating the interior control points.


On second thoughts, the example Orion provided is sort of not that
relevant.  What he really wants in the example is not a curved
element, but rather a straight line between the two points.  So I
think that using this example as a bench mark may not be


I think that a totally different method may be needed in this case.


The code Chris donated can optionally display where the interior
control points end up by drawing type 2 lines from the end points
to the subsequent interior points.  This gives a really nice
illustration of how the curve gets shaped, and the 2 extra lines
are easily deleted later.  It might be nice if this could be an
option at in ldraw mode.  Something like (setq
ldraw-bezier-draw-control-lines t).


It's an interesting idea, but I don't know how useful it is.  In all
the predefined hoses provided by LDraw-mode, the direction towards the
control points is uniquely defined by the element which you insert.
For example, look at the examples here:

    http://folk.uio.no/fredrigl/technic/ldraw-mode/#bezier

In the first examples, the flexible axle, the direction is determined
by the rotation of the "STUD3.DAT" end point.

In the second example, the direction is determined by the rotation of
the "750.DAT" element.

And so on.


   1. length of hose
   2. velocity from hose end
   3. manual location


It depends on the application.  In a text editor, I think that the
first case is the best.  In a GUI CAD program, I'd say the 3rd may
very well be useful.


Fredrik



Message has 1 Reply:
  Re: Problem with LDraw-Mode and LDDP Bezier Curve plugin
 
(...) Ok, ok! I admit it. I am a moron. I either read something else that I got out of the google cache, or my eyes glazed over and I lost focus before I got to the important parts. Thanks for the short version though. Now I get it. (...) That's why (...) (22 years ago, 21-Oct-02, to lugnet.cad.dev)

Message is in Reply To:
  Re: Problem with LDraw-Mode and LDDP Bezier Curve plugin
 
(...) I am also curious how ldraw mode generates the control points. Lately I've been working on a hoser for ldglite based on some code donated by Chris Daelman (which was based on the hoser spreadsheet). I've been experimenting with with ways to (...) (22 years ago, 21-Oct-02, to lugnet.cad.dev)

7 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