Bitbybit Docs
    Preparing search index...

    Class Logic

    Booléens et décisions : comparer des valeurs, inverser des booléens, transformer des listes de nombres en listes de booléens par des seuils, tirer des booléens aléatoires, et filtrer une valeur pour qu'elle ne passe que quand une condition est vraie. Les méthodes à seuil sont la façon habituelle de décider quels éléments d'un motif reçoivent une caractéristique et lesquels non.

    Index

    Constructors

    create

    • Transmet un booléen sans changement, pour qu'une valeur puisse recevoir un nom et être réutilisée.

      Exemple : true -> true

      Parameters

      Returns boolean

      Le même booléen

    • Tire une liste de booléens aléatoires, chacun vrai avec une probabilité donnée.

      Exemple : longueur 5 avec trueThreshold 0.7 -> peut-être [true, true, false, true, true]

      Parameters

      Returns boolean[]

      Les booléens aléatoires

      const flags = bitbybit.logic.randomBooleans({ length: 5, trueThreshold: 0.7 });
      
    • Transforme des nombres en booléens avec un mélange aléatoire entre deux seuils.

      En dessous du premier seuil, un nombre est toujours vrai, au-dessus du second toujours faux ; entre les deux, la probabilité de vrai décroît par paliers de l'un à l'autre, de sorte qu'un motif s'estompe au lieu de basculer brusquement. Exemple : [0.1, 0.9] avec les seuils 0.3 et 0.7 -> [true, false]

      Parameters

      Returns boolean[]

      Un booléen par nombre

      const fade = bitbybit.logic.twoThresholdRandomGradient({
      numbers: [0.1, 0.4, 0.6, 0.9],
      thresholdTotalTrue: 0.3,
      thresholdTotalFalse: 0.7,
      nrLevels: 10,
      });
    • Transforme des nombres en booléens : vrai en dessous du seuil, faux au niveau ou au-dessus.

      inverse inverse chaque résultat. Exemple : [0.3, 0.7, 0.5] avec le seuil 0.6 -> [true, false, true]

      Parameters

      Returns boolean[]

      Un booléen par nombre

      const below = bitbybit.logic.thresholdBooleanList({ numbers: [0.3, 0.7, 0.5], threshold: 0.6, inverse: false });
      
    • Transforme des nombres en booléens : vrai quand le nombre tombe dans l'une des plages données, faux sinon.

      Chaque plage est [min, max] avec les deux bornes incluses ; inverse inverse chaque résultat. Exemple : [0.2, 0.5, 0.8] avec les plages [[0.3, 0.6], [0.7, 0.9]] -> [false, true, true]

      Parameters

      Returns boolean[]

      Un booléen par nombre

      const inside = bitbybit.logic.thresholdGapsBooleanList({
      numbers: [0.2, 0.5, 0.8],
      gapThresholds: [[0.3, 0.6], [0.7, 0.9]],
      inverse: false,
      });

    edit

    • Inverse un booléen : vrai devient faux et faux devient vrai.

      Exemple : true -> false

      Parameters

      Returns boolean

      Le booléen opposé

    • Inverse chaque booléen d'une liste.

      Exemple : [true, false, true] -> [false, true, false]

      Parameters

      Returns boolean[]

      Les booléens inversés, dans le même ordre

    operations

    • Compare deux valeurs avec un opérateur : inférieur, inférieur ou égal, supérieur, supérieur ou égal, égal ou différent, sous la forme souple (==) ou stricte (===).

      Exemple : 5 supérieur à 3 -> true ; 'hello' strictement égal à 'world' -> false

      Type Parameters

      • T

      Parameters

      Returns boolean

      Le résultat de la comparaison

      const bigger = bitbybit.logic.compare({ first: 5, second: 3, operator: Bit.Inputs.Logic.BooleanOperatorsEnum.greater });
      
    • Laisse passer une valeur quand le booléen est vrai et donne undefined quand il est faux.

      Exemple : 42 avec true -> 42 ; 42 avec false -> undefined

      Type Parameters

      • T

      Parameters

      • inputs: ValueGateDto<T>

        La valeur et le booléen qui ouvre la porte

      Returns T

      La valeur, ou undefined quand la porte est fermée

      const maybe = bitbybit.logic.valueGate({ value: 42, boolean: true });
      
    • Choisit la première de deux valeurs qui est définie, la seconde servant donc de repli.

      Exemple : 42 et 10 -> 42 ; undefined et 10 -> 10

      Type Parameters

      • T
      • U

      Parameters

      Returns T | U

      La première valeur définie, ou undefined quand les deux manquent

      const chosen = bitbybit.logic.firstDefinedValueGate({ value1: undefined, value2: 10 });