Menu du didacticielTable des matières sur cette page

Matter.Collision

Le module Matter.Collision contient des méthodes permettant de détecter les collisions entre une paire de corps donnée.

Pour une détection efficace entre une liste de corps, consultez Matter.Detector et Matter.Query.

Voir Matter.Engine pour les événements de collision.

Méthodes

Matter.Collision.collides(bodyA, bodyB, [pairs]) → Collision | Null

Détectez la collision entre deux corps.

Paramètres

  • bodyA Body
  • bodyB Body
  • [pairs] Pairs optionalRéutilisez éventuellement les enregistrements de collision des paires existantes.

Retour

Collision | Null: Un enregistrement de collision si détecté, sinon nul

Matter.Collision.create(bodyA, bodyB) → Collision

Crée un nouvel enregistrement de collision.

Paramètres

  • bodyA BodyLa première partie du corps représentée par l'enregistrement de collision
  • bodyB BodyLa deuxième partie du corps représentée par le dossier de collision

Retour

Collision: Un nouveau record de collisions

Propriétés / Options

Les propriétés suivantes, si elles sont spécifiées ci-dessous, concernent les objets créés par Matter.Collision.create et peuvent lui être transmises en tant qu'options.

collision.bodyA Body

La première partie du corps représentée par la collision (voir aussi collision.parentA).

collision.bodyB Body

La deuxième partie du corps représentée par la collision (voir aussi collision.parentB).

collision.collided Boolean

Un indicateur qui indique si les corps étaient en collision lors de la dernière mise à jour de la collision.

Défaut:false

collision.depth Number

Un nombre qui représente la distance de séparation minimale entre les corps le long de la normale de collision.

Défaut:0

collision.normal Vector

Un vecteur normalisé qui représente la direction entre les corps qui fournit la distance de séparation minimale.

Défaut:{ x: 0, y: 0 }

collision.pair Pair | Null

Une référence à la paire utilisant cet enregistrement de collision, s'il en existe un.

Défaut:null

collision.parentA Body

Le premier corps représenté par la collision (c'est-à-dire collision.bodyA.parent).

collision.parentB Body

Le deuxième corps représenté par la collision (c'est-à-dire collision.bodyB.parent).

collision.penetration Vector

Un vecteur qui représente la direction et la profondeur de la collision.

Défaut:{ x: 0, y: 0 }

collision.supportCount Number

Le nombre de supports actifs pour cette collision trouvés dans collision.supports.

Note:Seuls les premiers éléments collision.supportCount de collision.supports sont actifs. Par conséquent, utilisez collision.supportCount au lieu de collision.supports.length lors de l'itération des supports actifs.

Défaut:0

collision.supports Vector[]

Tableau de sommets du corps qui représentent les points de support dans la collision.

Note:Seuls les premiers éléments collision.supportCount de collision.supports sont actifs. Par conséquent, utilisez collision.supportCount au lieu de collision.supports.length lors de l'itération des supports actifs.

Ce sont les sommets les plus profonds (le long de la normale de collision) de chaque corps qui sont contenus par les sommets de l'autre corps.

Défaut:[]

collision.tangent Vector

Un vecteur normalisé qui est la direction tangente à la normale de collision.

Défaut:{ x: 0, y: 0 }

Liste de commentaires
Chargement..