none
[C#] Придумать алгоритм RRS feed

  • Вопрос

  • У меня на форме перемещаются иконки людей по определённым координатам (по "дорожкам", которых много).

    Каждый человек "ходит" в отдельном потоке. Есть проблема, когда люди сталкиваются и им нужно друг друга обойти.

    Собственно вопрос, как лучше реализовать вот этот обход друг друга ? Есть идея писать в массив текущие координаты и если они совпадают с другим человеком (потоком), то как-то обходить друг друга, но т.к. дорожек для ходьбы людей много, боюсь возникнет путаница. Возможно кто-то придумает более изящное решение ? Заранее спасибо :)

    4 ноября 2013 г. 8:29

Ответы

  • Все верно, каждый поток отправляет свои координаты в метод, метод обрабатывает и возвращает новый координат для каждого потока

    public void SomeMethod(ref Point[] Args) { //implementation

    //если объект сталкивается, изменить градус движения для обоих субъектов,

    // иначе продолжать движение } public void AnotherSomeMethod(ref List<Point> Args) { //implementation }



    • Изменено Medet Tleukabiluly 4 ноября 2013 г. 9:04
    • Помечено в качестве ответа geforse 4 ноября 2013 г. 10:49
    4 ноября 2013 г. 9:03