Flex Graphics

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/halo"minWidth="1024" minHeight="768" xmlns:mx1="library://ns.adobe.com/flex/mx"><fx:Script><![CDATA[import flash.geom.Matrix;/*画图形之前必要调用的函数(其中之一即可):linestyle()、beginFill()、lineGradientStyle()、beginGradientFill()、beginBitmapFill()方法来设置线条样式和/或填充。 *///画矩形private function rect(rectX:Number, rectY:Number, rectWidth:Number, rectHeight:Number):void{rectBoxID.graphics.clear();if(radioLineID.selected){    //线性rectBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}else if(radioGradientID.selected){    //渐变var matr:Matrix = new Matrix();matr.createGradientBox(20, 20, 0, 0, 0);//the last parameter can selete three type: SpreadMethod.PAD or SpreadMethod.REFLECT or SpreadMethod.REPEAT.rectBoxID.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x00FF00], [1, 1], [0x00, 0xFF], matr, SpreadMethod.REPEAT);}else if(radioFullID.selected){    //填充rectBoxID.graphics.beginFill(0xFF0000, 1.0);}rectBoxID.graphics.drawRect(rectX, rectY, rectWidth, rectHeight);//    }//画圆角矩形private function circleRect(cRectX:Number, cRectY:Number, cRectWidth:Number, cRectHeight:Number, cRectDU:Number):void{cRectBoxID.graphics.clear();if(radioLineID.selected){    //线性cRectBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}else if(radioGradientID.selected){    //渐变//the last parameter can selete three type: SpreadMethod.PAD or SpreadMethod.REFLECT or SpreadMethod.REPEAT.cRectBoxID.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x0000FF], [1, 0.1], [0, 255], new Matrix(), SpreadMethod.PAD);rectBoxID.graphics.endFill();}else if(radioFullID.selected){    //填充cRectBoxID.graphics.beginFill(0xFF0000, 1.0);}cRectBoxID.graphics.drawRoundRect(cRectX, cRectY, cRectWidth, cRectHeight, cRectDU);}//画直线private function line(lineX:Number, lineY:Number):void{    //两个参数都表示从起始的位置坐标x、y相加这两个参数后值就是结束的x、y值lineBoxID.graphics.clear();if(radioLineID.selected){    //线性lineBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}else if(radioGradientID.selected){    //渐变lineBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);lineBoxID.graphics.lineGradientStyle(GradientType.LINEAR, [0xFF0000, 0x0000FF], [1, 0.5], [0, 255], new Matrix(), SpreadMethod.PAD);}else if(radioFullID.selected){    //(填充)直线不存在填充的,呵呵lineBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}lineBoxID.graphics.lineTo(lineX, lineY);}//画曲线private function cLine(endX:Number, endY:Number):void{cLineBoxID.graphics.clear();if(radioLineID.selected){    //线性cLineBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}else if(radioGradientID.selected){    //渐变var matr:Matrix = new Matrix();matr.createGradientBox(20, 20, 0, 0, 0);cLineBoxID.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x00FF00, 0xFF0000], [0.2, 1, 1], [0, 128, 255], matr, SpreadMethod.REFLECT);}else if(radioFullID.selected){    //填充cLineBoxID.graphics.beginFill(0xFF0000);}cLineBoxID.graphics.curveTo(100, 80, endX, endY);    //前两个参数表示弧度的偏移量,后两个参数表示结束点的x、y坐标}//画圆private function circle(oX:Number, oY:Number, radius:Number):void{circleBoxID.graphics.clear();if(radioLineID.selected){    //线性circleBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}else if(radioGradientID.selected){    //渐变var matr:Matrix = new Matrix();matr.createGradientBox(20, 20, 0, 0, 0);circleBoxID.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x00FF00, 0xFF0000], [0.2, 1, 1], [0, 128, 255], matr, SpreadMethod.REFLECT, "rgb", 0.7);}else if(radioFullID.selected){    //填充circleBoxID.graphics.beginFill(0xFF0000);}circleBoxID.graphics.drawCircle(oX, oY, radius);}//画椭圆private function tCircle(x:Number, y:Number, tWidth:Number, tHeight:Number):void{tCircleBoxID.graphics.clear();if(radioLineID.selected){    //线性tCircleBoxID.graphics.lineStyle(20, 0xFF0000, 1.0, false, LineScaleMode.VERTICAL, CapsStyle.NONE, JointStyle.MITER, 100);}else if(radioGradientID.selected){    //渐变var matr:Matrix = new Matrix();matr.createGradientBox(20, 20, 0, 0, 0);//the last parameter can selete three type: SpreadMethod.PAD or SpreadMethod.REFLECT or SpreadMethod.REPEAT.tCircleBoxID.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x00FF00], [1.0, 1.0], [0x00, 0xFF], matr, SpreadMethod.REPEAT);}else if(radioFullID.selected){    //填充tCircleBoxID.graphics.beginFill(0xFF0000);}tCircleBoxID.graphics.drawEllipse(x, y, tWidth, tHeight);}]]></fx:Script><!--画矩形--><mx1:Button id="rectButID" x="500" y="50" label="画矩形" click="rect(100, 20, 250, 50);"/><mx1:Box id="rectBoxID"/><!--画圆角矩形--><mx1:Button id="cRectButID" x="500" y="120" label="画圆角矩形" click="circleRect(100, 100, 300, 80, 50);"/><mx1:Box id="cRectBoxID"/><!--画直线--><mx1:Button id="lineButID" x="500" y="250" label="画直线" click="line(350, 0);"/><mx1:Box id="lineBoxID" x="50" y="250"/><!--画曲线--><mx1:Button id="cLineButID" x="500" y="350" label="画曲线" click="cLine(300, 0);"/><mx1:Box id="cLineBoxID" x="100" y="300"/><!--画圆--><mx1:Button id="circleButID" x="500" y="450" label="画圆" click="circle(250, 450, 50);"/><mx1:Box id="circleBoxID"/><!--画椭圆--><mx1:Button id="tCircleButID" x="500" y="550" label="画椭圆" click="tCircle(120, 520, 150, 50);"/><mx1:Box id="tCircleBoxID"/><mx1:RadioButton id="radioLineID" x="600" y="50" label="线性"/><mx1:RadioButton id="radioGradientID" x="750" y="50" label="渐变" selected="true"/><mx1:RadioButton id="radioFullID" x="900" y="50" label="填充"/></s:Application>

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/547346.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CentOS安装运行NodeJS框架Express

