private void ClearCircuit() { foreach (var visual in ElementVisuals) { RemoveVisualChild(visual.Value); RemoveLogicalChild(visual.Value); } ElementVisuals.Clear(); foreach (var visual in HighlightBoxVisuals) { RemoveVisualChild(visual.Value); RemoveLogicalChild(visual.Value); } HighlightBoxVisuals.Clear(); }
protected void RenderCircuit() { if (DescriptionLookup == null) { return; } ClearCircuit(); if (Circuit == null) { return; } // Add ElementVisuals foreach (var element in Circuit.PositionalComponents) { var renderer = new CircuitRenderer(DescriptionLookup); var visual = new ElementDrawingVisual(renderer, element); ElementVisuals.Add(element, visual); AddChild(visual); } // Add HighlightVisuals foreach (var elementVisual in ElementVisuals) { var visual = new ElementHighlightBoxVisual(elementVisual.Value) { Opacity = 0.0 }; HighlightBoxVisuals.Add(elementVisual.Key, visual); AddChild(visual); } RenderConnections(); }