About

<#TEMPLATE_INCLUDE_NINEPAGE_ABOUTME#>
  • Mar

    28

    “框选缩放居中”算法

    • 0 Comments
    • Miscellaneous

    发现网上有很多以鼠标为中心的缩放算法或源码,但是找来找去没有找到“框选缩放”的算法。或者有一些第三方的类,只有使用方法,但没有讲解算法原理。花时间去读懂那些第三方的类,这点时间还不如自己写一个算法出来。特别是第三方类往往是没有注释的或注释非常少,在这种情况下,要去理解别人的思维过程和思维方式,我觉的是一件很花时间和精力的事。所以周末自己用最简单的方式写了一个算法的原理。

    要求实现像FLASH工箱中的缩放工具,点击之后,被点击的点放大后处于显示舞台的正中间;或框选之后,将框选的内容部份放大处于显示舞台的正中间。
    ...

    More...

    Mar

    18

    已经存在的相同元素添加后缀,并且对已经存在的相同元素进行分类标号。(效果和windows系统的重命名功能一样。例如:aa,aa[1],bb,aa[2],bb[1],cc,d,aa[3]。)

    var my_array:Array=["aa","bb","cc","aa","bb","dd","af","fd","aa","bc"];
    function arrayFormat(_array:Array ):Array {
        var _i:Number=0;
        var _obj:Object={};
        while (_i<my_array.length) {
            _obj[my_array[_i]]?_obj[my_array[_i]].push(my_array[_i]+"("+_obj[my_array[_i]].length+")"):_obj[my_array[_i]]=[my_array[_i]];
            _i++;
        }
        _array=[];
        for (var _key:String in _obj) {
            _array=_array.concat(_obj[_key]);
        }
        return _array;
    }
    trace(arrayFormat(my_array));

     

    More...

    Mar

    14

    大多数学FLASH的人可能都是从gotoAndPlay、gotoAndStop等最基本的方法开始的。可有的时候这些最熟悉的东西却又是最容易人忽略存在的问题。有些时候这些帧不会出现在舞台上的情况。

    如下面的样例源文件非常简单,只有4帧、2行代码。通过慢镜头每秒只播放一帧的方式来观看时就会发现问题,第4帧是不会出现在舞台上的,但第4帧上的代码是会被执行的。

    样例源文件:i201031481647.rar

    More...

    Mar

    13

    [AS1/2/3]常用 Trim

    • 0 Comments
    • Flash Platform
    function trimChar(theString,char) {
        while (theString.charAt(0) == char) {
            theString = theString.substring(1, theString.length);
        }
        while (theString.charAt(theString.length-1) == char) {
            theString = theString.substring(0, theString.length-1);
        }
        return theString;
    }
    trace(trimChar("     10      "," "));//10