let bg = this.createBitmapByName("123_png");
    this.addChild(bg)
    bg.x = this.stage.width / 2
    bg.y = this.stage.height / 2
    bg.anchorOffsetX = bg.width / 2
    bg.anchorOffsetY = bg.height / 2
    let infoList = [5, 2, 7, 9, 4, 1]
    let list = this.getPolyPoint(infoList, bg)

    var shp: egret.Shape = new egret.Shape();
    shp.graphics.lineStyle(2, 0x00ff00);
    shp.graphics.beginFill(0xff0000, 1)

    for (let i in list) {
        if (Number(i) == 0)
            shp.graphics.moveTo(list[i].x, list[i].y);
        else
            shp.graphics.lineTo(list[i].x, list[i].y);
    }

    shp.graphics.endFill();
    this.addChild(shp)

    for (let i in list) {
        var circle:egret.Shape = new egret.Shape();
        circle.graphics.beginFill( 0x00ff00, 1);
        circle.graphics.drawCircle( list[i].x, list[i].y, 5);
        circle.graphics.endFill();
        this.addChild(circle);
    }

public getPolyPoint(infoList, item){
        let list = []

        let x = this.stage.width / 2
        let y = this.stage.height / 2

        for (let i = 1; i <= 7; i++) {
            let info = infoList[i - 1]
            if (info == undefined)
                info = infoList[0]

            let point = new egret.Point
            let w = item.width / 2 * (info * 0.1)
            let h = item.height / 2 * (info * 0.1)
            let w1 = w / 2

            switch (i) {
                case 2:
                    point.x = x + w1
                    point.y = y - h
                    break
                case 3:
                    point.x = x + w
                    point.y = y
                    break
                case 4:
                    point.x = x + w1
                    point.y = y + h
                    break
                case 5:
                    point.x = x - w1
                    point.y = y + h
                    break
                case 6:
                    point.x = x - w
                    point.y = y
                    break
                default:
                    point.x = x - w1
                    point.y = y - h
                    break
            }

            list.push(point)
        }

        return list
    }

ts 绘制多边形的更多相关文章

  1. 用线框模式绘制多边形 glPolygonMode

    glPolygonMode(GL_FRONT_AND_BACK, GL_LINE); glBegin(GL_TRIANGLES);//开始以g_ViewMode模式绘制 glColor3ub(182. ...

  2. [WebGL入门]十四,绘制多边形

    注意:文章翻译http://wgld.org/.原作者杉本雅広(doxas),文章中假设有我的额外说明,我会加上[lufy:].另外,鄙人webgl研究还不够深入.一些专业词语,假设翻译有误,欢迎大家 ...

  3. canvas绘制多边形

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. leaflet简单例子,绘制多边形

    var crs = L.CRS.EPSG900913; var map = L.map('map', { crs: crs, width: '100%', height: '100%', maxZoo ...

  5. 【Silverlight】Bing Maps学习系列(五):绘制多边形(Polygon)图形(转)

    [Silverlight]Bing Maps学习系列(五):绘制多边形(Polygon)图形 Bing Maps Silverlight Control支持用户自定义绘制多边形(Polygon)图形, ...

  6. 浅谈使用canvas绘制多边形

    本文主要使用坐标轴的使用来绘制多边形,点位则都是在y轴上寻找,这种方法能够更好的理解图形与修改. //id为html里canvas标签的属性id: //x,y为坐标轴的起始位置,因为canvas默认坐 ...

  7. JS实现鼠标点击爱心&绘制多边形&每日一言功能

    本篇文章主要介绍我的个人博客 程序猿刘川枫 中页面使用的美化功能(基于JS实现): 1.鼠标点击出现不同颜色爱心特效 2.页面浮动多边形跟随鼠标移动 3.每日一言功能 1.鼠标点击出现爱心特效 经常在 ...

  8. [javascript svg fill stroke stroke-width points polygon属性讲解] svg fill stroke stroke-width points polygon绘制多边形属性并且演示polyline和polygon区别讲解

    <!DOCTYPE html> <html lang='zh-cn'> <head> <title>Insert you title</title ...

  9. Unity 绘制多边形

    最近工程需要用到一个多边形用来查看角色属性,于是就研究了下Mesh用网格做了一个.遗憾的的 UGUI 渲染不了 3D 物体,然后又用了一段时间研究了下UGUI的网格绘制. 不过终于还是完成了,虽然有些 ...

随机推荐

  1. Java fluent风格

    写个简单的例子,相信看了下面的例子,就会了解什么是fluent风格. 一.我们先写一个通常的,即不使用fluent风格 1.实体类 package com.xbq.demo.stu; /** * @C ...

  2. C++的virtual详解

    类的多态特性是支持面向对象的语言最主要的特性,有过非面向对象语言开发经历的人,通常对这一章节的内容会觉得不习惯,因为很多人错误的认为,支持类的封装的语言就是支持面向对象的,其实不然,Visual BA ...

  3. Java——我的概念

    1.多态:(1)父类变量引用子类对象;(2)该引用只能调用父类中定义的方法和变量;(3)如果子类中重写了父类中的一个方法,那么在调用这个方法的时候,将会调用子类中的这个方法;(动态连接.动态调用)

  4. JS-cookie封装

    智能社学习笔记 <script type="text/javascript"> /*****设置cookie*****/ function setCookie(name ...

  5. js判断手机型号

    由于oppo手机自带浏览器的高度底部多了144px导航栏 所以:专门针对oppo手机做适配: var dowphone = document.getElementById("dowphone ...

  6. 在linux下安装wordpress

    win下的简直傻瓜式操作:xampp打包一键安装 linux下的考虑到一些权限问题 还是有点蛋疼的 现在把流程贴出来做下记录: linux下安装xampp和wordpress的流程 ×由于linux下 ...

  7. centos7关闭自动锁屏

    centos 7默认几分钟不动就锁屏,实在很讨厌,所以在设置中将其去掉 1.不同的版本应该设置的地方稍有变化,我不敢保证我的这个方法你一定可以用,所以用之前希望你了解你的系统的版本. 2.左上角点击应 ...

  8. Unity3D笔记十二 游戏元素二之摄像机

    一.摄像机 摄像头用以捕捉和显示的世界给玩家.通过自定义和操纵相机,你可以让你的游戏的呈现真正独一无二的.您可以在一个场景无限数量的摄像机.它们可以设置在任何顺序呈现在屏幕上的任何地方,或者屏幕的某些 ...

  9. C语言实现日历输出

    这个还是挺实用的.... 头文件: #ifndef MAIN_H #define MAIN_H #include "stdio.h" #include "math.h&q ...

  10. Linux常用命令大全(转载)

    最近都在和Linux打交道,这方面基础比较薄弱的我只好买了本鸟哥的书看看,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因, ...