SIMD.%type%.notEqual()

Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode statique SIMD.%type%.notEqual() renvoie un masque de sélection construit selon que les valeurs des voies des vecteurs passés en arguments soient différentes (a != b).

Syntaxe

SIMD.Float32x4.notEqual(a, b)
SIMD.Float64x2.notEqual(a, b)

SIMD.Int8x16.notEqual(a, b)
SIMD.Int16x8.notEqual(a, b)
SIMD.Int32x4.notEqual(a, b)

SIMD.Uint8x16.notEqual(a, b)
SIMD.Uint16x8.notEqual(a, b)
SIMD.Uint32x4.notEqual(a, b) 

Paramètres

a
Une instance d'un type SIMD.
b
Une autre instance d'un type SIMD.

Valeur de retour

Un masque de sélection (du type Bool64x2, Bool32x4, Bool16x8 ou Bool8x16 selon la taille). Les valeurs des voies du masque sont les valeurs booléennes true ou false selon le résultat de a != b.

Description

La méthode SIMD.%type%.notEqual est une des opérations de comparaison SIMD. Elle ne fournit pas directement les résultats des comparaisons mais un masque de sélection dont les valeurs des voies correspondent aux résultats booléens obtenus.

Exemples

Sélectionner les composantes inégales entre deux vecteurs

Dans cet exemple, on compare deux vecteurs SIMD Float32x4. Cela permet de créer un masque de sélection à partir du résultat. On utilise ensuite ce masque pour sélectionner les valeurs des vecteurs sources et pour créer un nouveau vecteur Float32x4. Pour les voies pour lesquelles les composantes sont égales, on utilisera un vecteur zero, rempli de 0.

var a = SIMD.Float32x4(1, 2, 3, 9);
var b = SIMD.Float32x4(1, 4, 7, 9);

var mask = SIMD.Float32x4.notEqual(a,b);
// Bool32x4[false, true, true, false]

var zero = SIMD.Float32x4(0, 0, 0, 0);

var result = SIMD.Float32x4.select(mask, a, zero);
// Float32x4[0, 2, 3, 0]

Spécifications

Spécification Statut Commentaires
SIMD
La définition de 'SIMDConstructor.notEqual' dans cette spécification.
Projet Définition initiale.

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple Pas de support Nightly build Pas de support Pas de support Pas de support
Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple Pas de support Pas de support Nightly build Pas de support Pas de support Pas de support

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,