javascript – 使用Raphael JS,部分填充圆圈
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 使用Raphael JS,部分填充圆圈,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1327字,纯文字阅读大概需要2分钟。
内容图文
![javascript – 使用Raphael JS,部分填充圆圈](/upload/InfoBanner/zyjiaocheng/802/8959546f32cf40629bd30c5d5ee71cbf.jpg)
我试图用一种颜色填充圆的一部??分.例如,有一个2/3红色和1/3空白的圆圈.
Raphael JS文档没有多大帮助.解决这个问题的最佳方法是什么?
下面的图片可以看到一些例子:
var paper = new Raphael(document.getElementById('shape_container'), 400, 100);
var circle = paper.circle(50, 50, 30);
circle.attr (
{
fill: '#F00'
}
);
使用上面的代码,我可以绘制一个充满红色的圆圈..
我找不到任何方法来填充2/3红色..
解决方法:
欢迎,Alperen.我相信你真正想要的是弧形路径而不是圆形.看看这个:
function arcpath( canvas, x, y, r, ratio )
{
if ( ratio >= 1.0 ) return canvas.circle( x, y, r );
var degrees = 360 * ratio; // we use this to determine whether to use the large-sweep-flag or not
var radians = ( Math.PI * 2 * ratio ) - Math.PI / 2; // this is actually the angle of the terminal point on the circle's circumference -- up is Math.PI / 2, so we need to subtract that out.
var pathparts =
[
"M" + x + "," + y,
"v" + ( 0 - r ),
"A" + r + "," + r + " " + degrees + " " + ( degrees >= 180 ? "1" : "0" ) + " 1 " + ( x + ( r * Math.cos( radians ) ) ) + "," + ( y + ( r * Math.sin( radians ) ) ),
"z"
];
return canvas.path( pathparts );
}
var partial_circle = arcpath( canvas, 250, 350, 100, 0.75 ).attr( { fill: mapit_red, stroke: mapit_black } );
arcpath函数中的几何结构相当简单(尽管我必须查找large-sweep-flag的参考,这显然是不明显的).我确信这可以大大优化,但它是功能性的第一步.
内容总结
以上是互联网集市为您收集整理的javascript – 使用Raphael JS,部分填充圆圈全部内容,希望文章能够帮你解决javascript – 使用Raphael JS,部分填充圆圈所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。