IPresentation80

This interface provides methods for creating dynamic presentations that include recorded fly to’s, the display of the terrain, and objects and features on the terrain at different times and dates, and the tracking of dynamic objects. The interface’s properties also expose control over the playing back of a presentation, including loop mode and speed factor.

Presentations are created from items, which can be either actions or steps. Actions are the specific activities that the presentation tool is to perform when the presentation is played, such as 'Record Route' or 'Show Object'. While steps are like "chapter headings" that group together related actions and provide increased flexibility for displaying a presentation by enabling you to quickly jump from one step to another in the presentation.

Note: To open the Presentation Editor, use the following:

SGWorld.Application.Containers.Item(editorIndex).URL

Where URL = the URL of the presentation editor (" .\Tools\Presentation\PresentationEditor.html") i

 

 

Properties

 

CurrentlyPlayingActionId

Gets the ID of the currently playing action.

ID

Gets the ID of the presentation object. (Inherited from ITerraExplorerObject80)

LoopMode

Gets and sets a Boolean that determines whether a presentation should automatically restart when the end of the presentation is reached.

ObjectType

Gets an enum that identifies the type of the object. (Inherited from ITerraExplorerObject80)

PlayingPresentationJSON

Gets a JSON describing the currently playing presentation.

PresentationJSON

Gets and sets a JSON that describes the presentation.

PresentationJSONSchema

Gets the presentation JSON schema that defines the required format and structure of a presentation JSON.

SaveInFlyFile

Gets and sets a Boolean that determines whether the object is saved in the Fly file. (Inherited from ITerraExplorerObject80)

SettingsJSON

Gets and sets the section of the PresentationJSON that describes the presentation settings.

SpeedFactor

Gets and sets the speed factor of the presentation.

Status

Gets the status of the presentation.

TreeItem

An ITreeItem80 representing details about the representation of the object in the Project Tree.

 

Methods

 

CopyItem

Copies and pastes an item in a presentation.

CreateAction

Creates a presentation action.

CreateMovie

Creates a movie in AVI or WMV format from a FLY project presentation.

CreateStep

Creates a presentation step.

Deleteitem

Deletes an item in a presentation.

GetClientData

Gets an array of text strings assigned to each object global namespace. (Inherited from ITerraExplorerObject80)

GetItem

Returns a presentation item based on its ID.

GetItemPosition

Returns the position of a specific item in the list of presentation items using its ID.

GetParam

Reserved. Currently not used. (Inherited from ITerraExplorerObject80)

MoveItem

Moves a presentation item to a new position in the presentation’s list of items.

NextStep

Fast forwards the presentation and plays from the next step.

Pause

Pauses a presentation.

Play

Plays a presentation from the beginning.

PlayFromID

Plays from a specified presentation step.

PreviousStep

Rewinds the presentation and plays from the previous step.

SetClientData

Sets an array of text strings assigned to each object global namespace. (Inherited from ITerraExplorerObject80)

SetParam

Reserved. Currently not used. (Inherited from ITerraExplorerObject80)

ShowPath

Shows the flight path of the presentation.

SkipAction

Skips to the next action in the presentation.

Stop

Stops the playback of the presentation.

StopMovie

Stops the movie creation.

 

CurrentlyPlayingActionId

Gets the ID of the currently playing action.

 

JavaScript

 

CurrentlyPlayingActionId

 

C#

 

string CurrentlyPlayingActionId { get; }

 

C++

 

HRESULT CurrentlyPlayingActionId ([out,retval] BSTR pVal)

 

LoopMode

Gets and sets a Boolean that determines whether a presentation should automatically restart when the end of the presentation is reached.

 

JavaScript

 

LoopMode

 

C#

 

bool LoopMode { get; set; }

 

C++

 

HRESULT LoopMode ([in] VARIANT_BOOL pVal)

HRESULT LoopMode ([out,retval] VARIANT_BOOL pVal)

 

PlayingPresentationJSON

This property is primarily used to return a JSON for a presentation that launches other presentations. The JSON returned includes all the steps from the primary presentation as well as from all secondary presentations that are steps within the primary presentation.

 

JavaScript

 

PlayingPresentationJSON

 

C#

 

string PlayingPresentationJSON { get;}

 

C++

 

