flightgear/utils/fgqcanvas
2022-10-20 20:29:11 +08:00
..
configs first commit 2022-10-20 20:29:11 +08:00
doc first commit 2022-10-20 20:29:11 +08:00
ios first commit 2022-10-20 20:29:11 +08:00
qml first commit 2022-10-20 20:29:11 +08:00
applicationcontroller.cpp first commit 2022-10-20 20:29:11 +08:00
applicationcontroller.h first commit 2022-10-20 20:29:11 +08:00
canvasconnection.cpp first commit 2022-10-20 20:29:11 +08:00
canvasconnection.h first commit 2022-10-20 20:29:11 +08:00
canvasdisplay.cpp first commit 2022-10-20 20:29:11 +08:00
canvasdisplay.h first commit 2022-10-20 20:29:11 +08:00
canvasitem.cpp first commit 2022-10-20 20:29:11 +08:00
canvasitem.h first commit 2022-10-20 20:29:11 +08:00
canvaspainteddisplay.cpp first commit 2022-10-20 20:29:11 +08:00
canvaspainteddisplay.h first commit 2022-10-20 20:29:11 +08:00
canvastreemodel.cpp first commit 2022-10-20 20:29:11 +08:00
canvastreemodel.h first commit 2022-10-20 20:29:11 +08:00
CMakeLists.txt first commit 2022-10-20 20:29:11 +08:00
elementdatamodel.cpp first commit 2022-10-20 20:29:11 +08:00
elementdatamodel.h first commit 2022-10-20 20:29:11 +08:00
fgcanvas.pro first commit 2022-10-20 20:29:11 +08:00
fgcanvaselement.cpp first commit 2022-10-20 20:29:11 +08:00
fgcanvaselement.h first commit 2022-10-20 20:29:11 +08:00
fgcanvasgroup.cpp first commit 2022-10-20 20:29:11 +08:00
fgcanvasgroup.h first commit 2022-10-20 20:29:11 +08:00
fgcanvaspaintcontext.cpp first commit 2022-10-20 20:29:11 +08:00
fgcanvaspaintcontext.h first commit 2022-10-20 20:29:11 +08:00
fgcanvaspath.cpp first commit 2022-10-20 20:29:11 +08:00
fgcanvaspath.h first commit 2022-10-20 20:29:11 +08:00
fgcanvastext.cpp first commit 2022-10-20 20:29:11 +08:00
fgcanvastext.h first commit 2022-10-20 20:29:11 +08:00
fgqcanvas_resources.qrc first commit 2022-10-20 20:29:11 +08:00
fgqcanvasfontcache.cpp first commit 2022-10-20 20:29:11 +08:00
fgqcanvasfontcache.h first commit 2022-10-20 20:29:11 +08:00
fgqcanvasimage.cpp first commit 2022-10-20 20:29:11 +08:00
fgqcanvasimage.h first commit 2022-10-20 20:29:11 +08:00
fgqcanvasimageloader.cpp first commit 2022-10-20 20:29:11 +08:00
fgqcanvasimageloader.h first commit 2022-10-20 20:29:11 +08:00
fgqcanvasmap.cpp first commit 2022-10-20 20:29:11 +08:00
fgqcanvasmap.h first commit 2022-10-20 20:29:11 +08:00
jsonutils.cpp first commit 2022-10-20 20:29:11 +08:00
jsonutils.h first commit 2022-10-20 20:29:11 +08:00
localprop.cpp first commit 2022-10-20 20:29:11 +08:00
localprop.h first commit 2022-10-20 20:29:11 +08:00
main.cpp first commit 2022-10-20 20:29:11 +08:00
README.md first commit 2022-10-20 20:29:11 +08:00
WindowData.cpp first commit 2022-10-20 20:29:11 +08:00
WindowData.h first commit 2022-10-20 20:29:11 +08:00

FGQCanvas

A Qt-based remote canvas application for FlightGear. This app can connect to a FlightGear instance which has the built-in HTTPD server enabled and display any canvas in real-time.

Usage

Start FlightGear with the '--httpd' option, passing a port number. This can be done in the 'additional options' box if using the launcher.

  • --httpd=8080

Start FGQCanvas and enter the WebSocket url, with a suitable host-name and port. Provide the path to the Canvas you want to display (this part will become smarter in the future!)

Examples URLs:

  • ws://localhost:8080/PropertyTreeMirror
  • ws://mycomputer.local:8001/PropertyTreeMirror

Example Canvas path:

  • /canvas/by-index/texture[0]/

Limitations

  • Clipping is still being worked on
  • Fonts are not loaded from the host instance yet
  • Image loading is still being worked on, no support for remote image loading yet.
  • Performance is mediocre due to proof-of-concept implementation
  • No input event support yet

Future plans

  • Finish image, clip and font loading
  • Switch to OpenGL rendering
  • Support event-input to the Canvas
  • Rewrite to use Skia

Questions / support

Ask on the developer mailing list!