Bezier curve interpolation


#1

Okay, here’s one or two:
Is there any way to have a curve “evolve” into another in x number of steps, or increments? Let’s assume both (original,destination) curves are of the same degree and, since this is SU, have the same number of segments. I know it can be done “manually” using vertices, what I’m looking for is something less tedious…
As an added twist, can the distances between the increments be logarithmic as well as regular?
As a capper, could the 2 curves (original,destination) be of different degrees?
I’m including an skp as a basis for discussion:
interpolate.skp (17.1 KB)


#2

Download “The Engineering Toolbox” from the Extension Warehouse to make function curves.

Afterwards, input the logarithmic function into their website, then click insert. Be sure to read the directions to ensure it works properly.
https://sketchup.engineeringtoolbox.com/logarithmic-function-c_137.html


#3

Great resource, thanks for the reference…
But it doesn’t address the main point of this query, i.e. the capacity to accurately sculpt volumes without having quad skills. Seems to me this’d be, all at once, an easy script to write and a formidable tool.
The reason I mentioned algorithms was as a description of the way I’d like to be able to handle the increment spacing within an “evolution” from one curve to the next. Forgot to mention that the question and included file was for 2D and coplanar Béziers.
Is there a category here for extension requests, as there is one regarding features?


#4

I’m not following what you want, and your model link doesn’t work for me.
But are you thinking something like Curve Maker.
https://extensions.sketchup.com/en/content/curve-maker


#5

Which I have, along with 2 extensions that allow for editions. What I’m after is a way of making one curve espouse another, in the example, from one blue Bézier to the other, at regular spacings or with an exponential progression:
48%20PM
Curve maker and the other extensions allow for working on curves but not on arrays of curves.


#6

Use curviloft and unsoften the edges and remove the faces.


#7

Yes, once I have the array, which is tedious to produce, and shouldn’t have to be…
A typical Bézier has 20 segments, if you want the progression to contain 10 increments, you’re looking at manually connecting 200 vertices.
Like I said in the OP, this extension should be written if it doesn’t exist, as it’d provide a powerful alternative to quads for complex volume-building.
P.S. Hang on…
I think I see what you mean. Derive the interpolation from a Curviloft construction?
Those are pointless if not in 3D, aren’t they? My question lives in 2D for now…


#8

Are you trying to make shapes like this?
Curvi


#9

Sort of; I’m making hull shapes from naval architecture drawings. But the data I have is sourced in 1907 documents, which were hand-drawn and imprecise. I traced the first attempts, using single Béziers.
While doing this I discovered that the outermost curves of the hull weren’t symmetrical, so I moved the outer curve to the other side, and then was faced with harmonizing the “echoes” towards the original curve.


I used a rudimentary curve editor to do this, and did a pretty good job of it, but there are a few subtle “lumps” in the hull which are due to small differences in the curves “harmony”. I now have a better handle on Bezier edition, but it’ll still entail eyeballing the reconstruction, whereas a simple extension could handle this type of problem easily.
I’m no coder, so maybe I’ m talking through my hat…


#10

Just so you see the process…
26%20AM


#11

How about something like this.
Extrude%20EBR


#12

That’d occurred to me, but my experience with Curviloft has been that it has a tendency to “flatten” the surfaces they produce unless the central part of the curvature isn’t too far away from the nearest defining edge, in rotund volumes. That’s why I evolved a tendency to narrowly frame those constructions, to avoid having breaks in the element’s curvilinear continuity.
It seems to work fine in your example, so maybe I’ll revise my philosophy in that regard.
I must say I’m impressed by the speed at which you knock these things out.
So, back to square one, what do you think of the idea for a plug-in to avoid having to use quads, which I have yet to break into.


#13

Sorry, I still don’t understand what it is you want a plugin to do or what it has to do with quads anyway.
I did that using Tig’s Extrusion tools and only chose Quad faces to help show the structure of the curve. Underneath those quads are normal triangles.


#14

I think franquin wants a way to accurately model the precise curvature of the boat. You could hand draw each curve measurement like you are already doing. It is tedious, but it should work. Hopefully there is an easier way coming soon…

P.S. Your 3D Warehouse models (on glistenUp) are seriously some of the best I’ve ever seen.


#15

Perhaps Delftship would help.
http://www.delftship.net/DELFTship/index.php/delftship/delftship-free


#16

As a now veteran noobie, I try to avoid tools that ask me a volley of questions I don’t know how to answer. To me, these generally involve what I lump together under “quads”. SubD, VertexTools, QuadFace, etc… The Great Beyond, for my skill set.
My last attempt at using TIG’s suite, just now, resulted in a bugsplat. I use his weld tool all the time, but it’s not inquisitive at all…
Sorry if I’m a bit obscure, it’s hard to transmit these concepts accurately, especially when the conversation is taking place between a rank amateur and a seasoned pro…


#17

Taking a bit of time to learn some of these plugins can help enormously. Plus asking why you got a bug splat by showing us what you did can help resolve issues for you.
Here is Tig’s Extrude edges by rail to lattice, which I believe might actually be doing what you are asking for…
Lattice


#18

A bit of time is a lot less than what I’ve already spent trying to grok the concepts involved. Lattice,mesh,rails,loops,matrix,strings. All part of the basic language of a type of 3d modelling that’s completely unnecessary to know when you first start out in SU, and which you bump into more and more often as you go along.
Thanks for the detailed gif on how to answer those particular questions, I’ll no doubt try to see what I get from the contours I have, but that’s simply arriving at the “ribs” by deducing them from the outline of the entire ship, whereas I am trying to get to the outline from the ribs . The plans’ll give me all the lines I want for getting to the volume from the data. I just picked the hard way…
Your way is better in all respects, but my wrong-footed approach to the problem has made me stumble on the idea of assembling, or gradually blending, one curve into another, for whatever reason. And to allow for a gradual sequencing of the increments of the metamorphosis, creating a smooth curvilinear shape from only a head-on view.


#19

Well, after a few tries with

This is what happens: I activate the tool, select the edges, get the extrusion type prompt, select Lattice from Profiles, okay, then I get this:


At this stage, the vertex markers seem to follow the bottom of the vertical curve’s bounding box instead of the curve itself.
Nothing happens, except that the 3 profiles are now grouped individually, and the vertex markers seem there to stay.
No “erase original curves?” pane or anything else. Return(enter), click, context click, whatever I’ve tried returns no further result, even after multiple tries to make sure I followed the procedure as described in your last.
Out of curiosity, I used Curviloft which worked well for the forward end, but did this with the aft section:


#20

When did you last update your plugins? That looks like the old version of Extrude tools that had a bug and has since been fixed.