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. ZooKeeper(八)-- Curator实现分布式锁

    1.pom.xml <dependencies> <dependency> <groupId>junit</groupId> <artifactI ...

  2. com.thoughtworks.xstream.converters.ConversionException

    使用webService调用接口,返回的是xml格式,运用xstream解析的时候,出现了如下的错误: Exception in thread "Timer-1" com.thou ...

  3. MySQL性能优化(三)-- 索引

    一.什么是索引及索引的特点 索引是一种数据结构 索引的特点:查找速度快,排好序,数据结构 索引的数据结构类型有:BTREE索引和HASH索引,下面展示的是BTREE索引. BTREE:balance ...

  4. docker rmi 详解

    docker rmi 用于删除指定的镜像,常见用法如下: [root@localhost ~]$ docker rmi centos # 根据 REPOSITORY 来删除镜像 [root@local ...

  5. linux系统socket通信编程详解函数

    linux socket编程之TCP与UDP   TCP与UDP区别 TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之 ...

  6. Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器[摘抄]

    [文章作者:张宴 本文版本:v6.3 最后修改:2010.07.26 转载请注明原文链接:http://blog.s135.com/nginx_php_v6/] 前言:本文是我撰写的关于搭建“Ngin ...

  7. LeetCode——Binary Tree Paths

    Description: Given a binary tree, return all root-to-leaf paths. For example, given the following bi ...

  8. ios 给键盘上面加上“完成”

    #import <UIKit/UIKit.h> @interface FirstViewController : UIViewController<UITextFieldDelega ...

  9. java中的socket编程

    Socket,又称为套接字,Socket是计算机网络通信的基本的技术之一.如今大多数基于网络的软件,如浏览器,即时通讯工具甚至是P2P下载都是基于Socket实现的.本文会介绍一下基于TCP/IP的S ...

  10. 从零打造在线网盘系统之Struts2框架配置全解析

    欢迎浏览Java工程师SSH教程从零打造在线网盘系统系列教程,本系列教程将会使用SSH(Struts2+Spring+Hibernate)打造一个在线网盘系统,本系列教程是从零开始,所以会详细以及着重 ...