Extract functions from mjv_updateCamera for calculating frames and frustums.

PiperOrigin-RevId: 805770746
Change-Id: Id2a6022a2ee2e8b1a783debf54b470a9df81051a
This commit is contained in:
Haroon Qureshi
2025-09-11 04:09:52 -07:00
committed by Copybara-Service
parent 017e7d5a73
commit ad5f07e060
2 changed files with 168 additions and 87 deletions
+12 -1
View File
@@ -54,7 +54,18 @@ MJAPI void mjv_updateActiveFlex(const mjModel* m, mjData* d, mjvScene* scn, cons
MJAPI void mjv_updateSkin(const mjModel* m, const mjData* d, mjvScene* scn);
// update visible skins only
MJAPI void mjv_updateActiveSkin(const mjModel* m, const mjData* d, mjvScene* scn, const mjvOption* opt);
MJAPI void mjv_updateActiveSkin(const mjModel* m, const mjData* d, mjvScene* scn,
const mjvOption* opt);
// computes the camera position, forward, up, and right vectors
// Nullable: headpos, forward, up, right
void mjv_cameraFrame(mjtNum headpos[3], mjtNum forward[3], mjtNum up[3], mjtNum right[3],
const mjData* d, const mjvCamera* cam);
// computes the camera frustums, i.e. vertical, horizontal, and clip planes
// Nullable: zver, zhor, zclip
void mjv_cameraFrustum(float zver[2], float zhor[2], float zclip[2], const mjModel* m,
const mjvCamera* cam);
int mjv_catenary(const mjtNum x0[3], const mjtNum x1[3], const mjtNum gravity[3], mjtNum length,
mjtNum* catenary, int ncatenary);