我是靠谱客的博主 欣喜鸵鸟,最近开发中收集的这篇文章主要介绍js中的数学,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

JS中 Math.PI = π

弧度 = 角度 * Math.PI / 180
角度 = 弧度 * 180 / Math.PI

现在我们用svg画一个定时器

 

如图 圆心200 200,起始点200 100,方向顺时针

我们需要通过我们转的弧度rad 计算出在真实坐标系中应该体现出来的弧度、

2*Math.PI + 0.5 *Math.PI - rad 为在真实坐标系的弧度

完整代码

<!DOCTYPE html>
<html>
<body>

<svg  class="svg" xmlns="http://www.w3.org/2000/svg" version="1.1" height="400" width="500" style="border:1px solid red">

	<path d="M 200 100 A 100 100 0 1 1 199.9 100" stroke="#999" stroke-width="6px" fill="none"/>
</svg>
<script>
	var svg = document.querySelector(".svg")
	var hu = 0 //初始化百分数 变量hu表示的是一圈的百分之数  如h=50%时  画半个圆

	var pai = Math.PI 	
	var str = `<path d="M 200 100 A 100 100 0 1 1 199.9 100" stroke="#999" stroke-width="15px" fill="none"/>`//初始化一个底图 为了好看
	
	var timeScroll = setInterval(timeFun,10)
	
	function timeFun(){
		if(hu>1){ //画完一个圈后置0  重新画
			hu=0
		}else{
			hu+=1/600 //每次递增1/600	
		}		
 		var reanHu = 2*pai+0.5*pai-2*pai*hu //算出真正的弧度
		var x=200+100*(Math.cos(reanHu)) //用三角函数计算 x y坐标
		var y=200-100*(Math.sin(reanHu))
		if(hu%1>0.5){
			svg.innerHTML =  str +`<path d="M 200 100 A 100 100 0 1 1 ${x} ${y}" stroke="red" stroke-width="20px" fill="none"/>`
		}else{
			svg.innerHTML =  str +`<path d="M 200 100 A 100 100 0 0 1 ${x} ${y}" stroke="red" stroke-width="20px" fill="none"/>`
		}

	}

	//timeFun()
	
</script>
</body>	
</html>

最后

以上就是欣喜鸵鸟为你收集整理的js中的数学的全部内容,希望文章能够帮你解决js中的数学所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部