namespace Yw.WpfUI.Hydro
|
{
|
/// <summary>
|
/// 简单材质管理器
|
/// </summary>
|
internal class SimpleMaterialManager
|
{
|
//缓存
|
private readonly ConcurrentDictionary<Color, Material> _cache = new();
|
|
/// <summary>
|
/// 获取材质
|
/// </summary>
|
public Material GetMaterial(string htmlColor)
|
{
|
var color = htmlColor.ToMediaColor();
|
return GetMaterial(color);
|
}
|
|
/// <summary>
|
/// 获取材质
|
/// </summary>
|
public Material GetMaterial(Color color)
|
{
|
var material = _cache.GetOrAdd(color, CreateMaterial(color));
|
return material;
|
}
|
|
//创建材质
|
private static Material CreateMaterial(Color color)
|
{
|
return MaterialHelper.CreateSimpleMaterial(color);
|
}
|
|
}
|
}
|