diff --git a/Source/HttpServer.cpp b/Source/HttpServer.cpp index c0e1c63..1378dcc 100644 --- a/Source/HttpServer.cpp +++ b/Source/HttpServer.cpp @@ -81,7 +81,7 @@ void HttpServer::run() if (!pDoc) { pDoc = docname; - sprintf(docname, "%s\\FsTrack\\welcome.htm", m_docDir); + sprintf(docname, "%s\\welcome.htm", m_docDir); } else { diff --git a/Source/Kml.cpp b/Source/Kml.cpp index 3d7f0fd..8278d08 100644 --- a/Source/Kml.cpp +++ b/Source/Kml.cpp @@ -36,6 +36,9 @@ void Kml::create() destroy(); kml = new XmlElement("kml"); + XmlElement *pNetworkLinkControl = kml->createNewChildElement("NetworkLinkControl"); + pNetworkLinkControl->createNewChildElement("LinkName")->addTextElement("FsTrack"); + XmlElement *pCamera = pNetworkLinkControl->createNewChildElement("Camera"); XmlElement *pDoc = kml->createNewChildElement("Document"); XmlElement *pFile = kml->getChildByName("Document")->createNewChildElement("filename"); XmlElement *pSnippet = kml->getChildByName("Document")->createNewChildElement("Snippet"); @@ -52,7 +55,16 @@ void Kml::create() sprintf(time_str, "Created on %4.4d-%2.2d-%2.2d at %2.2d:%2.2d:%2.2d", 1900+time_now->tm_year, time_now->tm_mon+1, time_now->tm_mday, time_now->tm_hour, time_now->tm_min, time_now->tm_sec); pSnippet->addTextElement(time_str); - + + // Camera + pCamera->createNewChildElement("longitude")->addTextElement(""); + pCamera->createNewChildElement("latitude")->addTextElement(""); + pCamera->createNewChildElement("altitude")->addTextElement(""); + pCamera->createNewChildElement("heading")->addTextElement(""); + pCamera->createNewChildElement("tilt")->addTextElement(""); + pCamera->createNewChildElement("altitudeMode")->addTextElement(""); + + } void Kml::destroy() @@ -120,6 +132,9 @@ void Kml::updatePlane(FlightData const &flightData) XmlElement *pAltitudeMode; XmlElement *pCoords; + XmlElement *pCamera; + XmlElement *pLookAt; + if(pPlacemark == NULL) { // Placemark @@ -153,8 +168,7 @@ void Kml::updatePlane(FlightData const &flightData) // IconStyle pIconStyle = pStyle->createNewChildElement("IconStyle"); pHeading = pIconStyle->createNewChildElement("heading"); - sprintf(temp_str, "%d", (int)flightData.hdgTrue_deg); - pHeading->addTextElement(temp_str); + pHeading->addTextElement(String(flightData.hdgTrue_deg)); // Icon pIcon = pIconStyle->createNewChildElement("Icon"); @@ -169,6 +183,7 @@ void Kml::updatePlane(FlightData const &flightData) // Point pPoint = pPlacemark->createNewChildElement("Point"); + pPoint->setAttribute("id", "Pointy"); pExtrude = pPoint->createNewChildElement("extrude"); pExtrude->addTextElement("1"); pTesselate = pPoint->createNewChildElement("tesselate"); @@ -189,14 +204,23 @@ void Kml::updatePlane(FlightData const &flightData) pDescr->getFirstChildElement()->setText(temp_str); // Heading - sprintf(temp_str, "%d", (int)flightData.hdgTrue_deg); pHeading = pPlacemark->getChildByName("Style")->getChildByName("IconStyle")->getChildByName("heading"); - pHeading->getFirstChildElement()->setText(temp_str); + pHeading->getFirstChildElement()->setText(String(flightData.hdgTrue_deg)); // Coordinates sprintf(temp_str, "%9.6f,%9.6f,%9.6f", flightData.lon, flightData.lat, flightData.alt_meter); pCoords = pPlacemark->getChildByName("Point")->getChildByName("coordinates"); pCoords->getFirstChildElement()->setText(temp_str); + + // Camera + pCamera = kml->getChildByName("NetworkLinkControl")->getChildByName("Camera"); + pCamera->getChildByName("longitude")->getFirstChildElement()->setText(String(flightData.lon)); + pCamera->getChildByName("latitude")->getFirstChildElement()->setText(String(flightData.lat)); + pCamera->getChildByName("altitude")->getFirstChildElement()->setText(String(flightData.alt_meter)); + pCamera->getChildByName("heading")->getFirstChildElement()->setText(String(flightData.hdgTrue_deg)); + pCamera->getChildByName("tilt")->getFirstChildElement()->setText("90"); + pCamera->getChildByName("altitudeMode")->getFirstChildElement()->setText(m_altitudeModeString); + } } diff --git a/Source/MainComponent.cpp b/Source/MainComponent.cpp index ed36211..60bdc3b 100644 --- a/Source/MainComponent.cpp +++ b/Source/MainComponent.cpp @@ -136,11 +136,11 @@ void MainComponent::paint (Graphics& g) void MainComponent::resized() { - m_fsuipcStatus->setBounds (16, 256, 150, 24); - m_flightStatus->setBounds (216, 256, 150, 24); - m_kmlUpdInterval_s->setBounds (16, 216, 184, 24); - m_colorSelector->setBounds (24, 32, 168, 152); - m_altitudeMode->setBounds (216, 40, 160, 24); + m_fsuipcStatus->setBounds (16, 264, 150, 24); + m_flightStatus->setBounds (216, 264, 150, 24); + m_kmlUpdInterval_s->setBounds (16, 232, 184, 24); + m_colorSelector->setBounds (24, 24, 168, 192); + m_altitudeMode->setBounds (216, 32, 160, 24); //[UserResized] Add your own custom resize handling here.. //[/UserResized] } @@ -219,25 +219,25 @@ BEGIN_JUCER_METADATA fixedSize="1" initialWidth="400" initialHeight="300">