본문 바로가기
728x90
반응형
SMALL

어도비411

Adobe AIR gets a New Logo 어도비 AIR의 새로운 로고가 나왔네요.. 어도비(Adobe)와 AIR의 'A' 같은 느낌이 나네요..왼쪽으로 세번 오른쪽으로 세번 돌면서 앞으로 슝슝 튀어나왔다 들어갔다 하는 재빠른 움직임이 보이는 듯 합니다..마치 AIR의 재밌고 빠르고 친근한 느낌처럼요.. : ) 2007. 11. 20.
플래시 물리엔진 - Box2DFlashAS3 http://box2dflash.sourceforge.net/ C++ 오픈소스를 AS3로 포팅했네요..와우.. 현존하는 플래시 물리엔진중 최고가 아닐까 생각합니다.. 그럼 하나씩 파 볼까요? ^^ 2007. 11. 18.
어도비 문서 공유 사이트 'SHARE' https://share.adobe.com http://labs.adobe.com/technologies/share/ 플렉스로 만들어진 어도비의 'SHARE' 입니다..이름 그대로 무언가를 공유하는데 뭐냐면..PDF, 이미지 등과 같은 문서류의 공유입니다.. 베타 신청을 했던걸로 기억하는데요..메일이 왔더군요.. 바로 달려가서 써봤습니다..스크린샷 보시죠.. 음..첫 느낌은 뭐랄까..어도비에서 이걸 왜 또 만든거지? 이런거 많잖아.. 회사에서 문서를 공유하거나 친구들과 사진을 공유하거나 해서 함께 볼 수 있다는거 같은데..음..현재로선 딱히 좋다라는 느낌은 없습니다..게다가 용량은 1기가를 주네요..좀 약하죠^^ 그리구 아직 베타라서 그렇겠지만..에러가 좀 많네요..10분정도 썼는데 4개나 떴습니다..이.. 2007. 11. 16.
AVM2Loader 테스트 후..[LocalConnection을 쓰세요..] 액션스크립트1, 2(AVM1)로 작성된 swf의 경우 액션스크립트 3.0으로 작성된 AVM2에 로드는 되지만 크로스 스크립팅은 안되며 이를 위해서는 LocalConnection을 사용해야 한다는건 도움말에 나와 있는 내용입니다.. 그런가보다..하고 생각하던 중..외국의 어떤분이 AVM2Loader라는 멋진걸 만들었다는 소문을 들었습니다..아래 URL입니다.. http://www.fladdict.net/blog-en/2007/05/loading_avm1_swf_as_avm2_swf.html 오호..대단해~swf를 바이트 배열로 읽어와서 '배열 인덱스[3]'을 플레이어 '9'라고 속여주는 센스..이제 LocalConnection 안쓰고도 둘이 통할 수 있다~!! 라고 생각했는데.. = _ = 직접 테스트 해.. 2007. 11. 16.
[AS3] 외부 XML 파일 로드 = 액션스크립트[ActionScript] 3.0 XML = 외부에 있는 XML 파일을 로드하는 예제입니다.. var ul:URLLoader = new URLLoader(); ul.addEventListener(Event.COMPLETE, on_Complete); ul.load(new URLRequest("xml.xml")); function on_Complete(e:Event):void { var xml:XML = new XML(ul.data); trace(xml.toXMLString()); trace("====="); trace(xml.node.(num>=2)); //값중 2 이상인 노드 출력 } 2007. 11. 16.
[AS3] XML의 정적(static) 속성들 = 액션스크립트[ActionScript] 3.0 XML = XML에는 5개의 정적 속성들이 있습니다.. 정적이란 '클래스명.멤버' 이런식으로 쓰는거죠..인스턴스를 생성하지 않고.. ignoreWhitespace : 공백을 무시할지 여부(기본값 true) ignoreComments : 주석을 무시할지 여부(기본값 true) ignoreProcessingInstructions : 프로시져같은 프로세싱 요소를 무시할지 여부(기본값 true) prettyIndent : 들여쓰기(기본값 2) prettyPrinting : XML을 한줄씩 내려서 보기 좋게 만듬, false로 하면 한줄로 죽~. (기본값 true) 위 다섯개중 아래 두개(prettyIndent, prettyPrinting)는 출력시(toString.. 2007. 11. 16.
[AS3] XML 검색 = 액션스크립트[ActionScript] 3.0 XML = var xml:XML = sub1 node1 sub2 mainNode1 sub3 sub2 ; 위 XML을 다양하게 검색하는 방법을 소개합니다.. .. 연산자를 이용하면 모든 노드를 검사해서 해당 노드를 찾습니다.. var xmllist:XMLList = xml..node; trace(xmllist.toXMLString()); /* sub1 node1 sub2 //내의 까지 검색 mainNode1 sub3 */ 찾아낸 XMLList의 부모를 접근할 수도 있습니다..parent()는 메소드입니다..괄호 주의.. trace(XML(xmllist[2]).parent().toXMLString()); /* mainNode1 sub3 sub2 */ 속성을 검.. 2007. 11. 16.
[AS3] for each..in문으로 객체 참조하기 [XML] = 액션스크립트[ActionScript] 3.0 XML = var xml:XML = 1 2 3 4 ; 위 XML의 price를 모두 더한 값과 node의 값을 모두 더한 값을 알아내려 할 때는 for each..in문을 이용하면 편리합니다.. for..in문과 달리 for each..in은 객체를 반환합니다.. var price:int = 0; var sum:int = 0; for each(var prop:XML in xml.node){ price += int(prop.@price.toString()); //문자열을 int형으로 변환 sum += int(prop.toString()); //문자열을 int형으로 변환 }trace(price); //600 trace(sum); //10 2007. 11. 16.
[AS3] 중괄호 연산자({})를 이용한 데이터 참조 [XML] = 액션스크립트[ActionScript] 3.0 XML = var xml:XML = ; 위와 같은 간단한 XML이 있습니다.. 에 를 4개 추가하려면 xml.appendChild();를 네번 써주면 되겠죠? 1000개라면 어떻게 할까요? 각자 다른 값을 가져야 한다면요? = _ = 막막하죠..? 이럴때는 중괄호 연산자({})를 이용하면 쉽게 해결할 수 있습니다..for(var i:int = 1; i < 5; i++){ xml.appendChild({i}); }trace(xml.toXMLString()); /* 1 2 3 4 */ 모두 다른 값을 가지는 노드가 4개 추가되었습니다.. 저들의 속성을 모두 출력하려면 어떻게 할까요? for(var i:int = 1; i < 5; i++){ trace(xml.n.. 2007. 11. 16.
[AS3] XML의 속성(특성)을 가져오는 방법들 = 액션스크립트[ActionScript] 3.0 XML = var xml:XML = node1 node2 ; 위와 같은 XML 객체가 있을 때 root의 label값을 가져오는 방법은 아래와 같습니다.. trace(xml.@label.toString()); //rootLabel trace(xml.attribute("label").toString()); //rootLabel 의 label을 가져오는 방법은.. var list:XMLList = xml.node; //xml 자식 중 node를 뽑아서 XMLList(배열과 유사함)로 만듭니다.. trace(list[0].attribute("label").toString()); //nodeLabel1 trace(list[1].attribute("label").t.. 2007. 11. 16.
[AS3] XML 객체의 toString()과 toXMLString()의 차이 = 액션스크립트[ActionScript] 3.0 XML = XML을 문자열로 반환하는 메소드에는 toString()과 toXMLString()이 있습니다.. 이 둘의 차이점을 아래 예제로 확인해 보겠습니다.. =============================================================== var xml:XML = Adobe AIR Devpia.; trace(xml.toString()); // Adobe AIR Devpia. trace(xml.toXMLString()); // Adobe AIR Devpia. =============================================================== toString()은 노드내의 요소(값)를 출력하고,.. 2007. 11. 16.
이벤트를 쓰는 또 다른 방법 this.addEventListener(MouseEvent.MOUSE_DOWN, mouseEvent(this, eventHandler, '플생사모', '딴동네', '아폴로케이션')); private function mouseEvent(target:*, handler:Function, ...rest:Array):Function { var eventfunc:Function = function(...delRest):void { var fullArgs:Array = delRest.concat(rest); handler.apply(target, fullArgs); } return eventfunc; } private function eventHandler(event:MouseEvent, arg1:String, a.. 2007. 11. 15.
에러(Error) 처리 2 지난번 글에서는 플래시 플레이어가 스스로 알아서 에러를 알려줬었는데요.. 이번엔 개발자가 원하는 때에 원하는 메시지의 에러를 내는 방법에 대해 알아보죠.. 오류를 내기 위해 사용하는 명령어는 'throw' 이며, 사용법은 아래와 같습니다.. throw expression 여기서 expression은 일반적으로 오브젝트입니다..긴 말 필요없이 한번 띄워보겠습니다.. ============================================= throw new Error("제가 직접 띄운 에러입니다."); ============================================= 실행하면.. Error 클래스만 상속받으면 AS 3.0 문서에서 소개하는 사용자 정의 에러클래스도 간단하게 작성할 수.. 2007. 11. 15.
에러(Error) 처리 1 에러는 컴파일, 런타임, 동기, 비동기 및 알 수 없는 경우에 발생합니다.. AS 3.0에서는 ECMAScript (ECMA-262) Edition 4 에 준하는 새로운 Error 클래스를 제공하고 있는데요..각종 에러 처리와 사용자가 새롭게 정의한 에러 클래스(Custom Error Class)를 사용할 수 있습니다.. 일단 에러를 발생시켜 보죠.. ============================================= var str:String; trace(str.length); ============================================= 실행하면.. 위와 같이 간단한 구문만으로도 오류창을 볼 수 있는데요..str 변수가 null이기 때문에 length를 구할 수가 없.. 2007. 11. 15.
Timer 클래스와 ENTER_FRAME 이벤트 enterFrame을 이용해 진행시간을 조작할 수 있습니다.. 하지만 enterFrame은 컴퓨터의 성능에 영향을 받아 정확하지 않죠.. AS 3.0에는 Timer 클래스가 있는데요..기존의 setInterval() 이나 setTimeout() 보다 효율적이라고 합니다.. 시간에 관련해서는 Timer 클래스를 사용할 것을 권장합니다.. 아래는 Timer 클래스와 ENTER_FRAME 이벤트를 이용해 3초 후 결과를 보여줍니다.. ======================================================================= import flash.utils.*; import flash.events.*; //Timer 를 이용해 3초 후 결과 보기 var timer:Time.. 2007. 11. 15.
728x90
반응형
LIST