43 lines
845 B
C#
43 lines
845 B
C#
using StgSharp.Math;
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
|
|
namespace StgSharp.Graphics
|
|
{
|
|
public class TextureProvider : IImageProvider
|
|
{
|
|
private Image _tex;
|
|
private vec2d[] _texCoord;
|
|
|
|
public Span<vec2d> TextureCoordinate
|
|
{
|
|
get => new Span<vec2d>(_texCoord);
|
|
}
|
|
|
|
public Image ProvideImage()
|
|
{
|
|
return _tex;
|
|
}
|
|
|
|
public TextureProvider(Image image, vec2d[] coord)
|
|
{
|
|
_tex = image;
|
|
_texCoord = coord;
|
|
}
|
|
|
|
public ref vec2d this[int index]
|
|
{
|
|
get => ref _texCoord[index];
|
|
}
|
|
|
|
public void ReadImage(IImageProvider provider)
|
|
{
|
|
_tex = provider.ProvideImage();
|
|
}
|
|
|
|
}
|
|
}
|