我必须创建一个迷宫游戏,该迷宫游戏接收来自用户的命令作为玩游戏。我已经为迷宫游戏编写了代码。我要修改的是仅在将迷宫打印给用户时(进行移动之后)显示迷宫的一部分。这是我的迷宫:
level = [
["1"," ","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1","1"],
["1"," "," ","1","1","1","1","1","1","1"," "," "," "," "," "," "," "," "," "," ","1","1","1","1","1"],
["1"," "," ","1","1","1","1","1","1","1"," "," ","1","1","1","1","1","1"," "," ","1","1","1","1","1"],
["1"," "," "," "," "," "," "," ","1","1"," "," ","1","1","1","1","1","1"," "," ","1","1","1","1","1"],
["1"," "," "," "," "," "," "," ","1","1"," "," ","1","1","1"," "," "," "," "," "," "," "," ","1","1"],
["1"," ","1","1","1","1"," "," ","1","1"," "," ","1","1","1"," "," "," "," "," "," "," "," ","1","1"],
["1"," ","1","1","1","1"," "," ","1","1"," "," ","1","1","1","1","1","1"," "," ","1","1","1","1","1"], …Run Code Online (Sandbox Code Playgroud) 我使用线生成器在 d3.js 中绘制了这个形状 - 想法是让它看起来像一个指南针。
左图:我所拥有的
右图:我想要的(只是中间的红/黑,而不是整个罗盘)。
我用来做这个的是:
function drawArrowCompass() { //draw arrow
var dataArrow = [
[35, 50],
[50, 0],
[65, 50],
[50, 100],
[35, 50]
];
var lineGenerator = d3.line();
var pathString = lineGenerator(dataArrow);
var compassArrow = d3.select("#noun_compass");
//draw arrow(s)
compassArrow.append("path")
.attr('d', pathString);
}
Run Code Online (Sandbox Code Playgroud)
使用相应的 HTML:
<div id="compass">
<svg width="100" height="100" id="noun_compass"></svg>
</div>
Run Code Online (Sandbox Code Playgroud)
但是,按照我的做法,我看不到向路径添加两种不同颜色的方法。有谁知道我如何在 d3.js 中绘制这样的形状?提前致谢!!