コード例 #1
0
ファイル: clsHeightmap.cs プロジェクト: pcdummy/SharpFlame
 public void ShiftToZero(clsHeightmap Source)
 {
     sMinMax max = new sMinMax();
     double num = Source.HeightScale / this.HeightScale;
     Source.MinMaxGet(ref max);
     this.SizeCopy(Source);
     long num2 = 0L - max.Min;
     int num5 = this.HeightData.SizeY - 1;
     for (int i = 0; i <= num5; i++)
     {
         int num6 = this.HeightData.SizeX - 1;
         for (int j = 0; j <= num6; j++)
         {
             this.HeightData.Height[i, j] = (long) Math.Round((double) ((num2 + Source.HeightData.Height[i, j]) * num));
         }
     }
 }
コード例 #2
0
ファイル: clsHeightmap.cs プロジェクト: pcdummy/SharpFlame
 public void WaveLow(clsHeightmap Source)
 {
     sMinMax max = new sMinMax();
     Source.MinMaxGet(ref max);
     long num2 = max.Max - max.Min;
     long min = max.Min;
     if (num2 != 0.0)
     {
         this.SizeCopy(Source);
         int num5 = this.HeightData.SizeY - 1;
         for (int i = 0; i <= num5; i++)
         {
             int num6 = this.HeightData.SizeX - 1;
             for (int j = 0; j <= num6; j++)
             {
                 this.HeightData.Height[i, j] = (long) Math.Round((double) (((((1.0 - Math.Sin((1.0 - (((double) (Source.HeightData.Height[i, j] - min)) / ((double) num2))) * 1.5707963267948966)) * num2) + min) * Source.HeightScale) / this.HeightScale));
             }
         }
     }
 }
コード例 #3
0
ファイル: clsHeightmap.cs プロジェクト: pcdummy/SharpFlame
 public void Rescale(clsHeightmap Source, double HeightMin, double HeightMax)
 {
     long num2;
     int num5;
     int num6;
     sMinMax max = new sMinMax();
     Source.MinMaxGet(ref max);
     this.SizeCopy(Source);
     long num = max.Max - max.Min;
     long num3 = 0L - max.Min;
     if (num > 0L)
     {
         double num4 = (HeightMax - HeightMin) / (num * this.HeightScale);
         num2 = (long) Math.Round((double) (HeightMin / this.HeightScale));
         int num7 = this.HeightData.SizeY - 1;
         for (num6 = 0; num6 <= num7; num6++)
         {
             int num8 = this.HeightData.SizeX - 1;
             num5 = 0;
             while (num5 <= num8)
             {
                 this.HeightData.Height[num6, num5] = num2 + ((long) Math.Round((double) ((num3 + Source.HeightData.Height[num6, num5]) * num4)));
                 num5++;
             }
         }
     }
     else
     {
         num2 = (long) Math.Round((double) ((HeightMin + HeightMax) / 2.0));
         int num9 = this.HeightData.SizeY - 1;
         for (num6 = 0; num6 <= num9; num6++)
         {
             int num10 = this.HeightData.SizeX - 1;
             for (num5 = 0; num5 <= num10; num5++)
             {
                 this.HeightData.Height[num6, num5] = num2;
             }
         }
     }
 }