Konva实例
2022/7/29 6:22:58
本文主要是介绍Konva实例,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
<!DOCTYPE html> <html> <head> <script src="https://unpkg.com/konva@4.0.18/konva.min.js"></script> <meta charset="utf-8" /> <title>Konva Circle Demo</title> <style> body { margin: 20; padding: 0; overflow: hidden; background-color: #f0f0f0; } </style> </head> <body> <div id="container"></div> <script> function isInCircle(ra, x, y) { return ra * ra > x * x + y * y; } var r = 150; var scale = 1.8; var fx = -0.487467 * scale; var fy = -0.299060 * scale; var dieW = 8.381850 * scale; var dieH = 8.834214 * scale; var radius = r * scale; var stage = new Konva.Stage({ container: 'container', width: radius * 2, height: radius * 2 }); var layer = new Konva.Layer(); var count = 0; for (var i = -6 * 3; i <= 6 * 3; i++) { //距离左边 var x = radius + fx + i * dieW; var x1 = radius - x; var x2 = x1 - dieW; // debugger; for (var j = -6 * 3; j <= 6 * 3; j++) { //距离顶部 var y = radius - fy - j * dieH; var y1 = radius - y; var y2 = y1 - dieH; // console.log('x1', x1); // console.log('x2', x2); // console.log('y1', y1); // console.log('y2', y2); var fillColor = undefined; if (isInCircle(radius, x1, y1) && isInCircle(radius, x1, y2) && isInCircle(radius, x2, y1) && isInCircle(radius, x2, y2)) { count++; fillColor = '#A5C9CA'; } layer.add(new Konva.Rect({ width: dieW, height: dieH, x: x, y: y, stroke: "black", strokeWidth: 0.4, fill: fillColor, })); } } // alert(count); // add the shape to the layer layer.add(new Konva.Circle({ x: radius, y: radius, radius: radius, stroke: "black", strokeWidth: 0.4, // fill: 'lightgray', // strokeEnabled: false })); layer.add(new Konva.Circle({ x: radius, y: radius, radius: 1, fill: 'red', strokeEnabled: false })); layer.add(new Konva.Circle({ x: radius + fx, y: radius - fy, radius: 1, fill: 'blue', strokeEnabled: false })); // for (var i = 0; i <= 6 * 3; i++) { // layer.add(new Konva.Rect({ // width: dieW, // height: dieH, // x: radius + fx, // y: radius - fy, // stroke: "black", // strokeWidth: 0.4, // fill: undefined, // })); // } // add the layer to the stage stage.add(layer); </script> </body> </html>
这篇关于Konva实例的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-28一步到位:购买适合 SEO 的域名全攻略
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign服务间调用学习入门
- 2024-12-27OpenFeign学习入门:轻松掌握微服务通信
- 2024-12-27OpenFeign学习入门:轻松掌握微服务间的HTTP请求
- 2024-12-27JDK17新特性学习入门:简洁教程带你轻松上手
- 2024-12-27JMeter传递token学习入门教程
- 2024-12-27JMeter压测学习入门指南
- 2024-12-27JWT单点登录学习入门指南
- 2024-12-27JWT单点登录原理学习入门