KisaragiLibrary
 
読み取り中…
検索中…
一致する文字列を見つけられません
Kisaragi_Lib::Polygon2D< T > クラステンプレート

#include <Polygon2D.hpp>

公開メンバ関数

 Polygon2D (Matrix2D *_center, vector< Vertex > _vertex)
 コンストラクタ
 
vector< EdgeGetEdge ()
 

非公開型

using Vertex = Point2D<T>
 
using Edge = Segment2D<T>
 

非公開変数類

Matrix2Dcenter
 
vector< Vertexvertex
 

型定義メンバ詳解

◆ Vertex

template<typename T>
using Kisaragi_Lib::Polygon2D< T >::Vertex = Point2D<T>
private

◆ Edge

template<typename T>
using Kisaragi_Lib::Polygon2D< T >::Edge = Segment2D<T>
private

構築子と解体子

◆ Polygon2D()

template<typename T>
Kisaragi_Lib::Polygon2D< T >::Polygon2D ( Matrix2D * _center,
vector< Vertex > _vertex )
inline

コンストラクタ

引数
_center中心回転スケール座標
_vertex中心座標から見た時計回りの頂点座標(回転/スケール無し)
31 {
32
33 }
Definition Polygon2D.hpp:11
Matrix2D * center
Definition Polygon2D.hpp:17
vector< Vertex > vertex
Definition Polygon2D.hpp:20

関数詳解

◆ GetEdge()

template<typename T>
vector< Edge > Kisaragi_Lib::Polygon2D< T >::GetEdge ( )
inline
36 {
38
41
42 //最後の頂点に移動
43 mat01 *= Matrix2D::CreateMoveMatrix(vertex[vertex.size() - 1].x, vertex[vertex.size() - 1].y);
44
45 //最初の頂点
46 mat02 *= Matrix2D::CreateMoveMatrix(vertex.front().x, vertex.front().y);
47
48
50 ().x, mat01.Position().y),
52 Point2D<T>(mat02.Position().x, mat02.Position().y))));
53
54
55 //他の辺を求める
56 for (int i = 1; i < vertex.size(); i++)
57 {
58 //頂点の更新
59 mat01 = mat02;
60
61 //頂点の初期化
62 mat02 = *center;
63
64 //頂点分移動
66
67 //辺を追加
68 edge.push_back(Edge(Point2D<T>(mat01.Position().x, mat01.Position().y),
70 Point2D<T>(mat02.Position().x, mat02.Position().y)))));
71 }
72
73
74 //最後の頂点と最初の頂点の辺を代入.
75 edge.push_back(finalEdge);
76
77
78 return edge;
79 }
Matrix2D CreateMoveMatrix()
Definition Matrix2D.hpp:197
Segment2D< T > Edge
Definition Polygon2D.hpp:14

参照元 Kisaragi_Lib::GetSeparationAxis().

メンバ詳解

◆ center

template<typename T>
Matrix2D* Kisaragi_Lib::Polygon2D< T >::center
private

参照元 GetEdge(), Polygon2D().

◆ vertex

template<typename T>
vector<Vertex> Kisaragi_Lib::Polygon2D< T >::vertex
private

参照元 GetEdge(), Polygon2D().


このクラス詳解は次のファイルから抽出されました: