Pacchettoflash.display
Classepublic class Bitmap
EreditarietàBitmap Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

La classe Bitmap rappresenta gli oggetti di visualizzazione che definiscono le immagini bitmap. Tali immagini possono essere caricate con la classe flash.display.Loader oppure create con la funzione di costruzione Bitmap().

La funzione di costruzione Bitmap() consente di creare un oggetto Bitmap che contiene un riferimento a un oggetto BitmapData. Dopo aver creato un oggetto Bitmap, utilizzare il metodo addChild() o addChildAt() dell'istanza DisplayObjectContainer principale per inserire la bitmap nell'elenco di visualizzazione.

Un oggetto Bitmap può condividere il proprio riferimento BitmapData con vari altri oggetti Bitmap, indipendentemente dalle proprietà di traslazione o rotazione. Poiché è possibile creare più oggetti Bitmap che fanno riferimento allo stesso oggetto BitmapData, più oggetti di visualizzazione possono utilizzare lo stesso oggetto BitmapData complesso senza appesantire il carico di memoria di un oggetto BitmapData per ogni istanza di oggetto di visualizzazione.

Un oggetto BitmapData può essere disegnato sullo schermo mediante un oggetto Bitmap in due modi: utilizzando il renderer di vettori come forma di riempimento delle bitmap oppure mediante una più veloce routine di copiatura dei pixel. La routine di copiatura pixel è notevolmente più veloce del renderer di vettori, ma l'oggetto Bitmap deve soddisfare determinate condizioni:

Se si carica un oggetto Bitmap da un dominio diverso da quello dell'oggetto Loader utilizzato per caricare l'immagine e non esiste un file di criteri dei domini che consenta l'accesso al dominio dell'oggetto Loader, uno script di quel dominio non può accedere all'oggetto Bitmap o alle proprietà e ai metodi corrispondenti. Per ulteriori informazioni, vedere i seguenti riferimenti:

Nota: la classe Bitmap non è una sottoclasse di InteractiveObject, quindi non può inviare eventi del mouse. Tuttavia, è possibile chiamare il metodo addEventListener() del contenitore dell'oggetto di visualizzazione principale che contiene l'oggetto Bitmap.

Vedere gli esempi

Vedere anche

flash.display.Loader
flash.display.BitmapData
Classi di visualizzazione di base
Nozioni fondamentali sulle operazioni con le bitmap


Proprietà pubbliche
 ProprietàDefinito da
 InheritedaccessibilityProperties: AccessibilityProperties
Le opzioni di accessibilità correnti di questo oggetto di visualizzazione.
DisplayObject
 Inheritedalpha: Number
Indica il valore della trasparenza alfa dell'oggetto specificato.
DisplayObject
  bitmapData: BitmapData
L'oggetto BitmapData al quale viene fatto riferimento.
Bitmap
 InheritedblendMode: String
Un valore della classe BlendMode che specifica il metodo di fusione da utilizzare.
DisplayObject
 InheritedcacheAsBitmap: Boolean
Se è impostata su true, viene memorizzata nella cache una rappresentazione bitmap interna dell'oggetto di visualizzazione.
DisplayObject
 Inheritedconstructor: Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
Object
 Inheritedfilters: Array
Un array indicizzato che contiene ogni oggetto filtro attualmente associato all'oggetto di visualizzazione.
DisplayObject
 Inheritedheight: Number
Indica l'altezza dell'oggetto di visualizzazione espressa in pixel.
DisplayObject
 InheritedloaderInfo: LoaderInfo
[sola lettura] Restituisce un oggetto LoaderInfo contenente informazioni sul caricamento del file al quale questo oggetto di visualizzazione appartiene.
DisplayObject
 Inheritedmask: DisplayObject
L'oggetto di visualizzazione chiamante viene mascherato dall'oggetto mask specificato.
DisplayObject
 InheritedmouseX: Number
[sola lettura] Indica la coordinata x della posizione del mouse, in pixel.
DisplayObject
 InheritedmouseY: Number
[sola lettura] Indica la coordinata y della posizione del mouse, in pixel.
DisplayObject
 Inheritedname: String
Indica il nome dell'istanza dell'oggetto DisplayObject.
DisplayObject
 InheritedopaqueBackground: Object
Specifica se l'oggetto di visualizzazione è opaco con un determinato colore di sfondo.
DisplayObject
 Inheritedparent: DisplayObjectContainer
[sola lettura] Indica l'oggetto DisplayObjectContainer che contiene questo oggetto di visualizzazione.
DisplayObject
  pixelSnapping: String
Determina se l'oggetto Bitmap viene agganciato o meno al pixel più vicino.
Bitmap
 Inheritedprototype: Object
[statico] Un riferimento all'oggetto prototipo di un oggetto classe o funzione.
Object
 Inheritedroot: DisplayObject
[sola lettura] Nel caso di un oggetto di visualizzazione all'interno di un file SWF caricato, la proprietà principale è l'oggetto di visualizzazione più in alto nella porzione della struttura dell'elenco di visualizzazione rappresentata da quel file SWF.
DisplayObject
 Inheritedrotation: Number
Indica la rotazione dell'istanza DisplayObject, espressa in gradi, rispetto alla posizione originale.
DisplayObject
 Inheritedscale9Grid: Rectangle
La griglia di modifica in scala attualmente attiva.
DisplayObject
 InheritedscaleX: Number
Indica la scala orizzontale (percentuale) dell'oggetto applicata dal punto di registrazione.
DisplayObject
 InheritedscaleY: Number
Indica la scala verticale (percentuale) di un oggetto applicata dal punto di registrazione dell'oggetto.
DisplayObject
 InheritedscrollRect: Rectangle
I limiti del rettangolo di scorrimento dell'oggetto di visualizzazione.
DisplayObject
  smoothing: Boolean
Determina se la bitmap viene smussata durante la modifica in scala.
Bitmap
 Inheritedstage: Stage
[sola lettura] Lo stage dell'oggetto di visualizzazione.
DisplayObject
 Inheritedtransform: Transform
Un oggetto con proprietà relative alla matrice, alla trasformazione del colore e ai limiti di pixel di un oggetto di visualizzazione.
DisplayObject
 Inheritedvisible: Boolean
Determina se l'oggetto di visualizzazione è visibile o meno.
DisplayObject
 Inheritedwidth: Number
Indica la larghezza dell'oggetto di visualizzazione espressa in pixel.
DisplayObject
 Inheritedx: Number
Indica la coordinata x dell'istanza DisplayObject relativa alle coordinate locali del DisplayObjectContainer principale.
DisplayObject
 Inheritedy: Number
Indica la coordinata y dell'istanza DisplayObject relativa alle coordinate locali del DisplayObjectContainer principale.
DisplayObject
Metodi pubblici
 MetodoDefinito da
  
Bitmap(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)
Inizializza un oggetto Bitmap in modo che faccia riferimento all'oggetto BitmapData specificato.
Bitmap
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
EventDispatcher
 Inherited
Invia un evento nel flusso di eventi.
EventDispatcher
 Inherited
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
Restituisce un rettangolo che definisce l'area dell'oggetto di visualizzazione relativa al sistema di coordinate dell'oggetto targetCoordinateSpace.
DisplayObject
 Inherited
getRect(targetCoordinateSpace:DisplayObject):Rectangle
Restituisce un rettangolo che definisce i bordi dell'oggetto di visualizzazione in base al sistema di coordinate definito dal parametro targetCoordinateSpace, esclusi gli eventuali tratti presenti sulle forme.
DisplayObject
 Inherited
Converte le coordinate dello stage (globali) in quelle (locali) dell'oggetto di visualizzazione per l'oggetto Point.
DisplayObject
 Inherited
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
EventDispatcher
 Inherited
Indica se per un oggetto è definita una proprietà specifica.
Object
 Inherited
Valuta l'oggetto di visualizzazione per stabilire se si sovrappone o si interseca con l'oggetto di visualizzazione obj.
DisplayObject
 Inherited
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
Valuta l'oggetto di visualizzazione per stabilire se si sovrappone o si interseca con il punto specificato dai parametri x e y.
DisplayObject
 Inherited
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
Object
 Inherited
Converte le coordinate dell'oggetto di visualizzazione (locali) in quelle dello stage (globali) per l'oggetto Point.
DisplayObject
 Inherited
