当前位置: 首页 > news >正文

静态网站策划书ios开发者账号有什么用

静态网站策划书,ios开发者账号有什么用,宠物医院网站开发,14亿有多少中国人打了新冠疫苗之前用 Flutter Canvas 画过一个三角三角形#xff0c;html 的 Canvas 也画过一次类似的#xff0c; 今天用 Flutter Canvas 试了下 感觉差不多#xff1a; html 版本 大致效果如下#xff1a; 思路和 html 实现的类似#xff1a; 也就是找出点的位置#xff0c;使用二阶… 之前用 Flutter Canvas 画过一个三角三角形html 的 Canvas 也画过一次类似的 今天用 Flutter Canvas 试了下 感觉差不多 html 版本 大致效果如下 思路和 html 实现的类似 也就是找出点的位置使用二阶贝塞尔曲线实现 代码如下 import package:flutter/material.dart;class PageCanvas extends StatefulWidget {const PageCanvas({Key? key}) : super(key: key);overrideStatePageCanvas createState() _PageCanvasState(); }class _PageCanvasState extends StatePageCanvas with TickerProviderStateMixin {late Animationdouble animation;late AnimationController controller;overridevoid initState() {// TODO: implement initStatesuper.initState();controller AnimationController(duration: const Duration(milliseconds: 2000), vsync: this);animation Tweendouble(begin: 0, end: 1).animate(controller);controller.repeat();}overrideWidget build(BuildContext context) {Size size MediaQuery.of(context).size;return Scaffold(appBar: AppBar(title: const Text(Canvas),backgroundColor: Colors.blue,),body: Column(children: [AnimatedBuilder(animation: controller,builder: (context, widget) {return CustomPaint(size: Size(size.width, size.height / 3),painter: MyPainter(animation.value),);}),const SizedBox(height: 60,),Center(child: SizedBox(// color: Colors.grey,width: 200,height: 200,child: ClipOval(child: Container(color: Colors.grey.withOpacity(0.3),child: AnimatedBuilder(animation: controller,builder: (context, widget) {return CustomPaint(size: Size(size.width, size.height / 3),painter: MyPainter2(animation.value),);}),),),),)],),);}overridevoid dispose() {controller.dispose();// TODO: implement disposesuper.dispose();} }class MyPainter extends CustomPainter {final double value;const MyPainter(this.value);overridevoid paint(Canvas canvas, Size size) {// print(value);Paint paint Paint();Path path Path();double positionX -size.width * value;double positionY 100;double positionRange 10;double positionX2 -size.width * (1 - value);double positionY2 110;double positionRange2 20;double positionX3 -size.width * (1.3 - value);double positionY3 120;double positionRange3 30;double step size.width / 4;//path.moveTo(0 positionX, positionY);for (int i 1; i 13; i) {if (i % 2 1) {path.quadraticBezierTo(step * (2 * i - 1) positionX,positionY - positionRange, step * (2 * i) positionX, positionY);} else {path.quadraticBezierTo(step * (2 * i - 1) positionX,positionY positionRange, step * (2 * i) positionX, positionY);}}path.lineTo(step * 10, 250);path.lineTo(0, 250);path.close();paint.color Colors.blue.withOpacity(0.2);canvas.drawPath(path, paint);canvas.save();canvas.restore();path Path();path.moveTo(0 positionX2, positionY2);for (int i 1; i 13; i) {if (i % 2 1) {path.quadraticBezierTo(step * (2 * i - 1) positionX2,positionY2 - positionRange2,step * (2 * i) positionX2,positionY2);} else {path.quadraticBezierTo(step * (2 * i - 1) positionX2,positionY2 positionRange2,step * (2 * i) positionX2,positionY2);}}path.lineTo(step * 10, 250);path.lineTo(0, 250);path.close();paint.color Colors.blue.withOpacity(0.6);canvas.drawPath(path, paint);canvas.save();canvas.restore();path Path();path.moveTo(0 positionX3, positionY3);for (int i 1; i 13; i) {if (i % 2 1) {path.quadraticBezierTo(step * (2 * i - 1) positionX3,positionY3 - positionRange3,step * (2 * i) positionX3,positionY3);} else {path.quadraticBezierTo(step * (2 * i - 1) positionX3,positionY3 positionRange3,step * (2 * i) positionX3,positionY3);}}path.lineTo(step * 10, 250);path.lineTo(0, 250);path.close();paint.color Colors.blue;canvas.drawPath(path, paint);}overridebool shouldRepaint(covariant CustomPainter oldDelegate) {// TODO: implement shouldRepaintreturn oldDelegate ! this;//return true;} }class MyPainter2 extends CustomPainter {final double value;const MyPainter2(this.value);overridevoid paint(Canvas canvas, Size size) {// print(value);Paint paint Paint();Path path Path();double positionX -size.width * value;double positionY 50;double positionRange 10;double positionX2 -size.width * (1 - value);double positionY2 60;double positionRange2 20;double positionX3 -size.width * (1.3 - value);double positionY3 70;double positionRange3 30;double step size.width / 4;//path.moveTo(0 positionX, positionY);for (int i 1; i 13; i) {if (i % 2 0) {path.quadraticBezierTo(step * (2 * i - 1) positionX,positionY - positionRange, step * (2 * i) positionX, positionY);} else {path.quadraticBezierTo(step * (2 * i - 1) positionX,positionY positionRange, step * (2 * i) positionX, positionY);}}path.lineTo(step * 10, 250);path.lineTo(0, 250);path.close();paint.color Colors.blue.withOpacity(0.2);canvas.drawPath(path, paint);canvas.save();canvas.restore();path Path();path.moveTo(0 positionX2, positionY2);for (int i 1; i 13; i) {if (i % 2 0) {path.quadraticBezierTo(step * (2 * i - 1) positionX2,positionY2 - positionRange2,step * (2 * i) positionX2,positionY2);} else {path.quadraticBezierTo(step * (2 * i - 1) positionX2,positionY2 positionRange2,step * (2 * i) positionX2,positionY2);}}path.lineTo(step * 10, 250);path.lineTo(0, 250);path.close();paint.color Colors.blue.withOpacity(0.6);canvas.drawPath(path, paint);canvas.save();canvas.restore();path Path();path.moveTo(0 positionX3, positionY3);for (int i 1; i 13; i) {if (i % 2 0) {path.quadraticBezierTo(step * (2 * i - 1) positionX3,positionY3 - positionRange2,step * (2 * i) positionX3,positionY3);} else {path.quadraticBezierTo(step * (2 * i - 1) positionX3,positionY3 positionRange2,step * (2 * i) positionX3,positionY3);}}path.lineTo(step * 10, 250);path.lineTo(0, 250);path.close();paint.color Colors.blue;canvas.drawPath(path, paint);canvas.save();canvas.restore();}overridebool shouldRepaint(covariant CustomPainter oldDelegate) {// TODO: implement shouldRepaintreturn oldDelegate ! this;//return true;} }
http://www.hkea.cn/news/14379083/

