Exemplo n.º 1
0
Pixel Camera::translateLatLon(LatLon latlon)
{
    CvMat* latlonHomogeneous = cvCreateMat(3, 1, CV_32FC1);
    cvmSet(latlonHomogeneous, 0, 0, latlon.getLat());
    cvmSet(latlonHomogeneous, 1, 0, latlon.getLon());
    cvmSet(latlonHomogeneous, 2, 0, 1.0);

    CvMat* pixelHomogeneous = cvCreateMat(3, 1, CV_32FC1);

    cvMatMul(inverse, latlonHomogeneous, pixelHomogeneous);

    int x = (int)(cvmGet(pixelHomogeneous, 0, 0) / cvmGet(pixelHomogeneous, 2, 0));
    int y = (int)(cvmGet(pixelHomogeneous, 1, 0) / cvmGet(pixelHomogeneous, 2, 0));
    Pixel pixel(x, y);
    return pixel;
}
Exemplo n.º 2
0
Vector3 Utilities::latLonToECEF(LatLon latLon)
{
    scene::LatLonAlt lla(latLon.getLat(), latLon.getLon());
    return latLonToECEF(lla);
}