public static void SetValue(this RTable <double> instance, int index, double input) { //Convert values to our maximum. instance.values[index] = (double)input / 100.0; instance.RecalcValue(index); }
public void FillTable() { foreach (SPoint p in ShapePoints) { RTable.Add(new Vector(Center, p)); } }
public static void SetValues(this RTable <double> instance, string input) { var s = input.Substring(1, input.Length - 2).SplitFloats(",", false); for (int i = 0; i < s.Length; i++) { instance.values[i] = s[i]; } }
//Type-specific value assignment from an input string //takes a string of characters in format: "[0,1,2,.....127]" public static void SetValues(this RTable <int> instance, string input) { var s = input.Substring(1, input.Length - 2).Split(",", false); for (int i = 0; i < instance.values.Length; i++) { instance.values[i] = Convert.ToByte(s[i]); } }
//Custom waveform function public static double wave(double n, RTable <double> auxData = null) { if (auxData == null) { return(0.0); } n %= 1.0; return(auxData[(int)(Math.Abs(n) * auxData.values.Length - double.Epsilon)] * 2.0 - 1.0); }
private void LoadInternalObjects() { RTable table = new RTable(); table.Connect(_data, _manager); _intelligentObjects.Add(table); RBed b = new RBed(); b.Connect(_data, _manager); _intelligentObjects.Add(b); }
/// Takes a compatible JSON string from the clipboard and populates the table with it. public static int FromString(this RTable <Double> instance, string input, bool tableOnly = true) { var p = GdsFMJson.JSONData.ReadJSON(input); if (p is GdsFMJson.JSONDataError) { return(-1); // JSON malformed. Exit early. } var o = (GdsFMJson.JSONObject)p; if (o.GetItem("_iotype", "") != RTable <Double> ._iotype) { return(-2); //Incorrect iotype. Exit early. } instance.SetValues(o, tableOnly); return(0); }
/// Input from a float source, value's coming in from 0-100 and should be tamped down to 0-1. public static void SetValues(this RTable <double> instance, Godot.Collections.Dictionary input) { // GD.Print("attempting to assign RTable......."); // GD.Print(input["values"].GetType()); //Structure of dict: {values=[PoolRealArray tbl], floor=0, ceiling=100, use_log=false...} instance.floor = Convert.ToDouble(input["floor"]); instance.ceiling = Convert.ToDouble(input["ceiling"]); instance.use_log = Convert.ToBoolean(input["use_log"]); //Convert values to our maximum. var vals = (System.Single[])input["values"]; for (int i = 0; i < vals.Length; i++) { instance.values[i] = (double)vals[i] / 100.0; } instance.RecalcValues(); }
//TODO: EQUIVALENT FOR RTable<Byte> public static Godot.Collections.Dictionary ToDict(this RTable <Double> instance) { // var output = new float[128]; var out_tbl = new Godot.Collections.Array(new float[128]); var output = new Godot.Collections.Dictionary(); var out_tbl_precalc = new Godot.Collections.Array(new float[128]); for (int i = 0; i < 128; i++) { out_tbl[i] = (float)(instance.values[i] * 100.0); out_tbl_precalc[i] = (float)instance.precalc_values[i]; } output["values"] = out_tbl; output["precalc_values"] = out_tbl_precalc; output["floor"] = instance.floor; output["ceiling"] = instance.ceiling; output["use_log"] = instance.use_log; return(output); }
//Input from a serialized source, value's coming in from 0-1. public static void SetValues(this RTable <double> instance, GdsFMJson.JSONObject input, bool tableOnly = false) { // GD.Print("attempting to assign RTable......."); //Structure of dict: {values=[PoolRealArray tbl], floor=0, ceiling=100, use_log=false...} if (!tableOnly) { instance.floor = input.GetItem("floor", (float)instance.floor); instance.ceiling = input.GetItem("ceiling", (float)instance.ceiling); instance.use_log = input.GetItem("use_log", instance.use_log); } //Convert values to our maximum. var vals = (GdsFMJson.JSONArray)input.GetItem("values"); for (int i = 0; i < vals.Length; i++) { instance.values[i] = vals[i].ToFloat(); } instance.RecalcValues(); }
public string ToCSVLine(char cFieldDelimX, char cTextDelimX, bool bReplaceNewLineWithTabInsteadOfHTMLBrWithMarkerProperty, int ColumnStart, int ColumnCount) { return RTable.RowToCSVLine(fieldarr, cFieldDelimX, cTextDelimX, ColumnStart, ColumnCount, bReplaceNewLineWithTabInsteadOfHTMLBrWithMarkerProperty); }
private void CreateTable() { table = new RTable(); table.CreateTable(10, 5, 5, 0.25); }