public void ChangeCameras(CamPos currCamPos, CamPos nextCamPos) { myCamPos = nextCamPos; myCameras[(int)currCamPos].enabled = false; myCameras[(int)nextCamPos].enabled = true; }
void EditCam() { camPos = CamPos.fwd; if (Input.GetKey(KeyCode.W)) { transform.Translate(new Vector3(0, 0, 1) * Time.deltaTime * CamSpeed); } else if (Input.GetKey(KeyCode.S)) { transform.Translate(new Vector3(0, 0, -1) * Time.deltaTime * CamSpeed); } else if (Input.GetKey(KeyCode.D)) { transform.Translate(new Vector3(1, 0, 0) * Time.deltaTime * CamSpeed); } else if (Input.GetKey(KeyCode.A)) { transform.Translate(new Vector3(-1, 0, 0) * Time.deltaTime * CamSpeed); } else if (Input.GetKey(KeyCode.E)) { transform.Translate(new Vector3(0, 1, 0) * Time.deltaTime * CamSpeed); } else if (Input.GetKey(KeyCode.Q)) { transform.Translate(new Vector3(0, -1, 0) * Time.deltaTime * CamSpeed); } }
private void DlgFavoritesOrganize_Closing(object sender, System.ComponentModel.CancelEventArgs e) { // rebuild the Project.favorites list: Project.favorites.Clear(); foreach (DataRow row in favoritesDataSet.Tables["favoritesTable"].Rows) { try { if (row.RowState != DataRowState.Deleted) { string type = (string)row["type"]; string name = (string)row["name"]; double lat = (double)row["lat"]; double lng = (double)row["lng"]; double elev = (double)row["elev"]; CamPos camPos = new CamPos(lng, lat, elev, name, type); Project.favorites.Add(camPos); } } catch { } } }
private void goButton_Click(object sender, System.EventArgs e) { GeoCoord location = TileCache.ZipcodeServer.getCoord(placesListBox); if (location != null) { Cursor.Current = Cursors.WaitCursor; m_cameraManager.SpoilPicture(); m_cameraManager.Location = location; Cursor.Current = Cursors.Default; if (m_firstTime) { // first time, make this point a home in favorites: CamPos camPos = new CamPos(location.Lng, location.Lat, location.Elev); camPos.Name = "Home - " + placesListBox.SelectedItem; if (Project.favorites.Count > 0) { Project.favorites.Insert(0, camPos); Project.SaveFavorites(); } else { Project.favorites.Add(camPos); Project.EnsureFavorites(); } } this.Close(); } else if (m_firstTime) { this.Close(); } }
//Central Cam: -32, 20.5, -45 //Upgrade Cam: -11, 20.5, -45 //Ammo Cam: -53, 20.5, -45 //Engine Cam: -32, 20.5, -68.8 public void UpdateCameraPos(CamPos curRoom) { switch (curRoom) { case CamPos.AmmoRoom: transform.position = new Vector3(-53f, 20.5f, -45f); break; case CamPos.CenterRoom: transform.position = new Vector3(-32f, 20.5f, -45f); break; case CamPos.EngineRoom: transform.position = new Vector3(-32f, 20.5f, -68.8f); break; case CamPos.UpgradeRoom: transform.position = new Vector3(-11f, 20.5f, -45f); break; } }
// special case that doesn't require KmlDocument: public static void runGoogleEarthAtPoint(CamPos campos, string name, string labelHtml) { double camElev = campos.Elev; // meters double tilt = 0.0d; // 0.0 - looking straight down, 90.0 - along the surface double heading = 0.0d; // 0.0 - map is North up 90.0 - East up int visibility = 0; // 0 - label not visible, 1 - visible string kmlPoint = String.Format(kmlPointFmt, name, labelHtml, campos.Lng, campos.Lat, camElev, tilt, heading, visibility); runKml(kmlPoint); }
void Start() { m_PlayerObj = GameObject.FindGameObjectWithTag("Player"); m_PlayerController = m_PlayerObj.GetComponent <PlayerController>(); m_CamPos = FindObjectOfType <CamPos>(); m_CamPos_1 = m_PlayerObj.transform.Find("CameraPos_1"); m_CamPos_2 = m_PlayerObj.transform.Find("CameraPos_2"); transform.position = m_CamPos_1.position; m_fDist = Vector3.Distance(m_CamPos_2.position, transform.position); }
// Use this for initialization void Start() { HPScript = GetComponent <PlayerHealthScript>(); pauseMenu = GameObject.Find("PauseMenuFill"); pauseMenu.SetActive(false); campos = mainCam.GetComponent <CamPos>(); mouseorbit = GetComponentInChildren <MouseOrbit> (); transform.eulerAngles = new Vector3(0, 0, 90f); isCam2 = false; cam2.SetActive(isCam2); gameObject.audio.pitch = 0.7f; isPaused = false; Screen.showCursor = false; }
// closest is SortedList of string (name) by key=double (distance meters) public DlgFavoritesAddTo(CamPos camPos, SortedList closest, MenuItem parentMenuItem, EventHandler eventHandler) { m_camPos = camPos; m_parentMenuItem = parentMenuItem; m_eventHandler = eventHandler; InitializeComponent(); GeoCoord loc = new GeoCoord(m_camPos); Distance camHD = new Distance(m_camPos.H); int unitsCompl = camHD.UnitsCompl; locationLabel.Text = "Location: " + loc.ToString() + " / Camera at " + camHD.ToString(unitsCompl); nameComboBox.Text = m_camPos.Name; for (int i = 0; i < closest.Count && i < 20; i++) { string name = ((LiveObject)closest.GetByIndex(i)).Name; nameComboBox.Items.Add(name); } Project.setDlgIcon(this); }
public KmlTrack(KmlFolder parent, Track trk) : base(parent, trk.Name, 1, null) { bool trksClampToGround = Project.kmlOptions.TrksClampToGround; if (!trksClampToGround) { // do a little bit of looking into waypoints, decide if we need to clamp to ground anyway: bool hasAlt = false; for (int i = 0; i < trk.Trackpoints.Count; i++) { Waypoint wpt = (Waypoint)trk.Trackpoints.GetByIndex(i); if (wpt.Location.Elev != 0.0d) { hasAlt = true; break; } } if (!hasAlt) { trksClampToGround = true; } } string actualAltMode = trksClampToGround ? "clampedToGround" : "absolute"; string actualPathName = trksClampToGround ? "Path - clamped to ground" : "Path-Actual"; string actualPathStyle = trksClampToGround ? "#TrackPathActual" : "#TrackPathActual"; KmlPlacemark path = new KmlPlacemark(this, actualPathName, -1, null); // first path follows the trackpoints - actual track in the air: path.setColor(trk.color, Color.FromArgb(127, Color.Green)); ArrayList points = new ArrayList(); for (int i = 0; i < trk.Trackpoints.Count; i++) { Waypoint wpt = (Waypoint)trk.Trackpoints.GetByIndex(i); CamPos campos = new CamPos(wpt.Location.Lng, wpt.Location.Lat, wpt.Location.Elev, true); points.Add(campos); } path.setStyle(actualPathStyle); path.LineString(points, 0, 0, actualAltMode); if (!trksClampToGround) { // second path clamps to the ground, in case the first path goes under the surface: KmlPlacemark path2 = new KmlPlacemark(this, "Path-Ground", -1, null); path2.setColor(trk.color, Color.FromArgb(127, Color.Green)); path2.setStyle("#TrackPathGround"); path2.LineString(points, 0, 0, "clampedToGround"); // third path creates a wall to the ground: KmlPlacemark path3 = new KmlPlacemark(this, "Path-Wall", -1, null); path3.setColor(Color.Transparent, Color.FromArgb(77, trk.color)); // Lines are completely invisible, wall is 30% transparency path3.setStyle("#TrackPathWall"); path3.LineString(points, 0, 1, "absolute"); } // ok, done with the paths, build all waypoints: KmlFolder pointsFolder = new KmlFolder(this, "Trackpoints", -1, null); for (int i = 0; i < trk.Trackpoints.Count; i++) { Waypoint wpt = (Waypoint)trk.Trackpoints.GetByIndex(i); Waypoint nextWpt = (i == trk.Trackpoints.Count - 1) ? null : (Waypoint)trk.Trackpoints.GetByIndex(i + 1); if (wpt.ThumbImage == null && nextWpt != null && !wpt.isEndpoint && wpt.Location.sameAs(nextWpt.Location)) { continue; } string pmName = wpt.ThumbImage == null?Project.zuluToLocal(wpt.DateTime).ToString() : wpt.Name; string pmDescr = wpt.toStringKmlDescr(); string pmStyleStartTrack = "#TrackPointStart"; string pmStyleEndTrack = "#TrackPointEnd"; string pmStyleArrow = "#TrackPointArrow"; string pmStylePhoto = "#TrackPointPhoto"; KmlPlacemark pmPoint = new KmlPlacemark(pointsFolder, pmName, -1, pmDescr); if (wpt.isEndpoint) { if (i == 0) { pmPoint.setStyle(pmStyleStartTrack); } else { pmPoint.setStyle(pmStyleEndTrack); } } else if (wpt.ThumbImage != null) { pmPoint.setStyle(pmStylePhoto); try { PhotoDescr photoDescr = PhotoDescr.FromThumbnail(wpt.ThumbSource); photoDescr.ensureImageExists(); ownerDoc.kmlFile.addImage(new Bitmap(photoDescr.image), wpt.Name); photoDescr.releaseImage(); } // An invalid image will throw an OutOfMemoryException // exception catch (OutOfMemoryException) { LibSys.StatusBar.Error("bad image: " + wpt.ThumbSource); } } else { pmPoint.setStyle(pmStyleArrow); Color legColor = trk.color; if (!trk.isRoute) { // similar code it Track:Paint() if (Project.trackElevColor) { double elevRange = trk.ElevMax - trk.ElevMin; if (elevRange > 1.0d && elevRange < 20000.0d) { double elevFactor = elevRange / 256.0d; double elev = nextWpt.Location.Elev; int r = (int)((elev - trk.ElevMin) / elevFactor); if (r > 255) { r = 255; } int b = 255 - r; int g = (255 - (r > b ? r : b)) * 2; // will be high where R and B are close to equal, amounts to cyan legColor = Color.FromArgb(r, g, b); } } else if (Project.trackSpeedColor) { double speedRange = trk.SpeedMax - trk.SpeedMin; if (speedRange > 1000.0d && speedRange < 1000000000.0d) { double speedFactor = speedRange / 256.0d; double speed = nextWpt.Speed; int r = (int)((speed - trk.SpeedMin) / speedFactor); if (r > 255) { r = 255; } int b = 255 - r; int g = (255 - (r > b ? r : b)) * 2; // will be high where R and B are close to equal, amounts to cyan legColor = Color.FromArgb(r, g, b); } } } double heading = Math.Round(180.0d + wpt.Location.bearing(nextWpt.Location) * 180.0d / Math.PI); pmPoint.setArrowHeading(heading, legColor); } pmPoint.Point(wpt.Location, trksClampToGround || (wpt.Location.Elev == 0.0)); } }
// Use this for initialization void Start() { time = 14.9f; //a little trick ;) pssst camPos = CamPos.fwd; }
public GeoCoord(CamPos camPos) { m_X = camPos.Lng; m_Y = camPos.Lat; m_H = camPos.Elev; }
private void Awake() { instance = this; }
public void go_beach_func() { camPos = CamPos.beach; StartCoroutine(go_beach()); }
public void go_farm_func() { camPos = CamPos.farm; StartCoroutine(go_farm()); }
void dataLoad() { camPos = (CamPos)PlayerPrefs.GetInt("camPos", 0); }