/// <summary> /// /// </summary> /// <returns></returns> public string GenKmlModelCache(string modelPath, EarthView.World.Graphic.SceneManager sceneMgr) { IntPtr __ptr = EarthView_World_Spatial3D_KmlManager_CKmlCacheManager_genKmlModelCache_EVString_EVString_CSceneManager(this.NativeObject, modelPath, object.Equals(sceneMgr, null) ? IntPtr.Zero : sceneMgr.NativeObject); string ret = Marshal.PtrToStringAnsi(__ptr); ClassFactory.FreeString(ref __ptr); return(ret); }
/// <summary> /// 构造函数 /// </summary> /// <param name="pSceneManager">场景管理器</param> /// <returns></returns> public ModelObjectManager(EarthView.World.Graphic.SceneManager ref_pSceneManager) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valueref_pSceneManager = new BasePtr(ref_pSceneManager); list.Add("ref_pSceneManager", valueref_pSceneManager.PtrVal); Create("CModelObjectManager", list); RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
public ClampLineExtension(EarthView.World.Graphic.SceneManager sceneMgr, string group) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valuesceneMgr = new BasePtr(sceneMgr); list.Add("sceneMgr", valuesceneMgr.PtrVal); BasePtr valuegroup = new BasePtr(group); list.Add("group", valuegroup.PtrVal); Create("CClampLineExtension", list); RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
/// <summary> /// 构造函数 /// </summary> /// <param name="scenemanager">场景管理器</param> /// <param name="type">点类型</param> /// <param name="estimatedCount">预设点个数</param> /// <returns></returns> public ScreenPolygon(EarthView.World.Graphic.SceneManager ref_scenemanager) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valueref_scenemanager = new BasePtr(ref_scenemanager); list.Add("ref_scenemanager", valueref_scenemanager.PtrVal); Create("CScreenPolygonProxy", list); if (!"EarthView.World.Geometry3D.ScreenPolygon".Equals(((Object)this).GetType().ToString())) { this.SetCustomExtend(true); } RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
/// <summary> /// 构造函数 /// </summary> /// <param name="pSceneManager">场景管理器</param> /// <param name="pModelDataSource">模型数据源,不能为NULL</param> /// <param name="pEffectDataSource">特效数据源</param> /// <returns></returns> public ModelEffectManager(EarthView.World.Graphic.SceneManager ref_pSceneManager, EarthView.World.Spatial3D.Dataset.ModelDataSource ref_pModelDataSource, EarthView.World.Spatial3D.Dataset.EffectDataSource ref_pEffectDataSource) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valueref_pSceneManager = new BasePtr(ref_pSceneManager); list.Add("ref_pSceneManager", valueref_pSceneManager.PtrVal); BasePtr valueref_pModelDataSource = new BasePtr(ref_pModelDataSource); list.Add("ref_pModelDataSource", valueref_pModelDataSource.PtrVal); BasePtr valueref_pEffectDataSource = new BasePtr(ref_pEffectDataSource); list.Add("ref_pEffectDataSource", valueref_pEffectDataSource.PtrVal); Create("CModelEffectManager", list); RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
public RotorWash(EarthView.World.Graphic.SceneManager sceneManager, double pRotorDiameter, bool pUseDecals) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valuesceneManager = new BasePtr(sceneManager); list.Add("sceneManager", valuesceneManager.PtrVal); BasePtr valuepRotorDiameter = new BasePtr(pRotorDiameter); list.Add("pRotorDiameter", valuepRotorDiameter.PtrVal); BasePtr valuepUseDecals = new BasePtr(pUseDecals); list.Add("pUseDecals", valuepUseDecals.PtrVal); Create("RotorWash", list); RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
/// <summary> /// 构造函数,宽线贴纹理 /// </summary> /// <param name="estimatedVertexCount">预估的点数(不要求非常精准)</param> /// <param name="texture">纹理</param> /// <returns></returns> public ScreenLine(EarthView.World.Graphic.SceneManager ref_scenemanager, uint estimatedCount, ref EarthView.World.Core.DataStreamPtr texture) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valueref_scenemanager = new BasePtr(ref_scenemanager); list.Add("ref_scenemanager", valueref_scenemanager.PtrVal); BasePtr valueestimatedCount = new BasePtr(estimatedCount); list.Add("estimatedCount", valueestimatedCount.PtrVal); BasePtr valuetexture = new BasePtr(texture); list.Add("texture", valuetexture.PtrVal); Create("CScreenLineProxy", list); if (!"EarthView.World.Geometry3D.ScreenLine".Equals(((Object)this).GetType().ToString())) { this.SetCustomExtend(true); } RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
public EarthView.World.Graphic.SceneManager GetSceneManager() { IntPtr __ptr = EarthView_World_Spatial3D_Atlas_CBingMapTree_getSceneManager_CSceneManager(this.NativeObject); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Graphic.SceneManager csObj = new EarthView.World.Graphic.SceneManager(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "CSceneManager"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Graphic.SceneManager; csObj.BindNativeObject(__ptr, "CSceneManager"); csObj.Delegate = true; } return(csObj); }
protected void EarthView_World_Graphic_CRenderQueueListener_renderQueueEnded_void_CSceneManager_ev_uint8_EVString_ev_bool_Function(IntPtr pSceneMgr, byte queueGroupId, ref IntPtr invocation, ref byte repeatThisInvocation) { EarthView.World.Graphic.SceneManager csobj_pSceneMgr = new EarthView.World.Graphic.SceneManager(CreatedWhenConstruct.CWC_NotToCreate); csobj_pSceneMgr.BindNativeObject(pSceneMgr, "CSceneManager"); csobj_pSceneMgr.Delegate = true; IClassFactory csobj_pSceneMgrClassFactory = GlobalClassFactoryMap.Get(csobj_pSceneMgr.GetCppInstanceTypeName()); if (csobj_pSceneMgrClassFactory != null) { csobj_pSceneMgr.Delegate = true; csobj_pSceneMgr = csobj_pSceneMgrClassFactory.Create() as EarthView.World.Graphic.SceneManager; csobj_pSceneMgr.BindNativeObject(pSceneMgr, "CSceneManager"); csobj_pSceneMgr.Delegate = true; } string strinvocation = Marshal.PtrToStringAnsi(invocation); ClassFactory.FreeString(ref invocation); bool repeatThisInvocationBool = Convert.ToBoolean(repeatThisInvocation); RenderQueueEnded(csobj_pSceneMgr, queueGroupId, strinvocation, ref repeatThisInvocationBool); repeatThisInvocation = Convert.ToByte(repeatThisInvocationBool); }
/// <summary> /// 销毁可见对象组,不负责组内对象的销毁 /// </summary> /// <param name="pSceneManager">场景管理器</param> /// <returns></returns> public void DestroyObjectManager(EarthView.World.Graphic.SceneManager pSceneManager) { EarthView_World_Spatial3D_ModelManager_CModelObjectGroupManager_destroyObjectManager_void_CSceneManager(this.NativeObject, object.Equals(pSceneManager, null) ? IntPtr.Zero : pSceneManager.NativeObject); }
public void SetSceneManager(EarthView.World.Graphic.SceneManager sceneManager) { EarthView_World_Spatial3D_Atlas_CBingMapTree_setSceneManager_void_CSceneManager(this.NativeObject, object.Equals(sceneManager, null) ? IntPtr.Zero : sceneManager.NativeObject); }
/// <summary> /// 在每帧更新场景图前触发 /// </summary> /// <returns></returns> public new void PreUpdateSceneGraph_NoVirtual(EarthView.World.Graphic.SceneManager source, EarthView.World.Graphic.Camera camera) { EarthView_IndustryEngine_DynamicModelLibrary_CDynamicModelManagerListener_preUpdateSceneGraph_void_CSceneManager_CCamera_NoVirtual(this.NativeObject, object.Equals(source, null) ? IntPtr.Zero : source.NativeObject, object.Equals(camera, null) ? IntPtr.Zero : camera.NativeObject); }
/// <summary> /// 创建可见对象组,此对象组与camera一 一对应,为了适应同一个scenemanager里的多个视口情况 /// 为了线程安全,函数里会拷贝一个传入的camera对象 /// </summary> /// <param name="pSceneManager">场景管理器</param> /// <returns>对象组</returns> public EarthView.World.Spatial3D.ModelManager.ModelObjectManager CreateObjectManager(EarthView.World.Graphic.SceneManager ref_pSceneManager) { IntPtr __ptr = EarthView_World_Spatial3D_ModelManager_CModelObjectGroupManager_createObjectManager_CModelObjectManager_CSceneManager(this.NativeObject, object.Equals(ref_pSceneManager, null) ? IntPtr.Zero : ref_pSceneManager.NativeObject); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Spatial3D.ModelManager.ModelObjectManager csObj = new EarthView.World.Spatial3D.ModelManager.ModelObjectManager(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "CModelObjectManager"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Spatial3D.ModelManager.ModelObjectManager; csObj.BindNativeObject(__ptr, "CModelObjectManager"); csObj.Delegate = true; } return(csObj); }
//// CFunction to implement -- must set the shadow camera properties /// <summary> /// 摄像机阴影类默认函数 /// </summary> /// <param name="sm"></param> /// <param name="cam"></param> /// <param name="vp"></param> /// <param name="light"></param> /// <param name="texCam"></param> /// <param name="iteration"></param> /// <returns></returns> public virtual void GetShadowCamera_NoVirtual(EarthView.World.Graphic.SceneManager sm, EarthView.World.Graphic.Camera cam, EarthView.World.Graphic.Viewport vp, EarthView.World.Graphic.Light light, EarthView.World.Graphic.Camera texCam, ulong iteration) { EarthView_World_Graphic_CShadowCameraSetup_getShadowCamera_void_CSceneManager_CCamera_CViewport_CLight_CCamera_ev_size_t_NoVirtual(this.NativeObject, object.Equals(sm, null) ? IntPtr.Zero : sm.NativeObject, object.Equals(cam, null) ? IntPtr.Zero : cam.NativeObject, object.Equals(vp, null) ? IntPtr.Zero : vp.NativeObject, object.Equals(light, null) ? IntPtr.Zero : light.NativeObject, object.Equals(texCam, null) ? IntPtr.Zero : texCam.NativeObject, iteration); }
protected void EarthView_World_Graphic_CShadowCameraSetup_getShadowCamera_void_CSceneManager_CCamera_CViewport_CLight_CCamera_ev_size_t_Function(IntPtr sm, IntPtr cam, IntPtr vp, IntPtr light, IntPtr texCam, ulong iteration) { EarthView.World.Graphic.SceneManager csobj_sm = new EarthView.World.Graphic.SceneManager(CreatedWhenConstruct.CWC_NotToCreate); csobj_sm.BindNativeObject(sm, "CSceneManager"); csobj_sm.Delegate = true; IClassFactory csobj_smClassFactory = GlobalClassFactoryMap.Get(csobj_sm.GetCppInstanceTypeName()); if (csobj_smClassFactory != null) { csobj_sm.Delegate = true; csobj_sm = csobj_smClassFactory.Create() as EarthView.World.Graphic.SceneManager; csobj_sm.BindNativeObject(sm, "CSceneManager"); csobj_sm.Delegate = true; } EarthView.World.Graphic.Camera csobj_cam = new EarthView.World.Graphic.Camera(CreatedWhenConstruct.CWC_NotToCreate); csobj_cam.BindNativeObject(cam, "CCamera"); csobj_cam.Delegate = true; IClassFactory csobj_camClassFactory = GlobalClassFactoryMap.Get(csobj_cam.GetCppInstanceTypeName()); if (csobj_camClassFactory != null) { csobj_cam.Delegate = true; csobj_cam = csobj_camClassFactory.Create() as EarthView.World.Graphic.Camera; csobj_cam.BindNativeObject(cam, "CCamera"); csobj_cam.Delegate = true; } EarthView.World.Graphic.Viewport csobj_vp = new EarthView.World.Graphic.Viewport(CreatedWhenConstruct.CWC_NotToCreate); csobj_vp.BindNativeObject(vp, "CViewport"); csobj_vp.Delegate = true; IClassFactory csobj_vpClassFactory = GlobalClassFactoryMap.Get(csobj_vp.GetCppInstanceTypeName()); if (csobj_vpClassFactory != null) { csobj_vp.Delegate = true; csobj_vp = csobj_vpClassFactory.Create() as EarthView.World.Graphic.Viewport; csobj_vp.BindNativeObject(vp, "CViewport"); csobj_vp.Delegate = true; } EarthView.World.Graphic.Light csobj_light = new EarthView.World.Graphic.Light(CreatedWhenConstruct.CWC_NotToCreate); csobj_light.BindNativeObject(light, "CLight"); csobj_light.Delegate = true; IClassFactory csobj_lightClassFactory = GlobalClassFactoryMap.Get(csobj_light.GetCppInstanceTypeName()); if (csobj_lightClassFactory != null) { csobj_light.Delegate = true; csobj_light = csobj_lightClassFactory.Create() as EarthView.World.Graphic.Light; csobj_light.BindNativeObject(light, "CLight"); csobj_light.Delegate = true; } EarthView.World.Graphic.Camera csobj_texCam = new EarthView.World.Graphic.Camera(CreatedWhenConstruct.CWC_NotToCreate); csobj_texCam.BindNativeObject(texCam, "CCamera"); csobj_texCam.Delegate = true; IClassFactory csobj_texCamClassFactory = GlobalClassFactoryMap.Get(csobj_texCam.GetCppInstanceTypeName()); if (csobj_texCamClassFactory != null) { csobj_texCam.Delegate = true; csobj_texCam = csobj_texCamClassFactory.Create() as EarthView.World.Graphic.Camera; csobj_texCam.BindNativeObject(texCam, "CCamera"); csobj_texCam.Delegate = true; } GetShadowCamera(csobj_sm, csobj_cam, csobj_vp, csobj_light, csobj_texCam, iteration); }
/// <summary> /// 相机锁定输入交互控制器构造函数 /// </summary> /// <param name="ref_camera">相机</param> /// <param name="ref_sceneManager">场景管理器</param> /// <param name="ref_viewport">视口</param> /// <param name="ref_dynamicModelManager">动态目标管理器,该参数对象的生命周期要与本对象保持一致</param> /// <param name="ref_globeControl">地球窗体</param> public DynamicCameraLockHandler(EarthView.World.Spatial3D.GlobeCamera ref_camera, EarthView.World.Graphic.SceneManager ref_sceneManager, EarthView.World.Graphic.Viewport ref_viewport, EarthView.IndustryEngine.DynamicModelLibrary.DynamicModelObjectManager ref_dynamicModelManager, EarthView.World.Spatial3D.Controls.GlobeControl ref_globeControl) : base(CreatedWhenConstruct.CWC_NotToCreate) { NameValuePairList list = new NameValuePairList(); BasePtr valueref_camera = new BasePtr(ref_camera); list.Add("ref_camera", valueref_camera.PtrVal); BasePtr valueref_sceneManager = new BasePtr(ref_sceneManager); list.Add("ref_sceneManager", valueref_sceneManager.PtrVal); BasePtr valueref_viewport = new BasePtr(ref_viewport); list.Add("ref_viewport", valueref_viewport.PtrVal); BasePtr valueref_dynamicModelManager = new BasePtr(ref_dynamicModelManager); list.Add("ref_dynamicModelManager", valueref_dynamicModelManager.PtrVal); BasePtr valueref_globeControl = new BasePtr(ref_globeControl); list.Add("ref_globeControl", valueref_globeControl.PtrVal); Create("CDynamicCameraLockHandlerProxy", list); if (!"EarthView.IndustryEngine.DynamicModelLibrary.DynamicCameraLockHandler".Equals(((Object)this).GetType().ToString())) { this.SetCustomExtend(true); } RegisterCallBack(); this.needDispose = true; GlobalTraceInfoMap.Put(this); }
/// <summary> /// 获取工厂句柄 /// </summary> /// <returns>失败则返回NULL</returns> public static EarthView.World.Spatial3D.ModelManager.LodObjectFactory GetFactory(EarthView.World.Graphic.SceneManager pSceneManager) { IntPtr __ptr = EarthView_World_Spatial3D_ModelManager_CLodObjectFactory_getFactory_CLodObjectFactory_CSceneManager(object.Equals(pSceneManager, null) ? IntPtr.Zero : pSceneManager.NativeObject); if (__ptr == IntPtr.Zero) { return(null); } EarthView.World.Spatial3D.ModelManager.LodObjectFactory csObj = new EarthView.World.Spatial3D.ModelManager.LodObjectFactory(CreatedWhenConstruct.CWC_NotToCreate); csObj.BindNativeObject(__ptr, "CLodObjectFactory"); csObj.Delegate = true; IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName()); if (csObjClassFactory != null) { csObj.Delegate = true; csObj = csObjClassFactory.Create() as EarthView.World.Spatial3D.ModelManager.LodObjectFactory; csObj.BindNativeObject(__ptr, "CLodObjectFactory"); csObj.Delegate = true; } return(csObj); }
/// <summary> /// 在渲染队列组被渲染之后事件通知 /// </summary> /// <param name="queueGroupId">队列组的ID号</param> /// <param name="invocation"></param> /// <param name="skipThisInvocation"></param> /// <returns></returns> public virtual void RenderQueueEnded(EarthView.World.Graphic.SceneManager pSceneMgr, byte queueGroupId, string invocation, ref bool repeatThisInvocation) { EarthView_World_Graphic_CRenderQueueListener_renderQueueEnded_void_CSceneManager_ev_uint8_EVString_ev_bool(this.NativeObject, object.Equals(pSceneMgr, null) ? IntPtr.Zero : pSceneMgr.NativeObject, queueGroupId, invocation, ref repeatThisInvocation); }
public override void PostUpdateSceneGraph(EarthView.World.Graphic.SceneManager source, EarthView.World.Graphic.Camera camera) { base.PostUpdateSceneGraph_NoVirtual(source, camera); }
public new void PreUpdateSceneGraph_NoVirtual(EarthView.World.Graphic.SceneManager source, EarthView.World.Graphic.Camera camera) { EarthView_World_Spatial3D_Controls_CCameraNodeTrackSceneManagerListener_preUpdateSceneGraph_void_CSceneManager_CCamera_NoVirtual(this.NativeObject, object.Equals(source, null) ? IntPtr.Zero : source.NativeObject, object.Equals(camera, null) ? IntPtr.Zero : camera.NativeObject); }
public override void SceneManagerDestroyed(EarthView.World.Graphic.SceneManager source) { base.SceneManagerDestroyed_NoVirtual(source); }
public override void PostFindVisibleObjects(EarthView.World.Graphic.SceneManager source, EarthView.World.Graphic.SceneManager.ILLUMINATIONRENDERSTAGE irs, EarthView.World.Graphic.Viewport v) { base.PostFindVisibleObjects_NoVirtual(source, irs, v); }