HRESULT PlayingPresentationJSON ([out,retval] BSTR pVal)

 

PresentationJSON

Gets and sets a JSON describing a presentation. When a presentation is created in the TerraExplorer user interface, this property can be used to retrieve a JSON that defines this presentation. SeePresentations” chapter in the TerraExplorer User Manual. When creating a presentation using the API, the JSON must be written according to the schema defined in PresentationJSONSchema.

This JSON must include a base presentation object. This object has five properties:

§   description (required) – Name of the presentation as displayed in the Project Tree

§   id – Presentation ID

§   settings – Presentation settings that determine whether presentation loops, how it advances between steps, and more. SeeSettingsJSON” in this chapter for more information.

§   steps (required) – An array made up of PresentationStep objects, representing each presentation step and action.

§   movieSettings - Movie settings that determine frame size, frames per second, and overlay display.

Basic JSON Structure Example:

{

    “presentation”: {

        “description”:” Close Range Project”,

        “id”: “0_24136”,

        “settings”: {…

        },

        “steps”: [

        ]   

        “movieSettings”: [

        ]   

     }

}

 

 

JSON Example Showing Step:

{

    "presentation": {

        "description":" Close Range Project",

        "id": "0_24136",

        "settings": {

            "loopPresentation": false,

            "unattendedPlayMode": false,

            "playSpeedFactor": 1.0

        },

        "steps": [

            {

                "description":"Step",

                "actions": [

                    {

                        "description": "Hide CellTower Airmap",

                        "actionType": "Hide",

                        "options": {

                            "pathToGroup": "3D City Models\\Close-Range Projects\\CellTower Airmap"

                        }

        ]   

        “movieSettings”: [

        ]   

     }

}

 

JavaScript

 

PresentationJSON

 

C#

 

string PresentationJSON { get; set; }

 

C++

 

HRESULT PresentationJSON ([in] BSTR pVal)

HRESULT PresentationJSON ([out,retval] BSTR pVal)

 

PresentationJSONSchema

Gets the presentation JSON schema that defines the required format and structure of a presentation JSON.

{

    "$schema": "http://json-schema.org/draft-07/schema#",

    "$ref": "#/definitions/Presentation",

    "definitions": {

        "Presentation": {

            "type": "object",

            "required": [

                "presentation"

            ],

            "title": "Presentation",

            "additionalProperties": false,

            "properties": {

                "presentation": {

                    "$ref": "#/definitions/PresentationClass"

                },

                "events": {

                    "type": "array",

                    "anyOf": [

                        {

                            "$ref": "#/definitions/eventPresentationStarted"

                        },

                        {

                            "$ref": "#/definitions/eventActionStarted"

                        },

                        {

                            "$ref": "#/definitions/eventActionFinished"

                        },

                        {

                            "$ref": "#/definitions/eventWaitProgress"

                        },

                        {

                            "$ref": "#/definitions/eventError"

                        },

                        {

                            "$ref": "#/definitions/eventStatusChanged"

                        }

                    ]

                }

            }

        },

        "stepsArray": {

            "type": "array",

            "items": {

                "$ref": "#/definitions/PresentationStep"

            }

        },

        "actionsArray": {

            "type": "array",

            "items": {

                "anyOf": [

                    {

                        "$ref": "#/definitions/ClickAction"

                    },

                    {

                        "$ref": "#/definitions/MenuAction"

                    },

                    {

                        "$ref": "#/definitions/DynamicObjectAction"

                    },

                    {

                        "$ref": "#/definitions/ShowAction"

                    },

                    {

                        "$ref": "#/definitions/HideAction"

                    },

                    {

                        "$ref": "#/definitions/FlyToAction"

                    },

                    {

                        "$ref": "#/definitions/CaptionAction"

                    },

                    {

                        "$ref": "#/definitions/WaitAction"

                    },

                    {

                        "$ref": "#/definitions/MessageAction"

                    },

                    {

                        "$ref": "#/definitions/UndergroundModeAction"

                    },

                    {

                        "$ref": "#/definitions/SetTimeAction"

                    },

                    {

                        "$ref": "#/definitions/PlayAnotherPresentationAction"

                    },

                    {

                        "$ref": "#/definitions/PlayTimeAnimationAction"

                    },

                    {

                        "$ref": "#/definitions/TimeSliderAction"

                    }

                ]

            }

        },

        "PresentationClass": {

            "type": "object",

            "required": [

                "description",

                "steps"

            ],

            "title": "PresentationClass",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "steps": {

                    "$ref": "#/definitions/stepsArray"

                },

                "settings": {

                    "type": "object",

                    "additionalProperties": false,

                    "properties": {

                        "loopPresentation": {

                            "type": "boolean",

                            "title": "Loop Presentation",

                            "default": false

                        },

                        "chainedflightModel": {

                            "type": "boolean",

                            "title": "Use Spline Play Algorithm",

                            "default": false

                        },

                        "unattendedPlayMode": {

                            "type": "boolean",

                            "title": "Auto-Play",

                            "default": false

                        },

                        "playSpeedFactor": {

                            "type": "number",

                            "minimum": 0.1,

                            "maximum": 8,

                            "title": "Play Speed Factor",

                            "default": 1

                        }

                    }

                },

                "movieSettings": {

                    "type": "object",

                    "additionalProperties": false,

                    "properties": {

                        "frameSize": {

                            "type": "string",

                            "enum": [

                                "Current Size",

                                "640x480 (NTSC Online)",

                                "768x576 (PAL Online)",

                                "720x480 (SD 480p)",

                                "1280x720 (HD 720p)",

                                "1920x1080 (HD 1080p)",

                                "2560X1440 (QHD 1440p)"

                            ],

                            "title": "Frame Size"

                        },

                        "framesPerSec": {

                            "type": "number",

                            "minimum": 10,

                            "maximum": 60,

                            "title": "Frames per Second",

                            "default": 25

                        },

                        "hideOverlay": {

                            "type": "boolean",

                            "title": "Hide Screen Overlays",

                            "default": false

                        }

                    }

                }

            }

        },

        "PresentationStep": {

            "type": "object",

            "required": [

                "actions"

            ],

            "title": "Step",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Name"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "RequireClick": {

                    "type": "boolean",

                    "title": "Requires click",

                    "default": true

                },

                "bookmark": {

                    "description": "A Boolean that determines whether the step is a bookmark. The default value is False.",

                    "type": "boolean",

                    "default": false,

                    "title": "Bookmark"

                },

                "actions": {

                    "$ref": "#/definitions/actionsArray"

                }

            }

        },

        "ClickAction": {

            "type": "object",

            "required": [

                "actionType"

            ],

            "title": "Click",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "Click"

                    ],

                    "title": "Action Type"

                }

            }

        },

        "MenuAction": {

            "type": "object",

            "required": [

                "actionType"

            ],

            "title": "Click menu item",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "MenuCommand"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "teCommandId",

                        "checked"

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "teCommandId": {

                            "type": "integer",

                            "title": "Command ID"

                        },

                        "checked": {

                            "type": "boolean",

                            "title": "Display",

                            "default": true

                        }

                    }

                }

            }

        },

        "DynamicObjectAction": {

            "type": "object",

            "required": [

                "actionType"

            ],

            "title": "Dynamic Object",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "DynamicObject"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "TeObjectId"

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "TeObjectId": {

                            "type": "string",

                            "title": "TerraExplorer Object ID"

                        },

                        "operation": {

                            "type": "string",

                            "enum": [

                                "Restart",

                                "Follow"

                            ],

                            "title": "Operation"

                        },

                        "duration": {

                            "type": "number",

                            "title": "Follow time (Seconds)",

                            "default": 3

                        }

                    }

                }

            }

        },

        "ShowAction": {

            "type": "object",

            "required": [

                "actionType"

            ],

            "title": "Show Group/Object",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "Show"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "oneOf": [

                        {

                            "required": [

                                "TeObjectId"

                            ]

                        },

                        {

                            "required": [

                                "pathToGroup"

                            ]

                        }

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "TeObjectId": {

                            "type": "string",

                            "title": "TerraExplorer Object ID"

                        },

                        "pathToGroup": {

                            "type": "string",

                            "title": "Path to a Group"

                        }

                    }

                }

            }

        },

        "HideAction": {

            "type": "object",

            "required": [

                "actionType"

            ],

            "title": "Hide Group/Object",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "Hide"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "oneOf": [

                        {

                            "required": [

                                "TeObjectId"

                            ]

                        },

                        {

                            "required": [

                                "pathToGroup"

                            ]

                        }

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "TeObjectId": {

                            "type": "string",

                            "title": "TerraExplorer Object ID"

                        },

                        "pathToGroup": {

                            "type": "string",

                            "title": "Path to a Group"

                        }

                    }

                }

            }

        },

        "FlyToAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "title": "Fly To",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "FlyTo"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "additionalProperties": false,

                    "properties": {

                        "poi": {

                            "type": "object",

                            "additionalProperties": false,

                            "properties": {

                                "x": {

                                    "type": "number"

                                },

                                "y": {

                                    "type": "number"

                                },

                                "altitude": {

                                    "type": "number"

                                },

                                "viewerYaw": {

                                    "type": "number"

                                },

                                "viewerPitch": {

                                    "type": "number"

                                },

                                "distance": {

                                    "type": "number"

                                },

                                "isRelative": {

                                    "type": "boolean"

                                }

                            },

                            "required": [

                                "x",

                                "y",

                                "altitude",

                                "viewerYaw",

                                "viewerPitch",

                                "distance",

                                "isRelative"

                            ]

                        },

                        "TeObjectId": {

                            "type": "string",

                            "title": "TerraExplorer Object ID"

                        },

                        "duration": {

                            "type": "number",

                            "title": "Flight time (Seconds)",

                            "default": 3

                        },

                        "activationAction": {

                            "type": "string",

                            "enum": [

                                "Fly To",

                                "Circle pattern",

                                "Oval pattern",

                                "Line pattern",

                                "Arc pattern",

                                "Jump To"

                            ],

                            "title": "Activation Action"

                        },

                        "splineSpeedFunction": {

                            "type": "integer",

                            "title": "Spline Speed Easeing Function"

                        },

                        "splineTurnSpeedFunction": {

                            "type": "integer",

                            "title": "Spline Turn Speed Easeing Function"

                        }

                    }

                }

            }

        },

        "CaptionAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "additionalProperties": false,

            "title": "Caption",

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "Caption"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "captionText"

                    ],

                    "title": "Options",

                    "properties": {

                        "captionText": {

                            "type": "string",

                            "title": "Caption",

                            "default": "New caption"

                        },

                        "lifespan": {

                            "type": "string",

                            "enum": [

                                "Step",

                                "Time",

                                "Until replaced"

                            ],

                            "title": "Lifespan"

                        },

                        "timeOutInterval": {

                            "type": "number",

                            "title": "Duration (Seconds)"

                        },

                        "RTL": {

                            "type": "boolean",

                            "title": "Use Right to Left"

                        }

                    }

                }

            }

        },

        "WaitAction": {

            "type": "object",

            "required": [

                "actionType"

            ],

            "title": "Wait",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "Wait"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "duration": {

                            "type": "number",

                            "title": "Wait (Seconds)",

                            "minimum": 0.1,

                            "default": 5

                        }

                    }

                }

            }

        },

        "MessageAction": {

            "type": "object",

            "required": [

                "actionType",

                "description",

                "options"

            ],

            "title": "Message",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "Message"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "TeObjectId"

                    ],

                    "title": "Options",

                    "properties": {

                        "TeObjectId": {

                            "type": "string",

                            "title": "TerraExplorer Object ID"

                        }

                    }

                }

            }

        },

        "UndergroundModeAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "title": "Underground Mode",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "UndergroundMode"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "showUnderground"

                    ],

                    "title": "options",

                    "additionalProperties": false,

                    "properties": {

                        "showUnderground": {

                            "type": "boolean",

                            "title": "Underground mode"

                        }

                    }

                }

            }

        },

        "RouteWaypoint": {

            "type": "object",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string"

                },

                "x": {

                    "type": "number"

                },

                "y": {

                    "type": "number"

                },

                "altitude": {

                    "type": "number"

                },

                "yaw": {

                    "type": "number"

                },

                "pitch": {

                    "type": "number"

                },

                "dis": {

                    "type": "number"

                },

                "cameraYaw": {

                    "type": "number"

                },

                "cameraPitch": {

                    "type": "number"

                },

                "timeFromPrevWaypoint": {

                    "type": "number"

                }

            },

            "required": [],

            "title": "Route Waypoint"

        },

        "PlayRouteAction": {

            "type": "object",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string"

                },

                "id": {

                    "type": "string"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "PlayRoute"

                    ]

                },

                "options": {

                    "type": "object",

                    "additionalProperties": false,

                    "properties": {

                        "waypoints": {

                            "type": "array",

                            "minItems": 2,

                            "waypoints": {

                                "$ref": "#/definitions/RouteWaypoint"

                            }

                        }

                    }

                }

            },

            "required": [

                "actionType",

                "options"

            ],

            "title": "PlayRouteAction"

        },

        "SetTimeAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "title": "Set Time",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "SetTime"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "year",

                        "month",

                        "day",

                        "hour",

                        "minute",

                        "second"

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "year": {

                            "type": "integer",

                            "title": "Year"

                        },

                        "month": {

                            "type": "integer",

                            "title": "Month"

                        },

                        "day": {

                            "type": "integer",

                            "title": "Day"

                        },

                        "hour": {

                            "type": "integer",

                            "title": "Hour"

                        },

                        "minute": {

                            "type": "integer",

                            "title": "Minute"

                        },

                        "second": {

                            "type": "integer",

                            "title": "Second"

                        }

                    }

                }

            }

        },

        "PlayAnotherPresentationAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "title": "Play Another Presentation",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "PlayAnotherPresentation"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "TeObjectId"

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "TeObjectId": {

                            "type": "string",

                            "title": "TerraExplorer Presentation ID"

                        }

                    }

                }

            }

        },

        "PlayTimeAnimationAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "title": "Play Time Animation",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "PlayTimeAnimation"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "TeObjectId",

                        "Range"

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "Range": {

                            "type": "string",

                            "enum": [

                                "Project",

                                "Custom",

                                "Group"

                            ],

                            "title": "Time Range"

                        },

                        "duration": {

                            "type": "number",

                            "title": "Duration (Seconds)",

                            "default": 3

                        },

                        "startyear": {

                            "type": "integer",

                            "title": "Start Year"

                        },

                        "startmonth": {

                            "type": "integer",

                            "title": "Start Month"

                        },

                        "startday": {

                            "type": "integer",

                            "title": "Start Day"

                        },

                        "starthour": {

                            "type": "integer",

                            "title": "Start Hour"

                        },

                        "startminute": {

                            "type": "integer",

                            "title": "Start Minute"

                        },

                        "startsecond": {

                            "type": "integer",

                            "title": "Start Second"

                        },

                        "endyear": {

                            "type": "integer",

                            "title": "end Year"

                        },

                        "endmonth": {

                            "type": "integer",

                            "title": "endMonth"

                        },

                        "endday": {

                            "type": "integer",

                            "title": "End Day"

                        },

                        "endhour": {

                            "type": "integer",

                            "title": "End Hour"

                        },

                        "endminute": {

                            "type": "integer",

                            "title": "End Minute"

                        },

                        "endsecond": {

                            "type": "integer",

                            "title": "End Second"

                        },

                        "pathToGroup": {

                            "type": "string",

                            "title": "Path to a Group"

                        }

                    }

                }

            }

        },

        "TimeSliderAction": {

            "type": "object",

            "required": [

                "actionType",

                "options"

            ],

            "title": "Time Slider",

            "additionalProperties": false,

            "properties": {

                "description": {

                    "type": "string",

                    "title": "Description"

                },

                "id": {

                    "type": "string",

                    "title": "ID"

                },

                "actionType": {

                    "type": "string",

                    "enum": [

                        "TimeSlider"

                    ],

                    "title": "Action Type"

                },

                "options": {

                    "type": "object",

                    "required": [

                        "TeObjectId"

                    ],

                    "title": "Options",

                    "additionalProperties": false,

                    "properties": {

                        "pathToGroup": {

                            "type": "string",

                            "title": "Path to a Group"

                        }

                    }

                }

            }

        },

        "eventPresentationStarted": {

            "type": "object",

            "properties": {

                "eventName": {

                    "const": "Started"

                },

                "presentationId": {

                    "type": "string"

                },

                "flatPresentation": {

                    "type": "object",

                    "properties": {

                        "steps": {

                            "$ref": "#/definitions/PresentationStep"

                        }

                    }

                },

                "creatingMovie": {

                    "type": "boolean"

                }

            }

        },

        "eventActionStarted": {

            "eventName": {

                "const": "ActionStarting"

            },

            "itemId": {

                "type": "string"

            },

            "presentationId": {

                "type": "string"

            }

        },

        "eventActionFinished": {

            "eventName": {

                "const": "ActionFinished"

            },

            "itemId": {

                "type": "string"

            },

            "presentationId": {

                "type": "string"

            },

            "progress": {

                "type": "number",

                "minimum": 0,

                "maximum": 1

            }

        },

        "eventWaitProgress": {

            "type": "object",

            "properties": {

                "eventName": {

                    "const": "WaitProgress"

                },

                "itemId": {

                    "type": "string"

                },

                "presentationId": {

                    "type": "string"

                },

                "progress": {

                    "type": "number",

                    "minimum": 0,

                    "maximum": 1

                },

                "totalWaitTime": {

                    "type": "number"

                }

            }

        },

        "eventError": {

            "type": "object",

            "properties": {

                "eventName": {

                    "const": "Error"

                },

                "message": {

                    "type": "string"

                }

            }

        },

        "eventEditorOpening": {

            "type": "object",

            "properties": {

                "eventName": {

                    "const": "OpenEditor"

                },

                "presentationId": {

                    "type": "string"

                }

            }

        },

        "eventStatusChanged": {

            "type": "object",

            "properties": {

                "eventName": {

                    "const": "StatusChanged"

                },

                "presentationId": {

                    "type": "string"

                },

                "oldStatus": {

                    "$ref": "#/definitions/presentationStatus"

                },

                "newStatus": {

                    "$ref": "#/definitions/presentationStatus"

                }

            }

        },

        "presentationStatus": {

            "enum": [

                "FastRewinding",

                "PrevStepping",

                "Playing",

                "NextStepping",

                "FastForwarding",

                "Paused",

                "Stopped"

            ]

        }

    }

}

 

