OSDN Git Service

Added ratio display for Shard Processor
authormelchior <melchior@users.osdn.me>
Sat, 13 Feb 2021 02:41:16 +0000 (21:41 -0500)
committermelchior <melchior@users.osdn.me>
Sat, 13 Feb 2021 02:41:16 +0000 (21:41 -0500)
ShardProcessor/Program.cs
ShardProcessor/ShardProcessor.csproj

index bcdf124..982ba6d 100644 (file)
@@ -200,12 +200,12 @@ namespace ShardProcessor
                PngMetadataChunk metadataFromPng = pngRead.GetChunksList( ).GetById1(PngMetadataChunk.ID) as PngMetadataChunk;
                ColumnMeta columnData = metadataFromPng.ChunkMetadata;
                
-               Console.Write("X {0:D5} Y {1:D5} Days:{2:N1} ", columnData.Location.X, columnData.Location.Y, columnData.ChunkAge.TotalDays);
-               Console.Write("YMax:{0:D3} Size:{1} R.R#:{2} Air:{3:D7} NotAir:{4:D7} ", 
-               columnData.YMax,columnData.ChunkSize , (columnData.RockRatio != null? columnData.RockRatio.Count.ToString("D"):  "?"), columnData.AirBlocks, columnData.NonAirBlocks
+               Console.Write("X{0,6:D} Y{1,6:D} Age:{2:N1} ", columnData.Location.X, columnData.Location.Y, columnData.ChunkAge.TotalDays);
+               Console.Write("YMax:{0:D3} ChkS:{1} Air:{2,7:D} NotAir:{3,7:D} ", 
+               columnData.YMax,columnData.ChunkSize , columnData.AirBlocks, columnData.NonAirBlocks
          );
                if (columnData.HeightMap != null) {
-               Console.Write("H.M [{0}] {1}x{2} ", columnData.HeightMap.Rank, columnData.HeightMap.GetLength(0), columnData.HeightMap.GetLength(1));
+               Console.Write("(Heights [{0}x{1}] ", columnData.HeightMap.GetLength(0), columnData.HeightMap.GetLength(1));
                ushort lowest = ushort.MaxValue, highest = 0;
                ulong sum = 0;
                foreach (var hmEntry in columnData.HeightMap) {
@@ -213,9 +213,18 @@ namespace ShardProcessor
                highest = Math.Max(highest, hmEntry);
                sum += hmEntry;
                }
-               Console.Write("Max:{0}, Min:{1}, ", highest, lowest);
-               if (sum > 0) Console.Write("Avg:{0:F1}", ( float )sum / (columnData.ChunkSize * columnData.ChunkSize));
+               Console.Write("Max:{0,3}, Min:{1,3}, ", highest, lowest);
+               if (sum > 0) Console.Write("Avg:{0:F1})", ( float )sum / (columnData.ChunkSize * columnData.ChunkSize));
                Console.WriteLine( );
+               /*------ROCK RATIOs mini-table----------*/
+               if (columnData.RockRatio != null && columnData.RockRatio.Count > 0) {
+               Console.Write("Ratios({0,2:D})[",columnData.RockRatio.Count);
+               foreach (var rock in columnData.RockRatio) {
+               Console.Write("ID:{0,5:D} x{1,4:D}, ", rock.Key, rock.Value);
+               }
+               Console.Write(" ]\n");
+               }
+
                if ( sum == 0 || columnData.YMax == 0) flat++;
                }
                else {
index 2d9462d..11a7a93 100644 (file)
@@ -18,7 +18,7 @@
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <ExternalConsole>true</ExternalConsole>\r
-    <Commandlineparameters>--heightmap ~/ApplicationData/vintagestory/Maps/World_19781215</Commandlineparameters>\r
+    <Commandlineparameters>--shards ~/ApplicationData/vintagestory/Maps/World_19781215</Commandlineparameters>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
     <Optimize>true</Optimize>\r
@@ -38,9 +38,6 @@
     <Reference Include="Newtonsoft.Json">\r
       <HintPath>..\Automap\VS_libs\Newtonsoft.Json.dll</HintPath>\r
     </Reference>\r
-    <Reference Include="Automap">\r
-      <HintPath>..\Automap\bin\Debug\Automap.dll</HintPath>\r
-    </Reference>\r
     <Reference Include="VintagestoryAPI">\r
       <HintPath>..\Automap\VS_libs\VintagestoryAPI.dll</HintPath>\r
     </Reference>\r
     <Compile Include="Program.cs" />\r
     <Compile Include="Properties\AssemblyInfo.cs" />\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="..\Automap\Automap.csproj">\r
+      <Project>{0287E0DF-B785-40E8-BB50-2D684B45FC61}</Project>\r
+      <Name>Automap</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
   <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />\r
 </Project>
\ No newline at end of file