public MultiTraces(MultiTracesCmd multiTracesCmd, CoordinateCorrector coordinateCorrector) { this.RunnableModule = multiTracesCmd.RunnableModule; if (this.RunnableModule.Mode == ModuleMode.AssignMode1 || this.RunnableModule.Mode == ModuleMode.MainMode) { this.Valve = ValveType.Valve1; } else if (this.RunnableModule.Mode == ModuleMode.DualFallow) { this.Valve = ValveType.Both; } else { this.Valve = ValveType.Valve2; } foreach (var item in multiTracesCmd.Traces) { TraceBase newTrace = item.Clone() as TraceBase; if (newTrace is TraceLine) { TraceLine traceLine = newTrace as TraceLine; traceLine.Start = coordinateCorrector.Correct(multiTracesCmd.RunnableModule, traceLine.Start, Executor.Instance.Program.ExecutantOriginOffset); traceLine.End = coordinateCorrector.Correct(multiTracesCmd.RunnableModule, traceLine.End, Executor.Instance.Program.ExecutantOriginOffset); } else { TraceArc traceArc = newTrace as TraceArc; traceArc.Start = coordinateCorrector.Correct(multiTracesCmd.RunnableModule, traceArc.Start, Executor.Instance.Program.ExecutantOriginOffset); traceArc.Mid = coordinateCorrector.Correct(multiTracesCmd.RunnableModule, traceArc.Mid, Executor.Instance.Program.ExecutantOriginOffset); traceArc.End = coordinateCorrector.Correct(multiTracesCmd.RunnableModule, traceArc.End, Executor.Instance.Program.ExecutantOriginOffset); } //newTrace.Param = multiTracesCmd.RunnableModule.CommandsModule.Program.ProgramSettings.GetLineParam(newLine.LineStyle); this.traces.Add(newTrace); Log.Dprint(string.Format("{0}: {1}", item.GetType(), item)); } //param = multiTracesCmd.RunnableModule.CommandsModule.Program.ProgramSettings.GetLineParam(multiTracesCmd.LineStyle); isWeightControl = multiTracesCmd.IsWeightControl; wholeWeight = multiTracesCmd.WholeWeight; this.OffsetX = multiTracesCmd.OffsetX; this.OffsetY = multiTracesCmd.OffsetY; Program = multiTracesCmd.RunnableModule.CommandsModule.Program; this.multiTracesCmd = multiTracesCmd; if (multiTracesCmd.AssociatedMeasureHeightCmd != null) { curMeasureHeightValue = multiTracesCmd.AssociatedMeasureHeightCmd.RealHtValue; } else { curMeasureHeightValue = this.RunnableModule.MeasuredHt; } }
public MultiTraces(MultiTracesCmd multiTracesCmd) : this(multiTracesCmd, null) { }