JavaScript

 

PresentationJSONSchema

 

C#

 

string PresentationJSONSchema { get; }

 

C++

 

HRESULT PresentationJSONSchema ([out,retval] BSTR pVal)

 

SettingsJSON

Gets and sets the section of the PresentationJSON that describes the presentation settings. The settings object has four properties:

§   loopPresentation – A Boolean that determines whether a presentation should automatically restart when the end of the presentation is reached.

§   unattendedPlayMode – A Boolean that determines whether the presentation advances between steps automatically as well as restarts presentation when the end is reached.

§   playSpeedFactor – Integer that determines the play speed factor of the presentation.

 

Example:

"settings": {

            "loopPresentation": false,

            "unattendedPlayMode": false,

            "playSpeedFactor": 1.0

        },

SeePresentationJSONSchema” in this chapter for more information.

 

 

JavaScript

 

SettingsJSON

 

C#

 

string SettingsJSON { get; set; }

 

C++

 

HRESULT SettingsJSON ([in] BSTR pVal)

HRESULT SettingsJSON ([out,retval] BSTR pVal)

 

SpeedFactor

Gets and sets the play speed factor of the presentation.

 

JavaScript

 

SpeedFactor

 

C#

 

double SpeedFactor { get; set; }

 

C++

 

HRESULT SpeedFactor([in] double pVal)

