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 ); };