DevSrf improvements

Improvements needed in DevSrf, ranging from essential to nice-to-have.

  1. Developable surfaces should have ruling lines which have minimum twist as given by the “Least twist” alignment mode. Eliminate the “Shortest” and “Parallel planes” Alignment modes. The utility of those options for actual design work is unclear at best.

  2. Clarify the definition of “Twist” used in “Twist tolerance”. It could be angular twist in degrees or radians, or relative twist as in twist/length of ruling line. Since the twist angles should be very small a simple “small angle” approximation could be used for twist rather than involving any inverse trigonometric calculations.

  3. The display should update when a new twist tolerance is entered. Currently I have to enter a new twist tolerance and then change something else such as the ruling density or swap rails for the display to update.

  4. The documentation needs to be updated. Delete the section on “Extension factor” which is not in the V5 version of DevSrf.

  5. Document “Rebuild Rails”.

  6. Disable the ruling lines display when the dialog box is closed. It is very annoying to have the ruling lines hanging around.

Does “Rebuild Rails” in DevSrf actually do anything?

@lowell is on vacation, but I’m sure he was all the feedback he can get.

@margaret may need some more details for @lowell to tune up the documentation.

Thanks for the input. Much of that I agree with.

A couple of comments -

  1. Shortest and Parallel planes are both sometimes useful in real situations and came about after user feedback.
    In big nearly flat areas where the range of where a developable ruling might legitimately be placed, shortest can help keep things organized.
    There are cases in which its useful to have parallel bulkhead planes that intersect the surface to be developed in straight lines. In cases where those are within a small tolerance of producing the least twist ruling, its sometimes useful to get a slightly less perfect ruling that allows construction with straight frame material.
    At least it should be easy for you to avoid using them if you want to.

  2. Twist in this case is the total twist across a ruling in degrees. I really don’t know what units might be most useful there, and have considered looking at twist per distance, but I’m pretty sure I’ve never heard that requested.

  3. RebuildRails does, in fact rebuild the rail curves by fitting through sampled points in an attempt to avoid small unintended wiggles. I don’t know if its at all useful.

  4. The extend option that used to be in DevSrf never felt right to me so I removed it some time ago. There is a test command “ExtendCurve” that is supposed to replace that functionality. Since DevSrf is modeless and you can edit the rail curves while its running, you can use ExtendCurve to shorten or lengthen the rails. ExtendCurve will hopefully be folded into Extend pretty soon. I haven’t done that yet mostly because I don’t know what it should end up looking like.
    Pascal recently sent me a suggestion for that so I guess I’m low on excuses now.


Thanks for the reply. Very much appreciated.

  1. Your explanation for Shortest and Parallel Planes make sense, though I think it should be clear to the user that they are for special circumstances, not ordinary use as might be inferred from the current control panel layout.

  2. Total twist works for me.

  3. The Rebuild Rails button doesn’t appear to actually do anything which I can see. I tried in on some rail curves with deliberate wiggles. I have V5 Windows 64 Version: Mar 1 2012 14:44:57.
    Given the excellent tools available in Rhino for smoothing curves which can be used with DevSrf active I don’t see any need for DevSrf to have anything built-in for smoothing the rail curves. My opinion is the Rebuild Rails button should be eliminated.

  4. Can I test ExtendCurve? Extending the rails is fundamental to my use of DevSrf (boat design).


  1. Removing RebuildRails is a good suggestion.

  2. To test ExtendCurve, type the name completely. It doesn’t auto-complete because its a test command still.


I tested ExtendCurve and the result appears identical to Extend with Type=Natural and specified extension length, It does not appear to add any functionality over Extend. My suggestion is it should be dropped unless there is a desire for some sort of symmetry with ExtendSrf.

A useful addition to DevSrf would be the ability to create a set of ruling line objects without actually creating a surface; ie a Create Lines button, The lines should be created even if they cross or converge.

Extend with type Natural gives the same result if you type a distance.
If you want to drag the curve longer (or shorter) in the “natural” direction, you can’t with Extend. That and the need for the enter at the start of the command if you’re not going to a boundary irritated me enough that I tried something else.
I find it to be a great improvement in some cases, but not a replacement for Extend.
The next step is to try to combine the functions to make one command that works smoothly. As I said, Pascal has suggested something, and I’m just behind on my typing to try it out.

Being able to create the curves is a good idea.You could probably salvage things that almost but don’t quite work by deleting a couple of lines and sweeping.