HRESULT SpeedFactor([out,retval] double pVal)

 

Status

Gets the status of the presentation. The following are the possible values:

§   PrevStepping – The presentation was rewound to play from the previous step.

§   Playing – The presentation is playing.

§   NextStepping - The presentation was fast forward to play from the next step.

§   Paused – Playback of the presentation was paused.

§   Stopped – Playback of the presentation was stopped.

Graphical user interface, text, application, chat or text message Description automatically generated

JavaScript

 

Status

 

C#

 

string Status { get; }

 

C++

 

HRESULT Status ([out,retval] BSTR pVal)

 

CopyItem

Copies and pastes an item in a presentation.

 

JavaScript

 

CopyItem(

       ItemID,

       NewParentID,

       InsertBeforeID)

 

C#

 

void CopyItem (

       string ItemID,

       string, NewParentID,

       string InsertBeforeID)

 

C++

 

HRESULT CopyItem (

       [in] BSTR ItemID,

       [in] BSTR NewParentID,

       [in] BSTR InsertBeforeID)

Parameters

ItemID

The ID of the presentation item to copy.

NewParentID

The ID of the presentation step in which the copied itemis pasted.

InsertBeforeID

The ID of the presentation action before which the copied item should be pasted.

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

CreateAction

Creates a presentation action. Presentations are created from a combination of actions and steps. Actions are the specific activities that the presentation tool is to perform when the presentation is played, such as 'Record Route' or 'Show Object'. While steps are like "chapter headings" that group together related actions and provide increased flexibility for displaying a presentation by enabling you to quickly jump from one step to another in the presentation.

 

