addPedestrianPosition() public method

public addPedestrianPosition ( PedestrianPosition, p ) : void
p PedestrianPosition,
return void
Esempio n. 1
0
    void loadPedestrianFile(string filename)
    {
        var sr           = new StreamReader(Application.dataPath + "/" + filename);
        var fileContents = sr.ReadToEnd();

        sr.Close();

        PedestrianLoader pl = GameObject.Find("PedestrianLoader").GetComponent <PedestrianLoader>();

        string[] lines = fileContents.Split("\n"[0]);
        foreach (string line in lines)
        {
            string[] v = line.Split(' ');
            if (v.Length >= 3)
            {
                decimal time;
                int     id;
                float   x;
                float   y;
                decimal.TryParse(v[0], out time);
                int.TryParse(v[1], out id);
                float.TryParse(v[2], out x);
                float.TryParse(v[3], out y);
                pl.addPedestrianPosition(new PedestrianPosition(id, time, x, y));
            }
        }


        pl.createPedestrians();
    }
Esempio n. 2
0
    void loadPedestrianFile(string filename)
    {
        if (!System.IO.File.Exists(filename))
        {
            Debug.Log("Error: File " + filename + " not found.");
            return;
        }

        XmlDocument xmlDocTraj = new XmlDocument();

        xmlDocTraj.LoadXml(System.IO.File.ReadAllText(filename));

        PedestrianLoader pl = GameObject.Find("PedestrianLoader").GetComponent <PedestrianLoader>();

        XmlNode trajectories = xmlDocTraj.SelectSingleNode("//trajectories");

        int fps = 8, FrameID;  //8 is used as a default framerate. Actual value is read from xmlDocTraj

        foreach (XmlElement header in trajectories.SelectNodes("header"))
        {
            XDocument doc      = XDocument.Load(filename);
            var       fpsInput = doc.Descendants("frameRate");

            foreach (var fpsVal in fpsInput)
            {
                if (float.Parse(fpsVal.Value) != 0)
                {
                    fps = (int)float.Parse(fpsVal.Value);
                }
            }
        }

        foreach (XmlElement frame in trajectories.SelectNodes("frame"))
        {
            int.TryParse(frame.GetAttribute("ID"), out FrameID);

            if (FrameID % fps == 0)
            {
                foreach (XmlElement agent in frame)
                {
                    decimal time;
                    int     id;
                    float   x;
                    float   y;
                    float   z;
                    decimal.TryParse(frame.GetAttribute("ID"), out time);
                    int.TryParse(agent.GetAttribute("ID"), out id);
                    float.TryParse(agent.GetAttribute("x"), out x);
                    float.TryParse(agent.GetAttribute("y"), out y);
                    float.TryParse(agent.GetAttribute("z"), out z);
                    pl.addPedestrianPosition(new PedestrianPosition(id, time / fps, x, y, z));
                }
            }
        }
        pl.createPedestrians();
    }