Approach to reducing complexity of Hull Framing

Hopefully, this does not sound like I am repeating myself but I have updated things. I have a ship hull with the frames created from tabular data describing the shape:

The result is surfaces of complexity that makes working with the surface

I tried RebuildCrvNonUniform on the frames. That created nicely spaced control points (frame to frame) but actually increased their number.

I made the surfaces from those frames, resulting in busier surfaces than before.

Then I used Rebuild (result shown in the picture) but then the surfaces do not want to join together (unless I set the tolerance really large).

Is there a recommended workflow sequence to address this issue?

(I have to build in segments because the lower edge is not a differentiable curve its entire length.)

Try using FitCrv to rebuild curves and FitSrf to rebuild surfaces. You will need to experiment with the tolerance settings.

To check curve deviation of the rebuilt curve from the original you can use CrvDeviation though that only tells you what the maximum deviation is and where it occurs…

For checking curve and surface deviation I usually first create a set of reference points based on the input data. Then I use PointDeviation for a color display of the deviation for curves and surfaces from those points. Some adjustment of the thresholds for the colors may be needed.

Are there any problems with using higher order curves?

I when I do fitcrv, I get a failure unless I set the tolerance really low. But setting the order of the surface higher (say 10) allows such a fit.

Will doing that cause a problem down the road?

By “order” do you mean “Degree”?

What type of failure are you getting? No result from FitCrv? Or not a result you like?

When you say “tolerance really low” do you mean small or large numbers. ie 0.0000001 or 0.1?

What tolerance are you trying to use, what is the approximate length of your original curves, what degree are the original curves, and how many control points do the original curves have?

Higher degree curves tend to be smoother but can also have oscillations when made with commands such as FitCrv and Rebuild, Oscillations can also occur with higher degree curves created by interpolating through points using InterpCrv and CurveThroughPt.

  1. Order == Degree

  2. No result from FitCrt

  3. Tolerance 0.001

  1. The longest length is about 560 ft. There is a control point about every 4".

Are your units feet or inches?

I created a smooth, though with an area with tight curvature, degree 3 curve 580 feet long with 1500 control points. Units were feet. Used FitCrv with Degree=3 and Tolerance of 0.001. Result was degree 3 curve with 70 control points.Maximum deviation from the original curve was 0.0008.

Can you upload an example of a curve which isn’t working with FitCrv?

My mistake. It is FITSRF that is produces no result not FITCRF.

United are Feet.

For the surface which produces no results - How many control points in each direction? What numerical tolerance in FitSrf?

Also, how long are you waiting for FitSrf to complete? On my Windows machine a 1500 x 150 surface took several minutes.

Problem FitSrf.3dm (514.2 KB)

Here is one example. It takes FitSrf about 10 seconds to come back with “One surface could not be simplified.”

FitSrf is reporting that it tried and could not find a simpler surface within the specified tolerance. If you make the tolerance larger it will simplify the surface.

There was a problem loading your file but one surface came through. FitSrf with a tolerance of 0.02 and degree 3 simplifies it to 33x24.

You could also try rebuilding your original curves and then recreating the surfaces using the simpler curves.

Problem Comparison.3dm (2.6 MB)

For educational purposes, In the attached file I have three surfaces created from a series of curves that have undergone RebuildNonUniform. I am curious why the results come out so different.

Surface 1 was created using Sweep2. The worst of all, creates oscillations between all the frames.

Surface 2 was created using Loft. It looks good until the bow where there is an odd kink.

Surface 3 was created using NetworkSrf.

I am curious why there is s much difference.

Another observation: It appears that when using an edge for networksrt, the complexity of the resulting surface increases by an order of magnitude.

Difficult to impossible to make any meaningful observations without the curves used to generate the surface as well as the surfaces.

Are you comparing two surfaces created using NetworkSrf and the only difference in the input curves is one edge, or are you comparing a Networksrf curve to something else,

If the former than a guess is the edge used for the more complex surface was not as smooth (oscillations, local areas of high curvature, etc) as the edge used for the less complex surface.

I am comparing two networksrf’s using the same frames EXCEPT that in one case the edge is created from the edge of an adjacent surface. In the other case, (producing the simple surface) the edge is produced from a curve (the same curve used to produce the edge of the surface in the other case).

Problem Comparison.3dm (4.1 MB)

I forgot to upload the file with the loft, sweep and networksrf. Here is is.

That is the same file you uploaded earlier. It does not have any curves. at least when I open it.

Edit: Message I’m getting appears to be unrelated to the file I’m opening.

Let me try upload it again. I can read it no problem here.Problem Comparison.3dm (4.1 MB)

I can open the file and I see surfaces but no curves. Where are the curves? Do you see the curves when you open the file?