- 浏览: 47339 次
最新评论
-
leefangzhao:
脚本能和静态语言去比吗?有点像拿塑料道具刀与钢刀相比啊.
编程语言比较:AS vs C++ vs Java vs Python -
send620:
可以放个例子出来参考一下啊,谢谢!!
Flex Draw API
MovieClip VS Shape VS Sprite
Graphics使用心得
graphics.clear()会把graphics.lineStyle()的设置也给清除掉。
flash.geom.Rectangle使用心得
DisplayObject的height和width包含linestyle的thickness,绘制时实际的边框宽度是thickness / 2。
实例代码如下:
输出:33, 33。
如何计算两点间的距离?
根据勾股定理:一个三角形,最长边的平方等于其他两边的平方和:
a^2+b^2=c^2
示例代码如下:
如何绘制只有上方的角是圆角的矩形?
使用:spark.primtives.Rect
通过设置下边的四个属性值,它可以将任意一角设置为圆角。
topLeftRadiusX、topRightRadiusX、bottomLeftRadiusX、bottomRightRadiusX
使用drawCircle画出来的圆不圆的问题如何解决?
调用graphics.drawCircle前,graphics.lineStyle,将第4个参数设置为true。
设置前后的对比如下:
参考链接:http://www.benclinkinbeard.com/2010/10/fixing-drawcircle-distortion-to-create-smooth-circles/
如何给线段加上阴影?
使用s:DropShadowFilter。
示例代码如下:
使用Flex的坐标
http://livedocs.adobe.com/flex/3/html/help.html?content=containers_intro_5.html
Matrix相关文章
http://www.senocular.com/flash/tutorials/transformmatrix/
Rotate相关的文章
http://www.joelconnett.com/flex-rotation-around-a-point-using-a-matrix.html
http://www.flexrain.cn/flex/as3-atan-atan2.html
Move、Resize相关文章
http://www.rogue-development.com/objectHandles.html
图像处理相关文章
http://insideria.com/2008/03/image-manipulation-in-flex.html
Matrix使用心得
图示如下:
参考链接:http://www.senocular.com/flash/tutorials/transformmatrix/
如何完全控制mx:Image组件内图片的缩放?
默认情况下,mx:Image的maintainAspectRatio属性被设置为true,在这种情况下,只要设置了image的widtht或者height,另外一个属性将会按照比例缩放。只有将maintainAspectRatio设置为false,才能让设置的width和height都生效。
如何消除mx:Image内图形在缩放后产生的锯齿?
将mx:Image的smoothBitmapContent属性设置为true。
原图:
smoothBitmapContent为false(默认值)时:
smoothBitmapContent为true时:
为什么BitmapData变量没有被释放?
用完了BitmapData之后,应该调用BitmapData.dispose()来释放它。
参考链接:http://stackoverflow.com/questions/2621160/bitmapdata-heavy-usage-memory-disaster-spark-fb4
后加入Child/Element挡住会先加入的Child/Element,如何避免先加入的Child/Element被后加入的Child/Element挡住?
使用setChildIndex、setElementIndex改变其在父容器的索引。索引小的放下边,大的放上边。
A是个BorderContainer组件,B是个UIComponent组件。调用A的addElement函数将B添加到A里。然后为A添加MouseEvent.Click监听函数。那么这个监听函数也会监听B的MouseEvent.Click事件?
如何获取swf每一祯的截图?
参考文档:http://stackoverflow.com/questions/2322848/flex-3-movie-clips-viewing-multiple-frames-on-the-stage
如何把BitmapData中的图形显示到界面上?
方法1:
需要先发BitmapData的数据弄到Bitmap上,然后把Bitmap添加到UIComponent上,最后把UIComponent添加到界面上。
示例代码如下:
如何从Image里获取BitmapData?
通过Image的content变量强转获得。
实例代码如下:
如何绘制橡皮筋效果?
重点是在MouseMove的处理函数里。绘制图像前先调用画布的graphics.clear()函数,将上一次绘制的图像清除掉。
示例代码如下:
- MovieClip相当于有时间轴的Sprite,Sprite没有时间轴。
- Sprite 对象是显示对象容器,而 Shape 对象不是(并且不能包含子显示对象)。
- Sprite 对象支持用户输入事件,而 Shape 对象却不支持。
Graphics使用心得
graphics.clear()会把graphics.lineStyle()的设置也给清除掉。
flash.geom.Rectangle使用心得
- Rectangle会把构造函数传入的x,y当成是左上角的x和y坐标,它并不会在内部帮忙调整。如果构造函数传入的是右下角的x和y坐标,则取left和top时,获得的将会是右下角的x和y坐标。
DisplayObject的height和width包含linestyle的thickness,绘制时实际的边框宽度是thickness / 2。
实例代码如下:
graphics.clear(); graphics.lineStyle(3,0); graphics.beginFill(0x555555,0.6); graphics.drawRoundRect(0,0,30,30,0,0); graphics.endFill(); trace(height, width);
输出:33, 33。
如何计算两点间的距离?
根据勾股定理:一个三角形,最长边的平方等于其他两边的平方和:
a^2+b^2=c^2
示例代码如下:
var c:Number = Math.sqrt(Math.pow(a, 2) + Math.pow(b, 2));
如何绘制只有上方的角是圆角的矩形?
使用:spark.primtives.Rect
通过设置下边的四个属性值,它可以将任意一角设置为圆角。
topLeftRadiusX、topRightRadiusX、bottomLeftRadiusX、bottomRightRadiusX
使用drawCircle画出来的圆不圆的问题如何解决?
调用graphics.drawCircle前,graphics.lineStyle,将第4个参数设置为true。
graphics.lineStyle( 1, 0, 0, true );
设置前后的对比如下:
参考链接:http://www.benclinkinbeard.com/2010/10/fixing-drawcircle-distortion-to-create-smooth-circles/
如何给线段加上阴影?
使用s:DropShadowFilter。
示例代码如下:
<s:Line y="100" xFrom="10" xTo="100"> <s:filters> <s:DropShadowFilter distance="2"/> </s:filters> <s:stroke> <s:SolidColorStroke color="0x0"/> </s:stroke> </s:Line>
使用Flex的坐标
http://livedocs.adobe.com/flex/3/html/help.html?content=containers_intro_5.html
Matrix相关文章
http://www.senocular.com/flash/tutorials/transformmatrix/
Rotate相关的文章
http://www.joelconnett.com/flex-rotation-around-a-point-using-a-matrix.html
http://www.flexrain.cn/flex/as3-atan-atan2.html
Move、Resize相关文章
http://www.rogue-development.com/objectHandles.html
图像处理相关文章
http://insideria.com/2008/03/image-manipulation-in-flex.html
Matrix使用心得
- 使用Matrix的rotate对组件进行旋转时,旋转是基于该组件的父组件的原点进行的,如果想让旋转基于某点进行,请将该点通过Matrix的tanslate函数移动到原点位置。
- 不要直接修改DisplayObject.transform中.matrix变量。因为DisplayObject.transform.matrix返回的仅是一个copy。对此copy的修改不会影响原matix。正确的修改步骤如下: 1.把DisplayObject。transform中。matrix赋值给一个临时变量。
- 利用Matrix实现基于某一点的Rotation或者Scale等效果的方法: 1.Matrix translation (moving to the reference point)
2.修改临时变量。
3.把修改后的临时变量赋值给DisplayObject.transform.matrix。
PS:DisplayObject.transform.colorTransform也不能直接修改。
2.Matrix rotation or scale
3.Matrix translation (back to original position)
图示如下:
参考链接:http://www.senocular.com/flash/tutorials/transformmatrix/
如何完全控制mx:Image组件内图片的缩放?
默认情况下,mx:Image的maintainAspectRatio属性被设置为true,在这种情况下,只要设置了image的widtht或者height,另外一个属性将会按照比例缩放。只有将maintainAspectRatio设置为false,才能让设置的width和height都生效。
如何消除mx:Image内图形在缩放后产生的锯齿?
将mx:Image的smoothBitmapContent属性设置为true。
原图:
smoothBitmapContent为false(默认值)时:
smoothBitmapContent为true时:
为什么BitmapData变量没有被释放?
用完了BitmapData之后,应该调用BitmapData.dispose()来释放它。
参考链接:http://stackoverflow.com/questions/2621160/bitmapdata-heavy-usage-memory-disaster-spark-fb4
后加入Child/Element挡住会先加入的Child/Element,如何避免先加入的Child/Element被后加入的Child/Element挡住?
使用setChildIndex、setElementIndex改变其在父容器的索引。索引小的放下边,大的放上边。
A是个BorderContainer组件,B是个UIComponent组件。调用A的addElement函数将B添加到A里。然后为A添加MouseEvent.Click监听函数。那么这个监听函数也会监听B的MouseEvent.Click事件?
如何获取swf每一祯的截图?
function getClipAsBitmaps(clip:MovieClip):ArrayCollection{ var data:ArrayCollection = new ArrayCollection(); var frames:int = clip.totalFrames; for(var i:int = 1 ; i <= frames; i++){ clip.gotoAndStop(i); trace(i); var bitmapData:BitmapData = new BitmapData(clip.width,clip.height,true,0x00FFFFFF); bitmapData.draw(clip); data.addItem({source:new Bitmap(bitmapData),label:'frame: ' + i}); } return data; } tileList.dataProvider = getClipAsBitmaps(star);
参考文档:http://stackoverflow.com/questions/2322848/flex-3-movie-clips-viewing-multiple-frames-on-the-stage
如何把BitmapData中的图形显示到界面上?
方法1:
需要先发BitmapData的数据弄到Bitmap上,然后把Bitmap添加到UIComponent上,最后把UIComponent添加到界面上。
示例代码如下:
如何从Image里获取BitmapData?
通过Image的content变量强转获得。
实例代码如下:
private function dupeImage(source:Image):void { var data:BitmapData = Bitmap(source.content).bitmapData; }
如何绘制橡皮筋效果?
重点是在MouseMove的处理函数里。绘制图像前先调用画布的graphics.clear()函数,将上一次绘制的图像清除掉。
示例代码如下:
<?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/mx"> <fx:Declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:Declarations> <fx:Script> <![CDATA[ import mx.events.ColorPickerEvent; private function onApplyCmd(cmd:uint):void { m_currentCmd = cmd; drawPad.addEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown); } private function handleMouseDown(event:MouseEvent):void { drawPad.addEventListener(MouseEvent.MOUSE_MOVE, handleMouseMove); m_beginPosX = event.localX; m_beginPosY = event.localY; } private function handleMouseMove(event:MouseEvent):void { drawPad.contentGroup.graphics.clear(); drawPad.contentGroup.graphics.lineStyle(1, colorPicker4Line.selectedColor); drawPad.contentGroup.graphics.moveTo(m_beginPosX, m_beginPosY); drawPad.contentGroup.graphics.lineTo(event.localX, event.localY); } private var m_currentCmd:uint; private var m_beginPosX:Number; private var m_beginPosY:Number; private const CMD_DRAW_LINE:uint = 1; private const COLOR_WHITE:uint = 0xffffff; ]]> </fx:Script> <s:VGroup width="100%" height="100%" gap="0"> <s:HGroup paddingLeft="2" paddingTop="2" paddingBottom="2"> <s:Button label="Line" click="{onApplyCmd(CMD_DRAW_LINE)}"/> <mx:ColorPicker id="colorPicker4Line" selectedColor="0xffffff"/> </s:HGroup> <s:BorderContainer id="drawPad" backgroundColor="0x000000" width="100%" height="100%"> </s:BorderContainer> </s:VGroup> </s:Application>
发表评论
-
游戏开发
2010-12-01 05:53 925Double Buffering是啥? Double Buff ... -
Flex Skin & Style & ItemRenderer
2010-11-20 00:38 1728定义Style的语法 引用<fx:Style> ... -
Flex TLF框架
2010-11-14 20:11 3399TextFlow的textAlign样式的"just ... -
Flex Effect
2010-11-08 09:20 939如何编写自定义的effect http://flexscrip ... -
Flex控件->VSlider&HSlider
2010-11-05 15:22 1143为何给VSlider/HSlider设置的初值不生效? 如果 ... -
flex布局
2010-10-22 10:32 1935使用自定义Layout时,s:DataGroup和s:List ... -
升级Flash Player后,Flash Builder无法调试的解决办法
2010-10-10 09:16 1760错误信息: C:\Program Files\Mozilla ... -
Flex事件
2010-09-18 07:18 1253为什么接收不到dispatch ... -
Flex控件->Mouse
2010-09-06 14:37 907注意MouseEvent.Click和MouseEvent.D ... -
Flex控件->BorderContainer&Group&SkinableContainer
2010-09-05 15:45 2654如何为Group设置背景色? 利用s:Rect,实例代码如下: ... -
Flex基础知识
2010-09-04 14:12 864如何把数字装换成字符串? String(100) Flex不 ... -
Flex控件->Label&Text&TextArea&TextField
2010-08-20 05:05 2652学习笔记,欢迎拍砖 Text、Label、TextArea的 ... -
Robotleg
2010-08-19 06:40 1977学习笔记,欢迎拍砖 需要inject的变量必须是public ... -
Flex控件->Datagrid&AdvancedDataGrid&DataGroup&List
2010-08-17 02:39 2330如何隐藏DataGrid的Header? dataGrid.s ... -
Flex中的数据类型
2010-08-14 17:58 1557学习笔记,欢迎拍砖。 XML和XMLList有何区别? XM ... -
如何获取用户当前的locale信息?
2010-08-14 05:44 921var currentLocale:String = Reso ...
相关推荐
扩展arcgis api for flex 的Draw类,增加了画圆操作
标题与描述均提到了"flex_api_diagram_1_3",这暗示了我们正在讨论的是ArcGIS API for Flex版本1.3中的组件与服务。该API为开发人员提供了构建地理信息系统(GIS)应用程序的能力,尤其针对Adobe Flex平台。下面将...
### ArcGIS Server 9.3 for Flex API 初级教程知识点总结 #### 一、环境搭建 1. **ArcGIS Server API for Flex简介** ArcGIS Server API for Flex是2009年由ESRI推出的面向Rich Internet Applications (RIA) 的...
### ArcGIS API for Flex 入门教程:详细解析与实践指南 #### RIA技术与ArcGIS API for Flex ##### RIA技术概览及其优势 **RIA(Rich Internet Application,富互联网应用)**是一种旨在提供类似桌面应用程序用户...
2. **Webcam API**: Flex可以访问用户的网络摄像头,这是通过Flash Player的Camera类实现的。通过Camera.getCamera()方法,我们可以获取到用户的摄像头设备,并设置其参数,如分辨率和帧率。 3. **Microphone API**...
通过实例化Sprite对象,我们可以利用其draw()方法和其他相关API来绘制线条、形状、图像等。例如,可以使用beginFill()方法指定填充颜色,lineStyle()设置线条样式,然后使用drawRect()或drawCircle()等方法绘制基本...
在Flex中,这些类用于发送AJAX请求,处理RESTful API或SOAP服务,实现异步数据加载和提交。 2. **Common_Math**:这个部分可能包含了一些数学相关的算法和工具类,例如几何计算、坐标转换或者图形渲染中的数学支持...
关于Flex中的图片处理,Flex框架提供了一系列API,使得开发者可以方便地处理图像。例如,BitmapData类是Flex中处理像素数据的核心类,它允许读取、修改和绘制位图数据。Camera类则支持访问用户的计算机摄像头,捕捉...
例如,可以使用`anychart.onReady`函数初始化图表,然后通过`chart.container`指定图表的容器,使用`chart.data`加载数据,以及通过`chart.draw()`绘制图表。 在数据源方面,AnyChart支持多种格式,包括JSON、XML、...
在Flex中,`HTTPService`可以方便地与RESTful API进行交互。 ```xml <binaryData>{bitmapData.encode()} ``` 调用`uploadService.send(bitmapData.encode())`即可发送图像数据。 6. **用户体验**:为了...
Flex提供了Camera类来访问和控制用户的摄像头,我们可以用它的`getVideo`方法获取视频流,然后使用BitmapData的`draw`方法将每一帧绘制到位图上,最后进行保存。 3. **SaveChart-app.xml 和 SaveWebcam-app.xml** -...
在Flex中,我们可以利用Flash Player或Adobe AIR提供的多媒体API来访问和操作摄像头。主要涉及以下知识点: 1. **Camera类**:Flex提供了一个名为`Camera`的类,它允许我们与用户的摄像头设备进行交互。通过`Camera...
HTTPService通常用于RESTful API,而WebService更适合SOAP协议。在发送请求时,通常会将图像数据作为二进制流附加到POST请求的body中: ```actionscript var service:HTTPService = new HTTPService(); service.url...
为了与用户交互并获取保存路径,可以使用FileReference或Filesystem API。FileReference是Flash Player提供的,允许用户选择文件保存位置并触发保存对话框。在Adobe AIR中,可以使用更强大的File和FileStream类,...
6. **与Java后端交互**:Java后端通常会提供一个RESTful API或者基于HTTP的文件上传接口,接收Flex客户端发送的图片数据。这部分涉及HTTP协议、Multipart/form-data编码以及Java的文件处理和网络编程。 7. **错误...
8. **硬件加速**:如果可能,可以利用Stage3D API来提升图像处理的性能,尤其是当全景图像非常大或者需要实时更新时。 9. **响应式设计**:考虑到不同的设备和屏幕尺寸,全景视图应具有良好的响应性。这意味着代码...
通过重写`draw()`方法或使用DisplayObject的绘图API,可以自定义绘制时间线的各个部分。 5. **样式和主题**:Flex支持CSS样式,可以定制时间轴的颜色、字体、边框等视觉元素,以匹配整体应用的风格。 总结,通过对...
图片剪切通常涉及`BitmapData.draw()`方法,它允许你在`BitmapData`对象中绘制另一个图形或图像,从而实现裁剪效果。你可以设置绘制的矩形区域,超出该区域的部分不会被绘制。 5. **图片放大**: 图片放大可以...
在Flex中实现画线,我们可以利用Flex提供的Graphics API。Graphics API允许开发者在舞台上绘制基本形状,如线条、曲线和矩形。我们首先创建一个自定义的UIComponent子类,这个子类将会是我们的画线组件。在AS中,...
本篇文章将详细介绍如何利用ArcGIS for Flex API开发一个动态读取天地图切片服务的扩展类,以帮助开发者更好地理解和运用这项技术。 ArcGIS for Flex是Esri公司推出的用于构建Web GIS应用的框架,它基于Adobe Flex...