Loft question + ideas

Next
 From:  X (HENRYX)
784.1 
I am trying to design a hull from a few set of curves (stations) using the loft tool. My experience with other softwares tells me I should use as few stations as possible to get a fair hull, so I start with 3 stations (fore, mid and aft) and a bow profile. Whatever I have tried so far, the result provides a smooth hull profile, however, the lofted surface itself does not stick to it (see picture). I realize the loft may not be fair until I play some with the profiles (or using the lofted surface mesh), but that does not seem to help. There seems to be something else in the way the loft is computed that I do not understand. Can you comment?

It would be nice, once a loft is computed, to have access to its initial definition (loft options) so one can tweak it without having to delete and redo (or may be it can be done and I missed it altogether). It would also be nice to have some sort of finer control (such as a slide) beside the normal, loose or straight styles. I have not searched yet (should have), but may be you can clarify for me the loft options (especially refit and number of points) or point me to an existing thread...

Amazing work you are doing in any case and thank you for your eagerness to listen!

Xavier

EDITED: 22 Jul 2007 by HENRYX

Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
784.2 In reply to 784.1 
Hi Xavier - it looks like your actual Lofted surface is fine, this is a problem with the display mesh that is calculated to display the surface in the 3D viewport.

Sometimes the mechanism that calculates the display mesh stops before it is refined enough, that can leave some artifacts like you show.

In this case, just try to ignore those jagged edges, your actual surface is not jagged. When it comes time to export your lofted surface, you will either be able to export the true surface to .3dm or IGES, or if you export to a polygon format the export mesher does a more careful (but much slower) job of breaking the surface into polygons, so this doesn't normally cause an actual problem at export time.

You can find some recent discussion on this same problem here: http://moi3d.com/forum/index.php?webtag=MOI&msg=759.3

It is possible to tweak some settings to make the display mesh denser (mentioned in that above link), but you've got to be a bit careful with that since it can make more complex models too dense and slower.


Ok - other stuff - it is definitely a good idea like you mention to use as few stations as possible. If you try to use a lot of stations it tends to introduce undulating wiggles in the surface unless your stations are all very smooth gradual changes. One thing that can help to reduce the wiggles is to use Loft Style = Loose - with this style the resulting surface will only be generally guided by the stations instead of forced to go exactly through each station. This reduces the "tension" on the overall Loft and will make a more fair surface.


> It would be nice, once a loft is computed, to have access to its initial definition
> (loft options) so one can tweak it without having to delete and redo (or may be
> it can be done and I missed it altogether).

Yup, this would definitely be useful, it cannot be currently done. This is part of an expanded "History" type mechanism that I want to add in the future.


> It would also be nice to have some sort of finer control (such as a slide) beside
> the normal, loose or straight styles.

It would be a great tool, but it is kind of hard for me to think right now of how I would accomplish it technically - each of those styles kind of uses a pretty different method to do the overall calculation, so they don't really combine together so easily... I'll try to think about it some.


> I have not searched yet (should have), but may be you can clarify for me
> the loft options (especially refit and number of points) or point me to an existing thread...

I always have difficulty explaining this one...

Basically, the process of lofting involves building a single surface out of multiple curves. A single NURBS surface has a rectangular grid of points, like say 30 x 100 points. Since it has this type of regular grid layout, it means that a surface cannot be made up of a different number of points at each station, the final surface has to be calculated to have the same number of points at each station.

So there has to be a way to combine together the curves at each station and modify them so that they all share the same point structure.

This means that each section is changed in some way before it becomes part of the surface, this option controls the method that is used to change the curves.

"Auto" mode makes an automatic choice between either Exact or Refit. It will try to do Exact first, and if that produces a good result without too many points, then it will use that otherwise it switches to Refit.

Exact mode will combine together the curves by inserting new points into each section until they all have the same structure. This does not change the shape of each section, but it can cause a problem with overly dense surfaces with way too many points in them.

Refit goes through a refining process that reconstructs the curves in a synchronized process until the new curves are within 0.01 units of the previous one. This avoids overly dense final surfaces, but in some cases the refining process can introduce slight wiggles in the final results.

#Points mode uses a pretty crude approximation of the original curves, it just goes through and samples an evenly spaced given number of points and builds a curve through those. This tends to give very smooth simple output, but since it is just a rough sampling if you have small details like little bumps or turns in the curve, it will generally miss those.

Hope this helps, let me know if you need more details on any particular part.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  X (HENRYX)
784.3 In reply to 784.2 
Thanks. This all makes sense. I tweaked the view angle properties to 1 deg and it now shows the smooth surface... Of course I now understand that it does not matter and that the surface and the resulting computation are correct.

The next problem I have is when trying to shell this surface (which I had done on other lofted surfaces) ; it does not seem to work here. I understand that shelling could be a problem when the (shell) thickness and the local surface radius are commensurate, but that should not be a problem here (using 0.05)...Ideas?

Tanks again for your help and a great software!

EDITED: 22 Jul 2007 by HENRYX

Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
784.4 In reply to 784.3 
Hi Xavier, just be careful leaving that angle setting down so low, that will make really really dense meshes. Any model with very many surfaces in it will display pretty slow with that density.

re: shelling - in this case the surface offsetter does not like to have that kind of 90 degree internal pivot that you've got there since the last station is rotated 90 degrees from the previous one.

That creates a kind of twisting inside the surface and it creates some difficult calculations especially right near the pivot point.

One thing you can do is to get some additional guide curves along the sides to form the final upward curve, like this:



That's just 3 sections with the guide rails continuing up to meet in a point. You can then use sweep with 2 rails, or actually in this case Network seems to be better, to make this surface:



Here you can see with the control points turned on that the surface has a more gradual shift towards the end, not such an abrupt shift inside of it like the lofted one.

This new structure has the tip collapse down to a point. This is generally a more preferred way to have things set up rather than internal twists in a surface, but unfortunately there are also some bugs in this area of offsetting things that collapse down to a point.


This surface will shell, but unfortunately due to a bug the area right around the very tip is malformed. I'd like to get this bug fixed up but it is a bug in the geometry library that I'm using, it will probably take a little while before I'll be able to send it off to be fixed.

To finish this one you may need to either make the side curves not collapse down to an actual point and fix up that area with another piece added to it, or offset the stations and try to make the shell piece by doing a second Network surface...

- Michael

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  X (HENRYX)
784.5 In reply to 784.4 
Thanks. I'll keep working on it..
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All