polygonタグ -SVG内で多角形を描画する|HTML辞典

<polygon>タグとは?

<polygon> タグは、SVG(Scalable Vector Graphics)内で多角形を描画するためのタグです。
points 属性に一連の座標を指定することで、三角形や五角形、星形などの多角形を作成できます。

基本情報

コンテンツモデル

SVG コンテンツ(SVG Content)。

閉じタグの有無

<polygon>自己終了タグ(<polygon />)として使用可能 ですが、明示的に <polygon></polygon> の形式で記述することもできます。

基本的な記述方法

<svg width="200" height="200">
<polygon points="100,10 40,180 190,60 10,60 160,180" fill="blue" stroke="black" stroke-width="2" />
</svg>

5 つの点を結んだ青い多角形(星形)が描画されます。

使用できる主な属性

属性名説明
points多角形の頂点を指定(X, Y の座標をスペースまたはカンマ区切りで記述)<polygon points="50,10 90,90 10,90">
fill塗りつぶしの色<polygon fill="red">
stroke枠線の色<polygon stroke="black">
stroke-width枠線の太さ<polygon stroke-width="3">

枠線付きの三角形を描画する

<svg width="200" height="200">
<polygon points="100,10 50,190 150,190" fill="none" stroke="red" stroke-width="3" />
</svg>

赤い枠線のみの三角形が描画されます。

CSSを使ったデザイン変更

SVG の要素には CSS を適用できます。

polygon {
fill: orange;
stroke: black;
stroke-width: 3;
}

すべての <polygon> 要素にオレンジ色の塗りが適用され、黒い枠線が追加されます。

適切な使用例

points に複数の座標を指定して多角形を描画する

<svg width="200" height="200">
<polygon points="100,10 40,180 190,60 10,60 160,180" fill="blue" stroke="black" stroke-width="2" />
</svg>

stroke を指定して枠線付きの多角形を作成する

<svg width="200" height="200">
<polygon points="100,10 50,190 150,190" fill="none" stroke="red" stroke-width="3" />
</svg>

✅ 星形を描画する

<svg width="200" height="200">
<polygon points="100,10 120,80 190,80 130,120 150,190 100,140 50,190 70,120 10,80 80,80" fill="gold" stroke="black" stroke-width="2" />
</svg>

黄色の星形が描画されます。

適切でない使用例(誤った使い方)

points を指定しない(描画されない)

<!-- NG: points 属性を省略 -->
<svg width="200" height="200">
<polygon stroke="black" stroke-width="2" fill="none" />
</svg>

正しい書き方(points を指定)

<svg width="200" height="200">
<polygon points="50,10 90,90 10,90" stroke="black" stroke-width="2" fill="none" />
</svg>

<polygon><svg> の外に記述する

<!-- NG: <svg> の外に <polygon> を記述 -->
<polygon points="10,50 50,100 90,50" stroke="black" />
<svg width="200" height="200"></svg>

正しい書き方(<svg> 内に記述)

<svg width="200" height="200">
<polygon points="10,50 50,100 90,50" stroke="black" />
</svg>

<polygon>タグと他のタグの違い

タグ役割特徴適切な用途
<polygon>多角形を描画points 属性で座標を指定星形や三角形の作成
<polyline>折れ線を描画points 属性で座標を指定折れ線グラフや境界線
<line>直線を描画x1y1x2y2 を指定単純な直線の描画
<rect>長方形を描画xywidthheight を指定四角形のオブジェクト
<path>任意の図形を描画d 属性でパスを指定自由な曲線や形状

使用上の注意点

<polygon><svg> 内で使用する

  • HTML の通常の構造では描画できないため、必ず <svg> の中に記述する。

points を適切に指定する

  • 複数の点を指定しないと描画されない。

fillstroke を活用してデザインを整える

  • 色や枠線を適用して、視認性を向上させる。

関連タグ

まとめ

<polygon> タグは、SVG 内で 多角形を描画するためのタグ です。
適切に使用することで、三角形や星形などのさまざまな形を作成できます。