精华内容
下载资源
问答
  • 计基于opengl计算机图形学基本三角形,四边形,扇形画法代码
  • 2016冀教版数学六年级上册第1单元《圆和扇形》(圆的画法)教学课件
  • 最近在帮一个朋友在GoogleMap上画扇形,GoogleMap本身不提供这种画法,所以需要自己去实现,无赖原来学过的...但里面没有扇形的画法,在此基础上自己增加了扇形的画法: GPolyline扩展方法: GPolyline.Sector = fun

    最近在帮一个朋友在GoogleMap上画扇形,GoogleMap本身不提供这种画法,所以需要自己去实现,无赖原来学过的数学也忘记的差不多了,只能求助网络。

    国外有一个高手写了一个扩展,地址是:http://econym.org.uk/gmap/eshapes.htm

    但里面没有扇形的画法,在此基础上自己增加了扇形的画法:

    GoogleMap中扩展图形的画法

    GPolyline扩展方法:

    GPolyline.Sector = function(point, radius, sDegree, eDegree, colour, weight, opacity,opts) {
        var points = [];
        var step = ((eDegree - sDegree) / 10) || 10;
           
        points.push(point);
        for(var i=sDegree;i
            points.push(EOffsetBearing(point,radius,i));                                 
        }
        points.push(point);
           
        return new GPolyline(points, colour, weight, opacity, opts);
    }

    GPolygon扩展方法:

    GPolygon.Sector = function(point, radius, sDegree, eDegree, strokeColour, strokeWeight,Strokepacity, fillColour, fillOpacity, opts) {
            var points = [];
            var step = ((eDegree - sDegree) / 10) || 10;
           
            points.push(point);
            for(var i=sDegree;i
                points.push(EOffsetBearing(point,radius,i));                                 
            }
            points.push(point);
           
            return new GPolygon(points, strokeColour, strokeWeight,Strokepacity, fillColour, fillOpacity, opts);
        }

    拓展圆角矩形的方法:

     map.addOverlay(GPolyline.Sector(new GLatLng(37.014250000000004,104.24046899999999),30000,-90,0,"#000000",3,1,"#00ff00",0.5));
       map.addOverlay(GPolyline.Sector(new GLatLng(37.014250000000004,105.17796899999999),30000,0,90,"#000000",3,1,"#00ff00",0.5));
       map.addOverlay(GPolyline.Sector(new GLatLng(36.275969,105.17796899999999),30000,90,180,"#000000",3,1,"#00ff00",0.5));
       map.addOverlay(GPolyline.Sector(new GLatLng(36.275969,104.24046899999999),30000,180,270,"#000000",3,1,"#00ff00",0.5));

    效果如下:

    GoogleMap中扩展图形的画法

    展开全文
  • 搜来搜去那个网上最多各种计算角度什么的扇形画法(众多点连成多边形,but 半径小了或者角度小了,仍然是多边形啊?难道大多数人都这么将就么?) 使用Canvas完成 直接贴上所有代码吧: &...

    ##关于画扇形需求

    众所周知,百度地图只有Circle类覆盖物,没有Sector类覆盖物,并且!!半径较小的时候,当地图级别放大后,百度那个圆很明显就是个多边形,不圆啊!。。
    搜来搜去那个网上最多的各种计算角度什么的扇形画法(众多点连成多边形,but 半径小了或者角度小了,仍然是多边形啊?难道大多数人都这么将就的么?)


    ###使用Canvas完成
    直接贴上所有代码吧:

    <!DOCTYPE html>
    <html>
    
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
        <style type="text/css">
            body,
            html,
            #allmap {
                width: 100%;
                height: 100%;
                overflow: hidden;
            }
        </style>
        <script type="text/JavaScript" src="http://api.map.baidu.com/api?v=3.0&ak=你的key哦"></script>
        <title>添加扇形</title>
    </head>
    
    <body>
        <div id="allmap"></div>
    </body>
    
    </html>
    <script type="text/javascript">
        var map = new BMap.Map("allmap");
        var pointCenter = new BMap.Point(120.1965, 30.22975);
        map.centerAndZoom(pointCenter, 19);
        map.enableScrollWheelZoom(true);
    
        // 自定义扇形覆盖物
        function SectorLayer(center, radius, startAngle, endAngle, color, opacity) {
            this._center = center;// 点
            this._radius = radius;// 半径
            this._color = color;  // 颜色
            this._startAngle = startAngle;// 起始角度
            this._endAngle = endAngle;    // 结束角度
            this._opacity = opacity;	  // 透明度
        }
    
        // 继承百度地图覆盖物
        SectorLayer.prototype = new BMap.Overlay();
    
        // 初始化
        SectorLayer.prototype.initialize = function (map) {
            this._map = map;
    
            var canvas = document.createElement("canvas"); // 创建Cavans对象
            canvas.setAttribute("width",String(this._radius*2));// 不能用canvas.style.width,会拉变形
            canvas.setAttribute("height",String(this._radius*2));
            canvas.style.zIndex = BMap.Overlay.getZIndex(this._center.lat);
            canvas.style.position = "absolute";
            canvas.style.background = "translate";
            canvas.style.opacity = this._opacity;
    
    		var ctx = canvas.getContext('2d');
            ctx.lineWidth = 1;
            ctx.fillStyle = this._color; //填充色彩
            ctx.strokeStyle = "red";//设置边颜色
            ctx.beginPath();
            ctx.translate(this._radius, this._radius);
            ctx.moveTo(0, 0);
            ctx.arc(0, 0, this._radius, this._startAngle / 180 * Math.PI, this._endAngle / 180 * Math.PI);
            ctx.fill();
            ctx.closePath();
    		
            map.getPanes().markerPane.appendChild(canvas);
            this._canvas = canvas;
            return canvas;
        }
    
        SectorLayer.prototype.draw = function () {
            var map = this._map;
            var pixel = map.pointToOverlayPixel(this._center);
            this._canvas.style.left = pixel.x - this._radius + "px";
            this._canvas.style.top = pixel.y - this._radius + "px";
        }
    
    	// 随便画了7*(360/30)个扇形,地图放到最大级别,不同半径、不同角度下的效果
        var colorsArray = ["red", "#8B008B", "green", " #FFFAAA", "FF66DD", "#CCDD33", "#FFAAAA", "orange", "#FF3300", "blue","#AAA321", "#63B8FF", "#8B6508"];
        var step = 30;//每个扇形30度
        for(var startAngle = 0; startAngle <= 360; startAngle +=step)
        {
            var chooseColor = Math.ceil(Math.random() * 10) % (colorsArray.length - 1);
            var sector = new SectorLayer(pointCenter, 250, startAngle, startAngle + step, colorsArray[chooseColor], 0.1);
            map.addOverlay(sector);
            var sector = new SectorLayer(pointCenter, 200, startAngle, startAngle + step, colorsArray[chooseColor], 0.2);
            map.addOverlay(sector);
            var sector = new SectorLayer(pointCenter, 160, startAngle, startAngle + step, colorsArray[chooseColor], 0.3);
            map.addOverlay(sector);
            var sector = new SectorLayer(pointCenter, 80, startAngle, startAngle + step, colorsArray[chooseColor], 0.7);
            map.addOverlay(sector);
            var sector = new SectorLayer(pointCenter, 40, startAngle, startAngle + step, colorsArray[chooseColor], 0.9);
            map.addOverlay(sector);
            var sector = new SectorLayer(pointCenter, 20, startAngle, startAngle + step, colorsArray[chooseColor], 1);
            map.addOverlay(sector);
            var sector = new SectorLayer(pointCenter, 10, startAngle, startAngle + step, colorsArray[chooseColor], 1);
            map.addOverlay(sector);
        }
    </script>
    

    效果图:
    这里写图片描述
    是各位想要的效果么?


    展开全文
  • Quartz2D-图形的画法

    2019-09-13 18:53:10
    1获取上下文,2设置线得宽度,3给出圆的中点,半径,起始角度,和最终角度,顺逆时针方向,4在给出中点,5闭合(6可以设置颜色填充,根据需要),以上步骤可以完成扇形的图形; 曲线 1获取上下文,2设置线得宽度...

    扇形

    1获取上下文,2设置线得宽度,3给出圆的中点,半径,起始角度,和最终角度,顺逆时针方向,4在给出中点,5闭合(6可以设置颜色填充,根据需要),以上步骤可以完成扇形的图形;

     

    曲线

    1获取上下文,2设置线得宽度,3给出起始点,4给出结束点(获取上下文,第一个位置的弯曲点, 第一个位置的弯曲度, 第二个位置的弯曲点, 第二个位置的弯曲度,, 终点的x坐标, 终点的y坐标)5渲染;

    渐变

    -(void)drawcolor

    {  //获取上下文

        CGContextRef a = UIGraphicsGetCurrentContext();

        //给出颜色和空间

        CGColorSpaceRef rgb= CGColorSpaceCreateDeviceRGB();

        CGFloat colors[]={

            204.0 / 255.0, 254.0 / 255.0, 274.0 / 295.0, 1.00,

            29.0 / 255.0, 156.0 / 255.0, 215.0 / 255.0, 1.00,

            0.0 / 255.0,  50.0 / 255.0, 126.0 / 255.0, 1.00,

        };

           //创建彩色花园

        CGGradientRef gradient = CGGradientCreateWithColorComponents

        (rgb, colors, NULL, sizeof(colors)/(sizeof(colors[0])*4));

        

        //色彩空间释放

        CGColorSpaceRelease(rgb);

        //绘制线性梯度

        CGContextDrawLinearGradient(a, gradient,CGPointMake(0.0,0.0) ,CGPointMake(0.0,self.frame.size.height),kCGGradientDrawsBeforeStartLocation);

     

    }

    通过控件slider画圆

    关键点,将控件与圆弧度的进度联系起来,利用值将其连接,首先设置slider的最大最小值,将其与云的弧度建立联系,可以利用NSuerdefaults,

    // 使用NSUserDefaults 去存值,取值

    {   NSUserDefaults *user = [NSUserDefaults standardUserDefaults];

        //由于需要slider控件去控制,所以M_PI*[str doubleValue]值需要根据控件的滑动而变化;

        NSString *str = [user valueForKey:@"value"];

        CGContextRef context = UIGraphicsGetCurrentContext();

        CGContextAddArc(context, 180, 200, 90, 0, M_PI*[str doubleValue],0);

        CGContextSetLineWidth(context, 4);

        [[UIColor yellowColor] set];

        CGContextStrokePath(context);

    }

    以上是一部分代码如有需要了解的可私聊,留言即可;

    转载于:https://my.oschina.net/u/2893293/blog/737985

    展开全文
  • 色彩静物的画法技巧!很多初学者在刚开始接触色彩静物的时候显得无从下手,这是因为色彩与素描相比,有明显的区别之处。首先是工具上的区别,素描用的铅笔,笔尖坚硬细致,所以精准度高。而色彩用的是水粉笔或者扇形...

    本文由“学美术上美术集网校”原创,图片素材来自网络,仅供学习分享

    怎么画色彩静物?色彩静物的画法技巧!很多初学者在刚开始接触色彩静物的时候显得无从下手,这是因为色彩与素描相比,有明显的区别之处。首先是工具上的区别,素描用的铅笔,笔尖坚硬细致,所以精准度高。而色彩用的是水粉笔或者扇形比,笔尖是柔软且宽的,精准度都很低,掌握起来笔尖困难。在使用上也有很大的区别,铅笔画的是线,而水粉笔画的是面(笔触)。从色彩上来看,铅笔画的是单色,只需要注意形体、比例、明暗虚实即可。色彩除了要注意这些东西,还需要注意色调、色相、明度等关系,甚至每画一笔都需要在调色板上调出合适的颜色才行。

    画色彩真的讲究色彩感觉吗

    很多人都说女生在画色彩的时候占有优势,因为女生的色感天生比男生强,其实这是错误的。我们仔细想想古往今来的色彩大师,比如莫奈、梵高、高更……很多很多大师都是男性,所以这个观点是不成立的。如果你认为自己色彩感觉不好,那其实还是基本功和理解不到位所致。这时应该多学习色彩的基本知识,多看一些优秀的范画,从中找出规律,很快就可以提升色彩感觉。

    画色彩如何去观察

    初学者在学习色彩的过程中,经常会遇到画面脏、乱、画、灰等问题,这归根结底是观察不到位的所致。在观察范画或者静物时,一定要整体的去观察,不要盯着局部去画。对于初学者有个小技巧,就是画一会儿就走远了看看画面,然后进行调控。

    画色彩如何把握构图

    一幅优秀的作品最基本的前提就是构图,我们常见的构图有三角形、S形、梯形等构图。在做好构图的同时,还要考虑画面的前后关系、主次关系、虚实关系还有空间感。

    画色彩如何正确使用白色、黑色

    许多初学者在刚接触色彩的时候,对调色不是很熟悉,经常在画浅色的时候去加白色、而画重色的时候去加黑色,这样会导致画出来的色彩有素描的感觉,我们来谈谈如何解决这个问题。首先白色是画色彩必不可少的颜色,但是一幅画中白色用的过于多了会导致画面太“粉”,调色的时候加入白色是为了提高明度,这个用量一定要把握住。而黑色使用的多了会导致画面沉闷、焦,所以黑色一定要尽量少用,如果非要用可以试试其他重色来替代。

    画色彩如何衔接与覆盖

    介于水粉颜料本身的特性,我们在画色彩的过程中一定要注意控制干湿程度。颜色的覆盖也是有规律的,根据颜料的厚薄程度,用厚盖薄。不同颜色的覆盖力也是不同的,比如白色的覆盖力是很强的,而黄色的覆盖力就较弱。如果遇到覆盖力较弱的颜色要覆盖重色的时候,可以先在重色上覆盖一点白色,再去覆盖别的颜色。

    画色彩有哪些简单的技法

    对于初学者而言,最基本的技法有干画法和干湿结合画法,也有刮刀画法或者厚堆的画法。对于干画法和干湿结合画法,基本上就是调色时颜料中水分的掌握。而刮刀画法和厚堆画法是调色时基本不加水,直接用颜料去画的。

    优秀的色彩作品需要注意哪些方面

    首先是最基本的构图准确,构图不可以偏左或者偏右,不可以太大也不可以太小。然后是黑白灰层次要分明,前后虚实关系要拉开,不要画的面面俱到。造型要准确,把握好笔触,用色彩去塑造形体。最后就是要突出刻画主体物和靠前的静物,加深大关系。

    展开全文
  • 本次介绍主要有画弦、矩形、圆、椭圆、QPainterPath一次性画多个、画贝塞尔曲线、画扇形、画弧、裁剪、掩码等。 一、画弦 Widget::Widget(QWidget *parent) : QWidget(parent) { setAutoFillB...
  • 扇形图-可视化数据

    千次阅读 2017-04-01 17:23:35
    根据传入的四种数据量大小自动显示扇形的弧度大小以及弧度半径大小 根据弧度所在的角度自动画出横线和斜线位置并显示状态 效果图实现原理 将圆弧和线拆分来看,先画圆弧,再画线 弧度的画法,利用sdk的new Recf...
  • [C#]关于各种线框基础画法总结

    千次阅读 2012-04-28 21:48:40
    实现功能:绘制直线、sin、cos、刷新panel、改变坐标系,还附加了其他(矩形、多边形、椭圆、扇形、曲线、贝塞尔曲线)基本用法 局限:只能先在代码里面定义好图形,然后一次性画到panel上面。 思考: 1.假如...
  • 前言 因为需求所致,需要采用进度条,开始采用是普通横线进度条,感觉效果也不错,后面改成了水波...废话不多说了,看下面代码,,列出三种不同进度条画法和对应效果图!!! 下面效果图时间测试都是80...
  • mapxtreme相关

    2014-09-29 17:11:26
    http://blog.csdn.net/cmd9x/article/details/8672262中 关于扇形的画法 如果后增加临时图层是可以的 in
  • 之前我们介绍过用FGMap在地图上显示标注,其实都只是用了Marker这个对象,今天让我们来看看线和面的画法,其中包括:圆形、长方形、星形、椭圆形、扇形等等。完成这个些功能后,基本的点、线、面对象我们都可以支持...
  • 在安卓程序开发过程当中,经常会遇到对于数据的统计问题,针对于这些数据统一,可能要求用直观的方式展示...而饼状图最简单的画法,就通过占据的百分比,然后计算角度,绘制出扇形的过程。在本篇博客中,我们重点给大家
  • 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家...用python实现的画法是: 以斐波那契数为半径画一个90度的扇形,连起来的弧线就是斐波那契螺旋线。 自然界中存在: 艺术作品中也常常出现: ...
  • 画图代码资源

    2013-08-28 13:44:19
    圆饼图的画法,从扇形到动态圆饼图,可以帮助你
  • 真是无聊得要死,在前面C#画3D饼图(二)文章中说到了3D饼图的画法,今天将其变型----把用户认为是重要的部分从原图中提取出来,方法简单,当在画各个部分的扇形图时,遇到用户需要的部分,将起画图坐标做相应的移动...
  • html5-canvas2-圆、矩形

    2014-01-14 15:08:28
    今天简单给大家分享一下canvas画矩形和圆,以及圆中的弧和扇形。(注释:为了不浪费大家的时间特此注明,本人分享的...(这节需要注意的图片上已经给了很好的注释,所以下面就不罗嗦了,另外圆的画法用法主要看图片最下
  • 房产笔记

    2019-03-10 17:44:18
    户型图上窗户的画法就是3条杠,小点的是普通窗,宽又长的杠就是落地窗。(注意过大的玻璃窗可能会出现白天超亮、晚上超阴、夏天超热、冬天又超冷的情况。但是客厅有超大落地窗采光通风较好,使用率更高。) 扇形开...
  • 蓝桥-ALGO-9-摆动序列

    2017-06-01 21:23:36
    首先我们通过画图可以发现,所有可行解的二维图像都类似于声呐波扩散的图,是一个扇形,这个不难发现,在选定的任意子集中,能够满足这样的要求的画法只有两种,所以我们只需要把所有满足题意的子集求出来乘以二就好...
  • 直线,矩形,圆,椭圆,扇形,弧形,三角形,正弦,余弦以及path轨迹。 ???????????? Path路径画法基本用法:Path常用方法: moveTo():由于path开始默认位置为(0,0),所以需要将起始位置移动到...
  • Quartz2D基本图形绘制

    2016-06-28 09:13:55
    Quartz2D1.基本图形绘制有三大类 线 长方形 圆与扇形 ...//线基本画法步骤 -(void) setBaseLine{ //1.获取视图上下文 CGContextRef contextRef=UIGraphicsGetCurrentContext(); //2.拼接路径 //2.1设置
  • GSP5.exe

    2020-04-01 09:16:40
    扇形和弓形的画法类似: 用上述方法作圆弧,选择该弧,用“作图”菜单中的“扇形内部”(或“弓形内部”)命令作出扇形或弓形(阴影部分)。 度量及计算 [度量] 选中三角形内部后,在“度量”菜单中“面积”和“周长...

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

扇形的画法