JavaScript

 

CreateAction(

       ActionData)

 

C#

 

IPresentationItem80 CreateAction (

       string ActionData)

 

C++

 

HRESULT CreateAction (

       [in] BSTR ActionData,

       {out, retval] IPresentationItem80** pIPresentationItem80)

Parameters

ActionData

The section of the PresentationJSON that describes the presentation action being created. For example:

 {

                        "description": "Hide CellTower Airmap",

                        "actionType": "Hide",

                        "options": {

                            "pathToGroup": "3D City Models\\Close-Range Projects\\CellTower Airmap"

                        }

                    }

OR

{

                        "description": "Fly to: [-81.4987, 41.0084]",

                        "actionType": "FlyTo",

                        "options": {

                            "poi": {

                                "x": -81.498679,

                                "y": 41.008367,

                                "altitude": 302.502045,

                                "viewerYaw": 382.596884,

                                "viewerPitch": -32.975953,

                                "distance": 6809.840545,

                                "isRelative": false

                            }

                        }

                    }

SeePresentationJSONSchema” in this chapter for more information.

Return Value

pIPresentationItem80

An IPresentationItem80 representing the presentation action that was created.  

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

CreateMovie

Creates a movie in AVI or WMV format from a FLY project presentation. The recorded movie can be played back using any standard AVI or WMV Viewer. Size is recommended to be aligned to 2.

 

