index.html

<!DOCTYPE html><html><head>    <title>旋转的花</title>    <meta charset = "utf-8">    <!--width - 可视区域的宽度,值可为数字或关键词device-width -->    <!--height - viewport的高度-->    <!--initial-scale - 初始的缩放比例-->    <!--minimum-scale - 允许用户缩放到的最小比例-->    <!--maximum-scale - 允许用户缩放到的最大比例-->    <!--user-scalable - 用户是否可以手动缩放-->    <meta name = "viewport" content = "width = device-width, initial-scale = 1.0, maximum-scale = 1.0, user-scalable = 0" />    <!--content="telephone=yes" 在iPhone 手机上默认值是(电话号码显示为拨号的超链接):-->    <!--可将telephone=no,则手机号码不被显示为拨号链接-->    <!--使设备浏览网页时对数字不启用电话功能(不同设备解释不同,itouch点击数字为存入联系人,iphone为拨打电话),忽略将页面中的数字识别为电话号码。-->    <meta name="format-detection" content="telephone=no" />    <!--忽略识别邮箱-->    <meta name="format-detection" content="email=no" />    <!--网站开启对 web app 程序的支持-->    <meta name="apple-mobile-web-app-capable" content="yes">    <!--在 web app 应用下状态条(屏幕顶部条)的颜色;(改变顶部状态条的颜色)-->    <!--默认值为 default(白色),可以定为 black(黑色)和 black-translucent(灰色半透明);-->    <meta name="apple-mobile-web-app-status-bar-style" content="black">    <!--http-equiv="Content-Type" 表示描述文档类型-->    <!--HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容-->    <meta http-equiv="Content-Type" content="text/html">    <!-- UC默认竖屏 ,UC强制全屏 -->    <meta name="full-screen" content="yes">    <!--使用了application这种应用模式后,页面讲默认全屏,禁止长按菜单,禁止收拾,标准排版,以及强制图片显示。-->    <!--应用模式-->    <meta name="browsermode" content="application">    <!-- QQ强制竖屏 QQ强制全屏 -->    <!--设置屏幕方向-->    <meta name="x5-orientation" content="portrait">    <!--设置全屏-->    <meta name="x5-fullscreen" content="true">    <!--设置屏幕模式-->    <meta name="x5-page-mode" content="app">    <!-- windows phone 点击无高光 -->    <meta name="msapplication-tap-highlight" content="no">    <link rel="stylesheet" href="./css/style.css">    <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script></head>

<body><div ng-app="myApp" ng-controller="myCtrl">    <h1>{{lastname}} 家族成员:</h1>    <ul>        <li ng-repeat="x in names">{{x}} {{lastname}}</li>    </ul></div><div class="canvas">    <canvas id="id1" class="flower"></canvas>    <canvas id="id2" class="flower1"></canvas></div></body><script>    var app = angular.module('myApp', []).controller('myCtrl', function($scope, $rootScope) {        $scope.names = ["Emil", "Tobias", "Linus"];        $rootScope.lastname =$scope.names[$scope.names.length - 1];    });</script><script src="./canvas.js"></script></html>

style.scss 实现旋转
$color: #ccc;$rotate_360: rotate(360deg);$rotateX_360: rotateX(360deg);$rotateY_360: rotateX(360deg);$rotate_0: rotate(0deg);$rotateX_0: rotateX(0deg);$rotateY_0: rotateX(0deg);

@function animation($title){    @return $title 8s linear infinite;}

