Biggest Reuleaux Triangle within A Square in C?

A Reuleaux triangle is a shape formed from the intersection of three circular disks, each having its center on the boundary of the other two. Its boundary is a curve of constant width, the simplest and best known such curve other than the circle itself. Constant width means that the separation of every two parallel supporting lines is the same, independent of their orientation. Because all its diameters are the same.

The boundary of a Reuleaux triangle is a constant width curve based on an equilateral triangle. All points on a side are equidistant from the opposite vertex.

To construct a Reuleaux triangle

Formula for Reuleaux triangle

Area of the Reuleaux Triangle, if curve based on an equilateral triangle and side of tringle is h

A = (π * h2) / 2 – 2 * (Area of equilateral triangle) = (π – √3) * h2 / 2 = 0.70477 * h2

Biggest Reuleaux Triangle within A Square

Let’s take an example,

Input: a = 6
Output: 25.3717

Explanation

Area of Reuleaux Triangle is 0.70477 * b2 where b is the distance between the parallel lines supporting the Reuleaux Triangle.

distance between parallel lines supporting the Reuleaux Triangle = Side of the square i.e. a

Area of the Reuleaux Triangle, A = 0.70477 * a2

Example

#include <stdio.h>
#include <math.h>
int main() {
float a = 6;
float area = 0.70477 * pow(a, 2);
printf("The area is : %f",area);
return 0;
}

Output

The area is : 25.371719

Updated on: 07-Oct-2019

52 Views