JavaScript

 

CreateMovie(

       FrameSize,

       FramesPerSecond,

       HideOverlay)

 

C#

 

string CreateMovie(

       [in] int FrameSize,

       [in] int FramesPerSecond,

       [in] bool HideOverlay)

 

C++

 

HRESULT CreateMovie(

       [in] long FrameSize,

       [in] long FramesPerSecond,

       [in] VARIANT_BOOL HideOverlay)

Parameters

FrameSize

An integer that determines the size of each frame. The following are the possible values:

·          0 – 640x480 (NTSC Online)

·          1 – 768x576 (PAL Online)

·          2 – 720x480 (SD 480p)

·          3 – 1280x720 (HD 720p)

·          4 – 1920x1080 (HD1080p)

FramesPerSecond

The number of movie frames per second.

HideOverlay

A Boolean that determines whether HUD controls will be shown in the recorded movie. When set to FALSE, any HUD control that is visible during the creation of the movie will be shown in the movie as well. The presentation control will never be shown (even if HideScreenOverlays is set to FALSE).

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

CreateStep

Creates a presentation step. Presentations are created from a combination of actions and steps. Actions are the specific activities that the presentation tool is to perform when the presentation is played, such as 'Record Route' or 'Show Object'. While steps are like "chapter headings" that group together related actions and provide increased flexibility for displaying a presentation by enabling you to quickly jump from one step to another in the presentation.

 

