public void ShouldStepForward() { var guidance = new Guidance(); guidance.Step("forward 4"); guidance.Position.Should().Be(4); }
private void FixedUpdate() { var rb = GetComponent <Rigidbody>(); Vector3 position = rb.position; Vector3 targetPosition = GetComponent <TargetFilter>().Position; Vector3 velocity = rb.velocity; Vector3 targetVelocity = GetComponent <TargetFilter>().Velocity; acceleration.Clear(); for (int guidanceIndex = 0; guidanceIndex < Guidances.Length; guidanceIndex++) { Guidance guidance = Guidances[guidanceIndex]; if (guidance.ApplyAcceleration) { buffer.Clear(); guidance.Law.Calculate(Time.fixedDeltaTime, position, velocity, targetPosition, targetVelocity, buffer); acceleration.AddRange(buffer); } } for (int accelerationIndex = 0; accelerationIndex < acceleration.Count; accelerationIndex++) { rb.AddForce(acceleration[accelerationIndex], ForceMode.Impulse); } }
public List <Guidance> GetGuidances() { try { List <Guidance> guidance = guidance_db.Db_Get_All_Guidances(); return(guidance); } catch (Exception) { //something went wrong connecting to the database, so we will add a fake student to the list to make sure the rest of the application continues working! List <Guidance> guidance = new List <Guidance>(); Guidance a = new Guidance(); a.TeacherId = 3; guidance.Add(a); Guidance b = new Guidance(); b.TeacherId = 2; //throw new Exception("Someren couldn't connect to the database"); System.Windows.Forms.MessageBox.Show("Someren couldn't connect to the database"); guidance.Add(a); return(guidance); } }
public LeapHand(RigidHand hand) { if (hand.palm != null) { this.palm = new Guidance(hand.palm); } if (hand.forearm != null) { this.forearm = new Guidance(hand.forearm); } if (hand.elbowJoint != null) { this.elbowJoint = new Guidance(hand.elbowJoint); } FingerModel[] fingersModel = hand.fingers; this.fingers = new Guidance[fingersModel.Length, FingerModel.NUM_BONES]; for (int i = 0; i < fingersModel.Length; i++) { for (int j = 0; j < FingerModel.NUM_BONES; ++j) { if (fingersModel[i] != null && fingersModel[i].bones[j] != null) { this.fingers[i, j] = new Guidance(fingersModel[i].bones[j]); } } } this.handedness = hand.Handedness; }
public void RefreshMask() { Vector3 targetPos = m_targetCamera.WorldToScreenPoint(currentTarget.position); Vector2 targetLocal; RectTransformUtility.ScreenPointToLocalPointInRectangle(canvas.transform as RectTransform, targetPos, m_camera, out targetLocal); currentShowTarget.anchoredPosition3D = new Vector3(targetLocal.x, targetLocal.y, 100); Mask.gameObject.SetActive(true); Material material; if (currentInfo.GuidanceType == 1) { material = RectMaterial; currentGuidance = rectGuidanceController; } else { material = CircleMaterial; currentGuidance = circleGuidanceController; } Mask.material = material; currentGuidance.SetCamera(m_targetCamera); currentGuidance.SetMaterial(Mask.material); currentGuidance.SetCanvas(canvas); currentGuidance.SetTarget(m_newbieGuideData[index].highlightArea); currentGuidance.RefreshMask(); }
public void Day02Part02() { var data = System.IO.File.ReadLines("data/day02.txt").ToArray(); var guidance = new Guidance(); guidance.Move(data); (guidance.Position * guidance.Depth).Should().Be(1872757425); }
/// <summary> /// Special Rules of a Guidance system /// </summary> /// <param name="self">Guidance</param> /// <returns>String to list for a Guidance System</returns> public static string Special(this Guidance self) { if (self == Guidance.Guided) { return("One character may make +0 Tech-Use+Detection test to turn torpedo up to 45 degrees at start of it's movement each turn. Enemies which have identified the torpedo tubes may make -40 Tech-Use Test to gain control instead"); } return(null); }
/// <summary> /// Create a new Torpedo /// </summary> /// <param name="warhead">Warhead in the Torpedo</param> /// <param name="system">Guidance system in the Torpedo</param> public Torpedo(Warhead warhead, Guidance system = Guidance.Standard) { this.Warhead = warhead; if (this.Warhead == Warhead.Void || this.Warhead == Warhead.Leech) this.GuidanceSystem = Guidance.Seeking; else this.GuidanceSystem = system; }
public void LaunchingRocket() { Console.WriteLine("_______Starting up Rocket Systems_______"); Structural.startStructuralSystem(); Payload.checkingSystemIntegrity(); Guidance.startGuidanceSystem(); Propulsion.checkingEngine(); System.Console.WriteLine("_______All systems are on and working_______"); }
public void Db_Add_Guidance(Guidance g) { string query = "INSERT INTO Guidance(teacher_id) VALUES (@TeacherId)"; SqlParameter[] sqlParameters = { new SqlParameter("TeacherId", g.TeacherId), }; //Uitvoering van de query ExecuteEditQuery(query, sqlParameters); }
public void Db_Delete_Guidance(Guidance g) { //Query Delete guidance voor table Guidance string query = "DELETE FROM Guidance WHERE teacher_id = @GuidanceId"; SqlParameter[] sqlParameters = { new SqlParameter("GuidanceId", g.TeacherId), }; //Uitvoering van de query ExecuteEditQuery(query, sqlParameters); }
/// <summary> /// Create a new Torpedo /// </summary> /// <param name="warhead">Warhead in the Torpedo</param> /// <param name="system">Guidance system in the Torpedo</param> public Torpedo(Warhead warhead, Guidance system = Guidance.Standard) { this.Warhead = warhead; if (this.Warhead == Warhead.Void || this.Warhead == Warhead.Leech) { this.GuidanceSystem = Guidance.Seeking; } else { this.GuidanceSystem = system; } }
private void CreateGuide(Sprite sprite, AnimatorOverrideController controller) { _guidance = Instantiate(GuidancePrefab).GetComponent <Guidance>(); _guidance.transform.parent = Camera.main.transform; if (sprite != null) { _guidance.SetSprite(sprite); } if (controller != null) { _guidance.SetAnimationController(controller); } }
public void DestroyAllGuidance() { var objects = FindObjectsOfType(typeof(GameObject)); for (var i = 0; i < objects.Length; i++) { var gameObj = (GameObject)objects[i]; if (gameObj.layer == 11) { Guidance guide = gameObj.GetComponent <Guidance>(); guide.CloseInstruction(); } } }
private void Reset() { var guidanceLaws = GetComponents <IGuidanceLaw>(); Guidances = new Guidance[guidanceLaws.Length]; for (int guidanceLawsIndex = 0; guidanceLawsIndex < guidanceLaws.Length; guidanceLawsIndex++) { Guidances[guidanceLawsIndex] = new Guidance() { MonoBehaviour = guidanceLaws[guidanceLawsIndex] as MonoBehaviour, ApplyAcceleration = false }; } }
public IDictionary <string, Role> GetRoles() { IDictionary <string, Role> roles = new Dictionary <string, Role>(); string cmdText = @"select * from AspNetRoles"; this.ReadData(dataReader => { string key = dataReader["Id"].ToString(); string name = dataReader["Name"].ToString(); if (Enum.TryParse(name, out RoleType result)) { switch (result) { case RoleType.Administrator: roles.Add(key, Administrator.GetInstance()); break; case RoleType.Customer: roles.Add(key, WebApplication.Models.Role.Customer.GetInstance()); break; case RoleType.DirectStore: roles.Add(key, DirectStore.GetInstance()); break; case RoleType.Guidance: roles.Add(key, Guidance.GetInstance()); break; case RoleType.Supervise: roles.Add(key, Supervise.GetInstance()); break; case RoleType.VIP: roles.Add(key, VIP.GetInstance()); break; case RoleType.VVIP: roles.Add(key, VVIP.GetInstance()); break; } } }, cmdText); return(roles); }
private List <Guidance> ReadTables(DataTable dataTable) { List <Guidance> guidances = new List <Guidance>(); foreach (DataRow dr in dataTable.Rows) { Guidance guidance = new Guidance() { TeacherName = (String)dr["teacher_name"].ToString(), TeacherId = (int)(dr["teacher_id"]) }; guidances.Add(guidance); } return(guidances); }
public void TimerHandler() { if (Cooking && !TimerOpen) { // Close step by step guidance DestroyAllGuidance(); // Create timer menu var timerMenu = Instantiate(TimerMenuPrefab); TimerOpen = true; // Timer guidance _guidance = Instantiate(GuidancePrefab).GetComponent <Guidance>(); _guidance.transform.parent = Camera.main.transform; _guidance.SetInstruction("Click on the + numbers to increase the time in minutes"); } }
public LeapHand(RigidHand hand) { this.palm = new Guidance(hand.palm); this.forearm = new Guidance(hand.forearm); this.elbowJoint = new Guidance(hand.elbowJoint); FingerModel[] fingersModel = hand.fingers; this.fingers = new Guidance[fingersModel.Length, FingerModel.NUM_JOINTS]; for (int i = 0; i < fingersModel.Length; i++) { for (int j = 0; j <= 3; ++j) { this.fingers[i, j] = new Guidance(fingersModel[i].joints[j]); } } this.handedness = hand.Handedness; }
public override int GetHashCode() { int hash = 1; if (Guidance != 0) { hash ^= Guidance.GetHashCode(); } if (GuidanceNum != 0) { hash ^= GuidanceNum.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public void ShouldMoveToExample() { var guidance = new Guidance(); var steps = new[] { "forward 5", "down 5", "forward 8", "up 3", "down 8", "forward 2" }; guidance.Move(steps); guidance.Position.Should().Be(15); guidance.Depth.Should().Be(60); (guidance.Position * guidance.Depth).Should().Be(900); // (guidance.Position * guidance.Depth).Should().Be(150); }
private void Awake() { VoiceOn = true; var cursor = Instantiate(CursorPrefab); cursor.transform.parent = Camera.main.transform; _guidance = Instantiate(GuidancePrefab).GetComponent <Guidance>(); _guidance.transform.parent = Camera.main.transform; _guidance.GetComponent <Guidance>().SetInstruction("Say \"Menu\" to open the recipe menu"); _voiceRecognizer = Instantiate(VoiceRecognizerPrefab).GetComponent <VoiceRecognizer>(); _voiceRecognizer.RegisterKeyword("menu"); _voiceRecognizer.RegisterKeyword("set timer"); _voiceRecognizer.RegisterKeyword("add timer"); _voiceRecognizer.OnDictionaryReset += RegisterVoiceEvent; RegisterVoiceEvent(); }
/// <summary> /// Description of a Guidance system /// </summary> /// <param name="self">Guidance</param> /// <returns>String to list for a Guidance System</returns> public static string Description(this Guidance self) { switch (self) { case Guidance.Standard: return("+20 Torpedo Rating"); case Guidance.Guided: return("One character may make +0 Tech-Use+Detection test to turn torpedo up to 45 degrees at start of it's movement each turn. Enemies which have identified the torpedo tubes may make -40 Tech-Use Test to gain control instead. +20 Torpedo Rating"); case Guidance.Seeking: return("+30 Torpedo Rating"); case Guidance.ShortBurn: return("Torpedo moves 15 VUs a turn but has max range of 30VU. +15 Torpedo Rating"); default: return(null); } }
/// <summary> /// 设置项下的显示查询 /// </summary> /// <returns></returns> public List <Guidance> GetGuidance() { string sql = "selecet AnotherName,DatabaseAddress,DatabaseName,UserName from guidance"; MySqlHelper db = new MySqlHelper(); DataSet guidances = db.GetDataSet(MySqlHelper.Conn, CommandType.Text, sql, null); DataTable dt = guidances.Tables[0]; List <Guidance> list = new List <Guidance>(); //遍历DataTable 封装成List<Guidance> foreach (DataRow dr in dt.Rows) { Guidance gd = new Guidance(); gd.anotherName = dr["AnotherName"].ToString(); gd.datebaseAddress = dr["DatabaseAddress"].ToString(); gd.databaseName = dr["DatabaseName"].ToString(); gd.userName = dr["UserName"].ToString(); list.Add(gd); } return(list); }
public List <Guidance> GetNotGuidance() { try { List <Guidance> teacher = guidance_db.DB_GET_ALL_NOT_Guidance(); return(teacher); } catch (Exception) { List <Guidance> guidance = new List <Guidance>(); Guidance a = new Guidance(); a.TeacherId = 3; guidance.Add(a); Guidance b = new Guidance(); b.TeacherId = 2; //throw new Exception("Someren couldn't connect to the database"); System.Windows.Forms.MessageBox.Show("Someren couldn't connect to the database"); guidance.Add(a); return(guidance); } }
// Use this for initialization void Start() { Guide = Instantiate(GuidePrefab).GetComponent <Guidance>(); Guide.transform.parent = Camera.main.transform; Guide.SetInstruction("Click on the arrows or say next/previous to navigate over the instructions"); }
internal Point[] GetTrajectory(Point coord) { //TODO: return(Guidance.Parabola(coord)); }
bool compareGuidanceWithTHreshold(Guidance p1, Guidance p2) { return(compareVector3WithThreshold(p1.position, p2.position, thresholdPosition) && compareQuaternionWithThreshold(p1.rotation, p2.rotation, thresholdAngle)); }
public static void DrawLine(this Graphics g, Pen pen, Guidance.Graphing.LineF line) { g.DrawLine(pen, line.Point0, line.Point1); }
public static List <object> Iterate(Vehicle vehicle, Target target, VesselState state, VesselState previous) { var gamma = target.Angle; var iy = target.Normal; var rdval = target.Radius; var vdval = target.Velocity; var t = state.Time; var m = state.Mass.Value; var r = state.Radius; var v = state.Velocity; var cser = previous.Cse; var rbias = previous.Rbias; var rd = previous.Rd; var rgrav = previous.Rgrav; var tp = previous.Time; var vprev = previous.Velocity; var vgo = previous.Vgo; var n = vehicle.Stages.Count; var SM = new List <double>(); var aL = new List <double>(); var md = new List <double>(); var ve = new List <double>(); var fT = new List <double>(); var aT = new List <double>(); var tu = new List <double>(); var tb = new List <double>(); for (int i = 0; i < n; i++) { Stage stg = vehicle.Stages[i]; var pack = stg.GetThrust(); SM.Add(stg.Mode); aL.Add(stg.GLim * Constants.G0); fT.Add(pack[0]); md.Add(pack[1]); ve.Add(pack[2] * Constants.G0); aT.Add(fT[i] / stg.MassTotal); tu.Add(ve[i] / aT[i]); tb.Add(stg.MaxT); } var dt = t - tp; var dvsensed = Vector3d.Subtract(v, vprev); vgo = Vector3d.Subtract(vgo, dvsensed); tb[0] = tb[0] - previous.Tb; if (SM[0] == 1) { aT[0] = fT[0] / m; } else if (SM[0] == 2) { aT[0] = aL[0]; } tu[0] = ve[0] / aT[0]; var L = 0d; var Li = new List <double>(); for (int i = 0; i < n - 1; i++) { if (SM[i] == 1) { Li.Add(ve[i] * Math.Log(tu[i] / (tu[i] - tb[i]))); } else if (SM[i] == 2) { Li.Add(aL[i] * tb[i]); } else { Li.Add(0); } L = Li[i]; if (L > vgo.Magnitude()) { var veh = vehicle; veh.Stages.RemoveAt(veh.Stages.Count - 1); return(UPFG.Iterate(veh, target, state, previous)); } } Li.Add(vgo.Magnitude() - L); var tgoi = new List <double>(); for (int i = 0; i < n; i++) { if (SM[i] == 1) { tb[i] = tu[i] * (1 - Math.Pow(Math.E, (-Li[i] / ve[i]))); } else if (SM[i] == 2) { tb[i] = Li[i] / aL[i]; } if (i == 0) { tgoi.Add(tb[i]); } else { tgoi.Add(tgoi[i - 1] + tb[i]); } } var L1 = Li[0]; var tgo = tgoi[n - 1]; L = 0d; var J = 0d; var S = 0d; var Q = 0d; var H = 0d; var P = 0d; var Ji = new List <double>(); var Si = new List <double>(); var Qi = new List <double>(); var Pi = new List <double>(); var tgoi1 = 0d; for (int i = 0; i < n; i++) { if (i > 0) { tgoi1 = tgoi[i - 1]; } if (SM[i] == 1) { Ji.Add(tu[i] * Li[i] - ve[i] * tb[i]); Si.Add(-Ji[i] + tb[i] * Li[i]); Qi.Add(Si[i] * (tu[i] + tgoi1) - 0.5 * ve[i] * Math.Pow(tb[i], 2)); Pi.Add(Qi[i] * (tu[i] + tgoi1) - 0.5 * ve[i] * Math.Pow(tb[i], 2) * (tb[i] / 3 + tgoi1)); } else if (SM[i] == 2) { Ji.Add(0.5 * Li[i] * tb[i]); Si.Add(Ji[i]); Qi.Add(Si[i] * (tb[i] / 3 + tgoi1)); Pi.Add((1 / 6) * Si[i] * (Math.Pow(tgoi[i], 2) + 2 * tgoi[i] * tgoi1 + 3 * Math.Pow(tgoi1, 2))); } Ji[i] = Ji[i] + Li[i] * tgoi1; Si[i] = Si[i] + L * tb[i]; Qi[i] = Qi[i] + J * tb[i]; Pi[i] = Pi[i] + H * tb[i]; L += Li[i]; J += Ji[i]; S += Si[i]; Q += Qi[i]; P += Pi[i]; H = J * tgoi[i] - Q; } var lambda = Vector3d.Normalize(vgo); if (previous.Tgo > 0) { rgrav = Vector3d.Multiply(rgrav, Math.Pow((tgo / previous.Tgo), 2)); } var rgo = Vector3d.Subtract( rd, Vector3d.Add( Vector3d.Multiply( Vector3d.Add(r, v), tgo ), rgrav ) ); var iz = Vector3d.Normalize(Vector3d.Cross(rd, iy)); var rgoxy = Vector3d.Dot(Vector3d.Subtract(rgo, Vector3d.Dot(iz, rgo)), iz); var rgoz = Vector3d.Divide(Vector3d.Subtract(Vector3d.Multiply(lambda, rgoxy), S), Vector3d.Dot(lambda, iz)); rgo = Vector3d.Add(Vector3d.Add(rgoz, rgoxy), Vector3d.Add(iz, rbias)); var lambdade = Q - S * J / L; var lambdadot = Vector3d.Divide(Vector3d.Subtract(rgo, Vector3d.Multiply(lambda, S)), lambdade); var iF_ = Vector3d.Subtract(lambda, Vector3d.Multiply(lambdadot, J / L)); iF_ = Vector3d.Normalize(iF_); var phi = Math.Acos(Vector3d.Dot(iF_, lambda) / (iF_.Magnitude() * lambda.Magnitude())); var phidot = -phi * L / J; var vthrust = Vector3d.Multiply(lambda, L - 0.5 * L * Math.Pow(phi, 2) - J * phi * phidot - 0.5 * Math.Pow(phidot, 2)); var rthrst = S - 0.5 * S * Math.Pow(phi, 2) - Q * phi * phidot - 0.5 * P * Math.Pow(phidot, 2); var rthrust = Vector3d.Subtract( Vector3d.Multiply(lambda, rthrst), Vector3d.Multiply( Vector3d.Normalize(lambda), (S * phi + Q * phidot) ) ); var vbias = Vector3d.Subtract(vgo, vthrust); var rbs = Vector3d.Subtract(rgo, rthrst); var _up = Vector3d.Normalize(r); var _east = Vector3d.Normalize(Vector3d.Cross( new Vector3d(0, 0, 1), _up )); var pitch = Math.Acos(Vector3d.Dot(iF_, _up) / (iF_.Magnitude() * _up.Magnitude())); var inplane = Vector3d.Subtract( iF_, Vector3d.Multiply(_up, Vector3d.Dot(iF_, _up) / Vector3d.Dot(_up, _up) )); var yaw = Math.Acos(Vector3d.Dot(inplane, _east) / (inplane.Magnitude() * _east.Magnitude())); var tangent = Vector3d.Cross(_up, _east); if (Vector3d.Dot(inplane, tangent) < 0) { yaw = -yaw; } var rc1 = Vector3d.Subtract(Vector3d.Subtract( r, Vector3d.Multiply(rthrust, 0.1) ), Vector3d.Multiply( vthrust, tgo / 30 )); var vc1 = Vector3d.Subtract(Vector3d.Add( Vector3d.Divide(Vector3d.Multiply(rthrust, 1.2), tgo), v ), Vector3d.Multiply(vthrust, 0.1)); var pck = CSER.CSE(rc1, vc1, tgo); cser = (Dictionary <string, object>)pck[2]; var rgrv = Vector3d.Subtract( (Vector3d)pck[0], Vector3d.Subtract( rc1, Vector3d.Multiply(vc1, tgo) ) ); var vgrv = Vector3d.Subtract( (Vector3d)pck[1], vc1 ); var rp = Vector3d.Add( r, Vector3d.Add( Vector3d.Multiply(v, tgo), Vector3d.Add(rgrv, rthrust) ) ); rp = Vector3d.Subtract( rp, Vector3d.Multiply( iy, Vector3d.Dot(rp, iy) ) ); rd = Vector3d.Multiply( Vector3d.Normalize(rp), rdval ); var ix = Vector3d.Normalize(rd); iz = Vector3d.Cross(ix, iy); var vv1 = new Vector3d(ix.X, iy.X, iz.Z); var vv2 = new Vector3d(ix.Y, iy.Y, iz.Y); var vv3 = new Vector3d(ix.Z, iy.Z, iz.Z); var vop = new Vector3d(Math.Sin(gamma), 0, Math.Cos(gamma)); var vd = new Vector3d( Vector3d.Dot(vv1, vop), Vector3d.Dot(vv2, vop), Vector3d.Dot(vv3, vop) ); vgo = Vector3d.Add(Vector3d.Subtract( vd, Vector3d.Subtract( vgrv, v ) ), vbias ); // var current = new VesselState(cser); var current = new VesselState(t, null, null, v, cser, rbias, rd, rgrv, vgo, previous.Tb + dt, tgo); var guidance = new Guidance(iF_, pitch, yaw, 0, 0, tgo); return(new List <object> { current, guidance, dt }); }