Indica se la proprietà specificata esiste ed è enumerabile.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Rimuove un listener dall'oggetto EventDispatcher.
EventDispatcher
 Inherited
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
Object
 Inherited
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
Object
 Inherited
Restituisce il valore di base dell'oggetto specificato.
Object
 Inherited
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
EventDispatcher
Eventi
 Evento Riepilogo Definito da
 Inherited Inviato quando Flash Player riceve lo stato di attivazione del sistema operativo e diventa attivo.EventDispatcher
 Inherited Inviato quando un oggetto di visualizzazione viene aggiunto all'elenco di visualizzazione.DisplayObject
 Inherited Inviato quando un oggetto di visualizzazione viene aggiunto all'elenco di visualizzazione sullo stage, sia direttamente o mediante l'aggiunta di una sottostruttura ad albero che contiene l'oggetto di visualizzazione.DisplayObject
 Inherited Inviato quando Flash Player perde lo stato di attivazione del sistema operativo e sta per diventare inattivo.EventDispatcher
 Inherited Inviato quando l'indicatore di riproduzione sta entrando in un nuovo fotogramma.DisplayObject
 Inherited Inviato quando un oggetto di visualizzazione sta per essere rimosso dall'elenco di visualizzazione.DisplayObject
 Inherited Inviato quando un oggetto di visualizzazione sta per essere rimosso dall'elenco di visualizzazione sullo stage, sia direttamente o mediante la rimozione di una sottostruttura ad albero che contiene l'oggetto di visualizzazione.DisplayObject
 Inherited Inviato quando l'elenco di visualizzazione sta per essere aggiornato e sottoposto a rendering.DisplayObject
Descrizione delle proprietà
bitmapDataproprietà
bitmapData:BitmapData  [lettura-scrittura]

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

L'oggetto BitmapData al quale viene fatto riferimento.


Implementazione
    public function get bitmapData():BitmapData
    public function set bitmapData(value:BitmapData):void
pixelSnappingproprietà 
pixelSnapping:String  [lettura-scrittura]

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Determina se l'oggetto Bitmap viene agganciato o meno al pixel più vicino. La classe PixelSnapping include i seguenti valori possibili:


Implementazione
    public function get pixelSnapping():String
    public function set pixelSnapping(value:String):void
smoothingproprietà 
smoothing:Boolean  [lettura-scrittura]

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Determina se la bitmap viene smussata durante la modifica in scala. Se è true, la bitmap viene smussata durante la modifica in scala. Se è false, la bitmap non viene smussata.


Implementazione
    public function get smoothing():Boolean
    public function set smoothing(value:Boolean):void
Descrizione della funzione di costruzione
Bitmap()Funzione di costruzione
public function Bitmap(bitmapData:BitmapData = null, pixelSnapping:String = "auto", smoothing:Boolean = false)

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Inizializza un oggetto Bitmap in modo che faccia riferimento all'oggetto BitmapData specificato.

Parametri
bitmapData:BitmapData (default = null) — L'oggetto BitmapData al quale viene fatto riferimento.
 
pixelSnapping:String (default = "auto") — Indica se l'oggetto Bitmap viene agganciato o meno al pixel più vicino.
 
smoothing:Boolean (default = false) — Indica se la bitmap viene smussata durante la modifica in scala. Ad esempio, gli esempi seguenti mostrano la stessa bitmap modificata in scala in base a un fattore 3, con smoothing impostato su false (sinistra) e su true (destra):

Esempi Come utilizzare gli esempi
BitmapExample.as

