Pacchetto | flash.filters |
Classe | public final class GradientBevelFilter |
Ereditarietà | GradientBevelFilter BitmapFilter Object |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
L'uso dei filtri dipende dall'oggetto a cui il filtro viene applicato:
- Per applicare filtri agli oggetti di visualizzazione, utilizzate la proprietà
filters
. L'impostazione della proprietàfilters
di un oggetto non modifica l'oggetto ed è possibile eliminare il filtro cancellando la proprietàfilters
. - Per applicare filtri a oggetti BitmapData, utilizzate il metodo
BitmapData.applyFilter()
. Quando si chiamaapplyFilter()
su un oggetto BitmapData, vengono acquisiti l'oggetto BitmapData di origine e l'oggetto filtro e viene generata un'immagine filtrata come risultato.
Se applicate un filtro a un oggetto di visualizzazione, la proprietà cacheAsBitmap
dell'oggetto viene impostata su true
. Se cancellate tutti i filtri, viene ripristinato il valore originario di cacheAsBitmap
.
Questo filtro supporta la modifica in scala sullo stage, ma non supporta le funzioni generiche di modifica in scala, rotazione e inclinazione; se l'oggetto stesso viene modificato in scala (se scaleX
e scaleY
sono impostati su un valore diverso da 1.0), l'effetto filtro non viene modificato in scala. La modifica in scala avviene solo quando si ingrandisce lo stage.
Un filtro non viene applicato se l'immagine risultante supera le dimensioni massime. In AIR 1.5 e Flash Player 10, la dimensione massima è di 8.191 pixel in larghezza o altezza, mentre il numero totale di pixel non può essere superiore a 16.777.215, pertanto se un'immagine ha una larghezza di 8.191 pixel, può avere solo una lunghezza di 2.048 pixel. In Flash Player 9 e versioni precedenti e in AIR 1.1 e versioni precedenti, la limitazione è di 2.880 pixel in altezza e 2.880 pixel in larghezza. Ad esempio, se ingrandite un clip filmato di grandi dimensioni quando il filtro è applicato, il filtro viene disattivato se l'immagine risultante supera le dimensioni massime.
Elementi API correlati
flash.display.BitmapData.applyFilter()
BevelFilter
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
Proprietà | Definito da | ||
---|---|---|---|
alphas : Array
Un array di valori di trasparenza alfa per i colori corrispondenti nell'array dei colori. | GradientBevelFilter | ||
angle : Number
L'angolo, espresso in gradi. | GradientBevelFilter | ||
blurX : Number
La quantità di sfocatura orizzontale. | GradientBevelFilter | ||
blurY : Number
La quantità di sfocatura verticale. | GradientBevelFilter | ||
colors : Array
Un array di valori di colore esadecimali RGB da utilizzare nel gradiente. | GradientBevelFilter | ||
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
distance : Number
La distanza dell'offset. | GradientBevelFilter | ||
knockout : Boolean
Specifica se l'oggetto presenta un effetto di foratura. | GradientBevelFilter | ||
quality : int
Il numero di applicazioni del filtro. | GradientBevelFilter | ||
ratios : Array
Un array di rapporti di distribuzione del colore per i colori corrispondenti nell'array colors. | GradientBevelFilter | ||
strength : Number
L'intensità dell'impressione o applicazione. | GradientBevelFilter | ||
type : String
La posizione dell'effetto di smussatura. | GradientBevelFilter |
Metodo | Definito da | ||
---|---|---|---|
GradientBevelFilter(distance:Number = 4.0, angle:Number = 45, colors:Array = null, alphas:Array = null, ratios:Array = null, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1, quality:int = 1, type:String = "inner", knockout:Boolean = false)
Inizializza il filtro con i parametri specificati. | GradientBevelFilter | ||
[override]
Restituisce una copia di questo oggetto filtro. | GradientBevelFilter | ||
Indica se per un oggetto è definita una proprietà specifica. | Object | ||
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro. | Object | ||
Indica se la proprietà specificata esiste ed è enumerabile. | Object | ||
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche. | Object | ||
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
Restituisce la rappresentazione in formato stringa dell'oggetto specificato. | Object | ||
Restituisce il valore di base dell'oggetto specificato. | Object |
alphas | proprietà |
alphas:Array
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Un array di valori di trasparenza alfa per i colori corrispondenti nell'array colors
. I valori validi per ciascun elemento dell'array sono compresi tra 0 e 1. Ad esempio, 0.25 imposta un valore di trasparenza del 25%.
Non è possibile cambiare la proprietà alphas
mediante la modifica diretta dei relativi valori. Al contrario, è necessario ottenere un riferimento a alphas
, modificarlo e quindi impostare alphas
sul riferimento.
Le proprietà colors
, alphas
e ratios
sono correlate. Il primo elemento dell'array colors
corrisponde al primo elemento dell'array alphas
e dell'array ratios
, e così via.
Implementazione
public function get alphas():Array
public function set alphas(value:Array):void
Genera
TypeError — Quando viene impostato, l'array è null.
|
Elementi API correlati
angle | proprietà |
angle:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
L'angolo, espresso in gradi. I valori validi sono compresi tra 0 e 360. Il valore predefinito è 45.
Il valore angle rappresenta l'angolo della fonte di luce teorica che colpisce l'oggetto. Questo valore determina l'angolo in base al quale i colori con gradiente vengono applicati all'oggetto: le aree dove compaiono l'evidenziazione e l'ombra o dove compare il primo colore dell'array. I colori vengono in seguito applicati nell'ordine in cui compaiono nell'array.
Implementazione
public function get angle():Number
public function set angle(value:Number):void
Elementi API correlati
blurX | proprietà |
blurX:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
La quantità di sfocatura orizzontale. I valori validi sono compresi tra 0 e 255. Un valore di sfocatura pari a 1 o inferiore indica che l'immagine viene copiata senza alterazioni. Il valore predefinito è 4. I valori che sono potenze di 2 (come 2, 4, 8, 16 e 32) vengono ottimizzati per eseguire il rendering più rapidamente di altri valori.
Implementazione
public function get blurX():Number
public function set blurX(value:Number):void
blurY | proprietà |
blurY:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
La quantità di sfocatura verticale. I valori validi sono compresi tra 0 e 255. Un valore di sfocatura pari a 1 o inferiore indica che l'immagine viene copiata senza alterazioni. Il valore predefinito è 4. I valori che sono potenze di 2 (come 2, 4, 8, 16 e 32) vengono ottimizzati per eseguire il rendering più rapidamente di altri valori.
Implementazione
public function get blurY():Number
public function set blurY(value:Number):void
colors | proprietà |
colors:Array
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Un array di valori di colore esadecimali RGB da utilizzare nel gradiente. Ad esempio il rosso è 0xFF0000, il blu è 0x0000FF e così via.
Non è possibile cambiare la proprietà colors
mediante la modifica diretta dei relativi valori. È necessario invece ottenere un riferimento a colors
, modificarlo e quindi impostare colors
sul riferimento.
Le proprietà colors
, alphas
e ratios
sono correlate. Il primo elemento dell'array colors
corrisponde al primo elemento dell'array alphas
e dell'array ratios
, e così via.
Implementazione
public function get colors():Array
public function set colors(value:Array):void
Genera
TypeError — Quando viene impostato, l'array è null.
|
Elementi API correlati
distance | proprietà |
knockout | proprietà |
knockout:Boolean
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Specifica se l'oggetto presenta un effetto di foratura. L'effetto di foratura rende trasparente il riempimento dell'oggetto e rivela il colore di sfondo del documento. Il valore true
specifica un effetto di foratura; il valore predefinito è false
(nessun effetto di foratura).
Implementazione
public function get knockout():Boolean
public function set knockout(value:Boolean):void
quality | proprietà |
quality:int
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Il numero di applicazioni del filtro. Il valore predefinito è BitmapFilterQuality.LOW
, che equivale ad applicare il filtro una volta. Il valore BitmapFilterQuality.MEDIUM
applica il filtro due volte; il valore BitmapFilterQuality.HIGH
lo applica tre volte. Il rendering dei filtri con valori bassi avviene più rapidamente.
Per la maggior parte delle applicazioni è sufficiente un valore quality
basso, medio o alto. Benché sia possibile utilizzare valori numerici aggiuntivi fino a 15 per ottenere effetti diversi, il rendering dei valori elevati avviene più lentamente. Anziché aumentare il valore di quality
, spesso è possibile ottenere un effetto simile (e con un rendering più veloce) semplicemente incrementando i valori delle proprietà blurX
e blurY
.
Implementazione
public function get quality():int
public function set quality(value:int):void
Elementi API correlati
ratios | proprietà |
ratios:Array
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Un array di rapporti di distribuzione del colore per i colori corrispondenti nell'array colors
. I valori validi per ciascun elemento dell'array sono compresi tra 0 e 255.
Non è possibile cambiare la proprietà ratios
mediante la modifica diretta dei relativi valori. È necessario invece ottenere un riferimento a ratios
, modificarlo e quindi impostare ratios
sul riferimento.
Le proprietà colors
, alphas
e ratios
sono correlate. Il primo elemento dell'array colors
corrisponde al primo elemento dell'array alphas
e dell'array ratios
, e così via.
Per comprendere la distribuzione dei colori in una smussatura con gradiente è necessario definire innanzitutto i colori che si desidera inserire nella smussatura. Una smussatura semplice ha un colore di evidenziazione e un colore d'ombra; una smussatura con gradiente ha un gradiente di evidenziazione e un gradiente d'ombra. Supponete che l'evidenziazione appaia nell'angolo in alto a sinistra e l'ombra nell'angolo in basso a destra. Supponete che un possibile utilizzo del filtro preveda quattro colori per l'evidenziazione e quattro per l'ombra. Oltre all'evidenziazione e all'ombra, il filtro usa un colore di riempimento di base in cui i bordi dell'evidenziazione e dell'ombra si incontrano. Pertanto, il numero totale di colori è nove e il numero corrispondente di elementi nell'array dei rapporti è nove.
Se immaginate che un gradiente è composto da strisce di vari colori che si fondono l'uno nell'altro, ogni valore del rapporto determina la posizione del colore sul raggio del gradiente in cui 0 e 255 rappresentano rispettivamente il punto più esterno e il punto più interno del gradiente. Per un utilizzo tipico, il valore intermedio è 128, ovvero il valore del riempimento di base. Per ottenere l'effetto di smussatura visualizzato nell'immagine riportata sotto, assegnate i valori del rapporto nel modo seguente, basandosi sull'esempio dei nove colori:
- I primi quattro colori sono compresi tra 0 e 127 e aumentano di valore in modo che ogni valore sia uguale o superiore al precedente. Questo è il bordo di smussatura con l'evidenziazione.
- Il quinto colore (il colore intermedio) è il riempimento di base impostato su 128. Il valore in pixel di 128 determina il riempimento di base che appare al di fuori della forma (e attorno agli angoli di smussatura) se il tipo è impostato su esterno oppure all'interno della forma coprendo il riempimento stesso dell'oggetto se il tipo è impostato su interno.
- Gli ultimi quattro colori sono compresi tra 129 e 255 e aumentano di valore in modo che ogni valore sia uguale o superiore al precedente. Questo è il bordo di smussatura con l'ombra.
Se desiderate un'equa distribuzione dei colori per ciascun bordo, utilizzate un numero dispari con il colore intermedio come riempimento di base. Distribuite equamente i valori 0-127 e 129-255 tra i colori utilizzati, quindi regolate il valore per modificare la larghezza di ciascuna striscia di colore del gradiente. Per una smussatura con gradiente basato su nove colori, un possibile array è [16, 32, 64, 96, 128, 160, 192, 224, 235]. L'immagine seguente mostra la smussatura con gradiente descritta:
Tenere presente che l'applicazione dei colori nel gradiente varia a seconda dei valori delle proprietà blurX
, blurY
, strength
e quality
nonché dei valori ratios
.
Implementazione
public function get ratios():Array
public function set ratios(value:Array):void
Genera
TypeError — Quando viene impostato, l'array è null.
|
Elementi API correlati
strength | proprietà |
strength:Number
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
L'intensità dell'impressione o applicazione. Più elevato è il valore, maggiore è la quantità di colore impressa e maggiore è il contrasto tra la smussatura e lo sfondo. I valori validi sono compresi tra 0 e 255. Un valore pari a 0 indica che il filtro non è applicato. Il valore predefinito è 1.
Implementazione
public function get strength():Number
public function set strength(value:Number):void
Elementi API correlati
type | proprietà |
type:String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
La posizione dell'effetto di smussatura. I valori possibili sono costanti di BitmapFilterType:
BitmapFilterType.OUTER
- Smusso applicato al bordo esterno dell'oggetto.BitmapFilterType.INNER
- Smusso applicato al bordo interno dell'oggetto.BitmapFilterType.FULL
- Smusso applicato sopra l'oggetto.
Implementazione
public function get type():String
public function set type(value:String):void
GradientBevelFilter | () | Funzione di costruzione |
public function GradientBevelFilter(distance:Number = 4.0, angle:Number = 45, colors:Array = null, alphas:Array = null, ratios:Array = null, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1, quality:int = 1, type:String = "inner", knockout:Boolean = false)
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Inizializza il filtro con i parametri specificati.
Parametridistance:Number (default = 4.0 ) — La distanza dell'offset. I valori validi sono compresi tra 0 e 8.
| |
angle:Number (default = 45 ) — L'angolo, espresso in gradi. I valori validi sono compresi tra 0 e 360.
| |
colors:Array (default = null ) — Un array di valori di colore esadecimali RGB da utilizzare nel gradiente. Ad esempio il rosso è 0xFF0000, il blu è 0x0000FF e così via.
| |
alphas:Array (default = null ) — Un array di valori di trasparenza alfa per i colori corrispondenti nell'array colors . I valori validi per ciascun elemento dell'array sono compresi tra 0 e 1. Ad esempio, 0.25 imposta un valore di trasparenza del 25%.
| |
ratios:Array (default = null ) — Un array di rapporti di distribuzione del colore; i valori validi sono compresi tra 0 e 255.
| |
blurX:Number (default = 4.0 ) — La quantità di sfocatura orizzontale. I valori validi sono compresi tra 0 e 255. Un valore di sfocatura pari a 1 o inferiore indica che l'immagine viene copiata senza alterazioni. Il valore predefinito è 4. I valori che sono potenze di 2 (come 2, 4, 8, 16 e 32) vengono ottimizzati per eseguire il rendering più rapidamente di altri valori.
| |
blurY:Number (default = 4.0 ) — La quantità di sfocatura verticale. I valori validi sono compresi tra 0 e 255. Un valore di sfocatura pari a 1 o inferiore indica che l'immagine viene copiata senza alterazioni. I valori che sono potenze di 2 (come 2, 4, 8, 16 e 32) vengono ottimizzati per eseguire il rendering più rapidamente di altri valori.
| |
strength:Number (default = 1 ) — L'intensità dell'impressione o applicazione. Più elevato è il valore, maggiore è la quantità di colore impressa e maggiore è il contrasto tra la smussatura e lo sfondo. I valori validi sono compresi tra 0 e 255. Un valore pari a 0 indica che il filtro non è applicato.
| |
quality:int (default = 1 ) — La qualità del filtro. Utilizzate le costanti di BitmapFilterQuality:
Per ulteriori informazioni, vedete la descrizione della proprietà | |
type:String (default = "inner ") — La posizione dell'effetto di smussatura. I valori possibili sono costanti di BitmapFilterType:
| |
knockout:Boolean (default = false ) — Specifica se è applicato un effetto di foratura. Il valore true rende trasparente il riempimento dell'oggetto e rivela il colore di sfondo del documento.
|
Elementi API correlati
clone | () | metodo |
override public function clone():BitmapFilter
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9 |
Restituisce una copia di questo oggetto filtro.
RestituisceBitmapFilter — Una nuova istanza GradientBevelFilter con le stesse proprietà dell'istanza originale.
|
- Importare le classi richieste.
- Dichiarare le variabili globali per definire il quadrato e il filtro.
- Create la funzione di costruzione che esegue le seguenti operazioni:
- Chiama il metodo
draw()
, che utilizza i metodi della classe Graphics a cui si accede tramite la proprietàgraphics
di Sprite per disegnare un quadrato grigio. - Crea un oggetto BitmapFilter denominato
filter
e assegna ad esso il valore restituito da una chiamata agetBitmapFilter()
, che crea il filtro. - Crea un nuovo array denominato
myFilters
e aggiungefilter
ad esso. - Assegna
myFilters
alla proprietàfilters
dell'oggetto GradientBevelFilterExample. In questo modo vengono applicati tutti i filtri presenti inmyFilters
; in questo caso solofilter
.
- Chiama il metodo
package { import flash.display.Sprite; import flash.filters.BitmapFilter; import flash.filters.BitmapFilterQuality; import flash.filters.BitmapFilterType; import flash.filters.GradientBevelFilter; public class GradientBevelFilterExample extends Sprite { private var bgColor:uint = 0xCCCCCC; private var size:uint = 80; private var offset:uint = 50; private var distance:Number = 5; private var angleInDegrees:Number = 225; // opposite 45 degrees private var colors:Array = [0xFFFFFF, 0xCCCCCC, 0x000000]; private var alphas:Array = [1, 0, 1]; private var ratios:Array = [0, 128, 255]; private var blurX:Number = 8; private var blurY:Number = 8; private var strength:Number = 2; private var quality:Number = BitmapFilterQuality.HIGH private var type:String = BitmapFilterType.INNER; private var knockout:Boolean = true; public function GradientBevelFilterExample() { draw(); var filter:BitmapFilter = getBitmapFilter(); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } private function getBitmapFilter():BitmapFilter { return new GradientBevelFilter(distance, angleInDegrees, colors, alphas, ratios, blurX, blurY, strength, quality, type, knockout); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(offset, offset, size, size); graphics.endFill(); } } }
Tue Jun 12 2018, 02:44 PM Z