2014年6月16日月曜日

[JointJS入門]JointJSを使ってブラウザ上にフォルダ構成図を描いてみよう - Tech-Sketch
Illustratorを使い倒す!デザイナーにオススメの無料ベクター素材まとめ 2014年6月度PhotoshopVIP |

as3 XmlExample

XML - Adobe ActionScript® 3(AS3 )API リファレンス
package {
    import flash.display.Sprite;
    import flash.text.*;

    public class XmlExample extends Sprite {        

        var _tf:TextField;
        //var _tfm:TextFormat;

        public function XmlExample() {
            _tf = new TextField();
            _tf.autoSize = TextFieldAutoSize.LEFT;
            addChild(_tf);

            var employees:XML =
                
                
                
                
11 Main St. San Francisco CA 98765
99 Broad St. Newton MA 01234
; //trace(employees.employee[0].address.zip); // 98765 _tf.appendText(employees.employee[0].address.zip+"\n"); //trace(employees.employee[1].@ssn); // 789-789-7890 _tf.appendText(employees.employee[1].@ssn+"\n"); // 789-789-7890 _tf.appendText(employees.employee.name+"\n"); // // _tf.appendText(employees..zip[0]+"\n"); // 98765 _tf.appendText(employees..@ssn[1]+"\n"); // 789-789-7890 _tf.appendText(employees..name+"\n"); // // _tf.appendText(employees.employee[0].address.*); // 11 Main St. // San Francisco // CA // 98765 var node:String = "zip"; _tf.appendText(employees.employee[0].address[node]+"\n"); // 98765 var attribute:String = "ssn"; _tf.appendText(employees.employee[1].@[attribute]+"\n"); // 789-789-7890 for each (var num:XML in employees..@ssn) { _tf.appendText(num+"\n"); // 123-123-1234 } // 789-789-7890 var ssnToFind:String = "789-789-7890"; _tf.appendText(employees.employee.(@ssn == ssnToFind).toXMLString()); // // //
// 99 Broad St. // Newton // MA // 01234 //
//
} } }
Link
    SyntaxHighlighter の最後の行がおかしな表示になるな
package;

import flash.display.Sprite;
import flash.events.Event;
import flash.events.IOErrorEvent;

import flash.display.BitmapData;
import flash.display.Bitmap;
import openfl.Assets;

//import flash.display.Loader;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFormatAlign;

import flash.system.Capabilities;

class Main extends Sprite
{
    private var _bmpData:BitmapData;
    private var _bmp:Bitmap;
    private var _xmlFileName:String = "data.xml";

    public function new()
    {
        super();
        addEventListener(Event.ADDED_TO_STAGE, init);
    }

    private function init(event:Event)
    {
        removeEventListener(Event.ADDED_TO_STAGE, init);

        var requestUrl:String = _xmlFileName;

        var loader = new URLLoader();
        loader.addEventListener(Event.COMPLETE, onComplete);
        loader.addEventListener(IOErrorEvent.IO_ERROR, onLoadError);
        loader.load(new URLRequest(requestUrl));

    }

    private function onComplete(event:Event):Void
    {

        var text:TextField = new TextField();
        //text.text = cast(xml,String); //NG
        //text.text = data; //OK
        text.width = stage.stageWidth;
        text.textColor = 0x000000;
        text.border = true;

        addChild(text);

        var data:String = cast(event.currentTarget.data, String);
        //var xml:Xml = Xml.parse(data);
        var xml:Xml = Xml.parse(data).firstElement();
        //trace("xml:"+xml);
        //trace("data:"+data);
        var fastXml = new haxe.xml.Fast(xml);
        //trace(fastXml);
        var employee = fastXml.node.employee;
        //trace(employee.att.ssn); //123-123-1234
        //trace(fastXml.nodes[1].employee.att.ssn); //NG

        var zip = employee.node.address.node.zip;
        //trace(zip.innerData);//98765

        text.text += zip.innerData+"\n";

        trace(fastXml.nodes.employee.length); //2
        ///*
        for (elem in fastXml.nodes.employee) {
            trace(elem.att.ssn);
            text.text += elem.att.ssn+"\n";
        }
        //*/

    }

    private function onLoadError(event:IOErrorEvent):Void
    {
        trace("error occured.");
        trace(event.currentTarget.content);
    }

}
XmlTest01
    \nで改行してくれないな

    haxeだとas3のemployee[1]みたいなアクセスはできないんだろうか

DisplayObjectContainer

