protected override Completion ExecuteImpl(ExecutionEnvironment enviroment) { if (Step == null || Angle == null || XRadius == null || YRadius == null) { return(Completion.Exception(Properties.Language.NullException, this)); } var c = Step.Execute(enviroment); if (!c.IsValue) { return(c); } if (!TypeConverters.IsNumber(c.ReturnValue)) { return(Completion.Exception(Properties.Language.ValueNotNumberException, Step)); } double step = TypeConverters.GetValue <double>(c.ReturnValue); var d = Angle.Execute(enviroment); if (!d.IsValue) { return(d); } if (!TypeConverters.IsNumber(d.ReturnValue)) { return(Completion.Exception(Properties.Language.ValueNotNumberException, Angle)); } double angle = TypeConverters.GetValue <double>(d.ReturnValue); var e = XRadius.Execute(enviroment); if (!e.IsValue) { return(e); } if (!TypeConverters.IsNumber(e.ReturnValue)) { return(Completion.Exception(Properties.Language.ValueNotNumberException, XRadius)); } double x = TypeConverters.GetValue <double>(e.ReturnValue); var f = YRadius.Execute(enviroment); if (!f.IsValue) { return(f); } if (!TypeConverters.IsNumber(f.ReturnValue)) { return(Completion.Exception(Properties.Language.ValueNotNumberException, YRadius)); } double y = TypeConverters.GetValue <double>(f.ReturnValue); DrawWindow wnd = CanvasEnvironment.GetCanvas(enviroment); wnd.Arc(step, angle, x, y); return(Completion.Void); }
public override int GetHashCode() { var hashCode = -1521134295 + XRadius.GetHashCode(); return(hashCode * -1521134295 + YRadius.GetHashCode()); }