@mixin prefix($property, $value){    -webkit-#{$property}: $value;    -moz-#{$property}: $value;    -o-#{$property}: $value;    #{$property}: $value;}

@mixin keyframes($animationName) {    @-webkit-keyframes #{$animationName} {        @content;    }    @-moz-keyframes #{$animationName} {        @content;    }    @-o-keyframes #{$animationName} {        @content;    }    @keyframes #{$animationName} {        @content;    }}

html{    height: 100%;}body {    height: 100%;}

.flower {    position: absolute;    @include prefix(animation, animation(myfirst));}

.flower1 {    position: relative;  top: 0;   left: 0;    @include prefix(animation, animation(myfirst1));}

@include keyframes(myfirst) {    100% {        @include prefix(transform, $rotate_360);

    }    0% {        @include prefix(transform, $rotate_0);

    }}

@include keyframes(myfirst1) {    100% {        @include prefix(transform, $rotate_0);        //@include prefix(transform, $rotateY_0);    }    0% {        @include prefix(transform, $rotate_360);        //@include prefix(transform, $rotateY_360);    }}

canvas.js 绘画花朵
var canvas;var context;function getDom(id){    canvas = document.getElementById(id);    canvas.width = document.documentElement.clientWidth;    canvas.height = document.documentElement.clientHeight - 300;    if(canvas == null){        return false;    }    context =canvas.getContext("2d");}
(function flower(){        getDom('id1');        var Xo, Yo, A, B;        var n = 10;        context.lineWidth = 1;        Xo = canvas.width / 2;        Yo = canvas.height / 2;        console.log(Xo, Yo, 'Yo')        A = Yo * 0.75;        context.save();//保存当前绘制状态        //context.clearRect(0,0,width,height);//擦除之前绘制的图形        context.translate(Xo,Yo);//坐标原点移动到canvas元素中央        context.beginPath();//开始创建路径        for(B = 0; B < 6.5; B = B + 0.01) {            r = A * Math.sin(n * B);            x = r * Math.cos(B);            y = r * Math.sin(B);            context.fillStyle = "rgba(0,255,0,.25)";//设置填充颜色            context.lineTo(-x,-y);//绘制直线            context.fill();        }        context.closePath();//关闭路径

})();

(function flower1(){        getDom('id2');        var Xo, Yo, A, B;        var n = 10;        context.lineWidth = 1;        Xo = canvas.width / 2;        Yo = canvas.height / 2;        A = Yo * 0.45;        context.save();//保存当前绘制状态        //context.clearRect(0,0,width,height);//擦除之前绘制的图形        context.translate(Xo,Yo);//坐标原点移动到canvas元素中央        context.beginPath();//开始创建路径        for(B = 0; B < 6.5; B = B + 0.01) {            r = A * Math.sin(n * B) * Math.exp(-B / (20));            x = r * Math.cos(B);            y = r * Math.sin(B);            context.fillStyle = "rgba(255,0,0,.25)";//设置填充颜色            context.lineTo(-x,-y);//绘制直线            context.fill();        }        context.closePath();//关闭路径    })()
 

转载于:https://www.cnblogs.com/y-lin/p/6678846.html

canvars 画花相关推荐

  1. python之turtle画花

    语言: python 工具: Pycharm 2021.3.2 文件: main.py代码及解释: 导入文件floowers.py import flowers 调用flowers的flower方法画 ...

  2. python---6行代码,画花

    Python 特点 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单. 2.易于阅读:Python代码定义的更清晰. 3.易于维护:Python的成功在于 ...

  3. html+js画一颗心形,js画花构成心型

    先看效果 尝试点击,IE9+ http://hovertree.com/texiao/html5/23/ 创意来自于网络 可搜搜[何问起] 看上去像是[当耐特]的作品的加工版本 代码 当然要自己写了 ...

  4. python乌龟画花_使用Python的Swampy程序包中的“乌龟”画花朵,螺旋线,打字等

    练习4-2 写一组合适的通用函数,用来画出下图所示的花朵图案. 这个是搬运过来的,代码如下: from swampy.TurtleWorld import * from math import * d ...

  5. python画花女朋友_教你使用python画一朵花送女朋友

    本文实例为大家分享了用python画一朵花的具体代码,供大家参考,具体内容如下 第一种,画法 from turtle import * import time setup(600,800,0,0) s ...

  6. python画花的代码怎么打不开_怎么用python画玫瑰花,求大神贴代码,感激不尽

    满意答案 Exlibrisdc 2018.05.19 采纳率:59%    等级:8 已帮助:4259人 import turtle # 设置初始位置 turtle.penup() turtle.le ...

  7. python乌龟画花_python turtle画花

    [LeetCode] Reconstruct Original Digits from English 从英文中重建数字 Given a non-empty string containing an ...

  8. python turtle画花

    turtle是一个功能强调大的绘图的库,可以用来绘制各种所需要的图案,但是在使用时需要计算好角度等一系列的问题. 代码(源自<Python语言程序设计>)如下: 运行结果: 转载于:htt ...

  9. python用turtle画小人-画一个心送给心爱的小姐姐,Python绘图库Turtle

    import turtle turtle.setup(1200, 600) #窗口大小 #画心 turtle.color("black", "red") tur ...

最新文章

  1. java游戏移动_java - Java游戏 - 如何让敌人移动? - SO中文参考 - www.soinside.com
  2. 跨链原子互换时代来临,BCH潜力无限!
  3. Drupal的高速缓存配置APC
  4. ffmpeg录制屏幕并推流ffmpeg+nginx-http-flv-module+flv.js
  5. MYSQL:MYSQL索引为什么选择B+树?
  6. 《ArcGIS Engine+C#实例开发教程》第七讲 图层符号选择器的实现2
  7. 伯努利数(详解 + 例题 :P3711 仓鼠的数学题)
  8. 不规则炫彩创意渐变海报设计模板素材|带来十足的时尚感
  9. 【渝粤题库】陕西师范大学209016《管理心理学》作业
  10. java实现希尔排序(交换法、移位法) 图解+代码推导
  11. Android 网络服务类提供的服务接口
  12. 先一XDB实时数据库采集
  13. 性能测试 - 响应时间的衡量指标 RPS Average Min Max P90 P95 P99
  14. 《当幸福来敲门》观后感
  15. 英文论文评审意见_小弟第一篇英文论文审稿意见求助 - 论文投稿 - 小木虫 - 学术 科研 互动社区...
  16. 处理System.IO.Ports未能找到类型或命名空间名
  17. python入门——热量转换 I
  18. 家里想养花了(持续更新)
  19. Hyperledger Fabric组织的动态添加和删除
  20. 基于STM32单片机光学指纹识别模块(FPM10A)全教程(基于C语言)

热门文章

  1. 使用命名管道的OVERLAPPED方式实现非阻塞模式编程 .
  2. GNS3的默认Telnet程序改成secureCRT
  3. WIN2K/XP/2003 + APACHE + ASP + PHP + MYSQL 的简易实现
  4. Windows Server 2016 笔记
  5. 区块链简史:解读这场技术革命的前世今生
  6. helm部署仓库中没有的包_Kubernetes的Helm软件包管理器简介
  7. Nmap安装和扫描(一:Nmap安装和扫描基础知识点总结)
  8. 【廖雪峰Python学习笔记】list tuple dict set
  9. 通过一个案例理解 JWT
  10. 实战分享:淘宝Web 3D应用与游戏开发