//insert public static void Insert(DbLink dbLink, curve curve) { string query = @"insert into curves(cur_id, ident, description, title) values(nextval('mir_sequence'), @ident, @description, @title);"; dbLink.GetConnection().Execute(query, curve); }
public void TestInsertCurve() { var tempConnection = DataBaseLink.Fabricate.CreateConnection(_connection, DataBaseLink.ConnectionType.Npgsql); DataBaseLink.DbLink dbLink = new DbLink(tempConnection); curve curve = new curve() { description = "debt_zcc_rub", ident = "debt_zcc_rub", title = "debt_zcc_rub" }; if (Curves.FindId(dbLink, curve.ident) == null) { Curves.Insert(dbLink, curve); } }
public void init(int wavelength, int seed, curve probability, float riggedProbabilityTrigger, curve verticalRiggedCurve, int verticalRiggedWavelength, curve horizontalRiggedCurve, int horizontalRiggedWavelength, string name, GameObject parent) { this.wavelength = wavelength; this.seed = seed; this.probability = probability; this.riggedProbabilityTrigger = riggedProbabilityTrigger; this.verticalRiggedCurve = verticalRiggedCurve; this.verticalRiggedWavelength = verticalRiggedWavelength; this.horizontalRiggedCurve = horizontalRiggedCurve; this.horizontalRiggedWavelength = horizontalRiggedWavelength; this.baseNoise = new float[0]; this.generator = new System.Random(seed); gameObject.name = name; gameObject.transform.SetParent(parent.transform); }
public uint[] AddStripe(curve <vec3> c, vec2 width, Tuple <float, vec3>[] ups, Func <float, float> upEaseFn, int startNode, int endNode, float stepMultiplier) { List <uint> result = new List <uint>(); float sl = c.length; float islsl = stepMultiplier / (sl * sl); result.Capacity = (int)(sl / 0.01f * 2 / stepMultiplier); int upi = 0; vec3 up = ups[upi].Item2; foreach (var i in c.Iterate(stepMultiplier)) { float upa = i.t.InvLerp(ups[upi].Item1, ups[upi + 1].Item1); vec3 nup = upa.Lerp(ups[upi].Item2, ups[upi + 1].Item2); up = (1 - upEaseFn(upa)).Lerp(up, nup); vec3 forward = i.velocity.normalized; vec3 right = (up % forward).normalized; up = (i.velocity % right).normalized; if (i.t == 0) { Grow(2, 0); result.Add(CreateVertex(i.value + right * width.x, up)); result.Add(CreateVertex(i.value + right * width.y, up)); } else { Grow(2, 2); result.Add(CreateVertex(i.value + right * width.x, up)); MakeTriangle(result[result.Count - 3], result[result.Count - 2], result[result.Count - 1]); result.Add(CreateVertex(i.value + right * width.y, up)); MakeTriangle(result[result.Count - 2], result[result.Count - 3], result[result.Count - 1]); } } return(result.ToArray()); }
public float[,] generateWhiteNoise(int chunkPosX, int chunkPosY, curve interpolation) { int axisXshift, axisYshift; float verticalBlend, horizontalBlend; float top, bottom; float[,] whiteNoise = new float[chunkFactory.CHUNK_WIDTH + 1, chunkFactory.CHUNK_WIDTH + 1]; for (int x = 0; x < chunkFactory.CHUNK_WIDTH + 1; x++) { horizontalBlend = wavePhase(chunkPosX, x, wavelength) / (float)wavelength; for (int y = 0; y < chunkFactory.CHUNK_WIDTH + 1; y++) { verticalBlend = wavePhase(chunkPosY, y, wavelength) / (float)wavelength; if (chunkPosY * chunkFactory.CHUNK_WIDTH + y < 0) { axisYshift = -1 * wavelength; } else { axisYshift = 0; } if (chunkPosX * chunkFactory.CHUNK_WIDTH + x < 0) { axisXshift = -1 * wavelength; } else { axisXshift = 0; } top = interpolate( getBaseNoise(axisXshift + chunkPosX * chunkFactory.CHUNK_WIDTH + x, axisYshift + chunkPosY * chunkFactory.CHUNK_WIDTH + y + wavelength), getBaseNoise(axisXshift + chunkPosX * chunkFactory.CHUNK_WIDTH + x + wavelength, axisYshift + chunkPosY * chunkFactory.CHUNK_WIDTH + y + wavelength), horizontalBlend, interpolation); bottom = interpolate( getBaseNoise(axisXshift + chunkPosX * chunkFactory.CHUNK_WIDTH + x, axisYshift + chunkPosY * chunkFactory.CHUNK_WIDTH + y), getBaseNoise(axisXshift + chunkPosX * chunkFactory.CHUNK_WIDTH + x + wavelength, axisYshift + chunkPosY * chunkFactory.CHUNK_WIDTH + y), horizontalBlend, interpolation); whiteNoise[x, y] = interpolate(bottom, top, verticalBlend, interpolation); } } return(whiteNoise); }
public uint[] AddStripe(curve <vec3> c, vec2 width, vec3 up, float stepMultiplier) { return(AddStripe(c, width , new Tuple <float, vec3>[] { Tuple.Create(0f, up), Tuple.Create(1f, up) }, Easing.makeEaseMirror(Easing.easeExpoOut) , 0, c.numberOfNodes, stepMultiplier)); }
public uint[] AddStripe(curve <vec3> c, float width, vec3 up) { return(AddStripe(c, new vec2(-width / 2f, width / 2f), up)); }
public void init(int wavelength, int seed, curve probability, string name, GameObject parent) { init(wavelength, seed, probability, 1.1f, null, 0, null, 0, name, parent); }
private float interpolate(float x0, float x1, float alpha, curve interpolationCurve) { return(interpolationCurve(alpha) * (x1 - x0) + x0); }