L'esempio seguente utilizza la classe BitmapExample per caricare l'immagine "Image.gif" in DisplayObject nella posizione predefinita (x = 0, y = 0). Una copia di Image.gif viene quindi posizionata alla destra dell'originale, a cui vengono applicati dei nuovi colori in corrispondenza dei pixel che superano una prova con il metodo threshold()threshold(). Questa operazione viene eseguita mediante la procedura seguente:
  1. Viene creata una proprietà url, che corrisponde alla posizione e al nome del file di immagine.
  2. La funzione di costruzione della classe chiama il metodo configureAssets(), il quale a propria volta chiama il metodo completeHandler().
  3. configureAssets() crea un oggetto Loader che crea un'istanza di un listener di eventi che viene inviata quando il metodo completeHandler() completa la manipolazione delle immagini.
  4. A questo punto, il metodo buildChild() crea una nuova istanza di un oggetto URLRequest, request, passando url in modo che il nome e la posizione del file siano noti.
  5. L'oggetto request viene quindi passato al metodo loader.load(), che carica l'immagine in memoria utilizzando un oggetto di visualizzazione.
  6. L'immagine viene quindi posizionata nell'elenco di visualizzazione, che visualizza immediatamente l'immagine sullo schermo in corrispondenza delle coordinate x = 0, y = 0.
  7. Il metodo completeHandler() esegue quindi le seguenti operazioni:
    1. Crea un secondo oggetto Loader, insieme a un oggetto Bitmap, il quale viene inizializzato con l'oggetto Loader.
    2. Crea un secondo oggetto Bitmap, duplicate, che a propria volta chiama il metodo duplicateImage(), che crea un duplicato dell'immagine originale.
    3. Crea un nuovo oggetto BitmapData che viene assegnato all'oggetto BitmapData dell'oggetto duplicate.
    4. Crea un nuovo oggetto Rectangle inizializzato con le stesse coordinate e gli stessi valori di larghezza e altezza dell'immagine originale.
    5. Crea un nuovo oggetto Point, che ha come valore predefinito x = 0, y = 0.
    6. Crea le variabili seguenti:
      • operation: applica il nuovo colore quando il valore di soglia è superiore o uguale all'originale.
      • threshold: il valore rispetto al quale viene confrontato ogni pixel viene impostato sul grigio chiaro con un'impostazione alfa pari a 0xCC.
      • color: il colore su cui saranno impostati i pixel per passare la prova della soglia (in questo caso, giallo uniforme).
      • mask: imposta l'esatto opposto del colore (blu trasparente).
      • copySource: impostato su false, che indica che i valori dei pixel non vengono copiati se il valore di soglia non passa. Questo valore non ha alcun significato poiché l'immagine viene duplicata e vengono modificati solo i pixel che passano la prova della soglia.
    7. Chiama il metodo threshold() mediante le variabili che lo precedono. L'equazione della soglia risultante è la seguente: if (current pixel Value & 0x000000FF) >= (0xCCCCCCCC & 0x000000FF) then set pixel to 0xFFFFFF00.

Note:


package {
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.display.Loader;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.geom.Point;
    import flash.geom.Rectangle;
    import flash.net.URLRequest;

    public class BitmapExample extends Sprite {
        private var url:String = "Image.gif";
        private var size:uint = 80;

        public function BitmapExample() {
            configureAssets();
        }

        private function configureAssets():void {
            var loader:Loader = new Loader();
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
            loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);

            var request:URLRequest = new URLRequest(url);
            loader.x = size * numChildren;
            loader.load(request);
            addChild(loader);
        }

        private function duplicateImage(original:Bitmap):Bitmap {
            var image:Bitmap = new Bitmap(original.bitmapData.clone());
            image.x = size * numChildren;
            addChild(image);
            return image;
        }

        private function completeHandler(event:Event):void {
            var loader:Loader = Loader(event.target.loader);
            var image:Bitmap = Bitmap(loader.content);

            var duplicate:Bitmap = duplicateImage(image);
            var bitmapData:BitmapData = duplicate.bitmapData;
            var sourceRect:Rectangle = new Rectangle(0, 0, bitmapData.width, bitmapData.height);
            var destPoint:Point = new Point();
            var operation:String = ">=";
            var threshold:uint = 0xCCCCCCCC;
            var color:uint = 0xFFFFFF00;
            var mask:uint = 0x000000FF;
            var copySource:Boolean = true;

            bitmapData.threshold(bitmapData,
                                 sourceRect,
                                 destPoint,
                                 operation,
                                 threshold,
                                 color,
                                 mask,
                                 copySource);
        }
        
        private function ioErrorHandler(event:IOErrorEvent):void {
            trace("Unable to load image: " + url);
        }
    }
}




 

Inviami un messaggio e-mail quando vengono aggiunti dei commenti a questa | Rapporto sui commenti

Pagina corrente: http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/flash/display/Bitmap.html