Changeset 10269 for branches/HeuristicLab.EvolutionTracking
- Timestamp:
- 12/23/13 11:42:24 (11 years ago)
- Location:
- branches/HeuristicLab.EvolutionTracking
- Files:
-
- 64 added
- 6 deleted
- 14 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views/3.4/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.csproj
r8600 r10269 41 41 <DebugType>full</DebugType> 42 42 <Optimize>false</Optimize> 43 <OutputPath> $(SolutionDir)\bin\</OutputPath>43 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 44 44 <DefineConstants>DEBUG;TRACE</DefineConstants> 45 45 <ErrorReport>prompt</ErrorReport> … … 50 50 <DebugType>pdbonly</DebugType> 51 51 <Optimize>true</Optimize> 52 <OutputPath> $(SolutionDir)\bin\</OutputPath>52 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 53 53 <DefineConstants>TRACE</DefineConstants> 54 54 <ErrorReport>prompt</ErrorReport> … … 58 58 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> 59 59 <DebugSymbols>true</DebugSymbols> 60 <OutputPath> $(SolutionDir)\bin\</OutputPath>60 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 61 61 <DefineConstants>DEBUG;TRACE</DefineConstants> 62 62 <DebugType>full</DebugType> … … 66 66 </PropertyGroup> 67 67 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> 68 <OutputPath> $(SolutionDir)\bin\</OutputPath>68 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 69 69 <DefineConstants>TRACE</DefineConstants> 70 70 <Optimize>true</Optimize> … … 76 76 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> 77 77 <DebugSymbols>true</DebugSymbols> 78 <OutputPath> $(SolutionDir)\bin\</OutputPath>78 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 79 79 <DefineConstants>DEBUG;TRACE</DefineConstants> 80 80 <DebugType>full</DebugType> … … 84 84 </PropertyGroup> 85 85 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 86 <OutputPath> $(SolutionDir)\bin\</OutputPath>86 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 87 87 <DefineConstants>TRACE</DefineConstants> 88 88 <Optimize>true</Optimize> … … 93 93 </PropertyGroup> 94 94 <ItemGroup> 95 <Reference Include="HeuristicLab.Collections-3.3"> 96 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath> 97 <Private>False</Private> 98 </Reference> 99 <Reference Include="HeuristicLab.Common-3.3"> 100 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath> 101 <Private>False</Private> 102 </Reference> 103 <Reference Include="HeuristicLab.Common.Resources-3.3"> 104 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common.Resources-3.3.dll</HintPath> 105 <Private>False</Private> 106 </Reference> 107 <Reference Include="HeuristicLab.Core-3.3"> 108 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath> 109 <Private>False</Private> 110 </Reference> 111 <Reference Include="HeuristicLab.Core.Views-3.3"> 112 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core.Views-3.3.dll</HintPath> 113 <Private>False</Private> 114 </Reference> 115 <Reference Include="HeuristicLab.Data-3.3"> 116 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath> 117 <Private>False</Private> 118 </Reference> 119 <Reference Include="HeuristicLab.Data.Views-3.3"> 120 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data.Views-3.3.dll</HintPath> 121 <Private>False</Private> 122 </Reference> 123 <Reference Include="HeuristicLab.MainForm-3.3"> 124 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.MainForm-3.3.dll</HintPath> 125 <Private>False</Private> 126 </Reference> 127 <Reference Include="HeuristicLab.MainForm.WindowsForms-3.3"> 128 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.MainForm.WindowsForms-3.3.dll</HintPath> 129 <Private>False</Private> 130 </Reference> 131 <Reference Include="HeuristicLab.Operators-3.3"> 132 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath> 133 <Private>False</Private> 134 </Reference> 135 <Reference Include="HeuristicLab.Optimization-3.3"> 136 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath> 137 <Private>False</Private> 138 </Reference> 139 <Reference Include="HeuristicLab.Optimization.Views-3.3"> 140 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization.Views-3.3.dll</HintPath> 141 <Private>False</Private> 142 </Reference> 143 <Reference Include="HeuristicLab.PluginInfrastructure-3.3"> 144 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath> 145 <Private>False</Private> 146 </Reference> 147 <Reference Include="HeuristicLab.Random-3.3"> 148 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Random-3.3.dll</HintPath> 149 <Private>False</Private> 150 </Reference> 151 <Reference Include="HeuristicLab.Visualization.ChartControlsExtensions-3.3"> 152 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Visualization.ChartControlsExtensions-3.3.dll</HintPath> 153 <Private>False</Private> 154 </Reference> 95 155 <Reference Include="System" /> 96 156 <Reference Include="System.Core"> … … 162 222 <Compile Include="VisualSymbolicExpressionTreeNode.cs" /> 163 223 <Compile Include="VisualSymbolicExpressionTreeNodeConnection.cs" /> 164 </ItemGroup>165 <ItemGroup>166 <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">167 <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>168 <Name>HeuristicLab.Collections-3.3</Name>169 <Private>False</Private>170 </ProjectReference>171 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj">172 <Project>{0E27A536-1C4A-4624-A65E-DC4F4F23E3E1}</Project>173 <Name>HeuristicLab.Common.Resources-3.3</Name>174 <Private>False</Private>175 </ProjectReference>176 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">177 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>178 <Name>HeuristicLab.Common-3.3</Name>179 <Private>False</Private>180 </ProjectReference>181 <ProjectReference Include="..\..\HeuristicLab.Core.Views\3.3\HeuristicLab.Core.Views-3.3.csproj">182 <Project>{E226881D-315F-423D-B419-A766FE0D8685}</Project>183 <Name>HeuristicLab.Core.Views-3.3</Name>184 <Private>False</Private>185 </ProjectReference>186 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">187 <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>188 <Name>HeuristicLab.Core-3.3</Name>189 <Private>False</Private>190 </ProjectReference>191 <ProjectReference Include="..\..\HeuristicLab.Data.Views\3.3\HeuristicLab.Data.Views-3.3.csproj">192 <Project>{72104A0B-90E7-42F3-9ABE-9BBBADD4B943}</Project>193 <Name>HeuristicLab.Data.Views-3.3</Name>194 <Private>False</Private>195 </ProjectReference>196 <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">197 <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>198 <Name>HeuristicLab.Data-3.3</Name>199 <Private>False</Private>200 </ProjectReference>201 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj">202 <Project>{06D4A186-9319-48A0-BADE-A2058D462EEA}</Project>203 <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name>204 <Private>False</Private>205 </ProjectReference>206 <ProjectReference Include="..\..\HeuristicLab.MainForm.WindowsForms\3.3\HeuristicLab.MainForm.WindowsForms-3.3.csproj">207 <Project>{AB687BBE-1BFE-476B-906D-44237135431D}</Project>208 <Name>HeuristicLab.MainForm.WindowsForms-3.3</Name>209 <Private>False</Private>210 </ProjectReference>211 <ProjectReference Include="..\..\HeuristicLab.MainForm\3.3\HeuristicLab.MainForm-3.3.csproj">212 <Project>{3BD61258-31DA-4B09-89C0-4F71FEF5F05A}</Project>213 <Name>HeuristicLab.MainForm-3.3</Name>214 <Private>False</Private>215 </ProjectReference>216 <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj">217 <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project>218 <Name>HeuristicLab.Operators-3.3</Name>219 <Private>False</Private>220 </ProjectReference>221 <ProjectReference Include="..\..\HeuristicLab.Optimization.Views\3.3\HeuristicLab.Optimization.Views-3.3.csproj">222 <Project>{662B4B15-8F4D-4AE5-B3EB-D91C215F5AF2}</Project>223 <Name>HeuristicLab.Optimization.Views-3.3</Name>224 <Private>False</Private>225 </ProjectReference>226 <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">227 <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>228 <Name>HeuristicLab.Optimization-3.3</Name>229 <Private>False</Private>230 </ProjectReference>231 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">232 <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>233 <Name>HeuristicLab.PluginInfrastructure-3.3</Name>234 <Private>False</Private>235 </ProjectReference>236 <ProjectReference Include="..\..\HeuristicLab.Random\3.3\HeuristicLab.Random-3.3.csproj">237 <Project>{F4539FB6-4708-40C9-BE64-0A1390AEA197}</Project>238 <Name>HeuristicLab.Random-3.3</Name>239 <Private>False</Private>240 </ProjectReference>241 <ProjectReference Include="..\..\HeuristicLab.Visualization.ChartControlsExtensions\3.3\HeuristicLab.Visualization.ChartControlsExtensions-3.3.csproj">242 <Project>{315BDA09-3F4F-49B3-9790-B37CFC1C5750}</Project>243 <Name>HeuristicLab.Visualization.ChartControlsExtensions-3.3</Name>244 <Private>False</Private>245 </ProjectReference>246 224 </ItemGroup> 247 225 <ItemGroup> … … 267 245 </BootstrapperPackage> 268 246 </ItemGroup> 247 <ItemGroup> 248 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj"> 249 <Project>{06d4a186-9319-48a0-bade-a2058d462eea}</Project> 250 <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name> 251 </ProjectReference> 252 <ProjectReference Include="..\..\HeuristicLab.EvolutionTracking\3.4\HeuristicLab.EvolutionTracking-3.4.csproj"> 253 <Project>{1f75cea3-464f-4a6f-b2f0-04b9841ebc16}</Project> 254 <Name>HeuristicLab.EvolutionTracking-3.4</Name> 255 </ProjectReference> 256 </ItemGroup> 269 257 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 270 258 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. … … 276 264 --> 277 265 <PropertyGroup> 278 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir)266 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 279 267 set ProjectDir=$(ProjectDir) 280 268 set SolutionDir=$(SolutionDir) … … 283 271 call PreBuildEvent.cmd 284 272 </PreBuildEvent> 285 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">273 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' "> 286 274 export ProjectDir=$(ProjectDir) 287 275 export SolutionDir=$(SolutionDir) -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.4/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj
r9828 r10269 41 41 <DebugType>full</DebugType> 42 42 <Optimize>false</Optimize> 43 <OutputPath> $(SolutionDir)\bin\</OutputPath>43 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 44 44 <DefineConstants>DEBUG;TRACE</DefineConstants> 45 45 <ErrorReport>prompt</ErrorReport> … … 51 51 <DebugType>pdbonly</DebugType> 52 52 <Optimize>true</Optimize> 53 <OutputPath> $(SolutionDir)\bin\</OutputPath>53 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 54 54 <DefineConstants>TRACE</DefineConstants> 55 55 <ErrorReport>prompt</ErrorReport> … … 59 59 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> 60 60 <DebugSymbols>true</DebugSymbols> 61 <OutputPath> $(SolutionDir)\bin\</OutputPath>61 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 62 62 <DefineConstants>DEBUG;TRACE</DefineConstants> 63 63 <DebugType>full</DebugType> … … 67 67 </PropertyGroup> 68 68 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> 69 <OutputPath> $(SolutionDir)\bin\</OutputPath>69 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 70 70 <DefineConstants>TRACE</DefineConstants> 71 71 <Optimize>true</Optimize> … … 77 77 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> 78 78 <DebugSymbols>true</DebugSymbols> 79 <OutputPath> $(SolutionDir)\bin\</OutputPath>79 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 80 80 <DefineConstants>DEBUG;TRACE</DefineConstants> 81 81 <DebugType>full</DebugType> … … 85 85 </PropertyGroup> 86 86 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 87 <OutputPath> $(SolutionDir)\bin\</OutputPath>87 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 88 88 <DefineConstants>TRACE</DefineConstants> 89 89 <Optimize>true</Optimize> … … 94 94 </PropertyGroup> 95 95 <ItemGroup> 96 <Reference Include="HeuristicLab.Analysis-3.3"> 97 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Analysis-3.3.dll</HintPath> 98 <Private>False</Private> 99 </Reference> 100 <Reference Include="HeuristicLab.Collections-3.3"> 101 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath> 102 <Private>False</Private> 103 </Reference> 104 <Reference Include="HeuristicLab.Common-3.3"> 105 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath> 106 <Private>False</Private> 107 </Reference> 108 <Reference Include="HeuristicLab.Common.Resources-3.3"> 109 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common.Resources-3.3.dll</HintPath> 110 <Private>False</Private> 111 </Reference> 112 <Reference Include="HeuristicLab.Core-3.3"> 113 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath> 114 </Reference> 115 <Reference Include="HeuristicLab.Data-3.3"> 116 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath> 117 <Private>False</Private> 118 </Reference> 119 <Reference Include="HeuristicLab.Operators-3.3"> 120 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath> 121 <Private>False</Private> 122 </Reference> 123 <Reference Include="HeuristicLab.Optimization-3.3"> 124 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath> 125 <Private>False</Private> 126 </Reference> 127 <Reference Include="HeuristicLab.Optimization.Operators-3.3"> 128 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization.Operators-3.3.dll</HintPath> 129 <Private>False</Private> 130 </Reference> 131 <Reference Include="HeuristicLab.Parameters-3.3"> 132 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Parameters-3.3.dll</HintPath> 133 <Private>False</Private> 134 </Reference> 135 <Reference Include="HeuristicLab.Persistence-3.3"> 136 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Persistence-3.3.dll</HintPath> 137 <Private>False</Private> 138 </Reference> 139 <Reference Include="HeuristicLab.PluginInfrastructure-3.3"> 140 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath> 141 <Private>False</Private> 142 </Reference> 143 <Reference Include="HeuristicLab.Random-3.3"> 144 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Random-3.3.dll</HintPath> 145 <Private>False</Private> 146 </Reference> 96 147 <Reference Include="System" /> 97 148 <Reference Include="System.Core"> … … 135 186 <Compile Include="Creators\RampedHalfAndHalfTreeCreator.cs" /> 136 187 <Compile Include="Formatters\SymbolicExpressionTreeGraphvizFormatter.cs" /> 188 <Compile Include="Interfaces\IFragment.cs" /> 189 <Compile Include="Interfaces\ILayoutAdapter.cs" /> 190 <Compile Include="Interfaces\ILayoutNode.cs" /> 137 191 <Compile Include="Interfaces\IReadOnlySymbol.cs" /> 138 192 <Compile Include="Interfaces\ISymbolicExpressionGrammar.cs" /> 139 193 <Compile Include="Interfaces\ISymbolicExpressionGrammarBase.cs" /> 140 194 <Compile Include="Interfaces\ISymbolicExpressionTreeGrammar.cs" /> 195 <Compile Include="Interfaces\ISymbolicExpressionTreeNodeComparer.cs" /> 196 <Compile Include="Interfaces\ISymbolicExpressionTreeNodeSimilarityComparer.cs" /> 141 197 <Compile Include="Interfaces\Operators\ISymbolicExpressionTreeArchitectureAlteringOperator.cs" /> 142 198 <Compile Include="Interfaces\Operators\ISymbolicExpressionTreeGrammarBasedOperator.cs" /> … … 154 210 <Compile Include="Interfaces\ISymbolicExpressionTreeStringFormatter.cs" /> 155 211 <Compile Include="Interfaces\Operators\ISymbolicExpressionTreeSizeConstraintOperator.cs" /> 212 <Compile Include="LayoutEngines\LayoutNode.cs" /> 213 <Compile Include="LayoutEngines\ReingoldTilfordLayoutEngine.cs" /> 214 <Compile Include="LayoutEngines\SymbolicExpressionTreeLayoutAdapter.cs" /> 156 215 <Compile Include="Manipulators\ChangeNodeTypeManipulation.cs" /> 157 216 <Compile Include="Interfaces\Operators\ISymbolicExpressionTreeManipulator.cs" /> … … 195 254 </ItemGroup> 196 255 <ItemGroup> 197 <ProjectReference Include="..\..\HeuristicLab.Analysis\3.3\HeuristicLab.Analysis-3.3.csproj">198 <Project>{887425B4-4348-49ED-A457-B7D2C26DDBF9}</Project>199 <Name>HeuristicLab.Analysis-3.3</Name>200 <Private>False</Private>201 </ProjectReference>202 <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">203 <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>204 <Name>HeuristicLab.Collections-3.3</Name>205 <Private>False</Private>206 </ProjectReference>207 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj">208 <Project>{0E27A536-1C4A-4624-A65E-DC4F4F23E3E1}</Project>209 <Name>HeuristicLab.Common.Resources-3.3</Name>210 <Private>False</Private>211 </ProjectReference>212 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">213 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>214 <Name>HeuristicLab.Common-3.3</Name>215 <Private>False</Private>216 </ProjectReference>217 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">218 <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>219 <Name>HeuristicLab.Core-3.3</Name>220 <Private>False</Private>221 </ProjectReference>222 <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">223 <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>224 <Name>HeuristicLab.Data-3.3</Name>225 <Private>False</Private>226 </ProjectReference>227 <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj">228 <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project>229 <Name>HeuristicLab.Operators-3.3</Name>230 <Private>False</Private>231 </ProjectReference>232 <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">233 <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>234 <Name>HeuristicLab.Optimization.Operators-3.3</Name>235 <Private>False</Private>236 </ProjectReference>237 <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">238 <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>239 <Name>HeuristicLab.Optimization-3.3</Name>240 <Private>False</Private>241 </ProjectReference>242 <ProjectReference Include="..\..\HeuristicLab.Parameters\3.3\HeuristicLab.Parameters-3.3.csproj">243 <Project>{56F9106A-079F-4C61-92F6-86A84C2D84B7}</Project>244 <Name>HeuristicLab.Parameters-3.3</Name>245 <Private>False</Private>246 </ProjectReference>247 <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj">248 <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project>249 <Name>HeuristicLab.Persistence-3.3</Name>250 <Private>False</Private>251 </ProjectReference>252 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj">253 <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project>254 <Name>HeuristicLab.PluginInfrastructure-3.3</Name>255 <Private>False</Private>256 </ProjectReference>257 <ProjectReference Include="..\..\HeuristicLab.Random\3.3\HeuristicLab.Random-3.3.csproj">258 <Project>{F4539FB6-4708-40C9-BE64-0A1390AEA197}</Project>259 <Name>HeuristicLab.Random-3.3</Name>260 <Private>False</Private>261 </ProjectReference>262 </ItemGroup>263 <ItemGroup>264 256 <BootstrapperPackage Include="Microsoft.Net.Client.3.5"> 265 257 <Visible>False</Visible> -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/GenealogyGraphChart.Designer.cs
r10264 r10269 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 namespace HeuristicLab.EvolutionaryTracking.Views { 1 namespace HeuristicLab.EvolutionaryTracking.Views { 23 2 partial class GenealogyGraphChart { 24 3 /// <summary> … … 45 24 /// </summary> 46 25 private void InitializeComponent() { 47 ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).BeginInit(); 48 this.SuspendLayout(); 49 // 50 // pictureBox 51 // 52 this.pictureBox.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left))); 53 this.pictureBox.Dock = System.Windows.Forms.DockStyle.Fill; 54 // 55 // GenealogyGraphChart 56 // 57 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 26 components = new System.ComponentModel.Container(); 58 27 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 59 this.Name = "GenealogyGraphChart";60 this.Controls.SetChildIndex(this.pictureBox, 0);61 ((System.ComponentModel.ISupportInitialize)(this.pictureBox)).EndInit();62 this.ResumeLayout(false);63 64 28 } 65 29 -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/GenealogyGraphChart.cs
r10264 r10269 1 #region License Information 2 /* HeuristicLab 3 * Copyright (C) 2002-2010 Heuristic and Evolutionary Algorithms Laboratory (HEAL) 4 * 5 * This file is part of HeuristicLab. 6 * 7 * HeuristicLab is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * HeuristicLab is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 #endregion 21 22 using System; 1 using System; 23 2 using System.Collections.Generic; 24 3 using System.Drawing; … … 27 6 using System.Windows.Forms; 28 7 using HeuristicLab.Common; 29 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;30 8 using HeuristicLab.Visualization; 31 9 32 10 namespace HeuristicLab.EvolutionaryTracking.Views { 33 11 public partial class GenealogyGraphChart : ChartControl { 34 private Dictionary<string, VisualGenealogyGraphNode> visualNodeMap; // map the uid of the genealogy graph vertex with a visual node (in this way each node is uniquely determined) 35 private Dictionary<Tuple<VisualGenealogyGraphNode, VisualGenealogyGraphNode>, VisualGenealogyGraphArc> visualArcMap; 36 private const int Diameter = 20; // node diameter 37 private int x, y; // coordinates for positioning each node 38 private const int Cx = 30, Cy = 30; // position increments 39 private VisualGenealogyGraphNode selectedGenealogyGraphNode; 40 public VisualGenealogyGraphNode SelectedGenealogyGraphNode { get { return selectedGenealogyGraphNode; } } 41 private Visualization.Rectangle targetRectangle; // provides a rectangle mark of the currently selected genealogy graph node 12 private GenealogyGraph genealogyGraph; 13 14 private const double XIncrement = 30; 15 private const double YIncrement = 30; 16 private const double Diameter = 20; 17 18 public GenealogyGraph GenealogyGraph { 19 get { return genealogyGraph; } 20 set { 21 if (value == null) return; 22 genealogyGraph = value; 23 Clear(); 24 DrawGraph(XIncrement, YIncrement, Diameter); 25 } 26 } 27 28 private void Clear() { 29 if (nodeMap == null) 30 nodeMap = new Dictionary<IGenealogyGraphNode, VisualGenealogyGraphNode>(); 31 else nodeMap.Clear(); 32 33 if (arcMap == null) 34 arcMap = new Dictionary<Tuple<VisualGenealogyGraphNode, VisualGenealogyGraphNode>, VisualGenealogyGraphArc>(); 35 else arcMap.Clear(); 36 37 Chart.Group.Clear(); 38 } 39 40 private Dictionary<IGenealogyGraphNode, VisualGenealogyGraphNode> nodeMap; 41 private Dictionary<Tuple<VisualGenealogyGraphNode, VisualGenealogyGraphNode>, VisualGenealogyGraphArc> arcMap; 42 42 43 43 public bool SimpleLineages { get; set; } 44 44 public bool LockGenealogy { get; set; } 45 46 private bool drawing; 47 48 private SymbolicExpressionTreeGenealogyGraph graph; 49 public SymbolicExpressionTreeGenealogyGraph Graph { 50 get { return graph; } 51 internal set { 52 graph = value; 53 if (graph == null) return; 54 55 visualNodeMap = new Dictionary<string, VisualGenealogyGraphNode>(); 56 visualArcMap = new Dictionary<Tuple<VisualGenealogyGraphNode, VisualGenealogyGraphNode>, VisualGenealogyGraphArc>(); 57 58 Chart.Group.Clear(); 59 DrawGraph(); 60 } 61 } 62 63 private VisualGenealogyGraphNode GetVisualGenealogyGraphNode(IVertex node) { 64 VisualGenealogyGraphNode visualNode; 65 visualNodeMap.TryGetValue(node.Id, out visualNode); 66 return visualNode; 67 } 68 69 private VisualGenealogyGraphArc GetVisualGenealogyGraphArc(IVertex source, IVertex target) { 70 VisualGenealogyGraphNode visualSource; 71 VisualGenealogyGraphNode visualTarget; 72 visualNodeMap.TryGetValue(source.Id, out visualSource); 73 visualNodeMap.TryGetValue(target.Id, out visualTarget); 74 if (visualSource != null && visualTarget != null) { 75 VisualGenealogyGraphArc visualArc; 76 visualArcMap.TryGetValue( 77 new Tuple<VisualGenealogyGraphNode, VisualGenealogyGraphNode>(visualSource, visualTarget), out visualArc); 78 if (visualArc != null) return visualArc; 79 } 80 return null; 81 } 45 private Visualization.Rectangle TargetRectangle { get; set; } 46 47 private VisualGenealogyGraphNode GetMappedNode(IGenealogyGraphNode node) { 48 VisualGenealogyGraphNode v; 49 nodeMap.TryGetValue(node, out v); 50 return v; 51 } 52 53 private VisualGenealogyGraphArc GetMappedArc(IGenealogyGraphNode source, IGenealogyGraphNode target) { 54 VisualGenealogyGraphNode visualSource, visualTarget; 55 nodeMap.TryGetValue(source, out visualSource); 56 nodeMap.TryGetValue(target, out visualTarget); 57 58 if (visualSource == null || visualTarget == null) return null; 59 60 VisualGenealogyGraphArc arc; 61 arcMap.TryGetValue(new Tuple<VisualGenealogyGraphNode, VisualGenealogyGraphNode>(visualSource, visualTarget), out arc); 62 return arc; 63 } 64 65 private bool DrawInProgress { get; set; } // do not try to update the chart while the drawing is not finished 66 private VisualGenealogyGraphNode SelectedVisualNode { get; set; } 82 67 83 68 public event MouseEventHandler GenealogyGraphNodeClicked; … … 88 73 89 74 public GenealogyGraphChart() { 90 // InitializeComponent(); 91 Chart = new Chart(0, 0, PreferredSize.Width, PreferredSize.Height); 92 x = 0; 93 y = PreferredSize.Height + Cx + 2 * Diameter; 94 Chart.Mode = ChartMode.Select; 95 } 96 97 public void DrawGraph() { 98 if (graph == null) return; 75 InitializeComponent(); 76 } 77 78 protected virtual void DrawGraph(double xIncrement, double yIncrement, double diameter) { 99 79 Chart.UpdateEnabled = false; 100 101 drawing = true; 102 103 var layers = Graph.Nodes.GroupBy(n => n.Rank).OrderBy(g => g.Key).Select(g => new { Rank = g.Key, Nodes = g.ToList() }).ToList(); 104 105 y = PreferredSize.Height + Cx + 2 * Diameter; 106 107 for (int i = 0; i != layers.Count; ++i) { 108 x = 0; 109 layers[i].Nodes.Sort((b, a) => Graph.Compare(a, b)); 110 double rank = Math.Floor(layers[i].Rank); 111 if (layers[i].Rank.IsAlmost(rank)) { 112 var visualTextNode = new VisualGenealogyGraphTextLabel(Chart, x, y + 2, x + Diameter, y + Diameter) { 113 FontBrush = new SolidBrush(Color.Black), 114 Font = new Font("Arial", Diameter - 4, FontStyle.Regular, GraphicsUnit.Pixel), 115 Text = String.Format("{0:0}", rank) 116 }; 117 Chart.Group.Add(visualTextNode); 118 } 119 120 // sort descending by quality (using comparison defined in GenealogyGraphNode class) 121 x += (int)Math.Floor(1.5 * Cx); // reset horizontal coordinate 122 123 foreach (var node in layers[i].Nodes) { 80 DrawInProgress = true; 81 82 var ranks = GenealogyGraph.Ranks.Select(t => new { Rank = t.Key, Nodes = t.Value }).OrderBy(p => p.Rank).ToList(); 83 double x = 0; 84 double y = PreferredSize.Height + yIncrement + 2 * diameter; 85 86 foreach (var rank in ranks) { 87 var nodes = rank.Nodes.ToList(); 88 nodes.Sort((a, b) => b.CompareTo(a)); // sort descending by quality 89 var nl = Environment.NewLine; 90 91 foreach (var node in nodes) { 124 92 var pen = new Pen(Color.LightGray); 125 var nl = Environment.NewLine; 126 var visualNode = new VisualGenealogyGraphNode(Chart, x, y, x + Diameter, y + Diameter, pen, null) {93 94 var visualNode = new VisualGenealogyGraphNode(Chart, x, y, x + diameter, y + diameter, pen, null) { 127 95 Data = node, 128 96 ToolTipText = "Rank: " + node.Rank + nl + … … 131 99 }; 132 100 Chart.Group.Add(visualNode); 133 visualNodeMap.Add(node.Id, visualNode); 134 135 x += Cx; // increment horizontal coordinate 136 } 137 138 y -= Cy; // decrement vertical coordinate (because the origin is upside down) 139 140 // connect elites from successive layers with visual arcs 141 if (i == 0) continue; 142 var currLayer = layers[i].Nodes; 143 var prevLayer = layers[i - 1].Nodes; 144 foreach (var n in currLayer) { 145 foreach (var m in prevLayer) { 146 if (n.SymbolicExpressionTree != m.SymbolicExpressionTree) continue; 147 var v1 = GetVisualGenealogyGraphNode(n); 148 var v2 = GetVisualGenealogyGraphNode(m); 149 150 var pen = new Pen(Color.LightGray); 151 visualArcMap[Tuple.Create(v2, v1)] = AddArc(Chart, v2, v1, pen); 152 } 153 } 154 } 155 // add arcs separately (to avoid some ordering problems) 156 foreach (SymbolicExpressionTreeGenealogyGraphNode node in Graph.Nodes) { 157 VisualGenealogyGraphNode visualNode = GetVisualGenealogyGraphNode(node); 158 if (node.InEdges == null) continue; 159 160 foreach (Arc arc in node.InEdges) { 161 var visualParent = GetVisualGenealogyGraphNode(arc.Source); 101 nodeMap.Add(node, visualNode); 102 103 x += xIncrement; 104 } 105 y -= yIncrement; 106 } 107 // add arcs 108 foreach (var node in GenealogyGraph.Nodes) { 109 if (node.InArcs == null) continue; 110 var visualNode = nodeMap[node]; 111 if (visualNode == null) continue; 112 foreach (var arc in node.InArcs) { 113 var parent = arc.Source; 114 var visualParent = GetMappedNode(parent); 115 if (visualParent == null) continue; 162 116 var pen = new Pen(Color.Transparent); 163 visualArcMap[Tuple.Create(visualParent, visualNode)] = AddArc(Chart, visualParent, visualNode, pen); 164 } 165 } 166 167 // highlight the most recent common ancestor ("eve" individual) 168 // var eve = graph.MostRecentCommonAncestor(); 169 // if (eve != null) { 170 // var visualGraphNode = GetVisualGenealogyGraphNode(eve); 171 172 // var brush = new SolidBrush(Color.BlueViolet); 173 // visualGraphNode.FontBrush = brush; 174 // } 175 176 Chart.UpdateEnabled = true; 177 Chart.EnforceUpdate(); 178 179 drawing = false; 180 } 181 182 // add an arc between the source and the target nodes, using the specified pen color 183 // adds the arc to the arc lists of both nodes and to the primitive group of the chart 184 private static VisualGenealogyGraphArc AddArc(IChart chart, VisualGenealogyGraphNode source, VisualGenealogyGraphNode target, Pen pen, Brush brush = null) { 185 var arc = new VisualGenealogyGraphArc(chart, source, target, pen) { Brush = brush }; 186 arc.UpdatePosition(); 187 source.OutgoingArcs.Add(arc); 188 target.IncomingArcs.Add(arc); 189 chart.Group.Add(arc); 190 return arc; 191 } 192 193 protected override void pictureBox_MouseMove(object sender, MouseEventArgs e) { 194 if (!drawing) { 117 var visualArc = AddArc(Chart, visualParent, visualNode, pen); 118 arcMap.Add(Tuple.Create(visualParent, visualNode), visualArc); 119 } 120 } 121 // TODO: connect elites 122 123 Chart.UpdateEnabled = true; 124 Chart.EnforceUpdate(); 125 126 DrawInProgress = false; 127 } 128 129 protected override void pictureBox_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) { 130 if (!DrawInProgress) { 195 131 switch (e.Button) { 196 132 case MouseButtons.Left: … … 203 139 break; 204 140 } 205 base.pictureBox_MouseMove(sender, e);206 }141 } 142 base.pictureBox_MouseMove(sender, e); 207 143 } 208 144 … … 213 149 return; 214 150 } 215 216 151 if (Chart.Mode != ChartMode.Select) { 217 152 base.pictureBox_MouseUp(sender, e); 218 153 return; 219 154 } 220 221 155 var visualNodes = Chart.GetAllPrimitives(e.Location).Where(p => p is VisualGenealogyGraphNode).ToList(); 222 156 if (visualNodes.Count <= 0) { 223 selectedGenealogyGraphNode = null;157 SelectedVisualNode = null; 224 158 return; 225 159 } 226 if ( selectedGenealogyGraphNode == visualNodes[0]) return;227 selectedGenealogyGraphNode = visualNodes[0] as VisualGenealogyGraphNode;228 if ( selectedGenealogyGraphNode == null) return;160 if (SelectedVisualNode == visualNodes[0]) return; 161 SelectedVisualNode = visualNodes[0] as VisualGenealogyGraphNode; 162 if (SelectedVisualNode == null) return; 229 163 230 164 if (!LockGenealogy) { … … 233 167 if (ModifierKeys != Keys.Shift) 234 168 // clear colors 235 Clear AllNodes();169 ClearPrimitives(); 236 170 // use a rectangle to highlight the currently selected genealogy graph node 237 var gNode = selectedGenealogyGraphNode.Data;238 var visualNode = Get VisualGenealogyGraphNode(gNode);171 var gNode = SelectedVisualNode.Data; 172 var visualNode = GetMappedNode(gNode); 239 173 240 174 DrawLineage(visualNode, n => SimpleLineages ? n.IncomingArcs.Take(1) : n.IncomingArcs, a => a.Source); … … 249 183 Chart.EnforceUpdate(); 250 184 251 if ( selectedGenealogyGraphNode != null)185 if (SelectedVisualNode != null) 252 186 /* emit clicked event */ 253 OnGenealogyGraphNodeClicked(selectedGenealogyGraphNode, e); 187 OnGenealogyGraphNodeClicked(SelectedVisualNode, e); 188 189 base.pictureBox_MouseUp(sender, e); 254 190 } 255 191 … … 273 209 274 210 void MarkSelectedNode() { 275 var center = selectedGenealogyGraphNode.Center;276 var size = selectedGenealogyGraphNode.Size;211 var center = SelectedVisualNode.Center; 212 var size = SelectedVisualNode.Size; 277 213 double x1 = center.X - size.Width / 2; 278 214 double x2 = x1 + size.Width; 279 215 double y1 = center.Y - size.Height / 2; 280 216 double y2 = y1 + size.Height; 281 if ( targetRectangle == null) {282 targetRectangle = new Visualization.Rectangle(Chart, x1, y1, x2, y2, new Pen(Color.Black), null);283 Chart.Group.Add( targetRectangle);217 if (TargetRectangle == null) { 218 TargetRectangle = new Visualization.Rectangle(Chart, x1, y1, x2, y2, new Pen(Color.Black), null); 219 Chart.Group.Add(TargetRectangle); 284 220 } else { 285 targetRectangle.SetPosition(x1, y1, x2, y2); 286 } 287 } 288 289 public void ClearAllNodes() { 221 TargetRectangle.SetPosition(x1, y1, x2, y2); 222 } 223 } 224 225 226 private static VisualGenealogyGraphArc AddArc(IChart chart, VisualGenealogyGraphNode source, VisualGenealogyGraphNode target, Pen pen, Brush brush = null) { 227 var arc = new VisualGenealogyGraphArc(chart, source, target, pen) { Brush = brush }; 228 arc.UpdatePosition(); 229 source.OutgoingArcs.Add(arc); 230 target.IncomingArcs.Add(arc); 231 chart.Group.Add(arc); 232 return arc; 233 } 234 235 public virtual void ClearPrimitives() { 290 236 foreach (var primitive in Chart.Group.Primitives) { 291 237 if (primitive is VisualGenealogyGraphArc) { 292 var arc = primitive as VisualGenealogyGraphArc; 293 var sourceData = arc.Source.Data.SymbolicExpressionTree; 294 var targetData = arc.Target.Data.SymbolicExpressionTree; 295 primitive.Pen.Brush = sourceData != targetData ? new SolidBrush(Color.Transparent) : new SolidBrush(Color.LightGray); 238 primitive.Pen.Brush = new SolidBrush(Color.Transparent); 296 239 } else { 297 240 primitive.Brush = null; … … 299 242 } 300 243 } 301 302 public void HighlightNodes(IEnumerable<SymbolicExpressionTreeGenealogyGraphNode> nodes) { 244 public void HighlightNodes(IEnumerable<IGenealogyGraphNode> nodes) { 303 245 Chart.UpdateEnabled = false; 304 Clear AllNodes();246 ClearPrimitives(); 305 247 foreach (var node in nodes) { 306 GetVisualGenealogyGraphNode(node).Brush = new SolidBrush(node.GetColor()); 307 } 308 Chart.UpdateEnabled = true; 309 Chart.EnforceUpdate(); 310 } 311 312 // TODO: optimize and reduce complexity of this method 313 public void HighlightNodes(IEnumerable<ISymbolicExpressionTree> trees) { 314 foreach (var tree in trees) { 315 var graphNodes = graph.GetGraphNodes(tree); 316 foreach (var graphNode in graphNodes) { 317 GetVisualGenealogyGraphNode(graphNode).Brush = new SolidBrush(graphNode.GetColor()); 318 } 319 } 320 } 321 322 public void HighlightArcs(IEnumerable<IEdge> arcs, Color color) { 323 foreach (var a in arcs) { 324 var arc = GetVisualGenealogyGraphArc(a.Source, a.Target); 325 if (arc != null) { 326 var source = arc.Source.Data; 327 var target = arc.Target.Data; 328 var start = new Point((int)arc.Start.X, (int)arc.Start.Y); 329 var end = new Point((int)arc.End.X, (int)arc.End.Y); 330 arc.Pen.Brush = new LinearGradientBrush(start, end, source.GetColor(), target.GetColor()); 331 } 332 } 333 } 334 335 public void HighlightNode(SymbolicExpressionTreeGenealogyGraphNode graphNode, Color color) { 336 GetVisualGenealogyGraphNode(graphNode).Brush = new SolidBrush(color); 337 } 338 248 GetMappedNode(node).Brush = new SolidBrush(node.GetColor()); 249 } 250 Chart.UpdateEnabled = true; 251 Chart.EnforceUpdate(); 252 } 339 253 public void HighlightAll() { 340 254 Chart.UpdateEnabled = false; 341 foreach (var visualNode in visualNodeMap.Values) {255 foreach (var visualNode in nodeMap.Values) { 342 256 visualNode.Brush = new SolidBrush(visualNode.Data.GetColor()); 343 257 } 344 foreach (var arc in visualArcMap.Values) {258 foreach (var arc in arcMap.Values) { 345 259 var source = arc.Source.Data; 346 260 var target = arc.Target.Data; … … 352 266 Chart.EnforceUpdate(); 353 267 } 354 355 public void HighlightInDegree() {356 Chart.UpdateEnabled = false;357 ClearAllNodes();358 double max = Graph.Nodes.Max(x => x.InEdges == null ? 0 : x.InEdges.Count);359 foreach (var graphNode in Graph.Nodes) {360 var visualNode = GetVisualGenealogyGraphNode(graphNode);361 double deg = graphNode.InEdges == null ? 0 : graphNode.InEdges.Count;362 int index = (int)(deg / max * ColorGradient.Colors.Count);363 if (index == ColorGradient.Colors.Count) --index;364 var color = ColorGradient.Colors[index];365 visualNode.Brush = new SolidBrush(color);366 }367 Chart.UpdateEnabled = true;368 Chart.EnforceUpdate();369 }370 371 public void HighlightOutDegree() {372 Chart.UpdateEnabled = false;373 ClearAllNodes();374 var graphNodes = Graph.Nodes;375 double max = graphNodes.Max(x => x.OutEdges == null ? 0 : x.OutEdges.Count);376 foreach (var graphNode in graphNodes) {377 var visualNode = GetVisualGenealogyGraphNode(graphNode);378 double deg = graphNode.OutEdges == null ? 0 : graphNode.OutEdges.Count;379 int index = (int)(deg / max * ColorGradient.Colors.Count);380 if (index == ColorGradient.Colors.Count) --index;381 var color = ColorGradient.Colors[index];382 visualNode.Brush = new SolidBrush(color);383 }384 Chart.UpdateEnabled = true;385 Chart.EnforceUpdate();386 }387 268 } 388 269 389 270 internal static class Util { 390 public static Color GetColor(this SymbolicExpressionTreeGenealogyGraphNode node) {271 public static Color GetColor(this IGenealogyGraphNode node) { 391 272 var colorIndex = (int)(node.Quality * ColorGradient.Colors.Count); 392 273 if (colorIndex >= ColorGradient.Colors.Count) --colorIndex; -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/GenealogyGraphView.Designer.cs
r10264 r10269 28 28 private void InitializeComponent() { 29 29 this.components = new System.ComponentModel.Container(); 30 this.splitContainer = new System.Windows.Forms.SplitContainer();31 this.symbolicExpressionTreeChart = new HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views.SymbolicExpressionTreeChart();32 30 this.topControlBox = new System.Windows.Forms.Panel(); 33 31 this.graphControlsGroupBox = new System.Windows.Forms.GroupBox(); … … 35 33 this.highlightAllButton = new System.Windows.Forms.Button(); 36 34 this.simpleLineagesCheckBox = new System.Windows.Forms.CheckBox(); 37 this.groupBox1 = new System.Windows.Forms.GroupBox();38 this.matchConstantsCheckBox = new System.Windows.Forms.CheckBox();39 this.matchVariableWeightsCheckBox = new System.Windows.Forms.CheckBox();40 this.matchVariableNamesCheckBox = new System.Windows.Forms.CheckBox();41 35 this.toolTip = new System.Windows.Forms.ToolTip(this.components); 42 36 this.genealogyGraphChart = new HeuristicLab.EvolutionaryTracking.Views.GenealogyGraphChart(); 43 ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();44 this.splitContainer.Panel1.SuspendLayout();45 this.splitContainer.Panel2.SuspendLayout();46 this.splitContainer.SuspendLayout();47 37 this.topControlBox.SuspendLayout(); 48 38 this.graphControlsGroupBox.SuspendLayout(); 49 this.groupBox1.SuspendLayout();50 39 this.SuspendLayout(); 51 //52 // splitContainer53 //54 this.splitContainer.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)55 | System.Windows.Forms.AnchorStyles.Left)56 | System.Windows.Forms.AnchorStyles.Right)));57 this.splitContainer.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;58 this.splitContainer.Location = new System.Drawing.Point(3, 53);59 this.splitContainer.Name = "splitContainer";60 //61 // splitContainer.Panel162 //63 this.splitContainer.Panel1.Controls.Add(this.genealogyGraphChart);64 this.splitContainer.Panel1MinSize = 50;65 //66 // splitContainer.Panel267 //68 this.splitContainer.Panel2.Controls.Add(this.symbolicExpressionTreeChart);69 this.splitContainer.Panel2MinSize = 50;70 this.splitContainer.Size = new System.Drawing.Size(1066, 722);71 this.splitContainer.SplitterDistance = 488;72 this.splitContainer.TabIndex = 7;73 //74 // symbolicExpressionTreeChart75 //76 this.symbolicExpressionTreeChart.BackgroundColor = System.Drawing.Color.White;77 this.symbolicExpressionTreeChart.Dock = System.Windows.Forms.DockStyle.Fill;78 this.symbolicExpressionTreeChart.LineColor = System.Drawing.Color.Black;79 this.symbolicExpressionTreeChart.Location = new System.Drawing.Point(0, 0);80 this.symbolicExpressionTreeChart.Name = "symbolicExpressionTreeChart";81 this.symbolicExpressionTreeChart.Size = new System.Drawing.Size(572, 720);82 this.symbolicExpressionTreeChart.Spacing = 5;83 this.symbolicExpressionTreeChart.SuspendRepaint = false;84 this.symbolicExpressionTreeChart.TabIndex = 2;85 this.symbolicExpressionTreeChart.TextFont = new System.Drawing.Font("Times New Roman", 8F);86 this.symbolicExpressionTreeChart.Tree = null;87 40 // 88 41 // topControlBox … … 141 94 this.simpleLineagesCheckBox.CheckedChanged += new System.EventHandler(this.simpleLineagesCheckBox_CheckedChanged); 142 95 // 143 // groupBox1144 //145 this.groupBox1.Controls.Add(this.matchConstantsCheckBox);146 this.groupBox1.Controls.Add(this.matchVariableWeightsCheckBox);147 this.groupBox1.Controls.Add(this.matchVariableNamesCheckBox);148 this.groupBox1.Location = new System.Drawing.Point(104, 1);149 this.groupBox1.Name = "groupBox1";150 this.groupBox1.Size = new System.Drawing.Size(325, 44);151 this.groupBox1.TabIndex = 12;152 this.groupBox1.TabStop = false;153 this.groupBox1.Text = "Matching constraints";154 //155 // matchConstantsCheckBox156 //157 this.matchConstantsCheckBox.AutoSize = true;158 this.matchConstantsCheckBox.Checked = true;159 this.matchConstantsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;160 this.matchConstantsCheckBox.Location = new System.Drawing.Point(6, 19);161 this.matchConstantsCheckBox.Name = "matchConstantsCheckBox";162 this.matchConstantsCheckBox.Size = new System.Drawing.Size(102, 17);163 this.matchConstantsCheckBox.TabIndex = 5;164 this.matchConstantsCheckBox.Text = "Constant values";165 this.matchConstantsCheckBox.UseVisualStyleBackColor = true;166 this.matchConstantsCheckBox.CheckedChanged += new System.EventHandler(this.matchConstantsCheckBox_CheckedChanged);167 //168 // matchVariableWeightsCheckBox169 //170 this.matchVariableWeightsCheckBox.AutoSize = true;171 this.matchVariableWeightsCheckBox.Checked = true;172 this.matchVariableWeightsCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;173 this.matchVariableWeightsCheckBox.Location = new System.Drawing.Point(114, 19);174 this.matchVariableWeightsCheckBox.Name = "matchVariableWeightsCheckBox";175 this.matchVariableWeightsCheckBox.Size = new System.Drawing.Size(103, 17);176 this.matchVariableWeightsCheckBox.TabIndex = 6;177 this.matchVariableWeightsCheckBox.Text = "Variable weights";178 this.matchVariableWeightsCheckBox.UseVisualStyleBackColor = true;179 this.matchVariableWeightsCheckBox.CheckedChanged += new System.EventHandler(this.matchVariableWeightsCheckBox_CheckedChanged);180 //181 // matchVariableNamesCheckBox182 //183 this.matchVariableNamesCheckBox.AutoSize = true;184 this.matchVariableNamesCheckBox.Checked = true;185 this.matchVariableNamesCheckBox.CheckState = System.Windows.Forms.CheckState.Checked;186 this.matchVariableNamesCheckBox.Location = new System.Drawing.Point(223, 19);187 this.matchVariableNamesCheckBox.Name = "matchVariableNamesCheckBox";188 this.matchVariableNamesCheckBox.Size = new System.Drawing.Size(98, 17);189 this.matchVariableNamesCheckBox.TabIndex = 7;190 this.matchVariableNamesCheckBox.Text = "Variable names";191 this.matchVariableNamesCheckBox.UseVisualStyleBackColor = true;192 this.matchVariableNamesCheckBox.CheckedChanged += new System.EventHandler(this.matchVariableNamesCheckBox_CheckedChanged);193 //194 96 // genealogyGraphChart 195 97 // 98 this.genealogyGraphChart.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) 99 | System.Windows.Forms.AnchorStyles.Right))); 196 100 this.genealogyGraphChart.BackColor = System.Drawing.SystemColors.Control; 197 this.genealogyGraphChart.Dock = System.Windows.Forms.DockStyle.Fill; 198 this.genealogyGraphChart.Location = new System.Drawing.Point(0, 0); 101 this.genealogyGraphChart.Chart = null; 102 this.genealogyGraphChart.GenealogyGraph = null; 103 this.genealogyGraphChart.Location = new System.Drawing.Point(3, 51); 199 104 this.genealogyGraphChart.LockGenealogy = false; 200 105 this.genealogyGraphChart.Name = "genealogyGraphChart"; 201 106 this.genealogyGraphChart.ScaleOnResize = true; 202 107 this.genealogyGraphChart.SimpleLineages = false; 203 this.genealogyGraphChart.Size = new System.Drawing.Size( 486, 720);204 this.genealogyGraphChart.TabIndex = 2;108 this.genealogyGraphChart.Size = new System.Drawing.Size(1066, 724); 109 this.genealogyGraphChart.TabIndex = 7; 205 110 // 206 111 // GenealogyGraphView … … 208 113 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 209 114 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 210 this.Controls.Add(this.groupBox1); 211 this.Controls.Add(this.splitContainer); 115 this.Controls.Add(this.genealogyGraphChart); 212 116 this.Controls.Add(this.topControlBox); 213 117 this.Name = "GenealogyGraphView"; 214 118 this.Size = new System.Drawing.Size(1072, 778); 215 this.splitContainer.Panel1.ResumeLayout(false);216 this.splitContainer.Panel2.ResumeLayout(false);217 ((System.ComponentModel.ISupportInitialize)(this.splitContainer)).EndInit();218 this.splitContainer.ResumeLayout(false);219 119 this.topControlBox.ResumeLayout(false); 220 120 this.graphControlsGroupBox.ResumeLayout(false); 221 this.groupBox1.ResumeLayout(false);222 this.groupBox1.PerformLayout();223 121 this.ResumeLayout(false); 224 122 … … 227 125 #endregion 228 126 229 private System.Windows.Forms.SplitContainer splitContainer;230 private SymbolicExpressionTreeChart symbolicExpressionTreeChart;231 232 private GenealogyGraphChart genealogyGraphChart;233 127 private System.Windows.Forms.ToolTip toolTip; 234 128 private System.Windows.Forms.Panel topControlBox; 235 private System.Windows.Forms.GroupBox groupBox1;236 private System.Windows.Forms.CheckBox matchConstantsCheckBox;237 private System.Windows.Forms.CheckBox matchVariableWeightsCheckBox;238 private System.Windows.Forms.CheckBox matchVariableNamesCheckBox;239 129 private System.Windows.Forms.GroupBox graphControlsGroupBox; 240 130 private System.Windows.Forms.Button highlightAllButton; 241 131 private System.Windows.Forms.CheckBox simpleLineagesCheckBox; 242 132 private System.Windows.Forms.CheckBox lockGenealogyCheckBox; 133 private GenealogyGraphChart genealogyGraphChart; 243 134 244 135 } -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/GenealogyGraphView.cs
r10264 r10269 21 21 22 22 using System; 23 using System.Collections.Generic;24 using System.Drawing;25 23 using System.Linq; 26 24 using System.Windows.Forms; 27 25 using HeuristicLab.Core.Views; 28 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding;29 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views;30 26 using HeuristicLab.MainForm; 31 using HeuristicLab.Problems.DataAnalysis.Symbolic;32 27 33 28 namespace HeuristicLab.EvolutionaryTracking.Views { 34 [View(" SymbolicExpressionTreeGenealogyGraph")]35 [Content(typeof( SymbolicExpressionTreeGenealogyGraph), IsDefaultView = true)]29 [View("GenealogyGraph")] 30 [Content(typeof(GenealogyGraph), IsDefaultView = true)] 36 31 public sealed partial class GenealogyGraphView : ItemView { 37 private VisualSymbolicExpressionTreeNode selectedVisualSymbExprTreeNode; 38 private SymbolicExpressionTreeNodeSimilarityComparer comparer; 39 private Dictionary<ISymbolicExpressionTreeNode, ISymbolicExpressionTreeNode> clonedNodes; 40 41 public new SymbolicExpressionTreeGenealogyGraph Content { 42 get { return (SymbolicExpressionTreeGenealogyGraph)base.Content; } 32 public new GenealogyGraph Content { 33 get { return (GenealogyGraph)base.Content; } 43 34 set { base.Content = value; } 44 35 } … … 51 42 this.simpleLineagesCheckBox.Image = Common.Resources.VSImageLibrary.ArrowDown; 52 43 this.lockGenealogyCheckBox.Image = Common.Resources.VSImageLibrary.ProtectForm; 53 54 comparer = new SymbolicExpressionTreeNodeSimilarityComparer {55 MatchConstantValues = true,56 MatchVariableWeights = true,57 MatchVariableNames = true58 };59 44 } 60 45 61 46 protected override void DeregisterContentEvents() { 62 47 // TODO: Deregister your event handlers here 63 genealogyGraphChart.GenealogyGraphNodeClicked -= graphChart_GenealogyGraphNodeClicked; 64 symbolicExpressionTreeChart.SymbolicExpressionTreeNodeClicked -= treeChart_SymbolicExpressionTreeNodeClicked; 65 symbolicExpressionTreeChart.SymbolicExpressionTreeNodeDoubleClicked -= treeChart_SymbolicExpressionTreeNodeDoubleClicked; 66 Content.GraphUpdated -= genealogyGraphUpdated; 48 Content.GraphUpdated -= GenealogyGraphUpdated; 67 49 base.DeregisterContentEvents(); 68 50 } … … 71 53 base.RegisterContentEvents(); 72 54 // TODO: Register your event handlers here 73 genealogyGraphChart.GenealogyGraphNodeClicked += graphChart_GenealogyGraphNodeClicked; 74 symbolicExpressionTreeChart.SymbolicExpressionTreeNodeClicked += treeChart_SymbolicExpressionTreeNodeClicked; 75 symbolicExpressionTreeChart.SymbolicExpressionTreeNodeDoubleClicked += treeChart_SymbolicExpressionTreeNodeDoubleClicked; 76 Content.GraphUpdated += genealogyGraphUpdated; 55 Content.GraphUpdated += GenealogyGraphUpdated; 77 56 } 78 57 … … 81 60 protected override void OnContentChanged() { 82 61 base.OnContentChanged(); 83 if (Content == null) 84 genealogyGraphChart.Graph = null; 85 else { 86 genealogyGraphChart.Graph = Content; 87 // var best = Content.Nodes.OrderByDescending(x => x.Quality).First(); 88 // symbolicExpressionTreeChart.Tree = best.SymbolicExpressionTree; 89 } 62 genealogyGraphChart.GenealogyGraph = Content ?? null; 90 63 } 91 92 64 private void Content_GraphChanged(object sender, EventArgs e) { 93 65 } 94 95 66 protected override void SetEnabledStateOfControls() { 96 67 base.SetEnabledStateOfControls(); … … 100 71 101 72 #region Event Handlers (child controls) 102 103 // TODO: Put event handlers of child controls here. 104 private void graphChart_GenealogyGraphNodeClicked(object sender, MouseEventArgs e) { 105 // the type hierarchy goes like this: VisualGenealogyGraphNode --> GenealogyGraphNode --> SymbolicExpressionTree 106 var visualGenealogyGraphNode = (VisualGenealogyGraphNode)sender; 107 var genealogyGraphNode = visualGenealogyGraphNode.Data; 108 symbolicExpressionTreeChart.Tree = genealogyGraphNode.SymbolicExpressionTree; 109 110 if (genealogyGraphNode.InEdges == null) return; 111 var arc = genealogyGraphNode.InEdges.Last(x => x.Source != x.Target); 112 if (arc == null || arc.Data == null) return; 113 var fragment = (IFragment)arc.Data; 114 if (fragment.Root == null) return; 115 foreach (var node in fragment.Root.IterateNodesBreadth()) { 116 var visualSymbExprTreeNode = symbolicExpressionTreeChart.GetVisualSymbolicExpressionTreeNode(node); 117 visualSymbExprTreeNode.LineColor = Color.OrangeRed; 118 } 119 symbolicExpressionTreeChart.Repaint(); 73 private void GenealogyGraphUpdated(object sender, EventArgs args) { 74 genealogyGraphChart.GenealogyGraph = Content; 120 75 } 121 122 private void genealogyGraphUpdated(object sender, EventArgs args) {123 genealogyGraphChart.Graph = Content;124 }125 126 private void treeChart_SymbolicExpressionTreeNodeClicked(object sender, MouseEventArgs e) {127 genealogyGraphChart.Chart.UpdateEnabled = false;128 switch (e.Button) {129 case MouseButtons.Left: {130 selectedVisualSymbExprTreeNode = (VisualSymbolicExpressionTreeNode)sender;131 if (selectedVisualSymbExprTreeNode == null) return;132 ISymbolicExpressionTreeNode selectedSubtree = selectedVisualSymbExprTreeNode.SymbolicExpressionTreeNode;133 var clonedSubtree = (ISymbolicExpressionTreeNode)selectedSubtree.Clone();134 // map original nodes to cloned nodes135 clonedNodes = selectedSubtree.IterateNodesPrefix()136 .Zip(clonedSubtree.IterateNodesPrefix(), (original, clone) => new { original, clone })137 .ToDictionary(p => p.original, p => p.clone);138 139 foreach (var node in symbolicExpressionTreeChart.Tree.IterateNodesPrefix()) {140 symbolicExpressionTreeChart.GetVisualSymbolicExpressionTreeNode(node).FillColor = Color.Transparent;141 }142 foreach (var node in selectedSubtree.IterateNodesPrefix()) {143 symbolicExpressionTreeChart.GetVisualSymbolicExpressionTreeNode(node).FillColor = Color.LightBlue;144 }145 break;146 }147 case MouseButtons.Middle: {148 var visualNode = (VisualSymbolicExpressionTreeNode)sender;149 if (selectedVisualSymbExprTreeNode == null || selectedVisualSymbExprTreeNode == visualNode) return;150 var selectedNode = visualNode.SymbolicExpressionTreeNode;151 if (clonedNodes.ContainsKey(selectedNode)) {152 var selectedClone = clonedNodes[selectedNode];153 var parent = selectedClone.Parent;154 if (parent == null) break;155 int index = parent.IndexOfSubtree(selectedClone);156 if (index == -1) break;157 parent.RemoveSubtree(parent.IndexOfSubtree(selectedClone));158 foreach (var node in selectedNode.IterateNodesPrefix()) {159 symbolicExpressionTreeChart.GetVisualSymbolicExpressionTreeNode(node).FillColor = Color.Transparent;160 }161 }162 break;163 }164 }165 if (selectedVisualSymbExprTreeNode == null || clonedNodes == null) return;166 // update visual graph nodes that contain matching trees167 MatchNodesAndRepaint();168 // refresh the tree chart169 symbolicExpressionTreeChart.Repaint();170 }171 172 76 void MatchNodesAndRepaint() { 173 77 genealogyGraphChart.Chart.UpdateEnabled = false; 174 genealogyGraphChart.ClearAllNodes(); // clear node colors 175 var fragment = new Fragment { Root = clonedNodes[selectedVisualSymbExprTreeNode.SymbolicExpressionTreeNode] }; 176 var fragmentLength = fragment.Length; 177 // highlight nodes 178 genealogyGraphChart.HighlightNodes(from node in genealogyGraphChart.Graph.Nodes 179 let tree = node.SymbolicExpressionTree 180 where tree.Length >= fragmentLength 181 where tree.Root.ContainsFragment(fragment, comparer) 182 select tree); 183 // highlight edges that contain a matching fragment 184 var fragmentSimilarityComparer = new SymbolicExpressionTreeFragmentSimilarityComparer { 185 SimilarityComparer = comparer 186 }; 187 var matchingEdges = genealogyGraphChart.Graph.Nodes.Where(n => n.InEdges != null) 188 .SelectMany(n => n.InEdges).Where(edge => edge.Data != null && ((IFragment)edge.Data).Root != null) 189 .Where(edge => fragmentSimilarityComparer.Equals(fragment, (IFragment)edge.Data)); 190 genealogyGraphChart.HighlightArcs(matchingEdges, Color.DodgerBlue); 191 78 genealogyGraphChart.ClearPrimitives(); // clear node colors 192 79 193 80 genealogyGraphChart.Chart.UpdateEnabled = true; … … 198 85 } 199 86 #endregion 200 201 private void matchConstantsCheckBox_CheckedChanged(object sender, EventArgs e) {202 comparer.MatchConstantValues = matchConstantsCheckBox.Checked;203 if (selectedVisualSymbExprTreeNode != null)204 MatchNodesAndRepaint();205 }206 207 private void matchVariableWeightsCheckBox_CheckedChanged(object sender, EventArgs e) {208 comparer.MatchVariableWeights = matchVariableWeightsCheckBox.Checked;209 if (selectedVisualSymbExprTreeNode != null)210 MatchNodesAndRepaint();211 }212 213 private void matchVariableNamesCheckBox_CheckedChanged(object sender, EventArgs e) {214 comparer.MatchVariableNames = matchVariableNamesCheckBox.Checked;215 if (selectedVisualSymbExprTreeNode != null)216 MatchNodesAndRepaint();217 }218 219 87 private void simpleLineagesCheckBox_CheckedChanged(object sender, EventArgs e) { 220 88 genealogyGraphChart.SimpleLineages = simpleLineagesCheckBox.Checked; … … 222 90 223 91 private void highlightAllButton_Click(object sender, EventArgs e) { 224 symbolicExpressionTreeChart.Repaint();225 genealogyGraphChart.HighlightAll();226 92 } 227 93 … … 231 97 232 98 private void highlightRootParentsButton_Click(object sender, EventArgs e) { 233 var nodes = genealogyGraphChart.G raph.Nodes.Where(n => n.InEdges != null && n.InEdges.Count == 2).Select(n => (SymbolicExpressionTreeGenealogyGraphNode)n.InEdges[0].Source).ToList();99 var nodes = genealogyGraphChart.GenealogyGraph.Nodes.Where(n => n.InArcs != null && n.InArcs.Count == 2).Select(n => (GenealogyGraphNode)n.InArcs[0].Source).ToList(); 234 100 genealogyGraphChart.HighlightNodes(nodes); 235 101 } 236 102 237 103 private void highlightSecondaryParentsButton_Click(object sender, EventArgs e) { 238 var nodes = genealogyGraphChart.G raph.Nodes.Where(n => n.InEdges != null && n.InEdges.Count == 2).Select(n => (SymbolicExpressionTreeGenealogyGraphNode)n.InEdges[1].Source).ToList();104 var nodes = genealogyGraphChart.GenealogyGraph.Nodes.Where(n => n.InArcs != null && n.InArcs.Count == 2).Select(n => (GenealogyGraphNode)n.InArcs[1].Source).ToList(); 239 105 genealogyGraphChart.HighlightNodes(nodes); 240 106 } -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/HeuristicLab.EvolutionTracking.Views-3.4.csproj
r10265 r10269 9 9 <OutputType>Library</OutputType> 10 10 <AppDesignerFolder>Properties</AppDesignerFolder> 11 <RootNamespace>HeuristicLab.Evolution aryTracking.Views</RootNamespace>12 <AssemblyName>HeuristicLab.Evolution aryTracking.Views-3.4</AssemblyName>11 <RootNamespace>HeuristicLab.EvolutionTracking.Views</RootNamespace> 12 <AssemblyName>HeuristicLab.EvolutionTracking.Views-3.4</AssemblyName> 13 13 <TargetFrameworkVersion>v4.0</TargetFrameworkVersion> 14 14 <FileAlignment>512</FileAlignment> … … 110 110 <ItemGroup> 111 111 <Compile Include="AncestryLayoutAdapter.cs" /> 112 <Compile Include="ExtendedSymbolicExpressionTreeCanvas.cs">113 <SubType>UserControl</SubType>114 </Compile>115 112 <Compile Include="FrequentFragmentsDialog.cs"> 116 113 <SubType>Form</SubType> … … 125 122 <DependentUpon>GenealogyGraphChart.cs</DependentUpon> 126 123 </Compile> 127 <Compile Include="GenealogyGraphDialog.cs">128 <SubType>Form</SubType>129 </Compile>130 <Compile Include="GenealogyGraphDialog.designer.cs">131 <DependentUpon>GenealogyGraphDialog.cs</DependentUpon>132 </Compile>133 124 <Compile Include="GenealogyGraphView.cs"> 134 125 <SubType>UserControl</SubType> … … 136 127 <Compile Include="GenealogyGraphView.Designer.cs"> 137 128 <DependentUpon>GenealogyGraphView.cs</DependentUpon> 138 </Compile>139 <Compile Include="LineageExplorerView.cs">140 <SubType>UserControl</SubType>141 </Compile>142 <Compile Include="LineageExplorerView.Designer.cs">143 <DependentUpon>LineageExplorerView.cs</DependentUpon>144 129 </Compile> 145 130 <Compile Include="Plugin.cs" /> … … 158 143 </ItemGroup> 159 144 <ItemGroup> 160 <ProjectReference Include="..\..\HeuristicLab.EvolutionaryTracking\3.4\HeuristicLab.EvolutionTracking-3.4.csproj"> 145 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.csproj"> 146 <Project>{423bd94f-963a-438e-ba45-3bb3d61cd03b}</Project> 147 <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4</Name> 148 </ProjectReference> 149 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj"> 150 <Project>{06d4a186-9319-48a0-bade-a2058d462eea}</Project> 151 <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name> 152 </ProjectReference> 153 <ProjectReference Include="..\..\HeuristicLab.EvolutionTracking\3.4\HeuristicLab.EvolutionTracking-3.4.csproj"> 161 154 <Project>{1f75cea3-464f-4a6f-b2f0-04b9841ebc16}</Project> 162 155 <Name>HeuristicLab.EvolutionTracking-3.4</Name> -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/Primitives/LabeledEllipse.cs
r10265 r10269 23 23 using System.Drawing; 24 24 using System.Linq; 25 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 25 26 using HeuristicLab.Visualization; 26 27 -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/Primitives/LabeledRectangle.cs
r10265 r10269 23 23 using System.Drawing; 24 24 using System.Linq; 25 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 25 26 using HeuristicLab.Visualization; 26 27 using Rectangle = HeuristicLab.Visualization.Rectangle; -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking.Views/3.4/VisualGenealogyGraphNode.cs
r10264 r10269 27 27 namespace HeuristicLab.EvolutionaryTracking.Views { 28 28 public class VisualGenealogyGraphNode : Ellipse { 29 public SymbolicExpressionTreeGenealogyGraphNode Data { get; internal set; }29 public IGenealogyGraphNode Data { get; internal set; } 30 30 private List<VisualGenealogyGraphArc> incomingArcs = new List<VisualGenealogyGraphArc>(); 31 31 private List<VisualGenealogyGraphArc> outgoingArcs = new List<VisualGenealogyGraphArc>(); -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking/3.4/HeuristicLab.EvolutionTracking-3.4.csproj
r10267 r10269 131 131 </ItemGroup> 132 132 <ItemGroup> 133 <Compile Include="Analyzers\BuildingBlocks\RelevantBuildingBlocksAnalyzer.cs" /> 134 <Compile Include="Analyzers\BuildingBlocks\Poly10BuildingBlocksAnalyzer.cs" /> 135 <Compile Include="Analyzers\SymbolicExpressionTreePruningAnalyzer.cs" /> 136 <Compile Include="Analyzers\SymbolicExpressionTreeShapeAnalyzer.cs" /> 137 <Compile Include="Analyzers\SymbolicExpressionTreeEvolvabilityAnalyzer.cs" /> 138 <Compile Include="Analyzers\Fragments\SymbolicExpressionTreeRelativeFragmentDepthAnalyzer.cs" /> 139 <Compile Include="Analyzers\Fragments\SymbolicExpressionTreeFragmentLengthsAnalyzer.cs" /> 140 <Compile Include="Analyzers\SymbolicExpressionTreeFrequentPatternsAnalyzer.cs" /> 141 <Compile Include="Analyzers\Fragments\SymbolicExpressionTreeFragmentsAnalyzer.cs" /> 142 <Compile Include="FPGraph.cs" /> 143 <Compile Include="Interfaces\IEdge.cs" /> 144 <Compile Include="LineageExplorer.cs" /> 145 <Compile Include="Operators\LineageAggregator.cs" /> 146 <Compile Include="Operators\SymbolicExpressionTreeFPBuilder.cs" /> 147 <Compile Include="Operators\SymbolicExpressionTreeGenealogyGraphBuilder.cs" /> 148 <Compile Include="Analyzers\SymbolicExpressionTreePopulationDiversityAnalyzer.cs" /> 149 <Compile Include="Analyzers\SymbolicExpressionTreeRelativeLengthAnalyzer.cs" /> 150 <Compile Include="GenericGraph\GenericGraph.cs" /> 151 <Compile Include="GenericGraph\Arc.cs" /> 152 <Compile Include="GenericGraph\Vertex.cs" /> 153 <Compile Include="Interfaces\IGenericGraph.cs" /> 154 <Compile Include="Interfaces\IVertex.cs" /> 155 <Compile Include="Interfaces\ISymbolicExpressionTreeGenealogyGraph.cs" /> 156 <Compile Include="Operators\CleanupOperator.cs" /> 157 <Compile Include="Operators\SymbolicExpressionTreeSymbolGraphBuilder.cs" /> 158 <Compile Include="Operators\Util.cs" /> 159 <Compile Include="Plugin.cs" /> 133 <Compile Include="DirectedGraph\Arc.cs" /> 134 <Compile Include="DirectedGraph\DirectedGraph.cs" /> 135 <Compile Include="DirectedGraph\Interfaces\IArc.cs" /> 136 <Compile Include="DirectedGraph\Interfaces\IDirectedGraph.cs" /> 137 <Compile Include="DirectedGraph\Interfaces\IVertex.cs" /> 138 <Compile Include="DirectedGraph\Vertex.cs" /> 139 <Compile Include="EvolutionTrackingOperators\EvolutionTrackingAfterCreationOperator.cs" /> 140 <Compile Include="EvolutionTrackingOperators\EvolutionTrackingAfterCrossoverOperator.cs" /> 141 <Compile Include="EvolutionTrackingOperators\EvolutionTrackingOperator.cs" /> 142 <Compile Include="FPGraph.cs"> 143 <SubType>Code</SubType> 144 </Compile> 145 <Compile Include="GenealogyGraph\GenealogyGraph.cs" /> 146 <Compile Include="GenealogyGraph\GenealogyGraphArc.cs" /> 147 <Compile Include="GenealogyGraph\GenealogyGraphNode.cs" /> 148 <Compile Include="GenealogyGraph\Interfaces\IGenealogyGraph.cs" /> 149 <Compile Include="GenealogyGraph\Interfaces\IGenealogyGraphArc.cs" /> 150 <Compile Include="GenealogyGraph\Interfaces\IGenealogyGraphNode.cs" /> 151 <Compile Include="Plugin.cs"> 152 <SubType>Code</SubType> 153 </Compile> 160 154 <Compile Include="Properties\AssemblyInfo.cs" /> 161 <Compile Include="SymbolGraph.cs" />162 <Compile Include="SymbolicExpressionTreeGenealogyGraph\SymbolicExpressionTreeGenealogyGraph.cs" />163 < Compile Include="SymbolicExpressionTreeGenealogyGraph\SymbolicExpressionTreeGenealogyGraphNode.cs" />155 <Compile Include="SymbolGraph.cs"> 156 <SubType>Code</SubType> 157 </Compile> 164 158 </ItemGroup> 165 <ItemGroup />166 159 <ItemGroup> 167 <WCFMetadata Include="Service References\" /> 160 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj"> 161 <Project>{06d4a186-9319-48a0-bade-a2058d462eea}</Project> 162 <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name> 163 </ProjectReference> 168 164 </ItemGroup> 169 165 <ItemGroup> -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.EvolutionTracking/3.4/HeuristicLab.EvolutionTracking-3.4.csproj.user
r10265 r10269 2 2 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 3 3 <PropertyGroup> 4 <ProjectView> ProjectFiles</ProjectView>4 <ProjectView>ShowAllFiles</ProjectView> 5 5 </PropertyGroup> 6 6 </Project> -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj
r9828 r10269 41 41 <DebugType>full</DebugType> 42 42 <Optimize>false</Optimize> 43 <OutputPath> $(SolutionDir)\bin\</OutputPath>43 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 44 44 <DefineConstants>DEBUG;TRACE</DefineConstants> 45 45 <ErrorReport>prompt</ErrorReport> … … 50 50 <DebugType>pdbonly</DebugType> 51 51 <Optimize>true</Optimize> 52 <OutputPath> $(SolutionDir)\bin\</OutputPath>52 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 53 53 <DefineConstants>TRACE</DefineConstants> 54 54 <ErrorReport>prompt</ErrorReport> … … 58 58 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> 59 59 <DebugSymbols>true</DebugSymbols> 60 <OutputPath> $(SolutionDir)\bin\</OutputPath>60 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 61 61 <DefineConstants>DEBUG;TRACE</DefineConstants> 62 62 <DebugType>full</DebugType> … … 66 66 </PropertyGroup> 67 67 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> 68 <OutputPath> $(SolutionDir)\bin\</OutputPath>68 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 69 69 <DefineConstants>TRACE</DefineConstants> 70 70 <Optimize>true</Optimize> … … 76 76 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> 77 77 <DebugSymbols>true</DebugSymbols> 78 <OutputPath> $(SolutionDir)\bin\</OutputPath>78 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 79 79 <DefineConstants>DEBUG;TRACE</DefineConstants> 80 80 <DebugType>full</DebugType> … … 84 84 </PropertyGroup> 85 85 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 86 <OutputPath> $(SolutionDir)\bin\</OutputPath>86 <OutputPath>..\..\..\..\trunk\sources\bin\</OutputPath> 87 87 <DefineConstants>TRACE</DefineConstants> 88 88 <Optimize>true</Optimize> … … 93 93 </PropertyGroup> 94 94 <ItemGroup> 95 <Reference Include="ALGLIB-3.7.0, Version=3.7.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 96 <HintPath>..\..\bin\ALGLIB-3.7.0.dll</HintPath> 95 <Reference Include="ALGLIB-3.7.0"> 96 <HintPath>..\..\..\..\trunk\sources\bin\ALGLIB-3.7.0.dll</HintPath> 97 <Private>False</Private> 98 </Reference> 99 <Reference Include="HeuristicLab.Analysis-3.3"> 100 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Analysis-3.3.dll</HintPath> 101 <Private>False</Private> 102 </Reference> 103 <Reference Include="HeuristicLab.Collections-3.3"> 104 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Collections-3.3.dll</HintPath> 105 <Private>False</Private> 106 </Reference> 107 <Reference Include="HeuristicLab.Common-3.3"> 108 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common-3.3.dll</HintPath> 109 <Private>False</Private> 110 </Reference> 111 <Reference Include="HeuristicLab.Common.Resources-3.3"> 112 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Common.Resources-3.3.dll</HintPath> 113 <Private>False</Private> 114 </Reference> 115 <Reference Include="HeuristicLab.Core-3.3, Version=3.3.0.0, Culture=neutral, PublicKeyToken=ba48961d6f65dcec, processorArchitecture=MSIL"> 116 <SpecificVersion>False</SpecificVersion> 117 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Core-3.3.dll</HintPath> 118 <Private>False</Private> 119 </Reference> 120 <Reference Include="HeuristicLab.Data-3.3"> 121 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Data-3.3.dll</HintPath> 122 <Private>False</Private> 123 </Reference> 124 <Reference Include="HeuristicLab.Operators-3.3"> 125 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Operators-3.3.dll</HintPath> 126 <Private>False</Private> 127 </Reference> 128 <Reference Include="HeuristicLab.Optimization-3.3"> 129 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization-3.3.dll</HintPath> 130 <Private>False</Private> 131 </Reference> 132 <Reference Include="HeuristicLab.Optimization.Operators-3.3"> 133 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Optimization.Operators-3.3.dll</HintPath> 134 <Private>False</Private> 135 </Reference> 136 <Reference Include="HeuristicLab.Parameters-3.3"> 137 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Parameters-3.3.dll</HintPath> 138 <Private>False</Private> 139 </Reference> 140 <Reference Include="HeuristicLab.Persistence-3.3"> 141 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Persistence-3.3.dll</HintPath> 142 <Private>False</Private> 143 </Reference> 144 <Reference Include="HeuristicLab.PluginInfrastructure-3.3"> 145 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath> 146 <Private>False</Private> 147 </Reference> 148 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4"> 149 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath> 150 <Private>False</Private> 151 </Reference> 152 <Reference Include="HeuristicLab.Problems.Instances-3.3"> 153 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Problems.Instances-3.3.dll</HintPath> 154 <Private>False</Private> 155 </Reference> 156 <Reference Include="HeuristicLab.Random-3.3"> 157 <HintPath>..\..\..\..\trunk\sources\bin\HeuristicLab.Random-3.3.dll</HintPath> 97 158 <Private>False</Private> 98 159 </Reference> … … 125 186 <SubType>Code</SubType> 126 187 </Compile> 188 <Compile Include="SlidingWindow\GenerationalSlidingWindowAnalyzer.cs" /> 189 <Compile Include="SlidingWindow\OffspringSelectionSlidingWindowAnalyzer.cs" /> 190 <Compile Include="SlidingWindow\SlidingWindowAnalyzer.cs" /> 191 <Compile Include="SlidingWindow\SlidingWindowData.cs" /> 192 <Compile Include="SlidingWindow\SlidingWindowQualitiesAnalyzer.cs" /> 193 <Compile Include="SlidingWindow\SlidingWindowVisualizer.cs" /> 194 <Compile Include="SymbolicDataAnalysisSolutionPruningOptimizer.cs" /> 127 195 <Compile Include="Analyzers\SymbolicDataAnalysisVariableFrequencyAnalyzer.cs" /> 128 196 <Compile Include="Analyzers\SymbolicDataAnalysisAlleleFrequencyAnalyzer.cs" /> … … 253 321 </ItemGroup> 254 322 <ItemGroup> 255 <ProjectReference Include="..\..\HeuristicLab.Analysis\3.3\HeuristicLab.Analysis-3.3.csproj">256 <Project>{887425B4-4348-49ED-A457-B7D2C26DDBF9}</Project>257 <Name>HeuristicLab.Analysis-3.3</Name>258 <Private>False</Private>259 </ProjectReference>260 <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj">261 <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project>262 <Name>HeuristicLab.Collections-3.3</Name>263 <Private>False</Private>264 </ProjectReference>265 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj">266 <Project>{0E27A536-1C4A-4624-A65E-DC4F4F23E3E1}</Project>267 <Name>HeuristicLab.Common.Resources-3.3</Name>268 <Private>False</Private>269 </ProjectReference>270 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj">271 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project>272 <Name>HeuristicLab.Common-3.3</Name>273 <Private>False</Private>274 </ProjectReference>275 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj">276 <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project>277 <Name>HeuristicLab.Core-3.3</Name>278 <Private>False</Private>279 </ProjectReference>280 <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj">281 <Project>{BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937}</Project>282 <Name>HeuristicLab.Data-3.3</Name>283 <Private>False</Private>284 </ProjectReference>285 323 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj"> 286 324 <Project>{06D4A186-9319-48A0-BADE-A2058D462EEA}</Project> … … 288 326 <Private>False</Private> 289 327 </ProjectReference> 290 <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj"> 291 <Project>{23DA7FF4-D5B8-41B6-AA96-F0561D24F3EE}</Project> 292 <Name>HeuristicLab.Operators-3.3</Name> 293 <Private>False</Private> 294 </ProjectReference> 295 <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj"> 296 <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project> 297 <Name>HeuristicLab.Optimization.Operators-3.3</Name> 298 <Private>False</Private> 299 </ProjectReference> 300 <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj"> 301 <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project> 302 <Name>HeuristicLab.Optimization-3.3</Name> 303 </ProjectReference> 304 <ProjectReference Include="..\..\HeuristicLab.Parameters\3.3\HeuristicLab.Parameters-3.3.csproj"> 305 <Project>{56F9106A-079F-4C61-92F6-86A84C2D84B7}</Project> 306 <Name>HeuristicLab.Parameters-3.3</Name> 307 <Private>False</Private> 308 </ProjectReference> 309 <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj"> 310 <Project>{102BC7D3-0EF9-439C-8F6D-96FF0FDB8E1B}</Project> 311 <Name>HeuristicLab.Persistence-3.3</Name> 312 <Private>False</Private> 313 </ProjectReference> 314 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj"> 315 <Project>{94186A6A-5176-4402-AE83-886557B53CCA}</Project> 316 <Name>HeuristicLab.PluginInfrastructure-3.3</Name> 317 <Private>False</Private> 318 </ProjectReference> 319 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj"> 320 <Project>{DF87C13E-A889-46FF-8153-66DCAA8C5674}</Project> 321 <Name>HeuristicLab.Problems.DataAnalysis-3.4</Name> 322 <Private>False</Private> 323 </ProjectReference> 324 <ProjectReference Include="..\..\HeuristicLab.Problems.Instances\3.3\HeuristicLab.Problems.Instances-3.3.csproj"> 325 <Project>{3540E29E-4793-49E7-8EE2-FEA7F61C3994}</Project> 326 <Name>HeuristicLab.Problems.Instances-3.3</Name> 327 <Private>False</Private> 328 </ProjectReference> 329 <ProjectReference Include="..\..\HeuristicLab.Random\3.3\HeuristicLab.Random-3.3.csproj"> 330 <Project>{F4539FB6-4708-40C9-BE64-0A1390AEA197}</Project> 331 <Name>HeuristicLab.Random-3.3</Name> 328 <ProjectReference Include="..\..\HeuristicLab.EvolutionTracking\3.4\HeuristicLab.EvolutionTracking-3.4.csproj"> 329 <Project>{1f75cea3-464f-4a6f-b2f0-04b9841ebc16}</Project> 330 <Name>HeuristicLab.EvolutionTracking-3.4</Name> 332 331 <Private>False</Private> 333 332 </ProjectReference> -
branches/HeuristicLab.EvolutionTracking/HeuristicLab.Tracking.sln
r10265 r10269 13 13 EndProjectSection 14 14 EndProject 15 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.E volutionTracking-3.4", "HeuristicLab.EvolutionaryTracking\3.4\HeuristicLab.EvolutionTracking-3.4.csproj", "{1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}"15 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4", "HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj", "{06D4A186-9319-48A0-BADE-A2058D462EEA}" 16 16 EndProject 17 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.EvolutionTracking.Views-3.4", "HeuristicLab.EvolutionaryTracking.Views\3.4\HeuristicLab.EvolutionTracking.Views-3.4.csproj", "{318DFE8C-CA23-4F1B-A4AC-62B425060241}" 17 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4", "HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding.Views-3.4.csproj", "{423BD94F-963A-438E-BA45-3BB3D61CD03B}" 18 EndProject 19 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.EvolutionTracking-3.4", "HeuristicLab.EvolutionTracking\3.4\HeuristicLab.EvolutionTracking-3.4.csproj", "{1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}" 20 EndProject 21 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.EvolutionTracking.Views-3.4", "HeuristicLab.EvolutionTracking.Views\3.4\HeuristicLab.EvolutionTracking.Views-3.4.csproj", "{318DFE8C-CA23-4F1B-A4AC-62B425060241}" 22 EndProject 23 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.DataAnalysis.Symbolic-3.4", "HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj", "{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}" 18 24 EndProject 19 25 Global … … 29 35 EndGlobalSection 30 36 GlobalSection(ProjectConfigurationPlatforms) = postSolution 37 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 38 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|Any CPU.Build.0 = Debug|Any CPU 39 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 40 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|Mixed Platforms.Build.0 = Debug|x86 41 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|x64.ActiveCfg = Debug|x64 42 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|x64.Build.0 = Debug|x64 43 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|x86.ActiveCfg = Debug|x86 44 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Debug|x86.Build.0 = Debug|x86 45 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|Any CPU.ActiveCfg = Release|Any CPU 46 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|Any CPU.Build.0 = Release|Any CPU 47 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|Mixed Platforms.ActiveCfg = Release|x86 48 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|Mixed Platforms.Build.0 = Release|x86 49 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|x64.ActiveCfg = Release|x64 50 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|x64.Build.0 = Release|x64 51 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|x86.ActiveCfg = Release|x86 52 {06D4A186-9319-48A0-BADE-A2058D462EEA}.Release|x86.Build.0 = Release|x86 53 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 54 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|Any CPU.Build.0 = Debug|Any CPU 55 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 56 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|Mixed Platforms.Build.0 = Debug|x86 57 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|x64.ActiveCfg = Debug|x64 58 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|x64.Build.0 = Debug|x64 59 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|x86.ActiveCfg = Debug|x86 60 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Debug|x86.Build.0 = Debug|x86 61 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|Any CPU.ActiveCfg = Release|Any CPU 62 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|Any CPU.Build.0 = Release|Any CPU 63 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|Mixed Platforms.ActiveCfg = Release|x86 64 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|Mixed Platforms.Build.0 = Release|x86 65 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|x64.ActiveCfg = Release|x64 66 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|x64.Build.0 = Release|x64 67 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|x86.ActiveCfg = Release|x86 68 {423BD94F-963A-438E-BA45-3BB3D61CD03B}.Release|x86.Build.0 = Release|x86 31 69 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 32 70 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|Any CPU.Build.0 = Debug|Any CPU 33 71 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU 34 72 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU 35 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|x64.ActiveCfg = Debug|Any CPU 73 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|x64.ActiveCfg = Debug|x64 74 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|x64.Build.0 = Debug|x64 36 75 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Debug|x86.ActiveCfg = Debug|Any CPU 37 76 {1F75CEA3-464F-4A6F-B2F0-04B9841EBC16}.Release|Any CPU.ActiveCfg = Release|Any CPU … … 46 85 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU 47 86 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU 48 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Debug|x64.ActiveCfg = Debug|Any CPU 87 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Debug|x64.ActiveCfg = Debug|x64 88 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Debug|x64.Build.0 = Debug|x64 49 89 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Debug|x86.ActiveCfg = Debug|Any CPU 50 90 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Release|Any CPU.ActiveCfg = Release|Any CPU … … 55 95 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Release|x64.Build.0 = Release|x64 56 96 {318DFE8C-CA23-4F1B-A4AC-62B425060241}.Release|x86.ActiveCfg = Release|Any CPU 97 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 98 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|Any CPU.Build.0 = Debug|Any CPU 99 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 100 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|Mixed Platforms.Build.0 = Debug|x86 101 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|x64.ActiveCfg = Debug|x64 102 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|x64.Build.0 = Debug|x64 103 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|x86.ActiveCfg = Debug|x86 104 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Debug|x86.Build.0 = Debug|x86 105 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|Any CPU.ActiveCfg = Release|Any CPU 106 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|Any CPU.Build.0 = Release|Any CPU 107 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|Mixed Platforms.ActiveCfg = Release|x86 108 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|Mixed Platforms.Build.0 = Release|x86 109 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|x64.ActiveCfg = Release|x64 110 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|x64.Build.0 = Release|x64 111 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|x86.ActiveCfg = Release|x86 112 {3D28463F-EC96-4D82-AFEE-38BE91A0CA00}.Release|x86.Build.0 = Release|x86 57 113 EndGlobalSection 58 114 GlobalSection(SolutionProperties) = preSolution
Note: See TracChangeset
for help on using the changeset viewer.