using System; using System.Drawing; using System.Drawing.Imaging; using System.Collections.Generic; namespace Assistance { public class Modifier: ActivePoint.Owner { public static readonly Pen pen = Pens.LightGray; public Modifier(Document document): base(document) { document.modifiers.Add(this); } public override void remove() { base.remove(); document.modifiers.Remove(this); } public override void bringToFront() { document.modifiers.Remove(this); document.modifiers.Add(this); } public virtual void draw(Graphics g) { } public virtual void getTransformFuncs(List transformFuncs) { } public List modify(List tracks) { List outTracks = new List(); List transformFuncs = new List(); getTransformFuncs(transformFuncs); foreach(Track track in tracks) foreach(Geometry.TransformFunc transformFunc in transformFuncs) outTracks.Add(track.createChild(transformFunc)); return outTracks; } } }