安装依赖包 yum -y install gcc make gcc-c openssl-devel wget 下载/解压NodeJs wget http://nodejs.org/dist/v0.12.7/node-v0.12.7.tar.gztar -zvxf node-v0.12.7.tar.gz 编译及安装&#xff0c;逐行执行 cd node-v0.12.7./configuremake install 验证是否安装配置成功&…

android点滴27:R文件无法加载 R cannot be resolved to a v...

2019独角兽企业重金招聘Python工程师标准>>> 导致这个问题原因可能有二个&#xff1a;1. manifest文件中的包名和真正的报名不统一 2. 在java文件中导入了R文件&#xff0c;在java文件中无需导入任何包的R文件&#xff0c;系统会自动加载gen目录下的R文件。 转载于…

MITK医学Python开发入门详细版

1.关于MITK&#xff1a; MITK的全称是”The Medical Imaging Interaction Toolkit”。它是一款开源的交互式医学图像处理软件开发和应用平台。MITK将ITK和VTK整合为一个应用框架。该软件由德国一个研究室开发。官网地址为&#xff1a;http://mitk.org/wiki/MITK 。 与MITK同名…

ubuntu配置×××后,配置走×××的路线

先执行route命令查看所有的路由route看到的结果大致如下内核 IP 路由表 目标 网关 子网掩码 标志 跃点 引用 使用 接口 default 192.168.8.1 0.0.0.0 UG 0 0 0 wlan0 110.185.76.107 192.168.8.1 25…

Python SimpleITK实现医学图像增强算法

1、对数变换 图像对数变换首先将图像从SimpleITK图像数据转成Numpy矩阵数据&#xff0c;然后采用Numpy的log1p&#xff08;&#xff09;函数来计算数据的log&#xff08;1x&#xff09;变换&#xff0c;由于1x不能小于零&#xff0c;因此这里我们使用图像减去图像的最小值来计…

中国计算机学会通讯杂志,何积丰. Cyber-physical systems [J]. 中国计算机学会通讯, 2010, 6(1): 25-29....

摘要:本文提出了将计算机和互联网技术引入传统的基于模拟电路和微控制器的电池管理系统的想法&#xff0c;以此为电池系统带来更高的安全性和更长的寿命&#xff0c;降低电池端硬件的复杂度和成本。本文讨论了电池管理系统的详细设计和实现过程。系统通过MATLAB仿真工具Simulin…

使用Nginx配置NodeJs程序(Windows平台)

简介 Nginx("engine x") 是一个高性能的 HTTP 和 反向代理 服务器&#xff0c;也是一个 IMAP/POP3/SMTP 服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的&#xff0c;第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证…

Hadoop Mapreduce分区、分组、二次排序过程详解[转]