JavaScript

 

CreateStep(

       Description)

 

C#

 

IPresentationItem80 CreateStep (

       string Description)

 

C++

 

HRESULT CreateStep (

       [in] BSTR Description,

       {out, retval] IPresentationItem80** pIPresentationItem80)

Parameters

Description

A description (title) of the presentation step being created.

Return Value

pIPresentationItem80

An IPresentationItem80 representing the presentation step that was created. 

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

DeleteItem

Deletes an item in a presentation.

 

JavaScript

 

DeleteItem(

       ItemID)

 

C#

 

void DeleteItem (

       string ItemID)

 

C++

 

HRESULT DeleteItem (

       [in] BSTR ItemID)

Parameters

ItemID

The ID of the presentation item to be deleted.

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

GetItem

Returns an interface to the presentation item based on its ID. If this item and its ID were defined in a PresentationJSON, this ID should be passed. Otherwise the ID automatically generated by the system should be passed.

 

JavaScript

 

GetItem (

       ItemID)

 

C#

 

IPresentationItem80 GetItem (

       string ItemID)

 

C++

 

HRESULT GetItem (

       [in] BSTR ItemID,

       [out, retval] IPresentationItem80** pIPresentationItem80)

Parameters

ItemID

The ID of the presentation item requested. Returns a presentation item based on its ID. If this item and its ID were defined in a PresentationJSON, this ID is returned. Otherwise an ID automatically generated by the system is returned.

