Skip to content

Conversation

@Tu-S
Copy link
Owner

@Tu-S Tu-S commented Apr 21, 2021

Знаков поворота нет, так что из любого IN можно доехать в любой OUT. Пересечения считаются, когда потоки машин из разных IN заезжают в одну и ту же полосу OUT. Внутри перекрестка пересечения не считаются.

Tu-S added 2 commits April 21, 2021 18:05
Знаков поворота нет, так что из любого IN можно доехать в любой OUT. Пересечения считаются, когда потоки машин из разных IN заезжают в одну и ту же полосу OUT.  Внутри перекрестка пересечения не считаются.
@SpykeX3 SpykeX3 self-requested a review April 24, 2021 15:04
var intersection = new Intersection(5);
crFromLane.addIntersection(intersection);
cr.addIntersection(intersection);
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В эту часть пока не вникал, но давай сделаем, чтобы на перекрестке без светофора машины не могли сквозь перпендикулярный поток проезжать

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image
Если я тебя правильно понял, то для синих зеленый и оранжевый потоки перпендикулярны, а куда им тогда ехать? В таких случаях обязательно должен быть светофор, как мне кажется. Это с точки зрения дороги какой то косяк уже.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

intersection
Я про то, что если едут оранжевые и зеленые, то фиолетовые и синие не могут проехать. То есть давай сделаем intersection общий для курса (зеленых и синих), (оранжевых и синих), (фиолетовых и зеленых), (фиолетовых и оранжевых)

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Я понял, что ты хочешь intersectaion для синих и зеленых, чтобы когда зеленые едут из 8 в 6, синие из 5 не могли проехать в 9 (в 6 они не проедут, потому что на этот случай создается intersaction). Вот что делать с 9 в этом случае, я не придумал, но если мы запускаем зеленых и оранжевых, то в 9 возникает конфликт синих и оранжевых, так что синие ехать не смогут. Intersaction создается если два курса ведут в одну дорогу, более того в одну полосу. Как определять их пересечения внутри самой node, повторю, я не придумал. Мне кажется это не критично. В любом случае мы добиваемся того, что два потока не могу одновременно ломиться в один выход из node.
На картинке меньше дорог, но сути не меняет, просто в конфигах нет случая для 4 дорог, но логика будет та же
image

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Пересечение курсов (8,6) и (5,9) важное, без таких пересечений у нас не только с 3 дорогами будет кривовато работать симуляция, но и вообще неправильно себя вести перекресток 4 дорог. Если совсем не можешь так сделать, то можем смержить как есть и я этим займусь

for (var fI : f.getIntersections()) {
for (var sI : s.getIntersections()) {
if (fI.equals(sI)) {
return true;
Copy link
Collaborator

@SpykeX3 SpykeX3 Apr 24, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Тут получается цикл вложенности 3, мб можно сеты и пересечения можно заюзать?
(Не критично)

Tu-S added 5 commits April 25, 2021 11:28
Сейчас пересечения создаются со всеми курсами, а не только с теми, которые ведут в одну дорогу. Таким образом, мы получаем нужные пересечения синих и зеленых, синих и оранжевых.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants