flex 生成多边形时内、外环计算
//顺时钟
var pA:Array = [{x:"2969925.6674000006",y:"476254.4874999998"},{x:"2969991.6831",y:"476503.1002000002"},{x:"2969581.7171",y:"476502.3365000002"},
{x:"2969582.1823999994",y:"476253.8409000002"},{x:"2969925.6674000006",y:"476254.4874999998"}];
//大于0法向量向外(逆时针 、外环) 小于0 (顺时钟、内环)
var total:Number = 0;
for(var i:int = 0; i < pA.length - 1; i++){
total += (Number(pA[i+1].x) - Number(pA[i].x))*(Number(pA[i+1].y) + Number(pA[i].y)) * 0.5;
}
二、通过点生成多边形代码(可以显示环状图斑)
var str1:String = "1,2963645.3619999997,475138.83210000023,7,2975656.2609,475162.4922000002,8,2975642.649,483438.3672000002,9,2966401.804199999,483426.2240000004,18,2971952.3038999997,476814.8313999995,23,2963642.2057000007,476799.56379999965";
var str2:String = "1,2969925.6674000006,476254.4874999998,2,2969582.1823999994,476253.8409000002,3,2969581.7171,476502.3365000002,4,2969991.6831,476503.1002000002";
var str2Arr:Array = str2.split(",");
var str1Arr:Array = str1.split(",");
var points1:Array = new Array();
var points2:Array = new Array();
for(var i:int =0;i<str2Arr.length;i+=3){
var mapPoint:MapPoint = new MapPoint(str2Arr[i+2],str2Arr[i+1]);
points2.push(mapPoint);
}
for(var j:int = 0;j<str1Arr.length;j+=3){
var mapPoint:MapPoint = new MapPoint(str1Arr[j+2],str1Arr[j+1]);
points1.push(mapPoint);
}
var rings:Array = new Array();
rings.push(points1);
rings.push(points2);
var tempPoly:Polygon = new Polygon(rings);
var graphicPoly:Graphic = new Graphic(tempPoly);
flex 生成多边形时内、外环计算的更多相关文章
- flex安装时停在计算时间界面的解决办法
现象:安装FLEX BUILDER4.6时停在计算时间界面,过了一会后弹出安装失败的对话框. 环境:WIN7 解决: 1.下载AdobeCreativeCloudCleanerTool, 地址:htt ...
- EF Power Tools的Reverse Engineer Code First逆向生成Model时处理计算字段
VS2013上使用EF Power Tools的Reverse Engineer Code First逆向生成Model时,没有处理计算字段.在保存实体时会出现错误. 可以通过修改Mapping.tt ...
- 在js内生成PDF文件并下载的功能实现(不调用后端),以及生成pdf时换行的格式不被渲染,word-break:break-all
在js内生成PDF文件并下载的功能实现(不调用后端),以及生成pdf时换行的格式不被渲染,word-break:break-all 前天来了个新需求, 有一个授权书的文件要点击下载, 需要在前端生成, ...
- ArcEngine中多边形内外环的处理(转)
ArcEngine中多边形内外环的处理 原创 2012年09月06日 22:49:11 标签: object / null / 数据库 3462 Polylgon对象是由一个或多个Ring对象的有序集 ...
- poj 1265 Area【计算几何:叉积计算多边形面积+pick定理计算多边形内点数+计算多边形边上点数】
题目:http://poj.org/problem?id=1265 Sample Input 2 4 1 0 0 1 -1 0 0 -1 7 5 0 1 3 -2 2 -1 0 0 -3 -3 1 0 ...
- JS生成指定范围内的随机数(支持随机小数)
直接需要函数的话,直接到文章的最后面找. ============================================================= 转载:https://www.cn ...
- 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内。以及两点间的测距功能
权声明:本文为博主原创文章,未经博主允许不得转载. 利用百度API(JavaScript 版)实现在地图上绘制任一多边形,并判断给定经纬度是否在多边形范围内.以及两点间的测距功能. 绘制多边形(蓝色) ...
- 百度地图java 判断当前位置是否在多边形区域内
package com.haiyisoft.cAssistant.adapter.hessian; import java.awt.geom.Point2D;import java.util.Arra ...
- ZedGraph怎样在生成曲线时随机生成不一样的颜色
场景 在使用ZedGraph生成多条曲线时为了能区分曲线颜色,要求随机设置曲线颜色. 首先从System.Drawing.Color中获取所有颜色的对象的数组,然后将其顺序打乱随机排序,然后在生成曲线 ...
随机推荐
- C语言之free函数及野指针
[FROM MSDN && 百科] 原型: void free(void *ptr); #include<stdlib.h>或#include <malloc.h& ...
- Touch Handling in Cocos2D 3.x(二)
接受触摸 在Cocos2d 3.0中每一个CCNode和每一个CCNode的子类都可以接收触摸.你只需要开启一个选项.让我们在定制的初始化器里完成它.替换MainScene.m中init方法的代码: ...
- Linux进程实践(5) --守护进程
概述 守护进程是在需要在后台长期运行不受终端控制的进程,通常情况下守护进程在系统启动时自动运行,在服务器关闭的时候自动关闭:守护进程的名称通常以d结尾,比如sshd.xinetd.crond.atd等 ...
- (三十三)Xcode项目的重要工程文件
1.Supporting files内有一个Xxx-Info.plist文件(旧版本Xcode的配置文件叫Info.plist).因此自定义的plist不要带Info关键词. 这个plist是系统的全 ...
- (十一)延时执行、圆角(可实现圆形label)、代理设计模式
延时执行: 使用控件的performSelector...方法,例如用于移除,可以写在一行. [lab performSelector:@selector(removeFromSuperview) w ...
- How To Get Log, Trace Files In OA Framework Pages And Concurrent Request Programs
Goal Solution References APPLIES TO: Oracle Supplier Lifecycle Management - Version 12.1.2 and l ...
- 排序算法(二)Sort with Swap(0,*)
对于一个由0到N-1的序列,如果只能交换0和另一个数的位置,求多少次能够将序列变为递增序列. 输入为<N> <序列>(N和序列之间有一个空格,序列元素之间均有一个空格). 设序 ...
- Otto事件总线框架的使用
Otto是一个在Android中的事件总线框架,它是square的一个开源框架,具体介绍点击这里,项目下载点击这里 为什么要使用Otto事件总线: 通常来说在Android中: 1.Activity与 ...
- Linux常用命令(第二版) --帮助命令
帮助命令 1.man[manual]: /usr/bin/man 获得命令或配置文件的帮助文档,优先查看命令的帮助 格式:man [命令或配置文件] #会同时调用more E.g. man ls # ...
- java集合类中的迭代器模式
不说模式的问题,看一个<<设计模式之禅>>里面的例子. 老板要看到公司了各个项目的情况.(我知道我这个概述很让人头大,看代码吧) 示例程序 v1 package Iterato ...