C
Qul::PlatformInterface::Texture Class
class Qul::PlatformInterface::Textureテクスチャに関する情報を含むクラス。詳細...
| Header: | #include <platforminterface/texture.h> |
| Since: | Qt Quick Ultralite (Platform) 1.5 |
パブリックタイプ
(since Qt Quick Ultralite (Platform) 1.5) enum | Flags { NoTextureFlags, Swizzled, PartiallyOverlaps, NeedsCachedLoadFromSlowMemory, PaddedWithTransparency, …, PreRotated } |
パブリック関数
| Texture(const unsigned char *data, Qul::PixelFormat format, int flags, int16_t width, int16_t height, int8_t bitsPerPixel, int16_t bytesPerLine, const Qul::Private::TextureLayout *textureLayout = NULL) | |
| int8_t | bitsPerPixel() const |
| int16_t | bytesPerLine() const |
(since Qt Quick Ultralite (Platform) 1.5) const unsigned char * | data() const |
| int | flags() const |
| Qul::PixelFormat | format() const |
| int16_t | height() const |
(since Qt Quick Ultralite (Platform) 1.9) Qul::PlatformInterface::PixelDataPointer | pixelData(int16_t x, int16_t y) const |
(since Qt Quick Ultralite (Platform) 1.7) Qul::PlatformInterface::Size | size() const |
| int16_t | width() const |
詳細な説明
このクラスはテクスチャをレンダリングするために必要な値を含んでいます。値には、data ポインタ、format 指定子、テクスチャflags 、ピクセルformat 、width 、height 、bitsPerPixel 、bytesPerLine が含まれます。
テクスチャ・インスタンスは、データがリソース・キャッシュに存在する場合など、 無効になる可能性があり、関数呼び出しのライフタイムを超えてコピーしたり保持し たりすべきではない。Qul::SharedImage::texture() を呼び出すと、同じ関数内の既存の Texture インスタンスも無効になるかもしれません。
メンバ型ドキュメント
[since Qt Quick Ultralite (Platform) 1.5] enum Texture::Flags
この列挙型は、さまざまなテクスチャのプロパティを指定します。
| 定数 | 値 | 説明 |
|---|---|---|
Qul::PlatformInterface::Texture::NoTextureFlags | 0x00 | フラグが設定されていない。 |
Qul::PlatformInterface::Texture::Swizzled | 0x01 | テクスチャデータはswizzled、すなわち非直線的な方法でレイアウトされ、デコードするためにハードウェアサポートが必要です。このフラグは、Renesas RH850のような、スウィズルテクスチャフォーマットをサポートする特定のプラットフォームでのみ使用されます。 |
Qul::PlatformInterface::Texture::PartiallyOverlaps | 0x02 | テクスチャデータが部分的に別のテクスチャと重なる可能性があります。これは、スペースを節約するために画像が複数のサブ画像に分割される場合に発生する可能性があります。不透明領域が分割され、画像が回転または拡大縮小される場合、バイリニアフィルタリングが正しい視覚出力を生成するために、各サブ画像が周囲のコンテンツでパディングされる可能性があります。 |
Qul::PlatformInterface::Texture::NeedsCachedLoadFromSlowMemory | 0x04 | この値はQt Quick Ultralite によって内部的に使用され、プラットフォームの実装では無視できます。これは、テクスチャを使用する前に、フラッシュのような低速メモリから高速メモリにコピーする必要があることを示します。 |
Qul::PlatformInterface::Texture::PaddedWithTransparency | 0x08 | この値は、テクスチャが少なくとも1ピクセル幅の透明の境界でパディングされることを指定します。これは、画像を回転または拡大縮小するときに、バイリニアフィルタリングを使用して、画像エッジで滑らかに透明にフェードするために有用です。注意: この透明パディングは、width と height で指定されるテクスチャ境界の外側にあります。 |
Qul::PlatformInterface::Texture::Rotated | 0x10 | この値は、実行時にテクスチャが回転することを指定します。特定のプラットフォームでは、テクスチャはレンダリングプロセスを最適化するために異なるフォーマットに変換されます。最適化は、ImageFiles.MCU.resourceOptimizeForRotationプロパティでリソースに設定され、その中のすべてのテクスチャに適用されます。 |
Qul::PlatformInterface::Texture::RawData | 0x20 | この値はQt Quick Ultralite によって内部的に使用され、プラットフォームの実装では無視できます。ImageDecoderこのフラグはコア ライブラリ部分によって設定され、変更すべきではありません。 |
Qul::PlatformInterface::Texture::LoadFromFile | 0x40 | この値はQt Quick Ultralite によって内部的に使用され、プラットフォーム実装では無視できる。ピクセルデータはテクスチャデータポインタでは利用できない。代わりに、データポインタはデータを取得するファイルに関する情報を含んでいます。データを取得する唯一の方法はResourceCacheを使用することであり、ResourceCacheはデコードされたイメージデータをホストするキャッシュアイテムを提供します。 |
Qul::PlatformInterface::Texture::PreRotated | 0x80 | この値は、テクスチャがディスプレイの回転角度と一致するようにあらかじめ回転されていることを指定します。この値は、Qt Quick Ultraliteによって内部的に使用され、プラットフォームの実装では無視できます。カスタムペイントアイテムなどでテクスチャを手動で描画するアプリケーションでは、事前回転を補正する必要があるかもしれません。 |
この enum はQt Quick Ultralite (Platform) 1.5 で導入されました。
Textureも参照してください 。
メンバー関数ドキュメント
Texture::Texture(const unsigned char *data, Qul::PixelFormat format, int flags, int16_t width, int16_t height, int8_t bitsPerPixel, int16_t bytesPerLine, const Qul::Private::TextureLayout *textureLayout = NULL)
テクスチャオブジェクトを作成します。
与えられたdata,format,flags,width,height,bitsPerPixel,bytesPerLine でテクスチャオブジェクトを作成します。
textureLayout の値は、変換された画像をブレンドするためのフォールバックDrawingEngine で使用されます。
int8_t Texture::bitsPerPixel() const
テクスチャのピクセルあたりのビット数を返します。
パディングのため、テクスチャのサイズは width * height * 8 * bitsPerPixel より大きくなる可能性があります。
int16_t Texture::bytesPerLine() const
テクスチャの1行あたりのバイト数を返します。
これにはパディングも含まれるため、この値は width に 8 を掛けた値よりも大きくなる可能性があります *bitsPerPixel 。
[since Qt Quick Ultralite (Platform) 1.5] const unsigned char *Texture::data() const
テクスチャデータを含むメモリへのポインタを返します。
この関数はQt Quick Ultralite (Platform) 1.5 で導入されました。
int Texture::flags() const
Flags 列挙型のフラグの OR の組み合わせを返します。
フラグは、透明なパディングがあるかどうかなど、テクスチャの特別な機能を記述します。
Qul::PixelFormat Texture::format() const
テクスチャデータのピクセルフォーマットを返します。
int16_t Texture::height() const
テクスチャの高さをピクセル単位で返します。
[since Qt Quick Ultralite (Platform) 1.9] Qul::PlatformInterface::PixelDataPointer Texture::pixelData(int16_t x, int16_t y) const
x-pixel-offsetx と y-pixel-offsety で始まるテクスチャのピクセルデータ位置に関する正確な情報を返します。
テクスチャのピクセルあたりのビット値が1バイト(8ビット)の乗算でない場合、ピクセルx,y の実際のデータは、フルバイトの境界ではないどこか別の場所、たとえばバイト3のビット2から始まる可能性があります。このような場合、Qul::PlatformInterface::PixelDataPointer::bitOffset の返り値はゼロ以外となる。
一般的に:ピクセルデータはバイトQul::PlatformInterface::PixelDataPointer::address +Qul::PlatformInterface::PixelDataPointer::bitOffset ビットから始まる。
この関数は、ランレングス符号化ピクセルフォーマットPixelFormat_RLE_ARGB32 、PixelFormat_RLE_ARGB32_Premultiplied 、PixelFormat_RLE_RGB32 、PixelFormat_RLE_RGB888 には対応していない。
この関数はQt Quick Ultralite (Platform) 1.9 で導入されました。
[since Qt Quick Ultralite (Platform) 1.7] Qul::PlatformInterface::Size Texture::size() const
テクスチャのサイズをピクセル単位で返します。
この関数はQt Quick Ultralite (Platform) 1.7 で導入されました。
int16_t Texture::width() const
テクスチャの幅をピクセル単位で返します。
特定の Qt ライセンスの下で利用可能です。
詳細はこちら。