Let us know about projects you are working on or would like to see.


I'm 3/4 way through a VBA Database which reads RS232 data from a GPS and a DF sensor then creates a vector overlay (.drw format) and plots it in FV. This would allow a vehicle to radio triangulate whilst mobile. Just having snags with the loop at present.

-- AlexMacneil - 15 Jun 2008 ---

I'm working on some VBA code in an Access Database to control and display information on Falconview. If I get it to work reliably, I plan to use it as a briefing tool during Air Operations Center briefings to General Officers. Any examples of VBA code out there would be helpful to my project.

-- JordanGrant - 20 Nov 2007


Q) I am working on a project where vector based street data would be useful. Something like a Tiger display layer along with routing support would be great. Do you know of any such existing project? How would one start to develop this?

-- SeanMulholland - 23 Oct 2007

A) I don't know of anybody doing anything with tiger data in FalconView but in 4.1 there will be the ability to open one or more ESRI layers if you have access to ArcView 9.1. Mission Planners are approved for CJMTK which covers the License cost, DHS users also have a blanket license as does NGA.

If you were going to do this from scratch you would probably want to do it using ILayerEditor3 which is new in FV 4.0.1. It gives you a DC and conversions from Geo location to Screen and Vice Versa. I don't think this would be trivial because of the complexities and size of Tiger data but it is definitely possible.

-- ChrisBailey - 02 Nov 2007


Q)Is it possible to add a thread to the Wiki for Falconview Add-on products. This would allow developers who have developed add-on products to advertise / list their product. This would assist those of use in government / military circles in finding solutions that have already been created.

-- ScottMarshall - 08 Jun 2007

A) I hoped that this topic would lead to that but it kind of became a catchall for developers asking questions when they don't know where else to ask. We are in the processes of updating to a new version of twiki and I hope to try again with a form based page with this intent. I would also like to find out what programs are out there for now look at FalconViewUsage on the main wiki.

-- ChrisBailey - 08 Jun 2007


Q)Is their any way of adding support for TOD data into FalconView?

I am working on a project requiring the use of TOD data with FalconView. I know that FalconView works with the DNC data, but I am unable to get it to recognize the TOD data. Is their some difference with NIMA’s TOD vector data format?

-- AnselToutsch - 30 Apr 2007

A) FalconView does not support TOD data but I don't think it would be that hard based on our other VPF overlays. Contact us and we can talk about your needs.

-- ChrisBailey - 08 Jun 2007


Q) Does anyone know where the event for zoom in and out of a map is located? I am trying to redraw items on the map based on the zoom level change event but couldnt seem to find the correct call.

-- BrentLambert - 27 Apr 2007

A) See below: You would need to implement ILayerEditor3. You then get a call on every refresh. You can determine the zoom percentage and adjust your drawing appropriately. ILayerEditor3 was added in FalconView 4.0. -- ChrisBailey - 30 Apr 2007


Q) I was wondering how do you get elevation data back from FalconView? What I would like to do is pass in the lat and lon and get the terrain elevation at that point. Is this possible?

-- BrentLambert - 03 Apr 2007

A) I think IMap::GetElevation in the MapServer ICD is what you are after.

-- ScottMarshall - 04 Apr 2007


Q) Our company is looking to develop a product to visualize geospatial data. Our customer has said that they would like to be able to use FalconView to build up a "mission" by adding layers. The simplest solution to this problem would be to take advantage of the existing data source support already developed. Then once the user builds their mission we would like to have our plugin "export" all of the layers currently loaded in FalconView out to our format. I have spent a couple weeks digging through the SDK and Wiki but without any success.

Is this even possible?

-- NickClark - 11 Dec 2006

A) That is the typical use of FalconView. A user plans a mission and then parts of the mission are copied onto an aircraft "cartridge." The cartridge is plugged into the aircraft and the data is used inflight to display the plan. The process of "cutting the cartridge" is aircraft specific so each aircraft has a different software component for pulling the information from the various PFPS programs. This is commonally known as an A/W/E and they are developed by different 3rd party companies.

