Esempio n. 1
0
 public InterpolationParameterController(InterpolationParameters parameters)
 {
     _doc                   = parameters;
     _numberOfPoints        = parameters.NumberOfPoints;
     _xOrg                  = parameters.XOrg;
     _xEnd                  = parameters.XEnd;
     _interpolationInstance = parameters.InterpolationInstance;
 }
Esempio n. 2
0
		public InterpolationParameterController(InterpolationParameters parameters)
		{
			_doc = parameters;
			_numberOfPoints = parameters.NumberOfPoints;
			_xOrg = parameters.XOrg;
			_xEnd = parameters.XEnd;
			_interpolationInstance = parameters.InterpolationInstance;
		}
Esempio n. 3
0
		public static void Interpolation(Altaxo.Data.DataColumn xCol, Altaxo.Data.DataColumn yCol,
		InterpolationParameters parameters,
		Altaxo.Data.DataColumn xRes, Altaxo.Data.DataColumn yRes)
		{
			Interpolation(
				xCol, yCol,
				parameters.InterpolationInstance,
				VectorMath.CreateEquidistantSequenceByStartEndLength(parameters.XOrg, parameters.XEnd, parameters.NumberOfPoints),
				xRes, yRes);
		}
Esempio n. 4
0
		public static void Interpolation(IWorksheetController ctrl, InterpolationParameters parameters)
		{
			Dictionary<DataColumn, int> _columnToGroupNumber = new Dictionary<DataColumn, int>();

			for (int nSel = 0; nSel < ctrl.SelectedDataColumns.Count; nSel++)
			{
				Altaxo.Data.DataColumn yCol = ctrl.DataTable.DataColumns[ctrl.SelectedDataColumns[nSel]];
				Altaxo.Data.DataColumn xCol = ctrl.DataTable.DataColumns.FindXColumnOf(yCol);

				if (!(yCol is INumericColumn))
				{
					Current.Gui.ErrorMessageBox("The selected column is not numeric!");
					return;
				}
				if (!(xCol is INumericColumn))
				{
					Current.Gui.ErrorMessageBox("The x-column of the selected column is not numeric!");
					return;
				}

				DoubleColumn xRes = new DoubleColumn();
				DoubleColumn yRes = new DoubleColumn();
				int newgroup;
				if (!_columnToGroupNumber.TryGetValue(xCol, out newgroup))
				{
					newgroup = ctrl.DataTable.DataColumns.GetUnusedColumnGroupNumber();
					ctrl.DataTable.DataColumns.Add(xRes, xCol.Name + ".I", ColumnKind.X, newgroup);
					_columnToGroupNumber.Add(xCol, newgroup);
				}
				ctrl.DataTable.DataColumns.Add(yRes, yCol.Name + ".I", ColumnKind.V, newgroup);

				Interpolation(xCol, yCol, parameters, xRes, yRes);
			}
		}
Esempio n. 5
0
		public static void Interpolation(IWorksheetController ctrl)
		{
			if (ctrl.SelectedDataColumns.Count == 0)
				return;

			object paramobject = new InterpolationParameters();

			if (!Current.Gui.ShowDialog(ref paramobject, "Interpolation"))
				return;

			InterpolationParameters parameters = (InterpolationParameters)paramobject;

			Interpolation(ctrl, parameters);
		}