namespace Lib.point.modify; [Guid("09b2aeea-79fa-4209-860e-85161060b6c8")] internal sealed class TransformWithImage : Instance ,ITransformable { [Output(Guid = "2fb36c90-2506-40bd-bbe9-34b3635c6411")] public readonly TransformCallbackSlot OutBuffer = new(); public TransformWithImage() { OutBuffer.TransformableOp = this; } IInputSlot ITransformable.TranslationInput => Center; IInputSlot ITransformable.RotationInput => TextureRotate; IInputSlot ITransformable.ScaleInput => Stretch; public Action TransformCallback { get; set; } [Input(Guid = "1840ae3f-2dc4-4eb1-a3d0-de9c9d2e0afa")] public readonly InputSlot GPoints = new InputSlot(); [Input(Guid = "fccce788-f500-411d-94a4-2209c595bc2a")] public readonly InputSlot Strength = new InputSlot(); [Input(Guid = "187f60f5-16e5-42c8-8359-8fabe18ec475", MappedType = typeof(FModes))] public readonly InputSlot StrengthFactor = new InputSlot(); [Input(Guid = "60335a52-8c05-4119-b80e-7a7f0f57de5c")] public readonly InputSlot Translate = new InputSlot(); [Input(Guid = "a01fb917-5c3a-4278-91aa-ff853183a6d5")] public readonly InputSlot Scale = new InputSlot(); [Input(Guid = "41d5b860-f420-41e2-b5c2-d8e168a8312f")] public readonly InputSlot ScaleUniform = new InputSlot(); [Input(Guid = "027ef9a9-73ef-4d23-861b-660060541826")] public readonly InputSlot Rotate = new InputSlot(); [Input(Guid = "9288acba-4ba5-4d5a-bfed-55c2e7a9b8d5")] public readonly InputSlot ScaleFx1 = new InputSlot(); [Input(Guid = "6bc136e6-a452-4110-beab-7188e33b1bf8")] public readonly InputSlot ScaleFx2 = new InputSlot(); [Input(Guid = "6fe19bb3-dd2d-4fcc-9ea6-18dbedfc7ede")] public readonly InputSlot Image = new InputSlot(); [Input(Guid = "f7c9329e-5931-4133-ae4c-9993e6148173")] public readonly InputSlot Channel = new InputSlot(); [Input(Guid = "36e3ddee-c4ef-4b9f-a8a7-d543cc141e4b")] public readonly InputSlot Center = new InputSlot(); [Input(Guid = "b95b888a-4057-4011-981f-465945d11650")] public readonly InputSlot Stretch = new InputSlot(); [Input(Guid = "7cdab638-5110-4662-baee-b4ada8701242")] public readonly InputSlot ImageScale = new InputSlot(); [Input(Guid = "55e9c165-08a4-4bfe-80a8-8dd19bf6cdf4")] public readonly InputSlot TextureRotate = new InputSlot(); [Input(Guid = "1a3cde2d-2d12-475f-ab6b-ea44494c5aa0")] public readonly InputSlot TextureMode = new InputSlot(); [Input(Guid = "531a30f9-ddf0-4a99-8cba-a9dc66626730")] public readonly InputSlot Visibility = new InputSlot(); [Input(Guid = "06e6e8d7-31d3-4607-8abe-a5170a05e1a9", MappedType = typeof(Spaces))] public readonly InputSlot TranslationSpace = new InputSlot(); [Input(Guid = "099019c1-f27c-44a4-9e9c-c22b8313310c")] public readonly InputSlot GainAndBias = new InputSlot(); [Input(Guid = "61f306a3-8799-452c-b9cf-4c71efdb633c")] public readonly InputSlot Scatter = new InputSlot(); [Input(Guid = "386fa9e3-4dae-4c7c-9112-94f352415ddc")] public readonly InputSlot StrengthOffset = new InputSlot(); private enum Modes { Add, Multiply, } private enum Spaces { Point, Object, } private enum FModes { None, F1, F2, } }