动态圆

<!doctype html>
<html lang="zh" class="no-js">
<head>
    <meta charset="UTF-8">
    <style>
        .cd-stroke {
            fill: none;
            stroke-width: 20;
            stroke-miterlimit: 10;
        }

        .cd-stroke-color-1 {
            stroke: #D7DCE0;
            stroke-width: 30;
        }

        .cd-stroke-color-2 {
            stroke: #c3c3c3;
        }

        .cd-stroke-color-3 {
            stroke: #4DC36E;
        }

        #cd-circle-filled {
            opacity: 1;
            -webkit-transition: stroke-dashoffset .5s 0s;
            -moz-transition: stroke-dashoffset .5s 0s;
            transition: stroke-dashoffset .5s 0s;
        }
    </style>
</head>
<body>
<div class="cd-svg-container">
    <svg id="cd-animated-svg" version="1.1" x="0px" y="0px" width="240px" height="240px" viewBox="0 0 240 240" style="enable-background:new 0 0 240 240;" xml:space="preserve">
        <g id="cd-loading">
            <g id="cd-circle">
                <circle id="cd-circle" class="cd-stroke cd-stroke-color-1" cx="120" cy="120" r="79.5"/>
                <circle id="cd-circle2" class="cd-stroke cd-stroke-color-2" cx="120" cy="120" r="79.5"/>
                <circle id="cd-circle-filled" class="cd-stroke cd-stroke-color-3" cx="120" cy="120" r="79.5" transform="rotate(-90 120 120)"/>
            </g>
        </g>

    </svg>

</div>

<script>
    (function () {
        var loadingCircle = document.querySelector("#cd-circle-filled");
        var circumf = Math.PI * (loadingCircle.getAttribute(‘r‘) * 2);

        function render(ele) {
            var parentPanel = ele?ele:document.querySelector(".cd-svg-container");
            var pWidth = parentPanel.outerWidth
                    , pHeight = parent.outerHeight
                    , r = 77.5
                    , cx = pWidth / 2
                    , cy = pHeight / 2;

//            var svg=document.createElement();
        }

        /**
         * 初始化圆图形
         */
        function initLoading() {
            loadingCircle.style["stroke-dasharray"] = circumf + " " + circumf;
            loadingCircle.style["stroke-dashoffset"] = circumf;
        }

        initLoading();

        function setVal(num) {
            if (num > 100)num = 100;//
            var strokeOffset = loadingCircle.style[‘stroke-dashoffset‘].replace(‘px‘, ‘‘);
            loadingCircle.style[‘stroke-dashoffset‘] = (circumf * (100 - num) / 100) + "px";

        }

        window["setVal"] = setVal;

        window.setInterval(function () {
            setVal(parseInt(Math.random() * 101))
        }, 800);
    })();
</script>
</body>
</html>
时间: 2024-12-24 07:07:20

动态圆的相关文章

详解JavaScript中的arc的方法

今天说说JavaScript在网页中画圆的函数arc! 一.arc所需要的参数设置 1 arc(x, y, radius, startAngle, endAngle, counterclockwise); 其中x,y,radius都很容易理解,那么重点说说startAngle,endAngle和counterclockwise三个参数!    二.arc参数详解 1,startAngle和endAngle分别指圆开始的角度和结束的角度,手册上面说的是开始的角度为0,结束的角度为Math.PI*2

JS框架_(Progress.js)圆形动画进度条

圆形动画进度条效果: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <style> p { position: fixed; top: 50%; left: 0; right: 0; text-align: center; transf

好用的的环形百分比动画效果

var p1 = new Progress({     el: 'my_html', //canvas元素id     deg: 100, //绘制角度     timer: 8, //绘制时间     lineWidth: 5, //线宽     lineBgColor: '#BBBBBB', //底圆颜色     lineColor: 'white', //动态圆颜色     textColor: '#BBBBBB', //文本颜色     fontSize: 22, //字体大小     

android自定义圆形进度条,实现动态画圆效果

自定义圆形进度条效果图如下:应用场景如动态显示分数等. view的自定义属性如下attr.xml <?xml version="1.0" encoding="UTF-8"?> <resources> <declare-styleable name="ArcProgressbar">         <!-- 圆环起始角度-->         <attr name="startAng

用鼠标动态画圆

已知圆心坐标O(x,y),圆上一点的坐标A(xA,yA),用鼠标从A点顺时针方向画指定的度数. 需要注意,X轴的正方向是→,Y轴的正方向是↓,按顺时针方向画圆实际上角度是越来越小. 解题思路:画圆可以将圆的360°角划分为N等分,这里就划分为360等分,再获取每个度数所对应的圆上的点的坐标来画点,由点连成一个圆. 原理是利用圆的参数方程:横坐标X=圆心横坐标+半径*Cos(弧度)横坐标Y=圆心纵坐标+半径*Sin(弧度) autoit代码如下: Run("mspaint.exe") S

动态刻度圆

html: <input type="hidden" class="progressRate" value="{$content.progressRate/100}"> <!--progressRate 投资进度--> <canvas id="draw_circle" style="width:7rem;height:7rem;"></canvas> js:

网上看到一个正方形和圆的渐变动态图片,发现再深度延伸一下,同样好看

原始图片及其来源: 图片来源(二手) 修改延伸其变化之后的效果:

Android自动手绘,圆你儿时画家梦!

我的简书同步发布:Android自动手绘,圆你儿时画家梦! 从小就喜欢到处乱画,家里一米以下墙上就没有一块干净的地方(那是老房子啦~)~~(⊙﹏⊙)b.好了,废话不多说,进入主题.今天主要跟大家分享一下如何将一张图片转成手绘效果,并模拟画家动态绘制.先把最终效果图亮出来,觉得好的请点个赞,您的点赞是对我的最大鼓励(O(∩_∩)O哈哈~). 效果图如下: 再来张截图: 心动有木有! 原理 大概介绍一下实现原理.首先你得有一张图(废话~),接下来就是把这张图的轮廓提取出来,轮廓提取算法有很多,本人不

[Android] 通过GridView仿微信动态添加本地图片

    前面文章讲述的都是"随手拍"中图像处理的操作,此篇文章主要讲述GridView控件实现添加本地图片并显示.主要是关于GridView控件的基本操作,通常可以通过自定义继承BaseAdapter的适配器加载图片,而下面讲述的不是自定义的适配器,而是调用SimpleAdapter实现的.至于上传发布与网络交互此处不讲述,后面文章会讲! 一. 实现效果     主要是通过点击+从本地相册中添加图片,同时显示图片至GridView.点击图片可以进行删除操作,同时界面中的发布EditVi