The SDK has information on the various file formats that an A/W/E would need to extract the data. One very simple A/W/E is called the handheld A/W/E which ships on the PFPS CD. It allows a user to plan a route and to specify waypoints using the the point overlay and then the AWE will pull this data and load it onto most common GPS units. Other A/W/Es are more sophisticated and load data such as maps, threats, points, and DAFIF.

Here at GTRI we obviously have the knowlege to build this kind of application, with you or for you, and we could talk about doing somthing like this for you if you find the learning curve too steep (there are also lots of other companies with experiance). -- ChrisBailey - 21 Dec 2006


Q2) I have looked through the SDK and I see how I can add new objects into FalconView. However, I don't see how I can get a list of all objects that have been inserted -- by my plug-in or another. Am I missing something?

-- NickClark - 21 Dec 2006

A2) A lot depends on the overlay you are using to store or display the data. In Prior to FalconView 4.1 most overlay data can only be retrieved by opening the file (normally an Access Database). in 4.0 there were interfaces added to retrieve and subscrive to changes to the threat interface. 4.1 adds the IOverlayElement interface for retreiving Local Points, Drawings and Tactical Graphics.

The other alternative it to create your own overlay with your own data access and your own data storage.


Q) I am working on a project through my employer (SDS International) to develop a lightweight DIS-based flight simulator IOS based on FalconView. Early results look promising: we can start the simulator from any location, load a route from an exported CRD file, set weather conditions and time-of-day. All via DIS. Anyone else doing DIS-related work with FV 3.3.1?

-- RileyRainey - 07 Dec 2005

A) We created a prototype HLA interface to FalconView which was part of the JTVSE Demonstration at IITSEC 2005. It used the DMSO RTI with the RPR FOM.

Basically it used the FalconView 4.0 Intel Feed Interface and could handle some 20,000 entities (it choaked on 100,000). We only listened and did not "drive anything". If anyone is interested in pursuing this as a full function feature, let us know.

-- ChrisBailey - 16 Feb 2006


Q) It seems I have another simple question (and hopefully the answer is not RTM). Is there an ILayer Callback method that is called when the zoom or center of the map is changed? Or is the best method to check the values returned from GetMapDisplay and compare those with previous values? Thank you again for your help and feedback.

-- JasonRupert - 30 Nov 2006

A) Prior to 4.0 there is no callback for map changes. The best way is to poll GetMapDisplay as you mentioned above. In 4.0, if you are implementing an editor, you could implement ILayerEditor3. FalconView calls your ILayerEditor3::OnDraw every time the map is changed.


Q) The return value from CreateSymbol, which should be the handle that identifies the new object, does not match the object_handle returned via GetMenuItems. Any thoughts?

Note, I only have one symbol and the symbol shows up correctly via calling AddSymbol (and of course refresh). Note that correct layer_handle value is returned correctly via GetMenuItems, i.e. I verified it matches the layer_handle in OnNewLayer.

Thank you for any help and insight you can provide.

-- JasonRupert - 24 Nov 2006

A) CreateSymbol returns a symbol handle not an object handle. The method does not create a new object.


Q) Great. I see what you mean. CreateSymbol returns the symbol handle. AddSymbol returns the object handle.

I need to be comparing against the object handle. Thank you for your help.

-- JasonRupert - 26 Nov 2006


Q) After quickly looking through the whole of the SDK for V4.0.0 it appears that the failure return value is -1 for all the methods, except SetPen and SetTextRotation. The version of the SDK I have indicates that the failure return falue for those two is +1. Is that correct?

-- JasonRupert - 20 Nov 2006

Is it possible to add an IMap interface to the Layer_Editor_C++ example, which appears to just have an ILayerEditor interface? If this is possible, in general, what steps would have to be taken? Thank you for any details that can be provided.

-- JasonRupert - 17 Nov 2006

A) I don't understand the question. What does it mean to instantiate a Map object (which FalconView implements) that appears to implement a separate interface? What are you trying to do?

Follow-up to the above. Refer to the sample code delivered with the FalconView SDK. Specifically look at the sample.h code. Notice that only ILayerEditor Interface is used. Now, also in the sample code delivered with the SDK, look at the interface.h code. Notice it uses both the IMap and ILayer interfaces. Is it possible for the Layer_Editor_C++ example, which includes the sample.h code, to have an ILayerEditor interface and also and IMap interface? If this is possible in this example, what steps should one take to implement such an additional interface? Thank you again for your time and any details that can be provided.

