Пример #1
0
// advance camera to next point
void Pointfile_Next (void)
{
  if(!s_pointfile.shown())
    return;

	if (s_check_point+2 == s_pointfile.end())
	{
		globalOutputStream() << "End of pointfile\n";
		return;
	}

  CPointfile::const_iterator i = ++s_check_point;


  CamWnd& camwnd = *g_pParentWnd->GetCamWnd();
	Camera_setOrigin(camwnd, *i);
	g_pParentWnd->GetXYWnd()->SetOrigin(*i);
  {
	  Vector3 dir(vector3_normalised(vector3_subtracted(*(++i), Camera_getOrigin(camwnd))));
    Vector3 angles(Camera_getAngles(camwnd));
	  angles[CAMERA_YAW] = static_cast<float>(radians_to_degrees(atan2(dir[1], dir[0])));
	  angles[CAMERA_PITCH] = static_cast<float>(radians_to_degrees(asin(dir[2])));
    Camera_setAngles(camwnd, angles);
  }
}
Пример #2
0
bool Region_cameraValid()
{
  Vector3 vOrig(vector3_snapped(Camera_getOrigin(*g_pParentWnd->GetCamWnd())));

  for (int i=0 ; i<3 ; i++)
  {
    if (vOrig[i] > region_maxs[i] || vOrig[i] < region_mins[i])
    {
      return false;
    }
  }
  return true;
}
Пример #3
0
// camera API
void QERApp_GetCamera( Vector3& origin, Vector3& angles )
{
  CamWnd& camwnd = *g_pParentWnd->GetCamWnd();
  origin = Camera_getOrigin(camwnd);
  angles = Camera_getAngles(camwnd);
}