`
junlas
  • 浏览: 63952 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Matrix 演示Demo

阅读更多

运行效果:

 

下面是代码:

 

 

package branch.matrixtest {
import flash.display.Sprite;
import flash.geom.Matrix;
import junlas.toolutil.Attach;

/**
 * @author  
 */
public class ApplyMatrixUI {
    private var _pmc : Sprite;
    private var _ui : Sprite;
    private var _originalW : Number=0;
    private var _originalH : Number = 0;
    //
    private var _isCounterClock : Boolean = true;
    private var _isLable1 : Boolean = false;
    private var _isLable2 : Boolean = false;
    private var _numA:Number=200;
    private var _numB : Number = -20;

    public function ApplyMatrixUI(pmc : Sprite) {
            _pmc = pmc;
        
        initDisplay();
        initMultiMovie();
    }

    private function initDisplay() : void {
        _ui = Attach.getSprite("UIShowResult");
        _pmc.addChild(_ui);
        _ui.visible = false;
                _ui.x= Root.STAGE_WIGHT/2;
                _ui.y = Root.STAGE_HEIGHT/2;
    }
    
    private function initMultiMovie() : void {
                _originalW = _ui.width;
                _originalH = _ui.height;
    }
    
    /**
     * Enter_Frame事件的run方法
     */
    public function runMatrix() : void {
            if(_isCounterClock) {
            if(_numA == 0 && _numB == -320){//中间判断
                    _isLable1 = true;
            }
            _numA -= 10;
            if(_isLable1){
                _numB += 15;
            }else{
                    _numB -= 15;
            }
            if(_numA == -200 && _numB == -20){//逆时针的终点位置
                    _isCounterClock = false;
                    _isLable1 = false;
            }
        }else{
                if(_numA == 0 && _numB == -320){//中间判断
                _isLable2 = true;
            }
                    _numA += 10;
            if(_isLable2){
                    _numB += 15;
            }else{
                    _numB -= 15;
            }
            if(_numA == 200 && _numB == -20){//顺时针的终点位置
                _isCounterClock = true;
                _isLable2 = false;
            }
            }
        applyMatrix(_numA,_numB,-150,200);
    }
    
    private function applyMatrix(a : Number,b : Number,c : Number,d : Number):void{
            _ui.visible = true;
            var mat : Matrix = new Matrix();
                mat.translate(_ui.x,_ui.y);
            mat.a = a / _originalW;
        mat.d = d / _originalH;
        mat.b = b / _originalW;
        mat.c = c / _originalH;
            
        _ui.transform.matrix = mat;
    }
}
}

 

 

 

 

 

分享到:
评论

相关推荐

    DataMatrix-DEMO

    在“1-DM编码演示程序”中,我们可以看到实现DataMatrix编码和解码的具体步骤。源代码通常会包含数据预处理函数、矩阵生成函数、Reed-Solomon编码和解码函数,以及图像处理和识别的相关模块。通过对这些函数的理解和...

    Android Matrix demo

    在“MatrixTest”这个文件中,可能包含了演示Matrix使用的代码示例,可能包括对多个图像操作的测试,比如创建不同变换矩阵,然后在屏幕上显示这些变换效果。开发者可以通过查看和运行这个测试来理解Matrix的实际应用...

    Android下使用Matrix进行图形变换处理的Demo

    在"CanvasMatrixDemo"这个示例中,可能包含了多个这样的操作,演示了如何通过Matrix进行图形的旋转、缩放、平移和倾斜,从而让开发者更好地理解并掌握这一功能。读者可以通过查看源代码,学习如何在实际项目中灵活...

    matrixdemo

    在IT行业中,矩阵(matrix)是一种重要的数学工具,广泛应用于计算机图形学、图像处理、机器学习等领域。"matrixdemo"很显然是一个关于矩阵操作的演示项目,可能是用某种编程语言实现的,比如Java、Python或者C++。这...

    webgl-matrix-demo:Javascript 与 WebGL 中的高性能矩阵乘法

    webgl-矩阵-演示 利用 WebGL 的高性能矩阵乘法。 WebGL 提供了一种在 Web 浏览器中通过 Javascript 访问图形卡上的高性能硬件的方法。 顶点着色器用于提供顶点信息。 对于这个演示,顶点着色器简单地通过由 ...

    Orca-Matrix-Demo-Library:初始版本

    ORCA / MATRIX演示传输库1.简介Orca.js是一个JavaScript API,用于支持Web应用程序中的实时通信(RTC)。 Orca.js从应用程序中抽象出RTC的实现,从而允许应用程序代码在不同的RTC提供程序之间可移植。 有关更多信息...

    Matrix.org虚拟现实演示_JavaScript_CSS_下载.zip

    这个压缩包包含的是一个名为"matrix-vr-demo-master"的主目录,很可能包含了源代码、资源文件以及必要的配置,用于搭建和运行这个VR演示。 首先,我们来看看JavaScript。JavaScript是Web开发中的主要脚本语言,它在...

    DataMatrixDemo

    **DataMatrixDemo** 是一个基于Qt C++框架开发的演示程序,其主要功能是生成DataMatrix二维码。这个Demo展示了如何利用编程技术实现二维码编码,特别是针对包含中文字符的编码。DataMatrix是一种二维条码标准,它能...

    Sym_comp_demo.zip_DEMO

    Matlab,全称Matrix Laboratory,是美国MathWorks公司开发的一种编程环境,特别适合于数值计算、符号计算、数据可视化以及信号处理等领域。在这个DEMO中,用户将能够通过直观的图形界面与代码交互,探索三相电气系统...

    前端开源库-asciify-pixel-matrix

    2. `example`或`demo`目录:可能包含一些示例代码或HTML文件,演示如何在实际项目中使用这个库。 3. `test`目录:单元测试代码,确保库的功能正确无误。 4. `README.md`文件:介绍库的使用方法、安装步骤、API文档等...

    zxing-android-demo 3.2.1 二维码扫描官方Demo

    `zxing-android-demo`则是ZXing官方提供的一个演示应用,用于展示如何使用这些库。 在"zxing-android-demo 3.2.1"这个版本中,你可以找到以下关键知识点: 1. **二维码与条形码扫描**:ZXing支持多种编码格式,...

    C#窗体特效DEMO

    "C#窗体特效DEMO"是一个演示了如何在Windows Forms应用中实现各种窗体动画效果的项目。这个DEMO包含了一系列示例,如窗体大小的变化、平移以及其他动态效果。 首先,我们要理解C#中的Windows Forms,它是.NET ...

    zxing二维码扫描demo

    这个"ZXing二维码扫描demo"是一个基于ZXing库的应用示例,主要用于演示如何在Android平台上实现二维码扫描功能。下面我们将深入探讨ZXing的核心原理、如何集成到Android应用中以及如何进行二维码扫描。 二维码...

    jpct_ae的3D模型demo

    【描述】这个demo的核心在于演示了3D模型的基本操作,包括放大、缩小以及旋转。这些功能是3D图形界面中不可或缺的部分,它们使用户能够从不同角度和距离观察模型,从而增强视觉体验。通过放大,用户可以观察到模型的...

    Android设备外接扫描枪Demo

    本项目“Android设备外接扫描枪Demo”提供了一个示例,它演示了如何在Android设备上实现扫描枪的无缝集成,允许用户快速、高效地读取条形码和二维码,而无需额外的权限申请。 首先,我们要理解Android系统如何处理...

    android demo图片剪切

    "android demo图片剪切"是一个示例项目,它演示了如何在Android平台上实现图片裁剪功能,包括从相册选择图片进行裁剪以及通过相机拍摄新图片后进行裁剪。 首先,我们要理解Android中的图片裁剪涉及到的关键组件和...

    色彩矩阵DEMO

    5. **Matrix_Test**:这个压缩包内的文件可能是一个示例程序或脚本,用于演示如何应用色彩矩阵。用户可以通过运行这个DEMO来理解和实践色彩矩阵的实际应用,例如加载图像,创建并应用色彩矩阵,然后查看结果。 6. *...

    android 图片放大缩小移动 demo

    这个“android 图片放大缩小移动 demo”项目旨在提供一个实例,演示如何在Android应用中实现这些功能。接下来,我们将深入探讨相关知识点。 1. **ImageView组件**:在Android中,显示图片的基本组件是`ImageView`。...

    somtoolbox.rar_DEMO_SOM demo_SOM工具箱_matlab som工具箱_som工具

    5. **应用示例**:DEMO演示如何使用工具箱进行实际的数据处理和分析,对于初学者极其有用。 **DEMO中的关键知识点** 在提供的DEMO中,初学者可能会学到以下关键点: 1. **数据预处理**:理解如何将原始数据转化为...

    条形码barcode demo.rar

    条形码(Barcode)是一种广泛应用...在"barcode demo"这个项目中,很可能是演示了如何使用JavaScript库生成和显示条形码的示例代码和配置。开发者可以根据这个演示进行学习和实践,以掌握在自己的项目中应用这一技术。

Global site tag (gtag.js) - Google Analytics