SkylineGlobe 6.6 开放的事件函数接口

SkylineGlobe 6.6 开放的事件函数接口:

struct __declspec(uuid("84ce9e1b-65ad-11d5-85c1-0001023952c1"))
_ISGWorld66Events : IDispatch
{
    //
    // Wrapper methods for error-handling
    //

    // Methods:
    HRESULT OnLoadFinished (
        VARIANT_BOOL bSuccess );
    HRESULT OnFileClosing ( );
    HRESULT OnFrame ( );
    HRESULT OnSGWorldMessage (
        _bstr_t MessageID,
        _bstr_t SourceObjectID,
        VARIANT_BOOL * pbHandled );
    HRESULT OnObjectAction (
        _bstr_t ObjectID,
        struct IAction66 * Action );
    HRESULT OnFileSave ( );
    HRESULT OnRenderQualityChanged (
        int Quality );
    HRESULT OnInputModeChanged (
        enum MouseInputMode NewMode );
    HRESULT OnLButtonDown (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnLButtonUp (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnMButtonDown (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnMButtonUp (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnRButtonDown (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnRButtonUp (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnMouseWheel (
        long Flags,
        short zDelta,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnProjectTreeAction (
        _bstr_t ID,
        struct IAction66 * Action );
    HRESULT OnSGWorld (
        long EventID,
        const _variant_t & EventParam );
    HRESULT OnDrawHUD ( );
    HRESULT OnLButtonDblClk (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnRButtonDblClk (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnMButtonDblClk (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnCreateBasicKit (
        _bstr_t BasicKitFolder,
        _bstr_t BasicKitFileName );
    HRESULT OnLayerStreaming (
        _bstr_t LayerGroupID,
        VARIANT_BOOL bStreaming );
    HRESULT OnDateTimeChanged (
        const _variant_t & DateTime );
    HRESULT OnContainerChanged (
        enum ContainerOperation Operation,
        struct IContainerItem66 * ContainerItem );
    HRESULT OnCommandValueChanged (
        long CommandID,
        const _variant_t & newVal );
    HRESULT OnFileClosed ( );
    HRESULT OnPresentationStatusChanged (
        _bstr_t PresentationID,
        enum PresentationStatus Status );
    HRESULT OnPresentationFlyToReachedDestination (
        _bstr_t PresentationID,
        struct IPresentationStep66 * Step );
    HRESULT OnBeforePresentationItemActivation (
        _bstr_t PresentationID,
        struct IPresentationStep66 * Step );
    HRESULT OnPresentationPlayTimeAnimationEnded (
        _bstr_t PresentationID,
        struct IPresentationStep66 * Step );
    HRESULT OnAnalysisProgress (
        long CurrPos,
        long Range,
        VARIANT_BOOL * pbCancelled );
    HRESULT OnAnalysisDistancePointAdded (
        struct IGeometry * pRuler,
        double AerialDist,
        double HorizontalDist,
        double Slope,
        double ElevationDifference );
    HRESULT OnLButtonClicked (
        long Flags,
        int X,
        int Y,
        VARIANT_BOOL * pbHandled );
    HRESULT OnDataSourceFeatureIdChanged (
        _bstr_t ObjectID,
        _bstr_t OldFeatureId,
        _bstr_t NewFeatureId );
};
原文地址:https://www.cnblogs.com/yitianhe/p/5200908.html