Breaking change: Add surface normal output to MuJoCo raycast functions.
PiperOrigin-RevId: 855781592 Change-Id: Id96b1ca7eaf722e260cc69d7706c28dc51f52d92
This commit is contained in:
committed by
Copybara-Service
parent
37762e3f70
commit
218226fc95
@@ -286,10 +286,10 @@ static mjtNum geomDistance(const mjModel* m, const mjData* d, const mjpPlugin* p
|
||||
mju_addTo3(a, d->geom_xpos + 3 * i);
|
||||
mjtNum dir[3] = {-a[0], -a[1], -a[2]};
|
||||
mjtNum r = mju_norm3(dir);
|
||||
mjtNum dist = mj_rayMesh(m, d, i, a, dir);
|
||||
mjtNum dist = mj_rayMesh(m, d, i, a, dir, NULL);
|
||||
if (dist > r) {
|
||||
mju_scl3(dir, dir, -1);
|
||||
return -mj_rayMesh(m, d, i, a, dir);
|
||||
return -mj_rayMesh(m, d, i, a, dir, NULL);
|
||||
}
|
||||
return dist;
|
||||
}
|
||||
@@ -414,7 +414,7 @@ static void geomGradient(mjtNum gradient[3], const mjModel* m, const mjData* d,
|
||||
mju_addTo3(a, d->geom_xpos+3*i);
|
||||
mjtNum dir[3] = {-a[0], -a[1], -a[2]};
|
||||
mjtNum r = mju_norm3(dir);
|
||||
mjtNum dist = mj_rayMesh(m, d, i, a, dir);
|
||||
mjtNum dist = mj_rayMesh(m, d, i, a, dir, NULL);
|
||||
gradient[0] = dist > r ? 1 : -1;
|
||||
gradient[1] = dist > r ? 1 : -1;
|
||||
gradient[2] = dist > r ? 1 : -1;
|
||||
|
||||
Reference in New Issue
Block a user