Пока что хочу сделать что-то вроде универсального апи для передвижения любой черепахи в заданную точку с использованием координат GPS, даже если она не оборудована киркой для прокладки прямого маршрута. Сейчас просто интересно реализовать эту цель. А вообще вариантов применения алгоритму поиска пути можно найти массу: рубка деревьев в лесу, без затрагивания слоя земли, сбор каких-либо полезных ископаемых или растений с поверхности. UPD. Насочинял кое-что.. Правда довольно далеко от совершенства: в двухмерном лабиринте черепаха довольно стабильно находит выход, но вот найти вход в пещеру в скале ей весьма сложно, в некоторых случаях вообще не находит. В лесу конечно очень легко обходит деревья и прочие простые препятствия. Вообще было бы интересно провести что-то вроде конкурса по написанию программы для черепахи для прохождения какого-либо лабиринта, расположенного не в одной плоскости.Удачи. Ради интереса, как будешь на практике это применять?
[1.7.10] ComputerCraft [1.74]
#1981
Posted 28.04.2013 - 02:41
#1982
Posted 28.04.2013 - 09:13
#1983
Posted 28.04.2013 - 09:33
#1984
Posted 28.04.2013 - 11:09
Не совсем удобно, если вдруг черепаха решит пойти через лаву в брод и как-нибудь там застрянет )) Ну и масштабные слишком там препятствия.Вариант для теста: Незер.
Что-то вроде этого я и использую. У меня черепаха всегда старается идти по полу, если более 2х блоков под ней пустота, то идет вниз, при столкновении с препятствием пытается обойти его сверху. Если это не удается (дерево или потолок мешает) то тогда уже используется алгоритм трассировки - обход препятствия справа или слева в зависимости от того какое направление ближе к точке назначения. Код там довольно простой: цикл со счетчиком не более 30 повторов, если вперед false тогда поворачиваем направо, если вперед true, то поворачиваем налево, если направление совпадает с первоначальным, то return true. Так же есть еще проверка, если во время трассировки был всегда потолок или пол, а потом вдруг внезапно исчез, то черепаха полезет в эту дыру.А нельзя в данном алгоритме правило левой/правой руки применять одновременно к обеим плоскостям? Пусть, к примеру, черепашка идет по левому краю стены и по полу. Если возникнет ситуация, что черепахе можно будет идти и налево и вниз, то исходить из координат пункта назначения. (но опять же решение не всегда будет эффективным, ибо иногда более длинный путь можно пройти за меньшее количество шагов, чем короткий))
#1985
Posted 28.04.2013 - 11:31
А если потолок в 1-2 блока? Из-за этого сразу в сторону отходить? Как-то так, где красная шерсть - это препятствие, сундук - черепашка (которая по схеме идет влево) [snowman] : Допустим, если смотреть спереди: слева и справа стена, куда пойдет черепашка, если упрется в потолок? Логично же, чтобы она отошла по потолку назад на два блока, поднялась и продолжила движение вперед.[ Если это не удается (дерево или потолок мешает) то тогда уже используется алгоритм трассировки - обход препятствия справа или слева в зависимости от того какое направление ближе к точке назначения.
#1986
Posted 28.04.2013 - 11:57
#1987
Posted 29.04.2013 - 09:44
#1988
Posted 29.04.2013 - 09:48
Omnis Vestri Substructio Es Servus Ad Nobis.
#1989
Posted 29.04.2013 - 10:45
спасибоСколько книг в слоте? Должна быть одна.
#1990
Posted 04.05.2013 - 17:11
#1991
Posted 04.05.2013 - 17:16
#1992
Posted 04.05.2013 - 19:13
#1993
Posted 04.05.2013 - 20:22
#1994
Posted 04.05.2013 - 20:24
#1995
Posted 04.05.2013 - 21:44
Для NuclearControl нужен IC2, который в сборке отсутствует. Сам по себе он уже приелся, ГрегТех в последнее время превратился в перекормленного мутанта, поэтому всю эту связку решил заменить на один TE. Ну и чрезмерный индустриализм портит впечатление от TConstruct. ) AE убрал, т.к. с помощью него не трудно уместить все хранилища, переработку и крафты в одной среднего размера коробке, а это скучно. CC, по сути, более похож на инструмент, который будет к месту в любой сборке (если не злоупотреблять черепахами). Поэтому выбор пал на него.CC здесь не поможет, тут NuclearControl нужен. Там и реактор и сундуки и грегтеховские штуки мониторить можно.
1. Понятно... 2. Это было, так сказать, к слову. Мало ли что она добавит в новой версии, и возможно это "что-то" поможет решить задачу. Ведь если CC не справиться, нужно будет искать альтернативу. Или забить на проект. :-/1. Контролить реактор компютером позволяет аддон MiscPeripherals на пару с NuclearControl 2. При чем тут Эло?
#1996
Posted 04.05.2013 - 22:10
Я думал, что как реактор из IC2 мониторить можно...
0_0 Так еще раз для кокой задачи нужно... Может есть что...Для NuclearControl нужен IC2, который в сборке отсутствует.
#2000
Posted 05.05.2013 - 10:25
["-2,0,0"]={["RawName"]="tile[paste][/paste]chest",["DamageValue"]=3,["Name"]="Chest",["Position"]={["Y"]=71,["X"]=20,["Z"]=1295,},["InventoryPercentFull"]=10[paste][/paste]185185,["TotalSpace"]=1728,["ItemCount"]=176,}Отсюда видно, что сенсор не может считывать что именно находится внутри, но может сказать тип, объем хранилища, процент его заполнения и количество айтемов внутри. Назначение "DamageValue" честно говоря не ясно.
4 user(s) are reading this topic
0 members, 4 guests, 0 anonymous users