正六角形に内接する正方形に内接する最大のルーロー三角形の面積を求める方法
この記事では、正六角形に内接する正方形の中に内接する最大のルーロー三角形の面積を求める方法を解説します。
まず用語を整理しましょう。ルーロー三角形とは、正三角形の各頂点を中心として、残りの頂点を通る円弧を描くことで得られる曲線三角形で、「どの方向から測っても幅が一定」という性質を持つ代表的な定幅図形です。
ここでは、正六角形の一辺の長さを a、その内部に収まる正方形の一辺を x、ルーロー三角形の高さ(幅)を h とします。

正六角形に内接する正方形の一辺
一辺 a の正六角形に内接する正方形の一辺 x は、幾何学的な導出により次の式で表されます。
𝑥 = 1.268𝑎
ルーロー三角形の面積
ルーロー三角形の高さ h は、外側の正方形の一辺 x と一致します。つまり h = x です。ルーロー三角形の面積は一般的に次の公式で求められます。

これに x = 1.268a を代入すると、正六角形の一辺 a を使って直接面積を計算できます。
C++による実装例
実際に C++ プログラムで計算してみましょう。引数 a が負の場合は不正な値として -1 を返すようにしています。
#include <iostream>
#include <cmath>
using namespace std;
float areaReuleaux(float a) { // 六角形の一辺は a
if (a < 0) // a が負の場合は無効
return -1;
float area = ((3.1415 - sqrt(3)) * (1.268*a) * (1.268*a))/2;
return area;
}
int main() {
float side = 5;
cout << "Area of Reuleaux Triangle: " << areaReuleaux(side);
}
出力結果
Area of Reuleaux Triangle: 28.3268
一辺 5 の正六角形の場合、内接する正方形の一辺は 1.268 × 5 = 6.34 となり、それに対応するルーロー三角形の面積は約 28.33 と求まります。このように、一辺の長ささえ分かれば、係数 1.268 を掛けるだけで簡単に最大のルーロー三角形の面積を計算できます。
-
半円に内接する正方形の中に収まる最大のルーロー三角形の面積を求める方法
本記事では、半円に内接する正方形の中に内接する最大のルーロー三角形の面積を求める方法を解説します。半円の半径を R、正方形の一辺の長さを a、ルーロー三角形の高さを h として考えます。数学的な導出まず、半径 R の半円に内接する正方形の一辺の長さは、次の式で表されます。a = 2R / √5次に、ルーロー三角形の高さは、この正方形の一辺と等しくなります。したがって、a = h が成り立ちます。一般に、高さ h のルーロー三角形の面積は、以下の公式で求められます。面積 = ((π − √3) × h²) / 2ここに h = 2R / √5 を代入すると、最終的な面積の式は次のようになります。
-
ルーロー三角形の面積の求め方|公式の導出とC++での計算例
本記事では、下図のようなルーロー三角形の面積を求める方法を解説します。ルーロー三角形の内部には一辺の長さが等しい正三角形が含まれており、その高さを h とします。この図形は、正三角形の各頂点を中心とした3つの円が重なり合った部分(共通部分)として作られます。ルーロー三角形とはルーロー三角形は、正三角形の3つの頂点をそれぞれ中心とし、頂点間の距離を半径とする3つの円の交わりでできる図形です。どの方向から測っても幅が一定になる「定幅図形」の最も簡単な例として知られており、マンホールの蓋や一部の工具などにも応用されています。面積の導出方法ルーロー三角形の面積は、3つの扇形(おうぎ形)に分解して考える