相关文章:

  • 班级网站页面设计通栏网站
  • 门户网站建设探究管理咨询项目
  • 上海智能网站建设平台专业装修超市的装修公司
  • 个人网站开发与实现开题报告扬中论坛最新
  • 教你做美食的网站网络营销方式文献
  • 青岛做网站和小程序的公司metasploit wordpress
  • 做网站建设哪家公司好北京国家建设部网站首页
  • 网站推广 优帮云厨具 技术支持东莞网站建设
  • 义乌专业做网站的公司专业网站建设 公司
  • 外贸服装网站模板c 做视频网站
  • 网站项目报价做网站那家比较好
  • 网站建设岗位说明书手机软件app免费下载
  • 中国移动网站建设情况分析wordpress抽奖工具
  • 重庆网站制作一般需要多少钱查找做像册的网站
  • 网站入口英文手机网站模板
  • 建什么网站赚钱电子商务网站建设与维护期末答案
  • 浦西网站建设河南郑州网络科技有限公司
  • 帮别人做设计的网站泉州个人建站模板
  • 手机网站是什么宁波造价工程信息网
  • wordpress会员等级下载连云港网站优化公司
  • 厚街东莞网站建设网站建设收费标准讯息
  • 在哪个网站做ppt模板赚钱芜湖灵创网站建设
  • 域名交易asp.net 网站微信公众号创建需要多少钱
  • 高端建站需要什么条件邮箱账号做网站用户名好不好
  • 网站建设免费制作网站的ftp服务器
  • 公司建网网站建设seo网络推广
  • 青岛网站建设设计wordpress修改wpadmin
  • 商业网站的网址百度做网站不给FTP密码
  • 网站换ip影响 百度模板网站做外贸好不好
  • 兼职网站开发团队工作项目总结大连网站制作公司