- tfile = fopen( ConvertFileName(filename), "rb" );
-
- if (1) { // FIXME: should this be if(tfile) ?
- // read num_joints
- funpackf(tfile, "Bi", &num_joints);
-
- // allocate memory
- //joints.resize(num_joints);
- if (joints)
- delete [] joints; //dealloc2(joints);
- joints = (Joint*)new Joint[num_joints]; //malloc(sizeof(Joint)*num_joints);
-
- // read info for each joint
- for (i = 0; i < num_joints; i++) {
- funpackf(tfile, "Bf Bf Bf Bf Bf", &joints[i].position.x, &joints[i].position.y, &joints[i].position.z, &joints[i].length, &joints[i].mass);
- funpackf(tfile, "Bb Bb", &joints[i].hasparent, &joints[i].locked);
- funpackf(tfile, "Bi", &joints[i].modelnum);
- funpackf(tfile, "Bb Bb", &joints[i].visible, &joints[i].sametwist);
- funpackf(tfile, "Bi Bi", &joints[i].label, &joints[i].hasgun);
- funpackf(tfile, "Bb", &joints[i].lower);
- funpackf(tfile, "Bi", &parentID);
- if (joints[i].hasparent)
- joints[i].parent = &joints[parentID];
- joints[i].velocity = 0;
- joints[i].oldposition = joints[i].position;
- }
-
- // read num_muscles
- tempmuscle = num_muscles;
- funpackf(tfile, "Bi", &num_muscles);
-
- // allocate memory
- //muscles.clear();
- if (muscles)
- delete [] muscles; //dealloc2(muscles);
- muscles = (Muscle*)new Muscle[num_muscles]; //malloc(sizeof(Muscle)*num_muscles);