Changeset 5736 for branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Views
- Timestamp:
- 03/17/11 15:14:45 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/DataAnalysis Refactoring/HeuristicLab.Problems.DataAnalysis.Symbolic.Views/3.4/InteractiveSymbolicDataAnalysisSolutionSimplifierView.cs
r5729 r5736 92 92 93 93 // automatically fold all branches with impact = 1 94 List<ISymbolicExpressionTreeNode> nodeList = Content.Model.SymbolicExpressionTree.Root.GetSub Tree(0).IterateNodesPrefix().ToList();94 List<ISymbolicExpressionTreeNode> nodeList = Content.Model.SymbolicExpressionTree.Root.GetSubtree(0).IterateNodesPrefix().ToList(); 95 95 foreach (var parent in nodeList) { 96 for (int subTreeIndex = 0; subTreeIndex < parent.Sub Trees.Count(); subTreeIndex++) {97 var child = parent.GetSub Tree(subTreeIndex);96 for (int subTreeIndex = 0; subTreeIndex < parent.SubtreesCount; subTreeIndex++) { 97 var child = parent.GetSubtree(subTreeIndex); 98 98 if (!(child.Symbol is Constant) && nodeImpacts[child].IsAlmost(1.0)) { 99 99 SwitchNodeWithReplacementNode(parent, subTreeIndex); … … 102 102 } 103 103 // show only interesting part of solution 104 this.treeChart.Tree = new SymbolicExpressionTree(tree.Root.GetSub Tree(0).GetSubTree(0));104 this.treeChart.Tree = new SymbolicExpressionTree(tree.Root.GetSubtree(0).GetSubtree(0)); 105 105 this.PaintNodeImpacts(); 106 106 } … … 124 124 var tree = Content.Model.SymbolicExpressionTree; 125 125 foreach (SymbolicExpressionTreeNode treeNode in tree.IterateNodesPostfix()) { 126 for (int i = 0; i < treeNode.Sub Trees.Count(); i++) {127 ISymbolicExpressionTreeNode subTree = treeNode.GetSub Tree(i);126 for (int i = 0; i < treeNode.SubtreesCount; i++) { 127 ISymbolicExpressionTreeNode subTree = treeNode.GetSubtree(i); 128 128 if (subTree == visualTreeNode.SymbolicExpressionTreeNode) { 129 129 SwitchNodeWithReplacementNode(treeNode, i); … … 133 133 134 134 // show only interesting part of solution 135 this.treeChart.Tree = new SymbolicExpressionTree(tree.Root.GetSub Tree(0).GetSubTree(0));135 this.treeChart.Tree = new SymbolicExpressionTree(tree.Root.GetSubtree(0).GetSubtree(0)); 136 136 137 137 UpdateModel(tree); 138 this.PaintNodeImpacts();139 138 } 140 139 141 140 private void SwitchNodeWithReplacementNode(ISymbolicExpressionTreeNode parent, int subTreeIndex) { 142 ISymbolicExpressionTreeNode subTree = parent.GetSub Tree(subTreeIndex);143 parent.RemoveSub Tree(subTreeIndex);141 ISymbolicExpressionTreeNode subTree = parent.GetSubtree(subTreeIndex); 142 parent.RemoveSubtree(subTreeIndex); 144 143 if (replacementNodes.ContainsKey(subTree)) { 145 144 var replacementNode = replacementNodes[subTree]; 146 parent.InsertSub Tree(subTreeIndex, replacementNode);145 parent.InsertSubtree(subTreeIndex, replacementNode); 147 146 // exchange key and value 148 147 replacementNodes.Remove(subTree); 149 148 replacementNodes.Add(replacementNode, subTree); 150 } else {151 throw new InvalidOperationException("Could not find replacement value.");152 149 } 153 150 }
Note: See TracChangeset
for help on using the changeset viewer.