-- JasonRupert - 20 Nov 2006

You don't implement IMap or ILayer, FalconView does. You can, however instantiate one in any object.

#import "fvw.tlb" no_namespace, named_guids

SomeFunction()
{
   try
   {
      IMapPtr smpMap(__uuidof(Map));

      smpMap->SomeIMapMethod(...);
   }
   catch(_com_error &e)
   {
   }
}

Q) I am new to both FalconView and COM (so please forgive my ignorance). I would like to put data from another application onto a layer in FalconView. Based on the SDK, I assume that I need to produce a dll that interfaces to the ILayer interface and that I have to can tell FalconView to load that dll at startup. Is that correct? If so, how can I tell FalconView to load my dll? Do I have to say it is an editor? Please forgive my inexperience here, but I am completely lost.

A) Please read the FalconView SDK. It describes, step by step, how to register your object with FalconView. You will need to add entries to the Client Editors regisry key in HKLM.


Q) Is there a method to force FalconView 4.0.x to refresh its on screen map data from the underlying map files (geotiff)? I'm programmatically adding new tiles to an existing directory while running (coverage for new tiles is visible). However, only by panning sufficiently away from the new area, or changing to a different data source and back, can you get the new tiles to be displayed.

A) If you are in process, create an instance of the MDSUtil COM object and call CoverageChanged:

#import "MapDataServerUtil.dll" no_namespace, named_guids

void RefreshScreenMap()
{
   try
   {
      IMDSUtilPtr smpMDSUtil(__uuidof(MDSUtil));
      smpMDSUtil->CoverageChanged();
   }
   catch(_com_error &e)
   {
      const char '''pErrorMsg = (char ''')e.Description();
      // log pErrorMsg
   }
}

Another way to force a refresh would be to call IMap::GetMapDisplay, to get the current map parameters, follwed by IMap::SetMapDisplay. Better, would be to use the MapDataServerUtil? COM object to add coverage elements to the database. By using this object all clients of the MDS will receive a notification when the coverage changes and automatically be refreshed.


Q) Hi there, I'm new to FV and I have been playing with the SymbolDemo. I have a question, how can I make mil2525 symbols move?

A) You have to delete the symbol and re-create it in order for it to move.


Q) I wanted an easier way, this adds a lot of overhead if there are 1000s of symbols. We are working on a workaround, besides we want to be able to access the properties of the symbols and this can't be done on a layer. Does anyone knows of ITacticalGraphicsServer2 is part of 3.3.1?

A) The new interface was added in 4.0. We have also created a overlay that we are calling "Real-Time-Tracker" written in .NET which works with 4.1. It is designed to display tens of thousands of symbols and move them around in real time. It allows "basic" 2525 symbols, (not every label because of speed issues).


Tactical Graphics comments moved to the FVDev web under TacticalGraphicsOverlay.

Q) How do I Save the layer/Overlay that I have created in my project? I create a layer and add various objects to it but I don't know the process to save it when I am done. Is there a way to save the layer and reload it at a later point?

A) There is a similiar Question about this in the FVDev Wiki under AutomationInterface. Basically you are responsible for persisting and reading your own data. If you are just starting a new project I would recomend you look into Geography Markup Language [ GML as a format.


I am working on a couple of projects (Custom Tools) and have a common problem that shows up in all of them. What I am doing is drawing Polygons, lines, and Text using ILayer. My problem is that FalconView seems to freeze and I loose control of the FalconView GUI. Even when I am drawing simple things like 8 polygons often FalconView will freeze on me. The only way I can regain control is to close my layer that I am drawing on. Does anybody know what I am doing wrong?

Are you multi-threaded? Are you checking your return codes and exceptions? We need some more information to debug your issue.

I just have one thread that reads in files and draws things to FalconView. Also, I am checking all my return codes for failures but there seems to be no exceptions. What I am seeing is my custom tool continues to work (processing files) but FalconView will just lock up after awhile until I terminate my program.

-- ChrisBailey - 24 Aug 2005


You are here: FVDev > NewProjects