在基于网格的HTML画布上绘制形状
Drawing shapes on a HTML canvas on bases of grid
我正在开发一个应用程序来设计HTML5画布中的事件映射。
以下是我想要创建的地图示例https://i.stack.imgur.com/XGvTg.jpg
画布是我做的。我想知道如何在画布的特定网格框上绘制失速。比例:画布中的1盒网格=1平方英尺。例如,我想在(3,3)&(6,6)画布的网格点然后如何在画布上绘制。。。
画布代码:
<html>
<head>
</head>
<body style=" background: lightblue;">
<canvas id="canvas" width="420px" height="420px" style="background: #fff; magrin:20px;">
Browser does not support canvas
</canvas>
<script type="text/javascript" language="javascript">
var bw = 400;
var bh = 400;
var p = 10;
var cw = bw + (p*2) + 1;
var ch = bh + (p*2) + 1;
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
function drawBoard(){
for (var x = 0; x <= bw; x += 40){
context.moveTo(0.5 + x + p, p);
context.lineTo(0.5 + x + p, bh + p);
}
for (var x = 0; x <= bh; x += 40) {
context.moveTo(p, 0.5 + x + p);
context.lineTo(bw + p, 0.5 + x + p);
}
context.strokeStyle = "black";
context.stroke();
}
drawBoard();
</script>
</body>
</html>
谢谢…:)
这样?
<html>
<head>
</head>
<body style=" background: lightblue;">
<canvas id="canvas" width="420px" height="420px" style="background: #fff; magrin:20px;">
Browser does not support canvas
</canvas>
<script type="text/javascript" language="javascript">
var bw = 400;
var bh = 400;
var p = 10;
var cw = bw + (p*2) + 1;
var ch = bh + (p*2) + 1;
var grid = 40;
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
function drawBoard(){
context.beginPath();
for (var x = 0; x <= bw; x += grid){
context.moveTo(0.5 + x + p, p);
context.lineTo(0.5 + x + p, bh + p);
}
for (var x = 0; x <= bh; x += grid) {
context.moveTo(p, 0.5 + x + p);
context.lineTo(bw + p, 0.5 + x + p);
}
context.lineWidth = 1;
context.strokeStyle = "black";
context.stroke();
}
drawBoard();
function drawRect() {
context.beginPath();
context.rect(0.5+p+3*grid, 0.5+p+3*grid, 4*grid, 3*grid);
//context.fillStyle = 'yellow';
//context.fill();
context.lineWidth = 3;
//context.strokeStyle = 'blue';
context.stroke();
}
drawRect();
</script>
</body>
</html>
问候
Axel
相关文章:
- 如何在javascript中在图像上绘制图像(没有CSS和HTML)
- Html画布绘制速度因画布元素过多而减慢
- 使用缩放脚本化事件绘制 HTML 图表
- 尝试将无符号长整型的 ARGB 数据绘制到 HTML 画布
- 未捕获的类型错误:对象#<HTML对象元素>没有方法'重新绘制工作流'
- html画布绘制图像不起作用
- 在html画布中绘制更平滑的路径
- 如何将Jqplot绘制到HTML画布中
- HTML画布图像-在页面中绘制多画布图像
- 从 html 输入值绘制圆圈
- HTML 5 画布似乎重新绘制了已删除的部分
- 使用 HTML 和 JavaScript 绘制表格
- 绘制大量线条时的 HTML 画布性能
- JavaScript - 在高负载脚本执行之前绘制 html-mask
- 通过D3绘制HTML表格;t更新现有数据
- 构造的SVG不适用于绘制HTML的地方
- 什么'这是绘制HTML 5画布的最快方法
- 如何在特定纬度和经度的v3 Google Map上绘制HTML元素
- 使用setTimeout从循环内部重新绘制html画布的推荐方法
- 使用Jquery绘制html元素之间的平滑线