示例#1
0
 public List <float> Perceive()
 {
     if (rpi == null)
     {
         initRayAngles();
         rpi = new RayPerceptionInterpreter(name, rayDistance, rayAngles, detectableObjects);
     }
     //if (rayPer==null)
     //{
     //    InitializeAgentBody();
     //}
     //var rayobs = rayPer.raySensor.(rayDistance, rayAngles, detectableObjects, 0, 0);
     //var ok = rpi.Perceive(rayobs);
     //if (!ok)
     //{
     // try again for debugger
     //  rayobs = rayPer.Perceive(rayDistance, rayAngles, detectableObjects, 0, 0);
     //}
     //return rayobs;
     return(new List <float>());
 }
    public List <float> Perceive()
    {
        if (rpi == null)
        {
            initRayAngles();
            rpi = new RayPerceptionInterpreter(name, rayDistance, rayAngles, detectableObjects);
        }
        if (rayPer == null)
        {
            InitializeAgentBody();
        }
        var rayobs = rayPer.Perceive(rayDistance, rayAngles, detectableObjects, 0, 0);
        var ok     = rpi.Perceive(rayobs);

        if (!ok)
        {
            // try again for debugger
            rayobs = rayPer.Perceive(rayDistance, rayAngles, detectableObjects, 0, 0);
        }
        return(rayobs);
    }