mqsdx  310.0.1
MQPluginSDK Extention Library / mqsdkをC++またはCLI(.Net)拡張するサポートライブラリ
 全て クラス 関数 変数 型定義 プロパティ グループ ページ
クラス MQ0x::Polygon::UVFaceBuffer

任意のオブジェクト群からuvポリゴンバッファを構築するクラスです。 [詳細]

#include <MQ0x.hpp>

構成

struct  Edge
 辺情報 [詳細]
 
struct  Face
 面情報構造体 [詳細]
 
struct  Functors
 
struct  UVPoint
 UV座標のデータ要素です。 UVPoint::Buffer構造体を使ってバッファリングされます。 [詳細]
 

Public メソッド

template<class _BasicUVTransformFunctor >
void AddObject (const MQObject obj, _BasicUVTransformFunctor &coordinateTrans)
 新しくオブジェクトを追加解析します。ファンクタを指定して、バッファ登録前のUV変換処理を行います。 [詳細]
 
void AddObject (const MQObject obj)
 新しくオブジェクトを追加解析します。バッファ登録前のUV変換処理は行いません。
 
template<class _BasicUVTransformFunctor >
void AddObjectRecursive (const MQDocument doc, const MQObject obj, _BasicUVTransformFunctor &coordinateTrans)
 新しくオブジェクトを追加解析します(再帰的に追加します)。Functors::BasicUVTransformFunctorと同形のoperator()を持つ任意のファンクタを定義&指定して、バッファ登録前のUV変換処理を行います。
 
void AddObjectRecursive (const MQDocument doc, const MQObject obj)
 新しくオブジェクトを追加解析します(再帰的に追加します)。バッファ登録前のUV変換処理は行いません。
 
void Clear (const bool isCompact=false)
 キャッシュされたUV情報を全てクリアします。 [詳細]
 
void Compact ()
 不要なヒープ領域を切り詰めます。
 
const Edge::BufferEdgeBuffer () const
 Edge 構造体(辺情報)バッファを読み取り専用で参照します。
 
float Epsilon () const
 UV座標の一致判定の閾値です。u,vそれぞれの軸で差が閾値より小さければ一致とみなします。デフォルトではstd::numeric_limits<float>::epsilon()が設定されます。
 
float Epsilon (float setValue)
 任意の Epsilon() を登録します。
 
const FaceFaceBuffer (const Face::Buffer::Index &index) const
 三角形リストからデータを取得します(インデックスがリスト範囲外の時はNULL)
 
const Face::BufferFaceBuffer () const
 三角形リストを読み取り専用で参照します。
 
const UVPointUVBuffer (const UVPoint::Buffer::Index &index) const
 UV座標バッファからデータを取得します(インデックスがバッファ範囲外の時はNULL)
 
 UVFaceBuffer ()
 デフォルトコンストラクタ
 

説明

任意のオブジェクト群からuvポリゴンバッファを構築するクラスです。

関数

template<class _BasicUVTransformFunctor >
void MQ0x::Polygon::UVFaceBuffer::AddObject ( const MQObject  obj,
_BasicUVTransformFunctor &  coordinateTrans 
)
inline

新しくオブジェクトを追加解析します。ファンクタを指定して、バッファ登録前のUV変換処理を行います。

引数
coordinateTrans変換ファンクタを指定します。渡すべきファンクタはFunctors::BasicUVTransformFunctorをモデルにしてください。
void MQ0x::Polygon::UVFaceBuffer::Clear ( const bool  isCompact = false)
inline

キャッシュされたUV情報を全てクリアします。

引数
[in]isCompactヒープ領域を切り詰めるかどうか