You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.1 KiB
37 lines
1.1 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
|
|
namespace MODELING_DEF_DES_MI_VI.Models.Spreads
|
|
{
|
|
public class ImprovedNormalSpread : BaseSpread
|
|
{
|
|
public MaterialModel Material { get; set; }
|
|
public NormalSpread NormalSpread { get; set; }
|
|
public override IList<Pore> GetSpread()
|
|
{
|
|
var r = new Random();
|
|
var pores = NormalSpread.GetSpread();
|
|
pores.ToList().ForEach(p =>
|
|
{
|
|
p.Point.X = p.Point.X + r.NextDouble() * 2 - 1;
|
|
p.Point.Y = p.Point.Y + r.NextDouble() * 2 - 1;
|
|
p.Point.Z = p.Point.Z + r.NextDouble() * 2 - 1;
|
|
});
|
|
return pores;
|
|
}
|
|
|
|
public override void LoadRecommendParams()
|
|
{
|
|
NormalSpread.LoadRecommendParams();
|
|
}
|
|
|
|
public ImprovedNormalSpread(MaterialModel material)
|
|
{
|
|
NormalSpread = new NormalSpread(material);
|
|
Material = material;
|
|
}
|
|
public override string ToString()
|
|
=> "Улучшенное нормальное распределение";
|
|
}
|
|
}
|
|
|