public static void DeleteAllElementsByName(object object_0, string string_0) { if (object_0 is IScenePlugin) { IGraphicsContainer3D graphicsContainer3D = (object_0 as IScenePlugin).Scene.BasicGraphicsLayer as IGraphicsContainer3D; graphicsContainer3D.Reset(); for (IElementProperties elementProperties = graphicsContainer3D.Next() as IElementProperties; elementProperties != null; elementProperties = (graphicsContainer3D.Next() as IElementProperties)) { if (elementProperties.Name.ToLower() == string_0.ToLower()) { graphicsContainer3D.DeleteElement(elementProperties as IElement); graphicsContainer3D.Reset(); } } if (graphicsContainer3D.ElementCount > 0) { if (string_0 == "") { graphicsContainer3D.DeleteAllElements(); } else { graphicsContainer3D.Reset(); for (IElementProperties elementProperties = graphicsContainer3D.Next() as IElementProperties; elementProperties != null; elementProperties = (graphicsContainer3D.Next() as IElementProperties)) { if (elementProperties.Name.ToLower() == string_0.ToLower()) { graphicsContainer3D.DeleteElement(elementProperties as IElement); graphicsContainer3D.Reset(); } } } } } else if (object_0 is IGraphicsContainer3D) { IGraphicsContainer3D graphicsContainer3D = object_0 as IGraphicsContainer3D; if (graphicsContainer3D.ElementCount > 0) { if (string_0 == "") { graphicsContainer3D.DeleteAllElements(); } else { graphicsContainer3D.Reset(); for (IElementProperties elementProperties = graphicsContainer3D.Next() as IElementProperties; elementProperties != null; elementProperties = (graphicsContainer3D.Next() as IElementProperties)) { if (elementProperties.Name.ToLower() == string_0.ToLower()) { graphicsContainer3D.DeleteElement(elementProperties as IElement); graphicsContainer3D.Reset(); } } } } } }
/// <summary> /// 删除指定名称的 Element 张琪 20110628 /// </summary> /// <param name="pScene"></param> /// <param name="sName"></param> public static void DeleteAllElementsWithName(IScene pScene, string sName) { IElement pElement; IGraphicsContainer3D pGCon3D = pScene.BasicGraphicsLayer as IGraphicsContainer3D; if (pGCon3D.ElementCount > 0) { pGCon3D.Reset(); pElement = pGCon3D.Next() as IElement; while (pElement != null) { IElementProperties pElemProps = pElement as IElementProperties; if (pElemProps.Name == sName) { pGCon3D.DeleteElement(pElement); pGCon3D.Reset(); } pElement = pGCon3D.Next() as IElement; } } }
/// <summary> /// 找指定名称的Element /// </summary> /// <param name="pGC"></param> /// <param name="name"></param> /// <returns></returns> public static IElement GetElementByName(IGraphicsContainer3D pGC, string name) { IElement result = null; IElement pElement = null; IElementProperties pElemProps = null; pGC.Reset(); pElement = pGC.Next(); while (pElement != null) { pElemProps = (IElementProperties)pElement; if (pElemProps.Name == name) { result = pElement; } pElement = pGC.Next(); } return(result); }
public static void DeleteFlyByElement(ISceneGraph isceneGraph_0, FlyByUtils.FlyByElementType flyByElementType_0, bool bool_0) { IGraphicsLayer basicGraphicsLayer = isceneGraph_0.Scene.BasicGraphicsLayer; IGraphicsContainer3D graphicsContainer3D = basicGraphicsLayer as IGraphicsContainer3D; switch (flyByElementType_0) { case FlyByUtils.FlyByElementType.FLYBY_PATH: if (FlyByUtils.pPathElem != null) { graphicsContainer3D.DeleteElement(FlyByUtils.pPathElem); } break; case FlyByUtils.FlyByElementType.FLYBY_OBSERVER: if (FlyByUtils.pObserverElem != null) { graphicsContainer3D.DeleteElement(FlyByUtils.pObserverElem); } break; case FlyByUtils.FlyByElementType.FLYBY_TARGET: if (FlyByUtils.pTargetElem != null) { graphicsContainer3D.DeleteElement(FlyByUtils.pTargetElem); } break; case FlyByUtils.FlyByElementType.FLYBY_STATIC: graphicsContainer3D.Reset(); for (IElementProperties elementProperties = graphicsContainer3D.Next() as IElementProperties; elementProperties != null; elementProperties = (graphicsContainer3D.Next() as IElementProperties)) { if (elementProperties.Name == "SceneFlyBy.StaticLoc") { graphicsContainer3D.DeleteElement(elementProperties as IElement); break; } } break; case FlyByUtils.FlyByElementType.FLYBY_BACKDROP: graphicsContainer3D.Reset(); for (IElementProperties elementProperties = graphicsContainer3D.Next() as IElementProperties; elementProperties != null; elementProperties = (graphicsContainer3D.Next() as IElementProperties)) { if (elementProperties.Name == "_BACKDROP_") { graphicsContainer3D.DeleteElement(elementProperties as IElement); break; } } break; case FlyByUtils.FlyByElementType.FLYBY_ALL: if (FlyByUtils.pPathElem != null) { graphicsContainer3D.DeleteElement(FlyByUtils.pPathElem); } if (FlyByUtils.pObserverElem != null) { graphicsContainer3D.DeleteElement(FlyByUtils.pObserverElem); } if (FlyByUtils.pTargetElem != null) { graphicsContainer3D.DeleteElement(FlyByUtils.pTargetElem); } graphicsContainer3D.Reset(); for (IElementProperties elementProperties = graphicsContainer3D.Next() as IElementProperties; elementProperties != null; elementProperties = (graphicsContainer3D.Next() as IElementProperties)) { if (elementProperties.Name == "_BACKDROP_" || elementProperties.Name == "SceneFlyBy.AnchorPoint" || elementProperties.Name == "SceneFlyBy.StaticLoc") { graphicsContainer3D.DeleteElement(elementProperties as IElement); graphicsContainer3D.Reset(); } } break; } if (bool_0) { isceneGraph_0.RefreshViewers(); } }