Complex Curve Blend

Hello everyone,

I want to create curve blends with additional constraints using grasshopper (or any script component within).
Disclaimer: Chances are it might not be considered a curve blend after all :smiley:

This is the situation:
I want to create curve blends connecting an asymmetrical curve to a circle (r=3000).
Note: this sketch only indicates a curve blend on one side, but eventually I want to have blends on both sides.

Now the additional constraints:
As starting condition the circleĀ“s quadrant is located 100 untis orthogonally to a previously defined point on the curve.
The blend curve hase to keep a gradient to the initial curve of 1/10.
The blend curve needs to keep this gradient until it tangentially changes over into the circle.

IĀ“ve already approached to meet this constraints approximately by interpolating through offsets, intersetctions and sample points. But this leaves me with a lot of sample points + consumes a lot processing power, and I hope thereĀ“s a more mathematical and elegant way for this problem.

Thanks in advance,
Dominik

does it matter that the intersection between the red curve and the black one isnā€™t tangentially continuous?

if no, simply decide where on the black curve the blend should start, split, rotate by alpha andā€¦ a few steps laterā€¦ do the rest of the blend

No GH code of a ā€œtest benchā€? So no help from me.

3. Attach minimal versions of all the relevant files

thanks for you answer :slight_smile:

The intersection between the red ā€œblendā€ and the black curve should not be tangentially continuous but as you stated in your second paragraph.

IĀ“ve implemented what you are suggesting. But IĀ“m having troubles deciding location of the blend start beforehand.

I guess, if I would want to geometrically deduct this I would need to start from right to left in this scenario:
Taking the arc as starting curve.
Finding the point on the arc where Alpha = ArcTan(1/10). (sample points)
From this point onwards interpolating a ā€œblendā€ that keeps a gradient of 1/10 to the black curve. (sample points)
Finding the intersection of the interpolated ā€œblendā€ and the black curve.

A constant gradient means the ā€œcurveā€ is a straight line.

IĀ“m referring to a constant gradient of 1/10 in relation to the initial curve. (IĀ“m not sure if ā€œgardientā€ this is correct term in this case)
One could also say I want to change the gradient of the initial curve so it ā€œrises/fallsā€ more pronounced.

Create a vertical line starting at the center of the arc.
Rotate that line by ArcTan(1/10).
The point of intersection of the rotated line and the arc is where the arc will have a gradient of 1/10.

Added: Alternative method.
Create a line with gradient 10/1 from the center of the arc.
The point of intersection of that line and the arc is where the arc will have a gradient of 1/10.