D.LOFT trim surface ends



With D.LOFT using no ruling alignment, the lofting extends the existing curves beyond the drawn ends whilst running the ruling iterations, when it has finished and comes up with a result, the plugin then trims the surface to the ends of the original curves.

Is it possible to keep the extended surface, then trim the surface by projecting another non-linear curve onto the lofted surface?

In other words, I want to make the ruled surface, but I want to maintain a curved end.

To use your example video of the yacht sails https://www.youtube.com/watch?v=C0RAbqinjeg you can see that the resultant develop-able surface is missing the ‘leech’ curve as it has been chopped straight between the two guide curves.

Also, I noticed that if you select align rulings with both extremities, the plugin no longer projects the rulings beyond the curve ends? If the earlier part of my question is possible, is it also possible to force the plugin to project the surface beyond the curve ends in order to be trimmed to another shape later?

This would be ideal for many purposes, as when not aligning the extremities, the resultant trimmed surface often has deformed ends …

Cheers, A

(Alexander Schiftner) #2

Hi, the surface resulting from D.LOFT can be untrimmed using _Untrim, which will result in the extended surface you are looking for. In case you choose align rulings with extremities there is no need for D.LOFT to extend the curves before lofting, hence it is not done. If you still want to create an extended strip, please extend the curves beforehand using Rhino’s _Extend.
Does that answer your questions?


Hi, Thanks for the reply.

Yes, both questions answered, thank you.

Would it be possible to add the ability as an option to extend the curves within the plugin to save a stage of workflow and to make the plugin more powerful?

I strongly believe this would be a very useful tool, as although you say there is no need when using align to extremities, for me as a sailmaker myself and referring to your demo video using sails as a prime example, the edge is often required to be a positive curve outside of the resultant lofted surface.

In your demo, the resultant loft has lost some of the sail’s leech ‘Roach’ which to add using the tools as they currently are would require several stages of advance preparation using other tools. - much more simple if all in one tool set!

Thanks again for the advice though!


I have just done a couple of experiments .

Using extendCrv in rhino prior to lofting, often results in poor ‘end’ linearity that may be required, as the plugin uses the maximum (extended) end points for its rulings, so can lead to the distortion over the required trimmed edge as shown in my screen shot above.

However, I found that there is a rhino command called extendSrf which enables the resultant surface to be projected beyond the aligned ruled surface, and then later trimmed to a curve -

I think this is the better method for me to use, as it simply extends the develop able surface enough to be able to trim as required, it appears to extend in a develop-able (Gaussian curve) way as well.

An example for anyone else (as inexperienced as me!) looking to do similar …

  1. Developed surface created by D.LOFT that requires to be trimmed outside of the resulting lofted surface extremity, whilst maintaining a flat ruled termination plane …

  1. Use ExtendSrf to project the surface beyond the result …

  1. Trim the surface using the required outline as the cutting object and ‘Voila’ a lovely flat develop-able trimmed and shaped terminal edge that remains a develop-able surface with no deformation on the ruled plane.

(Alexander Schiftner) #5

Many thanks for this example. We might add a further option to D.LOFT which allows to extend the input curves just a tiny bit before lofting. This is going to result in essentially the same result like when using ExtendSrf in your example.


Fantastic! I think it would be handy in many scenarios that require a shaped termination.

In my tests though, the extendSrf vs extendCrv produced the better results if you need to maintain exactly the shortest distance between the two input curve ends.

Thanks again!

(Alexander Schiftner) #7

Many thanks for your feedback! We will make sure to add this feature for the next release.


Fantastic, thank you!