Toggle navigation
在线编辑器
在线代码
文本比较
jQuery下载
前端库
在线手册
登录/注册
下载代码
html
css
js
分享到微信朋友圈
X
html
Polygon Generator
Number of Sides
Radius
Center
Center X Coordinate
Center Y Coordinate
css
body{ background-color:#EFEFEF } pre { overflow-wrap: break-word; }
JavaScript
const sideCountEl = document.querySelector('#js-side-count'); const radiusEl = document.querySelector('#js-radius'); const cxEl = document.querySelector('#js-cx'); const cyEl = document.querySelector('#js-cy'); const generateEl = document.querySelector('#js-generate'); const polygonEl = document.querySelector('#js-polygon'); const resultEl = document.querySelector('#js-result'); const svgEl = document.querySelector('#js-svg'); function pts(sideCount, radius) { const angle = 360 / sideCount; const vertexIndices = range(sideCount); const offsetDeg = 90 - ((180 - angle) / 2); const offset = degreesToRadians(offsetDeg); return vertexIndices.map((index) => { return { theta: offset + degreesToRadians(angle * index), r: radius, }; }); } function range(count) { return Array.from(Array(count).keys()); } function degreesToRadians(angleInDegrees) { return (Math.PI * angleInDegrees) / 180; } function polygon([cx, cy], sideCount, radius) { return pts(sideCount, radius) .map(({ r, theta }) => [ cx + r * Math.cos(theta), cy + r * Math.sin(theta), ]) .join(' '); } function generatePolygon() { const sideCount = +sideCountEl.value; const radius = +radiusEl.value; const cx = +cxEl.value; const cy = +cyEl.value; const s = 2 * radius + 50; const res = polygon([cx, cy], sideCount, radius); const viz = polygon([s / 2, s / 2], sideCount, radius); svgEl.setAttribute('viewBox', `0 0 ${s} ${s}`); polygonEl.setAttribute('points', viz); resultEl.innerText = `
`; } generateEl.onclick = generatePolygon; window.onload = generatePolygon;
粒子
时间
文字
hover
canvas
3d
游戏
音乐
火焰
水波
轮播图
鼠标跟随
动画
css
加载动画
导航
菜单
按钮
滑块
tab
弹出层
统计图
svg
×
Close
在线代码下载提示
开通在线代码永久免费下载,需支付20jQ币
开通后,在线代码模块中所有代码可终身免费下!
您已开通在线代码永久免费下载,关闭提示框后,点下载代码可直接下载!
您已经开通过在线代码永久免费下载
对不起,您的jQ币不足!可通过发布资源 或
直接充值获取jQ币
取消
开通下载
<!doctype html> <html> <head> <meta charset="utf-8"> <title>SVG多边形生成器-jq22.com</title> <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script> <style>
</style> </head> <body>
<script>
</script>
</body> </html>
2012-2021 jQuery插件库版权所有
jquery插件
|
jq22工具库
|
网页技术
|
广告合作
|
在线反馈
|
版权声明
沪ICP备13043785号-1
浙公网安备 33041102000314号