void Start() { orbit = GetComponent<Orbital>(); orbit.enabled = false; g = player.GetComponent<Gravity>(); g.enabled = true; timer = tm; audio = gameObject.GetComponentInParent<AudioPlayer>(); }
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { if (values[0] == null || values[1] == null) { return(0); } Orbital origin = values[0] as Orbital; Orbital destination = values[1] as Orbital; double distance = Math.Abs(origin.Distance - destination.Distance); return(distance); }
public void Generate() { Orbital myStar = new Orbital(); myStar.GraphicID = 0; this.AddChild(myStar); Orbital planet = new Orbital(); planet.MakeEarth(); planet.GraphicID = 1; myStar.AddChild(planet); }
void SetupOrbitalGraphics(Transform transformParent, Orbital o) { GameObject go = null; switch (o.OrbitalObjectType) { case Orbital.ObjectTypes.Sun: go = (GameObject)Instantiate(SunGameObjects[o.GraphicID]); go.name = "Sun"; break; case Orbital.ObjectTypes.Planet: go = (GameObject)Instantiate(PlanetGameObjects[o.GraphicID]); go.name = "Planet"; break; case Orbital.ObjectTypes.Moon: go = (GameObject)Instantiate(MoonGameObjects[o.GraphicID]); go.name = "Moon"; break; case Orbital.ObjectTypes.Asteroid: go = (GameObject)Instantiate(AsteroidGameObjects[o.GraphicID]); go.name = "Asteroid"; float rand = Random.Range(0.5f, 2f); Vector3 randVec = new Vector3(Random.Range(-180, 180), Random.Range(-180, 180), Random.Range(-180, 180)); go.transform.localScale = new Vector3(rand, rand, rand); go.transform.localRotation = Quaternion.Euler(randVec); break; case Orbital.ObjectTypes.AsteroidBelt: go = new GameObject(); SetUpAsteroidGraphics((AsteroidBelt)o, go); break; default: Debug.LogError("Orbital type is invalid! " + o.OrbitalObjectType); go.name = "ERROR"; break; } orbitalGameObjectMap[o] = go; go.transform.SetParent(transformParent); go.transform.position = o.Position / ZoomLevel; for (int i = 0; i < o.Children.Count; i++) { SetupOrbitalGraphics(go.transform, o.Children[i]); } }
public IEnumerator TestSolverSwap() { // Reset view to origin MixedRealityPlayspace.PerformTransformation(p => { p.position = Vector3.zero; p.LookAt(Vector3.forward); }); // Instantiate and setup RadialView to place object in the view center. var testObjects = InstantiateTestSolver <RadialView>(); RadialView radialViewSolver = (RadialView)testObjects.solver; radialViewSolver.MinDistance = 2.0f; radialViewSolver.MaxDistance = 2.0f; radialViewSolver.MinViewDegrees = 0.0f; radialViewSolver.MaxViewDegrees = 0.0f; // Let RadialView update the target object yield return(WaitForFrames(2)); // Make sure Radial View is placing object in center of View, so we can later check that a solver swap actually moved the target object. TestUtilities.AssertAboutEqual(testObjects.target.transform.position, Vector3.forward * 2.0f, "RadialView does not place object in center of view"); // Disable the old solver radialViewSolver.enabled = false; // Add a another solver during runtime, give him a specific location to check whether the new solver updates the target object. Orbital orbitalSolver = AddSolverComponent <Orbital>(testObjects.target); orbitalSolver.WorldOffset = Vector3.zero; orbitalSolver.LocalOffset = Vector3.down * 2.0f; // Let Orbital update the target object yield return(WaitForFrames(2)); // Make sure Orbital is now updating the target object TestUtilities.AssertAboutEqual(testObjects.target.transform.position, Vector3.down * 2.0f, "Orbital solver did not place object below origin"); // Swap solvers once again during runtime radialViewSolver.enabled = true; orbitalSolver.enabled = false; // Let RadialView update the target object yield return(WaitForFrames(2)); // Make sure Radial View is now updating the target object once again. TestUtilities.AssertAboutEqual(testObjects.target.transform.position, Vector3.forward * 2.0f, "RadialView solver did not place object in center of view"); }
public void Generate() { // Single start single planet Orbital myStar = new Orbital(); myStar.GraphicID = 0; this.AddChild(myStar); for (int i = 0; i < 8; i++) { Planet planet = new Planet(); planet.Generate(3); myStar.AddChild(planet); } }
public void Setup() { // Using Earth - Moon Orbit for sanity reasons. sut = new Orbital { ParentMass = 5.97237e24, BodyMass = 7.342e22, SemiMajorAxis = 384399000, Eccentricity = 0.0549, Inclination = Orbital.DegreeToRadian(5.145), AscendingNode = 0, ArgumentOfPeriapsis = 0, TrueAnomaly = 0 }; }
// Start is called before the first frame update void Start() { parent = GetComponentInParent <Orbital>(); rigidbody = GetComponent <Rigidbody>(); Nucleus nucleus = Nucleus.GetComponent <Nucleus>(); attractors = nucleus.Protons; initialForce = parent.type == OrbitalType.HIGH ? HIGH_FORCE : LOW_FORCE; Vector3 dir = (nucleus.transform.position - transform.position).normalized; Vector3 force = Vector3.Cross(dir, Vector3.up).normalized; rigidbody.AddForce(force * initialForce); }
private void MakeSpritesForOrbital(Transform transformParent, Orbital orbital) { var go = new GameObject(); orbitalGameObjectMap[orbital] = go; go.transform.SetParent(transformParent); // Set our position. go.transform.position = orbital.Position / zoomLevels; //go.transform.position = orbital.Position(gameController.DaysPastSinceStart, zoomLevels); var sr = go.AddComponent <SpriteRenderer>(); sr.drawMode = SpriteDrawMode.Sliced; switch (orbital.Type) { case Orbital.OrbitalType.Star: sr.name = "Star"; sr.sprite = Stars[orbital.GraphicID]; //sr.size = new Vector2(15, 15); break; case Orbital.OrbitalType.Planet: sr.name = "Planet"; sr.sprite = Planets[orbital.GraphicID]; //sr.size = new Vector2(5, 5); break; case Orbital.OrbitalType.Moon: sr.name = "Moon"; sr.sprite = Moons[orbital.GraphicID]; //sr.size = new Vector2(2, 2); break; case Orbital.OrbitalType.Moonmoon: throw new ArgumentOutOfRangeException("Orbital doesn't have a sprite yet"); default: throw new ArgumentOutOfRangeException("Orbital doesn't have a OrbitalType"); } for (var i = 0; i <= orbital.Orbitals.Count - 1; i++) { MakeSpritesForOrbital(go.transform, orbital.Orbitals[i]); } }
public void Generate(int maxMoons) { OrbitalDistance = (ulong)Random.Range(50, 800) * 1000000 * 1000; TimeToOrbit = this.OrbitTimeForDistance(OrbitalDistance); // TODO Fix with real physics! GraphicID = Random.Range(1, 14); int m = Random.Range(0, maxMoons + 1); for (int i = 0; i < m; i++) { Orbital moon = new Orbital(); this.AddChild(moon); moon.OrbitalDistance = (ulong)Random.Range(2, 5) * 10000000000; // TODO Fix makes no sense moon.TimeToOrbit = moon.OrbitTimeForDistance(moon.OrbitalDistance); // TODO Fix with real physics. moon.GraphicID = 15; } }
void MakeSpriteForOrbital(Transform transformParent, Orbital orbital) { GameObject go = new GameObject(); go.transform.SetParent(transformParent); go.transform.position = orbital.Position / zoomLevel; SpriteRenderer sr = go.AddComponent <SpriteRenderer>(); sr.sprite = sprites[orbital.graphicID]; for (int i = 0; i < orbital.childrens.Count; i++) { MakeSpriteForOrbital(go.transform, orbital.childrens[i]); } }
private static void Start() { try { Util.Debug("Hello, world."); Arcing.Initialise(); Curving.Initialise(); Homing.Initialise(); Momentum.Initialise(); Orbital.Initialise(); Straight.Initialise(); } catch (Exception ex) { DisplayTextToPlayer(GetLocalPlayer(), 0, 0, ex.Message); } }
private void UpdateSprites(Orbital orbital) { if (solarSystem.Orbitals.Count > 0) { var go = orbitalGameObjectMap[orbital]; go.transform.position = orbital.Position / zoomLevels; //go.transform.position = orbital.Position(gameController.DaysPastSinceStart, zoomLevels); //go.name = orbital.OrbitalOffsetAngle.ToString(CultureInfo.InvariantCulture); for (var i = 0; i <= orbital.Orbitals.Count - 1; i++) { UpdateSprites(orbital.Orbitals[i]); } } else { Debug.Log("orbital has no children"); } }
void MakeSpritesForOrbital(Transform transformParent, Orbital o) { GameObject go = new GameObject(); go.transform.SetParent(transformParent); //set position go.transform.position = o.Position / zoomLevels; SpriteRenderer sr = go.AddComponent <SpriteRenderer> (); sr.sprite = Sprites [o.GraphicID]; for (int i = 0; i < o.Children.Count; i++) { MakeSpritesForOrbital(go.transform, o.Children [i]); } }
public Program() { // The constructor, called only once every session and // always before any other method is called. Use it to // initialize your script. // // The constructor is optional and can be removed if not // needed. orbitalComputer = new Orbital(this); ArgumentParser(Me.CustomData); if (Storage.Length > 0) { ArgumentParser(Storage); } shipStatusLCD = new WriteLCD(this, shipStatusLCDName); orbitalStatusLCD = new WriteLCD(this, orbitalStatusLCDName); GridTerminalSystem.GetBlocksOfType(outRadios, b => b.CubeGrid == Me.CubeGrid); ZoneConstruction(); StartTimer(timers); }
public void Generate(int maxMoons) { //Randomize our values OrbitalDistance = (ulong)Random.Range(100, 1000) * 1000000 * 1000; // 5-1000, million, KM TimeToOrbit = OrbitTimeForDist(5.972f * Mathf.Pow(10, 24)); OrbitalObjectType = ObjectTypes.Planet; DecideGraphic(); int m = Random.Range(0, maxMoons + 1); for (int i = 0; i < m; i++) { Orbital mun = new Orbital(); mun.OrbitalObjectType = ObjectTypes.Moon; this.AddChild(mun); ulong dist = (ulong)Random.Range(500, 1000) * 1000000 * 10; //7500000000 mun.OrbitalDistance = dist; mun.TimeToOrbit = mun.OrbitTimeForDist(7.348f * Mathf.Pow(10, 22)); } }
public static double[] U; // rV, potential muliplied by radius private void button1_Click(object sender, EventArgs e) { //radDirac //Orbital O = new Orbital(); R = new double[R_NUM]; for (int i = 0; i <= R_FAR; i++) { R[i] = (1.0 / Z) * Math.Exp(DX * (i - R_O)); } U = new double[R_NUM]; for (int i = 0; i <= R_FAR; i++) { U[i] = -Z; // Coulomb potential of nuclear } Orbital O = new Orbital(); //R, Uの設定の前に置くとR, UがNullでエラー for (int n = 1; n <= 3; n++) { for (int l = 0; l <= n - 1; l++) { for (double j = l - 0.5; j <= l + 0.5; j += 1.0) { if (j < 0.0) { continue; } O.Assign(n, l, j); O.Adjust(); //O.Output(); } } } Console.WriteLine("End"); }
public InfoInteraction(Orbital obj, int seed) : base(obj) { rand = new System.Random(seed); }
public void DegreesToRadianConversion() { Assert.That(Orbital.DegreeToRadian(180), Is.EqualTo(Math.PI)); }
public void AddChild(Orbital c) { c.Parent = this; Children.Add(c); }
public void AddChild(Orbital a) { a.Parent = this; Children.Add(a); }
public void RemoveChild(Orbital a) { a.Parent = null; Children.Remove(a); }
private void Start() { // Get Orbital Solver component orbital = GetComponent <Orbital>(); }
public static UnitValue CalculateOrbitalEnergy(AtomWithOrbitals atom, Orbital orbital) { return(-(1.0 / (OrbitalComparer.CalculateOrbitalOrder(orbital) + 1)).To(Unit.ElectronVolts)); }
public static UnitValue Calculate(AtomWithOrbitals atom1, Orbital orbital1, AtomWithOrbitals atom2, Orbital orbital2) { return(-5.To(Unit.ElectronVolts)); }
public OrbitalData(Orbital orbital) { Orbital = orbital; Velocity = orbital.Velocity; Position = orbital.transform.position; }
public void RemoveChild(Orbital c) { c.Parent = null; Children.Remove(c); }
public void AddChild(Orbital orbital) { orbital.parent = this; childrens.Add(orbital); }
public void RemoveChild(Orbital orbital) { orbital.parent = null; childrens.Remove(orbital); }
private static ElectronSubshell CreateElectronSubshell(Orbital orbital) { return(new ElectronSubshell(orbital.Name, orbital.MaxElectrons)); }
// Start is called before the first frame update void Start() { _orbital = gameObject.GetComponent <Orbital>(); }