Lingua

View.SetCameraDistance(Single) Metodo

Definizione

Imposta la distanza lungo l'asse Z (ortogonale sul piano X/Y su cui vengono disegnate le visualizzazioni) dalla fotocamera a questa visualizzazione.

[Android.Runtime.Register("setCameraDistance", "(F)V", "GetSetCameraDistance_FHandler")]
public virtual void SetCameraDistance(float distance);
[<Android.Runtime.Register("setCameraDistance", "(F)V", "GetSetCameraDistance_FHandler")>]
abstract member SetCameraDistance : single -> unit
override this.SetCameraDistance : single -> unit

Parametri

distance
Single

Distanza in "pixel di profondità", se viene usato il valore opposto

Attributi

Commenti

Imposta la distanza lungo l'asse Z (ortogonale sul piano X/Y su cui vengono disegnate le visualizzazioni) dalla fotocamera a questa visualizzazione. La distanza della fotocamera influisce sulle trasformazioni 3D, ad esempio le rotazioni intorno all'asse X e Y. Se le proprietà rotationX o rotationY vengono modificate e questa visualizzazione è grande (più della metà delle dimensioni dello schermo), è consigliabile usare sempre una distanza della fotocamera maggiore dell'altezza (rotazione dell'asse X) o della larghezza (rotazione dell'asse Y) di questa visualizzazione.

La distanza della fotocamera dal piano di visualizzazione può avere un effetto sulla distorsione prospettica della visualizzazione quando viene ruotata intorno all'asse x o y. Ad esempio, una distanza di grandi dimensioni comporterà un angolo di visualizzazione elevato e non ci sarà molta distorsione prospettica della vista mentre ruota. Una breve distanza può causare una distorsione molto più prospettica sulla rotazione e può anche comportare alcuni artefatti di disegno se la vista ruotata finisce parzialmente dietro la fotocamera (motivo per cui è consigliabile usare una distanza almeno per quanto riguarda le dimensioni della visualizzazione, se la visualizzazione deve essere ruotata).

La distanza è espressa in "pixel di profondità". La distanza predefinita dipende dalla densità dello schermo. Ad esempio, in una visualizzazione a densità media, la distanza predefinita è 1280. In uno schermo ad alta densità la distanza predefinita è 1920.

Se si vuole specificare una distanza che porta a risultati visivamente coerenti tra varie densità, usare la formula seguente:

float scale = context.getResources().getDisplayMetrics().density;
            view.setCameraDistance(distance * scale);

Il fattore di scala della densità di una visualizzazione ad alta densità è 1,5 e 1920 = 1280 * 1,5.

per android.view.View.setCameraDistance(float).

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Si applica a

Vedi anche