dynamicCapsuleList3D
Descripción
El objeto dynamicCapsuleList3D
gestiona dos listas de objetos de colisión basados en cápsulas en el espacio 3-D. Los objetos de colisión se dividen en dos listas: cuerpos del ego y obstáculos. Para cuerpos del ego y obstáculos en 2-D, consulte el objeto dynamicCapsuleList
.
Cada objeto de colisión en las dos listas tiene tres elementos clave:
ID –– Entero que identifica cada objeto, almacenado en la propiedad
EgoIDs
para los cuerpos del ego y la propiedadObstacleIDs
para los obstáculos.Estados –– Ubicación y orientación del objeto como una matriz M-por-6, donde cada fila tiene la forma
[x y z qW qX qY qZ]
y M es el número de estados a lo largo de la trayectoria del objeto en el marco mundial. La lista de estados supone que cada estado está separado por un intervalo de tiempo fijo. xyz-las posiciones están en metros y la orientación es un vector cuaternión de cuatro elementos. El origen local predeterminado se encuentra en el centro del hemisferio izquierdo de la cápsula.Geometría –– Tamaño del objeto basado en cápsula según la longitud y el radio especificados. El radio se aplica a los extremos esféricos y la longitud se aplica a la longitud del cilindro. Para cambiar la geometría de la cápsula y el origen local en relación con el punto de origen predeterminado, especifique una transformación de 4 por 4 en relación con el marco local de la cápsula. Para mantener la transformación predeterminada, especifique
eye(4)
.
Utilice las funciones de objeto para agregar, eliminar y actualizar dinámicamente las geometrías y estados de los distintos objetos de su entorno. Para agregar un cuerpo de ego, consulte la función de objeto addEgo
. Para agregar un obstáculo, consulte la función de objeto addObstacle
.
Después de especificar todas las rutas de los objetos, valide las rutas del ego-cuerpo y verifique si hay colisiones con obstáculos en cada paso usando la función de objeto checkCollision
. La función solo verifica si un cuerpo del ego choca con un obstáculo, ignorando las colisiones solo entre obstáculos o solo cuerpos del ego.
Creación
Descripción
obstacleList = dynamicCapsuleList3D
crea una lista de obstáculos dinámica basada en cápsulas sin cuerpos del ego ni obstáculos. Para comenzar a crear una lista de obstáculos, utilice las funciones de objeto addEgo
o addObstacle
.
Propiedades
Funciones del objeto
addEgo | Agregue cuerpos del ego a la lista de cápsulas 3D |
addObstacle | Agregue obstáculos a la lista de cápsulas 3-D |
checkCollision | Compruebe si hay colisiones entre los cuerpos del ego y los obstáculos. |
egoGeometry | Propiedades geométricas de los cuerpos del ego. |
egoPose | Poses de cuerpos del ego. |
obstacleGeometry | Propiedades geométricas de los obstáculos. |
obstaclePose | Poses de obstáculos |
removeEgo | Eliminar los cuerpos del ego de la lista de cápsulas |
removeObstacle | Eliminar obstáculos de la lista de cápsulas |
show | Mostrar cuerpos del ego y obstáculos en el entorno. |
updateEgoGeometry | Actualizar las propiedades geométricas de los cuerpos del ego. |
updateEgoPose | Actualizar estados de los cuerpos del ego. |
updateObstacleGeometry | Actualizar propiedades geométricas de obstáculos. |
updateObstaclePose | Actualizar estados de obstáculos. |
Ejemplos
Capacidades ampliadas
Historial de versiones
Introducido en R2020b