小编kaz*_*tar的帖子

确保部分连接的有向图连接牢固

上下文

我正在使用程序生成来构建一个3D游戏.我试图连接一些预先生成的房间,无论如何,玩家总能到达地图中的任何其他房间.房间有"可能的入口点",连接走廊必须连接.但是,并非所有入口点都可以从房间内的所有其他入口点到达.例如,可能存在陷阱,因此底部的玩家将无法穿过房间到达顶部,并且必须找到另一种方式.

问题

给定嵌入在3d空间中的一组预先存在的有向图,添加一组最小总长度的(双向)路径,将子图连接成更大的图.如果失败(因为一些研究表明这是NP-Hard),使得路径尽可能短,以便在短时间内计算.

到目前为止工作

我最好的解决方案是基于这个程序生成帖子,他创建了所有节点的Delaney三角剖分.我将房间的每个强连通组件(例如,陷阱的顶层和底层)视为单独的节点,然后构建MST,但这限制了一些更有趣的可能性(例如,必须通过两条单向路径回到你开始的地方).


有谁知道解决这个问题的更好方法?

c# algorithm procedural-generation unity-game-engine

11
推荐指数
1
解决办法
270
查看次数

如何在jinja2中构建可重用的小部件?

我想像这样模糊地定义一个小部件:

{% block css %}
.mywidget {
     css: goes_here;
{% endblock %}

{% block widget %}
<div class="mywidget">
   <!-- structure goes here -->
</div>
{% endblock %}

{% block script %}
$( ".mywidget" ).addFunctionality(stuff)
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

换句话说,小部件需要的CSS减速度,内容是什么(最好是以某种方式参数化),以及文件末尾需要的脚本.然后,我希望能够扩展布局模板,向主体添加小部件(可能是具有不同参数的相同类型的多个小部件),并将CSS和javascript正确添加到顶部和底部布局模板,每个小部件类型一次.

这看起来像一个非常干净和简单的设计,并从本机UI设计的角度来看,我很困惑为什么我找不到任何如何做这样的事情的例子.

python jinja2 flask

6
推荐指数
1
解决办法
2188
查看次数