Struttura LAYERPLANEDESCRIPTOR (wingdi.h)
La struttura LAYERPLANEDESCRIPTOR descrive il formato pixel di una superficie di disegno.
Sintassi
typedef struct tagLAYERPLANEDESCRIPTOR {
WORD nSize;
WORD nVersion;
DWORD dwFlags;
BYTE iPixelType;
BYTE cColorBits;
BYTE cRedBits;
BYTE cRedShift;
BYTE cGreenBits;
BYTE cGreenShift;
BYTE cBlueBits;
BYTE cBlueShift;
BYTE cAlphaBits;
BYTE cAlphaShift;
BYTE cAccumBits;
BYTE cAccumRedBits;
BYTE cAccumGreenBits;
BYTE cAccumBlueBits;
BYTE cAccumAlphaBits;
BYTE cDepthBits;
BYTE cStencilBits;
BYTE cAuxBuffers;
BYTE iLayerPlane;
BYTE bReserved;
COLORREF crTransparent;
} LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR;
Members
nSize
Specifica le dimensioni di questa struttura di dati. Impostare questo valore su sizeof(LAYERPLANEDESCRIPTOR).
nVersion
Specifica la versione di questa struttura di dati. Impostare questo valore su 1.
dwFlags
Set di flag di bit che specificano le proprietà del piano di livello. Le proprietà in genere non si escludono a vicenda; qualsiasi combinazione di flag di bit può essere impostata, con le eccezioni annotate. Le costanti del flag di bit seguenti sono definite.
Valore | Significato |
---|---|
LPD_SUPPORT_OPENGL | Il piano livello supporta il disegno OpenGL. |
LPD_SUPPORT_GDI | Il piano livello supporta il disegno GDI. L'implementazione corrente di OpenGL non supporta questo flag. |
LPD_DOUBLEBUFFER | Il piano di livello è con buffer doppio. Un piano di livello può essere con buffer doppio anche quando il piano principale è con buffer singolo e viceversa. |
LPD_STEREO | Il piano di livello è stereoscopico. Un piano di livello può essere stereoscopico anche quando il piano principale è monoscopico e viceversa. |
LPD_SWAP_EXCHANGE | In un piano di livello con buffer doppio lo scambio del buffer colore scambia il buffer anteriore e il contenuto del buffer indietro. Il buffer indietro contiene quindi il contenuto del buffer anteriore prima dello scambio. Questo flag è un hint solo e potrebbe non essere fornito da un driver. |
LPD_SWAP_COPY | In un piano di livello con buffer doppio lo scambio del buffer dei colori copia il contenuto del buffer indietro nel buffer anteriore. Lo scambio non influisce sul contenuto del buffer indietro. Questo flag è un hint solo e potrebbe non essere fornito da un driver. |
LPD_TRANSPARENT | Il membro crTransparent di questa struttura contiene un valore di colore o indice trasparente che consente ai livelli sottostanti di visualizzare tramite questo livello. Tutti i piani di livello, ad eccezione del livello inferiore numerato, hanno un colore o un indice trasparente. |
LPD_SHARE_DEPTH | Il piano livello condivide il buffer di profondità con il piano principale. |
LPD_SHARE_STENCIL | Il piano di livello condivide il buffer stencil con il piano principale. |
LPD_SHARE_ACCUM | Il piano di livello condivide il buffer di accumulo con il piano principale. |
iPixelType
Specifica il tipo di dati pixel. I tipi seguenti sono definiti.
Valore | Significato |
---|---|
LPD_TYPE_RGBA | Pixel RGBA. Ogni pixel ha quattro componenti: rosso, verde, blu e alfa. |
LPD_TYPE_COLORINDEX | Pixel di indice colore. Ogni pixel usa un valore di indice color. |
cColorBits
Specifica il numero di bitplani di colore in ogni buffer di colori. Per i tipi di pixel RGBA, è la dimensione del buffer di colore, escluso i bitplani alfa. Per i pixel di indice dei colori, è la dimensione del buffer dell'indice colore.
cRedBits
Specifica il numero di bitplani rossi in ogni buffer di colore RGBA.
cRedShift
Specifica il numero di maiuscole per i bitplani rossi in ogni buffer di colore RGBA.
cGreenBits
Specifica il numero di bitplani verdi in ogni buffer di colore RGBA.
cGreenShift
Specifica il numero di maiuscole per i bitplani verdi in ogni buffer di colore RGBA.
cBlueBits
Specifica il numero di bitplani blu in ogni buffer di colore RGBA.
cBlueShift
Specifica il numero di maiuscole per i bitplani blu in ogni buffer di colore RGBA.
cAlphaBits
Specifica il numero di bitplani alfa in ogni buffer di colore RGBA. I bitplani alfa non sono supportati.
cAlphaShift
Specifica il numero di maiuscole per i bitplani alfa in ogni buffer di colore RGBA. I bitplani alfa non sono supportati.
cAccumBits
Specifica il numero totale di bitplani nel buffer di accumulo.
cAccumRedBits
Specifica il numero di bitplani rossi nel buffer di accumulo.
cAccumGreenBits
Specifica il numero di bitplani verdi nel buffer di accumulo.
cAccumBlueBits
Specifica il numero di bitplani blu nel buffer di accumulo.
cAccumAlphaBits
Specifica il numero di bitplani alfa nel buffer di accumulo.
cDepthBits
Specifica la profondità del buffer di profondità (asse z).
cStencilBits
Specifica la profondità del buffer stencil.
cAuxBuffers
Specifica il numero di buffer ausiliari. I buffer ausiliari non sono supportati.
iLayerPlane
bReserved
Non usato. Deve essere zero.
crTransparent
Quando viene impostato il flag LPD_TRANSPARENT, specifica il colore trasparente o il valore dell'indice. In genere il valore è zero.
Commenti
Si noti, come documentato in precedenza, che alcune proprietà del piano di livello non sono supportate nell'implementazione corrente. L'implementazione è l'implementazione del software Microsoft GDI di OpenGL. I produttori di hardware che migliorano le parti di OpenGL possono supportare alcune proprietà del piano di livello non supportate dall'implementazione generica.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | wingdi.h |