Transformatiematrices voor bitmaps in de cache in AIR

Stel de eigenschap cacheAsBitmapMatrix in wanneer u bitmaps in de cache in AIR-toepassingen voor mobiele apparaten gebruikt.

In het AIR-profiel voor mobiele apparaten kunt u een Matrix-object toewijzen aan de eigenschap cacheAsBitmapMatrix van een weergaveobject. Wanneer u deze eigenschap instelt, kunt u elke tweedimensionale transformatie op een object toepassen zonder dat de bitmap in de cache opnieuw hoeft te worden gegenereerd. U kunt ook de alfa-eigenschap wijzigen zonder zonder dat de bitmap in de cache opnieuw hoeft te worden gegenereerd. De eigenschap cacheAsBitmap moet ook op true zijn ingesteld en voor het object mogen geen 3D-eigenschappen zijn ingesteld.

Als u de eigenschap cacheAsBitmapMatrix instelt, wordt de bitmap in de cache gegenereerd, zelfs als het weergaveobject buiten het scherm is geplaatst, niet zichtbaar is of als de eigenschap visible van het object is ingesteld op false . Als u de eigenschap cacheAsBitmapMatrix opnieuw instelt met behulp van een matrixobject met een andere transformatie, wordt de bitmap in de cache ook opnieuw gegenereerd.

De matrixtransformatie die u toepast op de eigenschap cacheAsBitmapMatrix wordt toegepast op het weergaveobject op het moment dat het wordt gerenderd in de bitmapcache. Als de transformatie een schaal 2 bevat, is de gerenderde bitmap dus twee keer zo groot als de gerenderde vector. De renderer past de omgekeerde transformatie toe op de bitmap in de cache, zodat de uiteindelijke weergave er hetzelfde uitziet. U kunt de bitmap in de cache kleiner maken om het geheugengebruik te verminderen. Dit gaat mogelijk ten koste van de renderprecisie. U kunt in sommige gevallen de bitmap ook groter maken om de renderkwaliteit te verbeteren. In dit geval wordt er meer geheugen gebruikt. In het algemeen kunt u echter beter een identiteitsmatrix gebruiken. Dit is een matrix die geen transformatie toepast om wijzigingen in uiterlijk te voorkomen, zoals in het volgende voorbeeld wordt getoond:

displayObject.cacheAsBitMap = true; 
displayObject.cacheAsBitmapMatrix = new Matrix();

Als de eigenschap cacheAsBitmapMatrix eenmaal is ingesteld, kunt u het object schalen, roteren, schuintrekken en het object omzetten zonder dat bitmaps opnieuw worden gegenereerd.

U kunt ook de alfawaarde wijzigen binnen het bereik van 0 en 1. Als u de alfawaarde via de eigenschap transform.colorTransform wijzigt in een kleurtransformatie, moet de alfawaarde die in het transformatieobject wordt gebruikt tussen 0 en 255 liggen. Als u de kleurtransformatie op een andere manier wijzigt, wordt de bitmap in de cache opnieuw gegenereerd.

Stel altijd de eigenschap cacheAsBitmapMatrix in als u de eigenschap cacheAsBitmap instelt op true in inhoud die u voor mobiele apparaten maakt. Houd er rekening mee dat dit het volgende nadeel kan hebben. Nadat een object is geroteerd, geschaald of scheefgetrokken, kan het uiteindelijke renderen het schalen van bitmaps of aliasing van artefacten veroorzaken in vergelijking met een normale vectorrendering.