Ejemplo n.º 1
0
        public void RemoveToolpaths(ToolpathSO sourceSO)
        {
            List <AnalysisViz> found;

            lock (SOToAnalysis) {
                if (SOToAnalysis.TryGetValue(sourceSO, out found))
                {
                    foreach (var analysis in found)
                    {
                        analysis.OnComputeUpdateRequired  -= OnVisualizationRequestedUpdate;
                        analysis.OnGeometryUpdateRequired -= OnVisualizationHasGeometryUpdate;
                        analysis.Disconnect();
                    }
                    SOToAnalysis.Remove(sourceSO);
                }
            }
            lock (DirtyList) {
                if (found != null)
                {
                    foreach (var analysis in found)
                    {
                        DirtyList.Remove(analysis);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public void RemoveMesh(DMeshSO sourceSO)
        {
            List <AnalysisViz> found;

            lock (SOToAnalysis) {
                if (SOToAnalysis.TryGetValue(sourceSO, out found))
                {
                    foreach (var analysis in found)
                    {
                        disconnect_analysis(analysis);
                    }
                    SOToAnalysis.Remove(sourceSO);
                }
            }
            lock (DirtyList) {
                if (found != null)
                {
                    foreach (var analysis in found)
                    {
                        DirtyList.Remove(analysis);
                    }
                }
            }
        }