Return Value

pIPresentationItem80

An IPresentationItem80 representing the presentation item with the specified ID.

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

GetItemPosition

Returns the position of a specific item in the list of presentation items using its ID.

 

JavaScript

 

GetItemPosition(

       ItemID)

 

C#

 

IPosition80 GetItemPosition (

       string ItemID)

 

C++

 

HRESULT GetItemPosition (

       [in] BSTR ItemID,

       {out, retval] IPosition80** pVal)

Parameters

ItemID

The ID of the presentation item whose position you want to retrieve .

Return Value

pVal

An IPosition80 representing the position of the item in the presentation list.

 

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

MoveItem

Moves a presentationitem to a new position in the presentation’s list of items.

 

JavaScript

 

MoveItem(

       ItemID

       NewParentID

       InsertBeforeID)

 

C#

 

void MoveItem (

       string ItemID,

       string, NewParentID,

       string InsertBeforeID)

 

C++

 

HRESULT MoveItem (

       [in] BSTR ItemID,

       [in] BSTR NewParentID,

       [in] BSTR InsertBeforeID)

Parameters

ItemID

The ID of the presentation item to move.

NewParentID

The ID of the presentation step under which the itemis moved.

InsertBeforeID

The ID of the presentation action before which the moved item should be placed.

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

 

NextStep

Fast forwards the presentation and plays from the next step.

 

JavaScript

 

NextStep()

 

C#

 

void NextStep()

 

C++

 

HRESULT NextStep()

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

Pause

Pauses the playback of the presentation. When the presentation is resumed, it continues from the point at which it was paused.

 

JavaScript

 

Pause()

 

C#

 

void Pause()

 

C++

 

HRESULT Pause()

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

Play

Plays a presentation from the beginning. If this method is called after Pause, the playing of the presentation is resumed from the step at which it was paused.

 

JavaScript

 

Play()

 

C#

 

void Play()

 

C++

 

HRESULT Play()

 

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

PlayFromID

Plays from a specified presentation step.

 

JavaScript

 

PlayFromID(

       PresentationItemID)

 

C#

 

void PlayFromID (

       string PresentationItemID)

 

C++

 

HRESULT PlayFromID (

       [in] BSTR PresentationItemID)

Parameters

PresentationItemID

The ID of the presentation step from which to start playing.

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

PreviousStep

Rewinds the presentation and plays from the previous step.

 

JavaScript

 

PreviousStep()

 

C#

 

void PreviousStep()

 

C++

 

HRESULT PreviousStep()

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

ShowPath

Shows the flight path of the presentation.

 

JavaScript

 

ShowPath (

       ItemID,

       Show,

       withAnimation)

 

C#

 

void ShowPath (

       string ItemID,

       bool Show,

       bool withAnimation)

 

C++

 

HRESULT ShowPath (

       [in] BSTR ItemID,

       [in] VARIANT_BOOL Show,

       [in] VARIANT_BOOL withAnimation)

Parameters

ItemID

The ID of the presentation item.

Show

A Boolean that determines whether the path is shown.

withAnimation

A Boolean that determines whether a small 3D camera that moves along the path is shown.

 

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

SkipAction

Skips the next action in the presentation.

 

JavaScript

 

SkipAction ()

 

C#

 

void SkipAction ()

 

C++

 

HRESULT SkipAction ()

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

 

Stop

Stops the playback of the presentation.

 

JavaScript

 

Stop()

 

C#

 

void Stop()

 

C++

 

HRESULT Stop()

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.

StopMovie

Stops the movie creation. If you stop the process before it is completed, the movie is created up to the moment this method is called.

 

JavaScript

 

StopMovie ()

 

C#

 

void StopMovie ()

 

C++

 

HRESULT StopMovie ()

 

Exceptions

See: HRESULT Return Values for a list of possible values returned by the HRESULT.