O3D_COLLISION(N1,N2)

O3D_COLLISION(N1,N2)

RETOURNE 1 SI LES OBJETS 3D NUMÉROS N1 ET N2 SONT EN COLLISION, 0 SINON


  • Type : Fonction
  • Paramètre : 1
  • Groupe : Objets 3D


ACTION

La fonction O3D_COLLISION(N1,N2) retourne 1 si les objets 3D numéros N1 et N2 sont en collision, 0 sinon.


SYNTAXE : Resultat=O3D_COLLISION(N1,N2)

  • N1 = numéro d'objet 3D (entier ou réel). Doit être plus grand que 0 et inférieur ou égal au nombre maximum permis d'objets 3D.
  • N2 = numéro d'objet 3D (entier ou réel). Doit être plus grand que 0 et inférieur ou égal au nombre maximum permis d'objets 3D.

UTILISATION

  • La fonction O3D_COLLISION() est utilisée pour savoir si des objets 3D sont en collision.

ERREUR

  • Si le numéro N1 n'est pas une expression correcte.
  • Si le numéro N1 excède le nombre maximum permis d'objets 3D.
  • Si le numéro N1 est inférieur ou égal à 0.
  • Si l'objet 3D numéro N1 n'existe pas.
  • Si le numéro N2 n'est pas une expression correcte.
  • Si le numéro N2 excède le nombre maximum permis d'objets 3D.
  • Si le numéro N2 est inférieur ou égal à 0.
  • Si l'objet 3D numéro N2 n'existe pas.

EXEMPLE

O3D_COLLISION().bas
label move
scene3D 1:full_space 1
3d_sphere 1,0.5
3d_color 1,0,0,0
3d_position 1,-1.5,0,0
3d_collision_as_sphere 1
3d_sphere 2,0.5
3d_color 2,0,0,0
3d_position 2,0.9,0,0
3d_collision_as_sphere 2
timer 2
timer_interval 2,100
timer_on 2
on_timer 2,bouge
3D_point_object 1,2
end
move:
3d_move 1,0.1
if O3D_collision(1,2)=1
   caption 0,"COLLISION"
   color 1,0,0,0
   3d_color 1,255,255,255
   3d_color 2,255,255,255
   wait 100
   color 1,255,255,255
   3d_color 1,0,0,0
   3d_color 2,0,0,0
   timer_off 2
end_if
return

EN RAPPORT

3D_COLLISION_AS_SPHERE

3D_COLLISION_AS_CUBE

3D_COLLISION_AS_ELLIPSOID

3D_COLLISION_AS_POINT

3D_COLLISION_AS_FACES