5

I'm trying to make a triangle where all the sides are curved outward, like a Reuleaux triangle, but the sides must be of a specific length. The length must be measured along the curve, not from end to end in a straight line, and the shape must be a specific vertical height. Is there a way to do this, including using any software or websites? I've included a picture to show what I'm trying to do. The dimensions shown in the image are all I have to go off of. Thank you!

curved triangle shape

MvG
  • 42,596
GhostOwl
  • 151
  • I think the problem is underspecified. Say you want a figure with curved sides of length 8, 10, and 12. There are infinitely many different ways to do that, corresponding to different choices of the radius of curvature for each side. Do you have some additional criteria in mind for deciding on just how curved you want the sides to be? – mweiss Nov 01 '22 at 03:00
  • There's no specific criteria for how curved the sides should be, I was hoping to make it an adjustable factor. I may need multiple shapes like this, with different curvatures, but the same side lengths. – GhostOwl Nov 01 '22 at 04:21

1 Answers1

3

I'll assume that all your curved boundary segments are circular arcs. The one at the bottom belongs to a circle of radius $R$ and the ones on the sides belong to circles of radius $r$.

For the big circle at the bottom there is an angle of $\frac{5''}{R}$ radians between center of the arc and one of the endpoints. If the center of the arc has coordinates $(0,0)$ then the center of the circle is $(0,R)$ and the right corner is

$$\left(R\sin\frac{5''}R,R-R\cos\frac{5''}R\right)$$

The top of the triangle is $(0,6.5'')$ so the distance from that top to the right corner is

$$d=\sqrt{\left(R\sin\frac{5''}R\right)^2+\left(6.5''-R+R\cos\frac{5''}R\right)^2}$$

But for the small circle you also get that this distance is

$$d=2r\sin\frac{3.5''}r$$

Taken together this gives you a relationship between $R$ and $r$ that needs to be satisfied. It's a very implicit way of putting that relationship, and I don't have high hopes that it would be possible to improve this a lot. The fact that $R$ occurs both inside and outside trigonometric functions makes the whole thing look very transcendental and thus hard to tackle with any closed form solution. Numerical methods are your best bet. For example you can use bisection to find the point inside an interval where your equation is satisfied as well as possible. This is what I did for the numbers I'm giving below.

There are a few situations of special interest.

Gallery of interesting six situations

For example you might want to look at the situation where $d=7''$ and $r=\infty$ so that your side circle becomes in fact a straight line with zero curvature. This is the case for

\begin{align*} R &\approx 8.991151867552912683340117975286'' \\ r &= \infty \end{align*}

Another situation of potential interest would be $R=r$ i.e. a situation where all your arcs have equal curvature. This is the case for

\begin{align*} R &\approx 7.543369570459730484296066307716'' \\ r &\approx 7.543369570459730484296066307716'' \end{align*}

Yet another interesting situation would be the one where the two arcs on the sides actually form a single circular arc. That point is the transition between the top corner being convex and it being concave. This situation in between is characterized by the center of the side circles lying on the symmetry axis. So that center has to be at $(0,6.5''-r)$ and the distance from that center to $P$ has to be $r$ as well. This is the case for

\begin{align*} R &\approx 5.826924851675005898244348283918'' \\ r &\approx 4.409226404889287430180741031933'' \end{align*}

If you are OK with a concave point at the top, the next interesting situation would be the one where the arcs on the side and the arc at the bottom share a tangent at the corner. This is the point where the corners on the sides flip from convex to concave.

\begin{align*} R &\approx 4.214742973018178204477232593965'' \\ r &\approx 2.978356327497717774833465542738'' \end{align*}

Then comes a point where the bottom arc becomes a semicircle, with its center on the line between the lower corners. At that point you have $R=\frac{10''}\pi$.

\begin{align*} R &\approx 3.183098861837906715377675267450'' \\ r &\approx 2.301462933721852775036567960282'' \end{align*}

Shortly after the side arcs become semicircles, with $d=2r$ and $r=\frac{7''}{\pi}$.

\begin{align*} R &\approx 3.059155405022899276408831832842'' \\ r &\approx 2.228169203286534700764372687215'' \end{align*}

If you go even further, the shape will look less and less like your drawing as the circular arcs bulge more and more outwards.

Assuming you're only interested in the cases with convex upper corner, you can find suitable combinations in this graph, where I'm plotting curvature (inverse of radius) to accommodate the situation of zero curvature (infinite radius) for the side circles. Click for higher resolution version.

Graph of curvature against curvature

If you have suitable values of $R$ and $r$ you can use SVG to draw them, e.g. using some Python similar to this (with all $y$ coordinates negated because the $y$ axis in SVG is pointing down):

x = R * sin(5 / R)
y = R * cos(5 / R) - R
print(f"""<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" 
  "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="1000px" height="1000px" version="1.1"
     viewBox="-5 -9 10 10" xmlns="http://www.w3.org/2000/svg">
<path d="M {-x} {y}
         A {R} {R} 0 0 0 {x} {y}
         A {r} {r} 0 0 0 0 -6.5
         A {r} {r} 0 0 0 {-x} {y}
         Z"
      fill="#99ff99" stroke="#000099" stroke-width="0.05"/>
</svg>""")
MvG
  • 42,596