DisplayObjectContainer - Adobe ActionScript® 3 (AS3 ) API Reference
package{

    import flash.display.Sprite;
    import flash.events.MouseEvent;

    public class DisplayObjectTest01 extends Sprite {

        public function DisplayObjectTest01 ():void{
            var container:Sprite = new Sprite();
            addChild(container);

            var circle1:Sprite = new Sprite();
            circle1.graphics.beginFill(0xFF0000);
            circle1.graphics.drawCircle(40, 40, 40);
            circle1.addEventListener(MouseEvent.CLICK, clicked);

            var circle2:Sprite = new Sprite();
            circle2.graphics.beginFill(0x00FF00);
            circle2.graphics.drawCircle(100, 40, 40);
            circle2.addEventListener(MouseEvent.CLICK, clicked);

            var circle3:Sprite = new Sprite();
            circle3.graphics.beginFill(0x0000FF);
            circle3.graphics.drawCircle(70, 80, 40);
            circle3.addEventListener(MouseEvent.CLICK, clicked);

            container.addChild(circle1);
            container.addChild(circle2);
            container.addChild(circle3);
            addChild(container);

            function clicked(event:MouseEvent):void {
                var circle:Sprite = Sprite(event.target);
                var topPosition:uint = container.numChildren - 1;
                container.setChildIndex(circle, topPosition);
            }
        }
    }

}
Link
package;

import flash.display.Sprite;
import flash.events.MouseEvent;

class Main extends Sprite
{

    var container : Sprite = new Sprite();

    public function new()
    {
        super();
        //var container : Sprite = new Sprite();
        addChild(container);

        var circle1 : Sprite = new Sprite();
        circle1.graphics.beginFill(0xFF0000);
        circle1.graphics.drawCircle(40, 40, 40);
        circle1.addEventListener(MouseEvent.CLICK, clicked);

        var circle2 : Sprite = new Sprite();
        circle2.graphics.beginFill(0x00FF00);
        circle2.graphics.drawCircle(100, 40, 40);
        circle2.addEventListener(MouseEvent.CLICK, clicked);

        var circle3 : Sprite = new Sprite();
        circle3.graphics.beginFill(0x0000FF);
        circle3.graphics.drawCircle(70, 80, 40);
        circle3.addEventListener(MouseEvent.CLICK, clicked);

        container.addChild(circle1);
        container.addChild(circle2);
        container.addChild(circle3);
        addChild(container);

    }
    function clicked(event : MouseEvent) : Void{
        var circle : Sprite = cast((event.target), Sprite);
        var topPosition : Int = container.numChildren - 1;
        container.setChildIndex(circle, topPosition);
    };
}
DisplayObjectTest01

2014年6月15日日曜日

rss

RSSリーダーをブログやニュース閲覧だけに使うのはもったいない!私が購読しているRSSフィード全種類を公開! | love guava!

openfl sample

    OpenFl Sample

    openflのsampleをxreaにあげてみた

    SimpleSWFLayoutはダミー画像を入れてみたが真黒になってしまった

    BunnyMark ってサンプルにはFPS表示があるがFPSってクラスがあるようだ

package openfl.display;

import haxe.Timer;
import openfl.events.Event;
import openfl.text.TextField;
import openfl.text.TextFormat;


class FPS extends TextField {


    public var currentFPS (default, null):Float;

    private var cacheCount:Int;
    private var times:Array ;


    public function new (x:Float = 10, y:Float = 10, color:Int = 0x000000) {

        super ();

        this.x = x;
        this.y = y;

        currentFPS = 0;
        selectable = false;
        defaultTextFormat = new TextFormat ("_sans", 12, color);
        text = "FPS: ";

        cacheCount = 0;
        times = [];

        addEventListener (Event.ENTER_FRAME, this_onEnterFrame);

    }




    // Event Handlers




    private function this_onEnterFrame (event:Event):Void {

        var currentTime = Timer.stamp ();
        times.push (currentTime);

        while (times[0] < currentTime - 1) {

            times.shift ();

        }

        var currentCount = times.length;
        currentFPS = Math.round ((currentCount + cacheCount) / 2);

        if (currentCount != cacheCount && visible) {

            text = "FPS: " + currentFPS;

        }

        cacheCount = currentCount;

    }
}
</float>?

blender python

    Blender 2.63 での Python の使い方についてまとめてみた - 凹みTips
    Blender Python: Mathematical Mesh - THE PROVING GROUND

    ctrl+spaceがubuntuだとime切り替えになってたので設定変えた

    情報処理 I - 第15回:Python による Blender の制御
    Blenderの物理シミュレーションをpythonスクリプトで作成 - 株式会社CFlatの明後日スタイルのブログ
    mato.sus304さんのぶろぐ BlenderユーザーのためのPython入門的な文 その1

blender vseでtrakingした点にmaskを関連付けるには?

 ## Blender VSEでトラッキングした点にマスクを関連付ける方法 BlenderのVideo Sequence Editor(VSE)でトラッキングした点にマスクを関連付けるには、以下の手順を実行します。 **1. トラッキングの準備** まず、トラッキングを行うために...