徐海蛟 教学用途1、MapReduce中数据流动&#xff08;1&#xff09;最简单的过程&#xff1a; map - reduce&#xff08;2&#xff09;定制了partitioner以将map的结果送往指定reducer的过程&#xff1a; map - partition - reduce&#xff08;3&#xff09;增加了在本地先进性…

服务器系统上1068错误,错误1068,详细教您启动网络服务错误1068怎么解决

在电脑中&#xff0c;通常开机后就会自动连接网络宽带&#xff0c;不过有用户遇到问题。开机后网络图标显示红叉或者图标正常无法上网&#xff0c;打开网络和共享中心才发现是服务或者组无法启动&#xff0c;启动时显示错误1068&#xff0c;这该怎么办&#xff1f;下面&#xf…

NodeJs连接Oracle数据库

nodejs连接oracle数据库&#xff0c;各个平台的官方详情文档&#xff1a;https://github.com/oracle/node-oracledb/blob/master/INSTALL.md 我的nodejs连接Oracle的配置&#xff0c;运行环境: windows7 x64 nodejs 0.12.7 Python 2.7.10 npm 2.11.3 运行原理分析 npm调…

重置Oracle密码

在系统运行中输入&#xff1a; sqlplus /nolog 在命令窗口分别执行&#xff1a; conn /as sysdbaalter user scott identified by tiger;alter user scott account unlock; 这样就把“scott”用户密码修改为“tiger”了&#xff0c;用户可根据自己需求&#xff0c;重置密码。

ImportError: No module named ‘sklearn.qda‘  ImportError: No module named ‘sklearn.lda‘

ImportError: No module named sklearn.qda ImportError: No module named sklearn.lda from sklearn.qda import QDAImportError: No module named sklearn.qda’ from sklearn.qda import LDAImportError: No module named sklearn.lda’ 版本更新问题。 更改为&#…

maven实现多模块热部署

2019独角兽企业重金招聘Python工程师标准>>> 一、背景 基于maven的项目工程都会按模块划分&#xff0c;每个模块最终形成一个jar包&#xff0c;那么每次对模块的修改就需要重新打包&#xff0c;这样的工作重复而繁琐&#xff0c;以前的热部署解决方案都是只针对web…

鲲鹏服务器php性能,对鲲鹏服务器的内存进行性能优化后的前后数据对比

测试的鲲鹏服务器是96核2numa节点&#xff0c;内存测试用的是Imbench里面的stream。优化说明&#xff0c;bios和绑核优化后性能提升明显&#xff0c;编译参数优化后性能提升不明显可以根据情况是否进行编译优化1、Bios修改:进入bios&#xff0c;在Advanced中进入Memory Config界…

Express调用mssql驱动公共类dbHelper

直接上代码&#xff1a; /** * Created by chaozhou on 2015/9/18. */var mssql require(mssql);var user "sa", password "sa", server "192.168.20.132", database "ggcms";/** * 默认config对象 * type {{user: stri…

怎么修改RO服务器版本,谁知道build.prop的系统版本号怎么改

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼# begin build properties# autogenerated by buildinfo.shro.build.idJDQ39ro.build.display.idJDQ39ro.build.version.incrementalV1.11ro.build.version.sdk17ro.build.version.codenameRELro.build.version.release4.2.2ro.bui…

清理vs工程文件(python2.7)

本文记录了两种方法&#xff0c;用于对vs目录的清理工作&#xff0c;这两种方法都是用python2.7实现的&#xff0c;一个是基于文件的扩展名&#xff0c;一个是基于文件的大小&#xff1a; 基于文件大小的清理脚本&#xff1a; #-*- coding:utf-8 -*- import os import string d…

Python如何忽略warning的输出

有时候运行代码时会有很多warning输出&#xff0c;如提醒新版本之类的&#xff0c;如果不想这些乱糟糟的输出可以这样&#xff1a; import warningswarnings.filterwarnings(ignore) 命令行下则可以&#xff1a; python -W ignore file.py 这样就可以避免warnings的输出了&…

nodejs常用组件

mssql 用途&#xff1a;连接SqlServer数据库 node-excel-export 用途&#xff1a;导出excel表格 nodegrass 用途&#xff1a;模拟用户进行get/post请求&#xff0c;下载文件等 uuid 用途&#xff1a;生成全球唯一标识的. 官网&#xff1a;https://npm.taobao.org/package/…

手机投屏时电视显示服务器有问题,小屏变大屏,手机投屏这几招你学废了么?...

马上七夕了&#xff0c;又恰逢周末不想去电影院凑热闹的人可以在家看电影、追剧但是小屏看剧一点也不爽何不投放到电视上饱览大视野呢我们可以借助“投屏”功能痛痛快快在电视上观看想看的剧集和电影那么如何通过手机&#xff0c;将内容传送到智能电视上呢那么接下来为大家介绍…