如何将像素转换为测量HTML5画布

穆赫伊利亚斯

如果我的画布反映了一些现实生活中的测量值,例如8米乘6米,并且我在上面画了一条线,那么我该如何在画布上计算该线的测量值。也就是说,如果我从位置x1,y1绘制到位置x2,y2,我会对其进行测量并确定它大约x长度长。我也可以在运行时在行的正下方显示测量结果,就像我完成该行一样,它的长度也会自动显示在其底部。我正在使用带有javascript atm的仅1条画线功能的简单画布。

山姆
var linePixelsX = x2-x1;
var linePixelsY = y2-y1;
// horizontal/vertical components of line in pixels

var horizontalMPP = ( m / p );
var verticalMPP = ( m / p );
// horizontal/vertical meters per pixel, p being according canvas measurement in pixels and m being the measurement (in meters) of the area it should represent

var lineMetersX = linePixelsX * horizontalMPP;
var lineMetersY = linePixelsY * verticalMPP;
// calculate horizontal/vertical line components in meters

var lineMetersTotal = Math.SQRT2(lineMetersX*lineMetersX + lineMetersY*lineMetersY);
// Calculate total line length in meters with some Pythagoras

您必须将线分成水平和垂直分量,就好像它是矢量一样。

如果画布的尺寸比例与应该显示的区域的尺寸比例(以米为单位)相匹配,则只需计算一次MPP(使用宽度或高度),就可以计算总线长而无需计算组件。

一些简单的缩放数学和向量在这里:)

要在屏幕上显示长度:只需添加'div'或'span'或其他内容,然后在其中写一行,如下所示:

HTML:

<canvas>
</canvas>
<div id="lengthDiv"></div>

Javascript:

function drawLine(){
// All other stuff + what I showed above

document.getElementById('lengthDiv').innerHTML = lineMetersTotal;
// get 'div' by ID and assign your length to innerHTML
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将HTML5画布转换为要上传的文件?

来自分类Dev

将HTML5画布序列转换为视频文件

来自分类Dev

将Flash信息框转换为html5画布形状的坐标?

来自分类Dev

将HTML5画布转换为IMG元素

来自分类Dev

HTML5画布转换-监视像素到画布点

来自分类Dev

如何将HTML5画布用作WebGL纹理

来自分类Dev

如何将HTML5画布保存到png

来自分类Dev

HTML5画布像素处理

来自分类Dev

HTML5画布的线宽小于1像素

来自分类Dev

将bezierCurve html5画布绘图居中?

来自分类Dev

如何下载HTML5画布上的图像?

来自分类Dev

如何为边框创建html5画布?

来自分类Dev

禁用html5画布

来自分类Dev

了解HTML5画布

来自分类Dev

禁用html5画布

来自分类Dev

HTML5画布脉动

来自分类Dev

HTML5画布脉动

来自分类Dev

如何在没有像素模糊的情况下调整html5画布的大小

来自分类Dev

为什么缩放后的HTML5画布上的“像素”奇怪地对齐?

来自分类Dev

在HTML5画布上绘制1像素线的完整解决方案

来自分类Dev

HTML5画布-无法清除脏像素-视网膜相关

来自分类Dev

如何使用javascript将HTML 5画布居中

来自分类Dev

如何将HTML5画布图像另存为附件,并使用XPages在Basic Notes客户端的RichText字段中显示它们

来自分类Dev

如何将html5画布上的click事件传递给同级canvas元素上的事件侦听器

来自分类Dev

如何将HTML5画布图像另存为附件,并使用XPages在Basic Notes客户端的RichText字段中显示它们

来自分类Dev

HTML5画布使圆圈在画布内闪烁

来自分类Dev

使用非矩形的html5画布裁剪图像并进行转换

来自分类Dev

用于在HTML5画布元素绘图中绘图/转换SVG绘图的工具

来自分类Dev

如何将2个或更多3D对象添加到HTML 5画布?

Related 相关文章

热门标签

归档