2026-05-07 10:14:44 +02:00

37 lines
839 B
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Wing.Utils;
namespace Wing.Gizmos
{
public enum ESnapType
{
Move,
Rotate,
Scale,
Grid,
Angle,
}
public class SnapFactory : NormalSingleton<SnapFactory>
{
private Dictionary<ESnapType, ISnap> mSnaps = new Dictionary<ESnapType, ISnap>();
public SnapFactory()
{
mSnaps.Add(ESnapType.Move, new MoveSnap());
mSnaps.Add(ESnapType.Rotate, new RotateSnap());
mSnaps.Add(ESnapType.Scale, new ScaleSnap());
mSnaps.Add(ESnapType.Grid, new GridSnap());
mSnaps.Add(ESnapType.Angle, new AngleSnap());
}
public ISnap Get(ESnapType type)
{
return mSnaps[type];
}
}
}