Home > Working with SGWorld > ProjectTree (IProjectTree6) > LoadKmlLayer

LoadKmlLayer

This method loads a KML file into the current project. All the objects from the KML file, including locations, presentations, and hyperlinks, are added.

 

JavaScript

 

LoadKmlLayer(

      KmlURL,

      ParentGroupID)

 

C#

 

int LoadKmlLayer(

      string KmlURL,

      int ParentGroupID = 0)

 

C++

 

HRESULT LoadKmlLayer(

      BSTR KmlURL,

      LONG_PTR ParentGroupID,

      LONG_PTR * GroupID) 

Parameters:

KmlURL

A full path name or a URL to the KML file to load.

ParentGroupID

The Project Tree group in which to put the objects from the imported KML file. If set to zero, the object is created under the root. The layer objects are put in a group with the name of the KML file, and maintain the same internal group hierarchy as the loaded file. You can obtain the GroupID by one of the following methods:

§   Create the group using IProjectTree6.CreateGroup.

§  Find the group, if you know the name, using IProjectTree6.FindItem.

§  Traverse the Tree using IProjectTree6 methods such as GetNextItem(), until you come to the desired GroupID.

Return Value

GroupID

The ID of the newly created group which contains the KML object.

Exceptions

HRESULT can return any of the values listed in the HRESULT Return Values list, as well as the following values:

TE_E_INFOTREE_PARENTNOTGROUP

The group ID entered does not represent a valid group in the project tree.

TE_E_INFOTREE_ITEMNOTGROUP

The item entered is not a group and therefore cannot be used as a group.

TE_E_INFOTREE_CANTUSEROOT

Can not use tree root for this operation

TE_E_INFOTREE_ITEMISGROUP

ItemID is a group so an object cannot be retrieved.