mqsdx 310.0.1 MQPluginSDK Extention Library / mqsdkをC++またはCLI(.Net)拡張するサポートライブラリ

- メインページ
- 関連ページ
- モジュール
- クラス
- ファイル

- 構成
- 構成索引
- クラス階層
- 構成メンバ

全て クラス 関数 変数 型定義 プロパティ グループ ページ
構成 | Public 型 | Public メソッド | Static Public 変数 | すべてのメンバ一覧
構造体 MQ0x::Polygon::UVFaceBuffer::UVPoint::Buffer

UVPointバッファ構造体。同じuvが重複しないようにuv座標をバッファリングします。 [詳細]

`#include <MQ0x.hpp>`

## 構成
struct | Index
| UVPoint::Bufferを参照するためのインデックス型 [詳細]

## Public 型
typedef uint16_t | resolution_type
| resolutionの型

## Public メソッド
void | Clear (const bool isCompact=false)
| バッファをクリアする [詳細]
void | Compact ()
| 不要なヒープ領域を切り詰めます。
const UVPoint * | GetAccessAt (const Index &index) const
| Index で指定されたバッファ要素(UVPoint)のアドレスを取得します [詳細]
const Index | GetIndexOf (const MQCoordinate &uv, const float epsilon)
| 任意のuv値を記録するバッファ要素(UVPoint)を既存データから検索、または新規追加してインデックスを取得します。 [詳細]
UVPoint & | operator[] (const Index &index)
| 要素へのアクセス。この処理は範囲チェックを行いません。

## Static Public 変数
static const resolution_type | resolution = 10
| resolution定数

## 説明

UVPointバッファ構造体。同じuvが重複しないようにuv座標をバッファリングします。

UVPoint::Bufferは単純な動的線形配列ではなく、uの値を0〜1の範囲に想定し、resolution定数を使ってハッシュキーにする分割配列です(※)。 uv値から一意にハッシュを出して配列を細分化することで既存uv値の総当り検査や、拡張時の再配置コストを高速化した構造になっています。 一方、要素にアクセスするには専用のオフセットデータ型Index構造体が必要です。

(※) u_key = u * resolution ただし、0 <= u_key <= (resolution-1)範囲外の場合は両端でClamp()処理。

## 関数

void MQ0x::Polygon::UVFaceBuffer::UVPoint::Buffer::Clear | ( | const bool | isCompact = `false`) |  |
| inline

バッファをクリアする

引数

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

const UVPoint* MQ0x::Polygon::UVFaceBuffer::UVPoint::Buffer::GetAccessAt | ( | const Index & | index) |  | const
| inline

Index で指定されたバッファ要素(UVPoint)のアドレスを取得します

戻り値
  indexが範囲外のときはNULL。それ以外は指定されたuvバッファ要素へのアドレス

const Index MQ0x::Polygon::UVFaceBuffer::UVPoint::Buffer::GetIndexOf | ( | const MQCoordinate & | uv,
|  | const float | epsilon
| ) |  |
| inline

任意のuv値を記録するバッファ要素(UVPoint)を既存データから検索、または新規追加してインデックスを取得します。

引数

  [in] | epsilon | 同じuvとして許容する軸あたりの誤差範囲。uもvも、どちらの軸でも差がepsilonより小さい場合、同じuv座標とみなす。

戻り値
  すでに同じuv値が記録されている場合、その既存のインデックス。それ以外の場合は新規に追加されたインデックス。