- 浏览: 32739 次
- 性别:
- 来自: 上海
最近访客 更多访客>>
最新评论
-
myjave:
哦 是我搞错了这个怎么使用
ArtDigit 艺术数字类 -
myjave:
这个类拷贝靠flash里报错
ArtDigit 艺术数字类
此类主要用于使用动画元件来显示对应的数字,并支持数字缓冲滚动显示功能!并有比较成熟的资源数字样式显示管理功能
package game.assist.view { import com.greensock.TweenMax; import flash.display.MovieClip; import game.net.File; import game.collection.HashMap; import flash.display.Sprite; /** * ArtDigit 艺术数字 * @author Kinglong * @since 2012-7-26 */ public class ArtDigit extends Sprite { /** * 资源路径 */ public static var resourcePath : String = ""; /** * 资源列表 */ private static const resourceMap : HashMap = new HashMap(); /** * 回调列表 */ private static const callbackList : Vector.<Function> = new Vector.<Function>(); /** * 字符转成帧号 * @param chat 字符 */ private static function charToFrame(chat : String) : int { switch(chat) { case "-": return 11; case "+": return 12; } return int(chat) + 1; } /** * 改变回调 */ public var onChange : Function = new Function(); /** * 是否初始化 */ private var _inited : Boolean; /** * 资源是否加载 */ private var _loaded : Boolean; /** * 数字样式 */ private var _style : String; /** * 数值 */ private var _value : int; /** * 数值字符 */ private var _chars : String; /** * 加号是否显示 */ private var _addSymbolVisible : Boolean; /** * 数字列表 */ private var _numberList : Array; /** * 间隔 */ private var _spacing : int; /** * 样式类 */ private var _styleClass : Class; /** * 缓冲对象 */ private var _vo : TweenVO; /** * 构造 * @param style 样式 */ public function ArtDigit(style : String = null) { _inited = false; _loaded = false; if (style) { init(style); } _value = 0; _spacing = 2; _chars = ""; _numberList = []; _vo = new TweenVO(); _addSymbolVisible = false; mouseChildren = false; mouseEnabled = false; } /** * 初始化 * @param style 样式 */ public function init(style : String) : void { if (inited) { return; } _style = style; if (!resourceMap.containsKey(style)) { loadStyle(); } else if (resourceMap.get(style) is File) { callbackList.push(updateStyle); } else { updateStyle(); } _inited = true; } /** * 加载样式 */ private function loadStyle() : void { var url : String = resourcePath + style + ".swf"; var file : File = new File(); resourceMap.put(style, file); callbackList.push(updateStyle); file.onComplete = function() : void { resourceMap.put(style, file.getClassByName("Style")); for each (var func:Function in callbackList) { if (func != null) { func(); } } callbackList.length = 0; }; file.load(url); } /** * 更新样式 */ private function updateStyle() : void { _styleClass = resourceMap.get(style); _loaded = true; this.value = value; } /** * 加号是否显示 */ public function set addSymbolVisible(value : Boolean) : void { _addSymbolVisible = value; render(this.value); } /** * 数值 */ public function set value(num : int) : void { _value = num; TweenMax.killTweensOf(_vo); _vo.value = num; render(num); } public function get value() : int { return _value; } /** * 缓动到指定数值 * @param num 指定数值 */ public function tweenTo(num : int) : void { if (!loaded) { value = num; return; } TweenMax.to(_vo, 0.8, {value:num, onUpdate:tweenUpdateHandler}); } /** * 缓动更新处理 */ private function tweenUpdateHandler() : void { render(_vo.value); } /** * 数字间隔 */ public function set spacing(value : int) : void { if (_spacing == value) { return; } _spacing = value; _chars = ""; render(value); } public function get spacing() : int { return _spacing; } /** * 渲染 * @param num 数值 */ private function render(num : int) : void { if (!loaded) { return; } var str : String = new String(num); if (num > 0 && _addSymbolVisible) { str = "+" + str; } if (_chars == str) { return; } _chars = str; renderStyle(); onChange(); } /** * 渲染数字样式 */ private function renderStyle() : void { var i : int; var mc : MovieClip; var len : int = Math.max(_numberList.length, _chars.length); var dx : int = 0; for (i = 0; i < len; i++) { if (i >= _numberList.length) { mc = new _styleClass(); mc.stop(); _numberList.push(mc); } if (i < _chars.length) { mc = _numberList[i]; if (!contains(mc)) { addChild(mc); } mc.gotoAndStop(charToFrame(_chars.charAt(i))); mc.y = 0; mc.x = dx; dx += mc.width + spacing; } if (i >= _chars.length) { mc = _numberList[i]; if (contains(mc)) { removeChild(mc); } } } if (_numberList.length > _chars.length) { } else if (_numberList.length < _chars.length) { for (i = _numberList.length; i < _chars.length; i++) { mc = new _styleClass(); mc.stop(); addChild(mc); _numberList.push(mc); } } } /** * 当前样式 */ public function get style() : String { return _style; } /** * 是否初始化 */ public function get inited() : Boolean { return _inited; } /** * 样式是否加载 */ public function get loaded() : Boolean { return _inited && _loaded; } /** * 移动 */ public function move(x : int, y : int) : void { this.x = x; this.y = y; } /** * 销毁 */ public function dispose() : void { TweenMax.killTweensOf(_vo); for each (var mc : MovieClip in _numberList) { mc.stop(); if (contains(mc)) { removeChild(mc); } } _numberList = null; var index : int = callbackList.indexOf(updateStyle); if (index != -1) { callbackList.splice(index, 1); } } } } class TweenVO { public var value : int = 0; }
发表评论
-
Cookie类第三版
2012-07-28 00:01 939针对原来Cookie类使用起来不太方便,去掉用不上的冗余方法, ... -
位图工具BitmapDataUtil类-getImageMapVector方法演示
2012-07-27 15:35 0今天把BitmapDataUtil工具类中的getImageM ... -
位图工具BitmapDataUtil类-getRealImageRect方法演示
2012-07-28 00:02 1097位图是flash众多类,使用很频繁的一个,我这边根据自己的实际 ... -
flash动画编程学习研究-机器人传球演示
2012-07-27 15:31 985这几天在看Keith Peters的书《Foundation ... -
排序算法演示
2012-07-28 00:01 937下面是排序算法演示程序,比较直观显示排序算法运行规律 该演 ... -
常用数据集合类-Map,Queue,Stack,Collection,List,Set
2012-07-28 00:01 1155之前写过一次有关常用数据集合类,但今天简单回顾了一下, ... -
Flash算法-摆动算法
2012-07-27 15:22 1321[代码] package com.klstudio.algor ... -
Flash游戏-SlidingPuzzle滑块拼图游戏
2012-07-27 15:18 910最近在研究Flash游戏的算法,发现同一种游戏能有很多种算法, ... -
优化Flash平台的性能(Adobe提供)
2012-07-27 15:13 893今正好看到了“优化Flash平台的性能&a ... -
AS3版Flash Remoting客户端类-Service类
2012-07-27 15:10 1448AS3版Flash Remoting客户端类-Service类 ... -
[AS3]URLLoader+URLRequest+JPGEncoder实现BitmapData图片数据保存
2007-08-18 15:56 1700[AS3]URLLoader+URLRequest+JPGEn ... -
[AS3]FLVStream类-检测flv文件类型的工具类
2007-08-06 09:20 614[AS3]FLVStream类-检测flv文件类型的工具类 ... -
[AS3]Flash在线图片编辑器
2007-07-24 06:39 5032[AS3]Flash在线图片编辑器 进行二个星期,终于把 ... -
[AS3]更新Tracer组件并公布控制台源程序
2007-07-23 02:42 335此次更新版本到1.2,修正一些对象的显示Bug; 由于原来 ... -
[AS3]Tracer-Flash代码调试类
2007-07-19 11:01 533[AS3]Tracer-Flash代码调试类【组件版本】:1. ... -
[AS1]三帧代码实现图片轮换显示
2007-07-08 02:08 508[AS1]三帧代码实现图片轮换显示本来这段代码是写给我的一个网 ... -
[AS3]IconDataManager-图标数据管理类
2007-07-06 08:00 386[AS3]IconDataManager-图标数据管理类【功能 ... -
有关“Flash在线图片编辑”功能的开发进度1
2007-07-03 10:30 2139有关“Flash在线图片编辑”功能的开发进度1 实现在线对 ... -
[AS3]DisplayEffect组件
2007-06-28 08:08 407[AS3]DisplayEffect组件【组件版本】:0.5【 ... -
[AS3]ImageEffect组件版本更新
2007-06-27 15:16 418[AS3]ImageEffect组件版本更新 【组件版本】 ...
相关推荐
《数字媒体艺术概论》一书探讨了在20世纪90年代以来,随着电脑普及和网络技术的快速发展,数字媒体艺术如何成为一个新兴且重要的艺术形式。数字媒体艺术的出现,打破了传统艺术创作的边界,艺术家们不再局限于传统的...
在数字化时代,随着技术的迅猛发展,传统艺术的表现形式也在发生着翻天覆地的变化。CAD技术(计算机辅助设计技术)作为一种强有力的数字化工具,在传统艺术领域的应用逐渐广泛。本文将探讨CAD技术在传统艺术数字化中...
由于数字媒体艺术专业在我国艺术类高校或者综合类艺术学校及职业学校教学学校起步晚,发展还不够成熟,这就造成课程体系不够明确,高校师资力量不足,学生就业不对口等诸多问题。CDIO 人才培养模式恰恰适合技术性与...
数字媒体艺术设计专业教学标准0407(20201124224438).docx.pdf数字媒体艺术设计专业教学标准0407(20201124224438).docx.pdf数字媒体艺术设计专业教学标准0407(20201124224438).docx.pdf数字媒体艺术设计专业教学标准...
关键词“支持向量机”、“二叉树多类分类算法”和“图像艺术属性”贯穿了整个研究过程,指导了研究的方向和方法,突出了研究的核心内容。中图分类号TP391、文献标识码A以及文章编号***(2009)***均为本研究文献的重要...
《数字媒体艺术创作的探索与应用》 数字媒体艺术,作为一种新兴的艺术表现形式,已经在全球范围内引起了广泛关注。它结合了科技与艺术,以其独特的魅力拓宽了艺术创作的边界。在中国,数字媒体艺术创作正处于快速...
《数字媒体艺术》 数字媒体艺术,作为21世纪新兴的艺术形式,是科技与艺术的完美结合,它涵盖了视觉设计、交互设计、动画、游戏设计、虚拟现实、增强现实、网络艺术等多个领域。这一概念的出现,打破了传统艺术的...
该文档介绍FPGA相关知识,包括时序分析基础知识,值得一看
数字媒体艺术专业是新专业,相信大家都数字媒体艺术有自己的展望未来观点。。
这类艺术作品通常通过网络、媒体和计算机等载体进行传播。 **表现形式:** - **录像及互动装置**:结合视频技术和观众互动体验的艺术形式。 - **Flash动画**:一种流行的二维动画创作工具。 - **多媒体**:集成文本...
【数字媒体艺术的创新及发展研究】 随着信息技术的飞速发展,数字媒体艺术正在逐步颠覆传统艺术的表现形式,成为艺术文化领域中一股不可忽视的力量。数字媒体艺术是信息技术、图像处理技术、通信技术和艺术设计等多...
《数字媒体艺术概论》课程第五章 数字艺术与文化创意产业(2015) 课程PPT 《数字媒体艺术概论》课程第五章 数字艺术与文化创意产业(2015) 课程PPT 《数字媒体艺术概论》课程第五章 数字艺术与文化创意产业(2015) ...
数字媒体艺术史使大家能够初步了解多媒体的发展,提高艺术修养,同时了解它的发展史~
人工智能对数字媒体艺术实践的影响.pdf
《数字媒体艺术概论》课程第一章 数字媒体艺术理论概述 课程PPTT
通过上述策略,艺术设计类学生可以在轻松愉快的氛围中学习Python编程,同时满足高职院校数字媒体艺术设计等专业对学生计算机程序设计能力的需求。通过适当的Python教学,能够培养出既懂艺术又懂技术的复合型人才,为...
数字艺术是21世纪文化艺术领域的一大创新,它以高速发展的科技为支撑,借助数字技术、信息技术,改变了传统艺术的创作方式和审美体验。数字艺术不仅为艺术家提供了全新的表现空间,还对文化艺术的传承产生了深远影响...
数字艺术品铸造交易平台NFT交易商城类鲸探类唯艺术
在这个特定的例子中,我们将探讨如何使用 TensorFlow 来识别图片中的数字,具体是基于 MNIST 数据集的训练模型,然后应用这个模型来识别自定义图片中的数字。 MNIST 数据集是一个经典的手写数字识别数据集,包含 60...