我正在制作2D平铺地图,现在我正在尝试实现A*寻路.我正在关注A*的维基百科伪代码.
除了算法所做的决定中的一些奇怪的行为之外,事情进展顺利.
我的代码到目前为止:
void Pathfinding(Point from, Point destination) {
goalNode = new Node(destination, 0, 0);
startNode = new Node(from, 0, ManhattanDistance(from, destination));
open = new List<Node>(); //list of nodes
closed = new List<Node>();
open.Add(startNode); //Add starting point
while(open.Count > 0) {
node = getBestNode(); //Get node with lowest F value
if(node.position == goalNode.position) {
Debug.Log("Goal reached");
getPath(node);
break;
}
removeNode(node, open);
closed.Add(node);
List<Node> neighbors = getNeighbors(node);
foreach(Node n in neighbors) {
float g_score = node.G + 1;
float …Run Code Online (Sandbox Code Playgroud) 最近,我刚刚开始尝试围绕Docker进行研究,并设法启动并运行了开发机器。我现在想做的是能够在我的python应用程序(特别是Django)的Visual Studio Code中使用调试器。
我尝试遵循VS Code的python扩展的有限文档,该文档解释了远程调试的参数。
FROM python:3.5.2
RUN apt-get update \
--no-install-recommends && rm -rf /var/lib/apt/lists/* \
&& mkdir -p /code \
EXPOSE 8000
WORKDIR /code
COPY requirements.txt /code
RUN /bin/bash --login -c "pip install -r requirements.txt"
ADD . /code
CMD []
Run Code Online (Sandbox Code Playgroud)
version: '2'
services:
db:
image: postgres
web:
build: .
volumes:
- .:/code
ports:
- "8000:8000"
command: bash -c "./wait-for-it.sh db:5432 && python manage.py migrate && python manage.py runserver 0.0.0.0:8000 --noreload"
depends_on:
- …Run Code Online (Sandbox Code Playgroud)