지구별에서 - Things Old and New :: 'Flex3.0' 태그의 글 목록

달력

72019  이전 다음

  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  

우리 문명은 무른모위에서  돌아가고 있다. (Our civilization runs on software.)  

 

프로그래밍 언어 C++의 창시자  비아느 스트루스트롭 (Bjarne ­Stroustrup) 가 한 말이다.

 

나는 온라인 쇼핑을 하고 온라인 뱅킹을 하고 온라인으로 뉴스를 읽고 온라인에서 주식거래도 한다.  

 

온라인으로 세금도 내고 온라인으로 여행계획을 짠다.   

 

온라인으로 항공기 좌석도 지정하고 온 라인으로 호텔도 예약한다.  

 

온라인으로 렌탈카를 예약하고 온라인으로 목적지의 일기를 확인한다.

 

온라인으로 지도를 보면서 온라인으로 다음날 갈 길을 안내 받는다.   

 

온라인으로 음악도 듣고 놓진 TV 방영을 온라인으로 "다시보기"한다.  

 

모르는 것이 있으면 온라인으로 구글에게 물어 본다.   

 

난 또 컴에 깔린 나모웹페이지 편집기로 강의록을 작성하고 PhotoDelux 로 사진을 편집하고 컴퓨트레이너로 실내자전거시뮤레이션 코스도 만든다.

 

윈도우즈에 끼어 있는 무비메이커로 동영상을 편집하고 윈도우즈에 끼어 있는 스파이더 게임을 즐긴다.  

 

가끔 엑셀로 표계산도 하고 마이크로소프트 워드로 문서 편집도 한다.

 

그러니 컴퓨터와 인터넷이 없다면 어떻게 살까?  

 

그런데 그 모든 것이 무른모에 의해서 돌아 가고 있는 것이다.   

 

내 컴퓨터에는 마이크로 소프트의 윈도우즈가 깔려 있고 인터넷인스플러러가 돌고 있다.

 

윈도우즈 미디아 플레이어가 동영상을 보여 준다.   

 

이 모든 컴퓨터에서 내가 하는 일들은 그 바탕에 눈에 보이지 않는 무른모 있어 가능한 것이다.

 

내 컴퓨터엔 무수히 많은 무른모가 깔려 있다.  어떤 것은 항시 쓰지만 어떤 것은 깔려 있다는 것도 모르는 것이 있다.  

 

Program Files 라는디렉토로엔 이름도 생소한 무른모들이 나열되어 있다.  언제 무엇 때문에 깔은 거지?  내게 반문해 본다.

 

어떤 것은 엄청히 비싼 값을 치르고 산 것도 있고 어떤 것은 프리웨어로 그냥 인터넷에서 내려 받아 깐 것도 있다.

 

이렇게 난 아니 우리 모두는 무른모에 의존해 세상을 살고 있고 따라서 오늘의 문명이 무른모에 의존해 굴러 간다고 한 말이 지나치지 않다는 것을 알 것이다.

 

전산망이 다운되면 주식시장이 마비되고 은행이 업무를 보지 못한다.   기차표도 사지 못하고 항공기도 예약할 수 없다.  그런데 그 전산망을 돌려 주는 것이 무른모다.   

 

그 무른모에 흠이 생겨 시스템이 붕괴되면 전기가 끊긴 도시와 같이 모든 것이 정지된다.

 

무른모가 없으면 전화도 할 수 없고 우리 휴대폰의 각종 기능도 보이지 않는 무른모 덕이다.  그것이 없다면 문자도 보낼 수 없고 인터넷 통신도 안된다.

 

그런데 그 무른모들은 안전하고 안정적이고 신뢰할 수 있을까?   

 

대답은 "No"  다.

 

2007년 1월호 Technology Review 에 쓴 Scott Rosenberg 의 글을 보자

 

...... 어디를 둘러 봐도 무른모는 예정 스케쥴을 지키지 못하고 불안하고 신뢰할 수 없고 사용하기 어렵다.

어떤 기관이 새 시스템을 도입하거나 낡은 시스템을 업글하려고 하면 엄청난 위험을 감수하지 않으면 안되게 되어 있다. 오늘날 대규모 IT 프로젝트는 자칫 그 기관을 수렁에 빠뜨려 꿈쩍도 할 수 없게 만드는 무서운 함정이 되기 일수다.

 

최근의 연구결과에 의하면 그런 프로젝트의 셋중의 둘은 예정계획일을 지키지 못한 채 지지부진하고 그 비용도 예산을 훨씬 초과하는 문제를 일으키고 있다.

 

미국 정부는 10여년 넘게 미 연방항공국의 새 시스템으로 업글을 계획하고 있으나 아직도 요원한 상태이고 FBI 는 그 과정에서 완전 혼돈의 늪에 빠져 붕괴하는 수모를 겪었다.

 

이 문제는 정부기관에만 한정된 것이 아니다. 기업에서도 상황은 마찬가지다.  

 

그중에 한 예만 봐도 알 수 있다.  맥도날드의 경영자들은 웹기반 새 경영시스템을 꿈꾸고 세계의 모든 맥도날드지점의 햄버거, 프렌치프라이, 치킨너겟의 실시간 판매량을 기록하는 시스템을 구축하려고 했다.

 

그들 역시 1억7천억불의 손해를 보고 그 무른모 프로젝트를 포기하고 총 10 억불의 손해를 감수해야 했다.

 

이런 무른모의 실패 사례는 수두룩하다. 2002년 미 국립 표준 및 기술연구소의 연구 결과에 의하며 무른모의 실패로 야기된 손해는 한해에 595억불에 달한다고 조사되었다.

 

그런데 그런 실패 사례는 비단 금전적 손해에 국한되지 않는다는데 문제의 심각성이 있다.  무른모의 실패는 사람의 삶에 끼치는 불행까지 아니 사람의 생명을 위협하는 데까지 미치고 있는 것이다.

 

1991년 걸프전쟁 당시 패트리오트 미사일은 무른모의 실패로 날아오는 스커드 미사일을 향해 발사되지 못했고 그 결과 스커드 미사일은 미군 막사에 떨어져 28명의 미군의 전사자를 내고 말았다. .................

 

****************************

아래의 코드는

플래시 비디오의 길이를 재는 Flex 의 ActionScript 3.0의 코드다.   Joey Lott 외2인이 지은 Cookbook 책(Flex2.0용)에 있는 것을 Flex3.0에 맞게 약간 수정한 코드다.

 

그런데 가끔 22초짜리 무비를 돌리면 2초만 돌다 서 버린다.  어딘가에 버그가 있는데 아직 찾지 못했다.  패트리오트 미사일을 제어하는 무른모였다면 어땠을까  2초만 날아가다 아군 진지에 떨어질지도 모른다.

 

 package {

    import flash.text.TextField;
    import flash.media.Video;
    import flash.net.NetConnection;
    import flash.net.NetStream;
    import flash.events.NetStatusEvent;
    import flash.text.TextFieldAutoSize;
    import flash.display.Sprite;
    import flash.events.Event;
   
    public class Main extends Sprite {
        private var _stream:NetStream;
        private var _video:Video;
        private var _playbackTime:TextField;
        private var _duration:uint;
       
        public function Main() {
            _video = new Video(640, 480);
            _playbackTime = new TextField();
            _playbackTime.autoSize = TextFieldAutoSize.LEFT;
            _playbackTime.y = 480;
            _playbackTime.text = "test";
            _duration = 0;
            var connection:NetConnection = new NetConnection();
            connection.connect(null);
            _stream = new NetStream(connection);
            _stream.play("http://mfiles.naver.net/9b4bac72613157e4c99a/data43/2009/2/1/28/stp80427-dcknsk.flv");
            var client:Object = new Object();
            client.onMetaData = onMetaData;
            _stream.client = client;
            _video.attachNetStream(_stream);
            addChild(_video);
            addChild(_playbackTime);
            addEventListener(Event.ENTER_FRAME, onEnterFrame);
        }

        private function onMetaData(data:Object):void {
            _duration = data.duration;
        }
       
        private function onEnterFrame(event:Event):void {
            if(_duration > 0 && _stream.time > 0) {
                _playbackTime.text = Math.round(_stream.time) + " / " +
                Math.round(_duration);
            }
        }
               
    }
}

 

 

이 파일에 의해 돌아 가는 플래시 무비는

 

첨부한파일이다.  

 

 2007년 겨울 미국여행 때 찍은 동영상이다.      

 

'IT 와 새로운 것들' 카테고리의 다른 글

윈도우즈 젖 떼기  (4) 2014.02.14
Windows 의 운명  (0) 2014.02.09
한망필망 (韓網必亡)  (4) 2013.12.22
좋아진 세상  (0) 2013.12.03
어른의 장난감  (2) 2013.11.21
우리 문명은 무른모위에서 돌아가고 있다. (Our civilization runs on software.)  (0) 2009.02.05
주사위 미리 보기  (0) 2004.07.05
Posted by Satsol 샛솔

댓글을 달아 주세요

GradientFill - 급변하는 IT 세계

 

정년퇴직을 하고 처음 인터넷 강좌를 할 때 첫 강좌에 쓴 강의록엔 아래와 같은 문장이 있다.

 

 

.......세상에는 뭘 가르쳐 주지 못해서 안달이 난 사람들로 가득 차 있는 것 같습니다.  이런 사람 덕택에 인터넷은 살아 있는 백과 사전입니다. 저도 항상 이 웹 페이지를 검색하면서 새로운 것을 배우고 또 새로운 소식에 접하고 있습니다.   저도 또한 그동안 배운 것만큼 되돌려 주려고 애 써 왔습니다. ......

 

그래서 또 더 되돌려 주려고 이 강좌를 쓴다. 

 

그 중에서도 플래시의 GradientFill 이라는 명령어가 있다.  여기에 들어가는 맺음 변수중에 행열이 있다.  공식 매뉴얼에도 그 명령어에 들어가는 맺음변수에 대한 설명이 별로 없다.  처음 전산학을 하는 사람이 그런 수학적 기법을 디자인에 적용한 것이 널리 쓰이게 되었으리라 추측된다. 

 

그러나 보통의 컴퓨터 그래픽 디지이너에게 그런 수학을 설명하기는 어려웠을 것이다.  그래서 매뉴얼은 행열대신 다른 맺음변수를 쓰도록 하고 우물쩡 넘어 갔으리라.   어느 외국 온라인 포럼에서 이것이 무엇이냐 아느 사람 없느냐고 찾고 있었다.  우연한 기회에 그것을 보고 내가 그 수학적 배경을 설명하는 시늉내기 하나를 만들어 올렸었다.  아래와 같은 플래시 무비다.

 

 

 

 

Flash MX 에 들어 있는 

GradientFill 명령어에 들어 가는 행열값과 그 효과를 보는

교육용 무른모.

Radial 을 선택하고

Scaling, Shearing 따위의 단추를 눌러 행열값을 변동시켜

그래픽에 미치는 효과를 알게 해 주는 교육용 무른모

  

 

 

 이 무른모를 만든 이후 Flash 는 MX2004, Flash7, Flash8 으로 진화하더니 ActionScript 3.0을 내어 놓으며 Adobe 사와 합병을  했다.

 

그리고는 Adobe사는  Flex2.0, Flex3.0 과  CS3, CS4 들 내어 놓고 있다. 

 

그리고는 그 명령어도 바뀌고 그 맺음변수도 달라졌다.

 

2006년 Flex 2.0 강좌를 쓸 때 만들었던 데모 프로그램을 오늘 FD3 으로 다시 컴파일해 보니 잘 빌드가 된다.   아래에 올린다.

 

 


 

이 데모에서는 기하적 변환은 넣지 않았다.

행열 대신 

width, height, rotation, tx, ty, fp(focal point) ratio 만 정해 주면 된다.

 

 

잠간 한 눈을 팔면 정신 없이 달려 가는 IT 기술을 따라가기 힘들다.

 

 

'IT > Flex 3.0' 카테고리의 다른 글

GradientFill - 급변하는 IT 세계  (0) 2009.01.30
해와 달 그리고 떠돌이별들  (0) 2009.01.27
Flex3.0 Project를 FlashDevelop에서 쓰는 법  (0) 2009.01.26
FlashDevelop3(FD3) 사용법  (0) 2009.01.25
무료 플래시 통합개발환경 구축하는 법  (0) 2009.01.25
Flex 3.0  (0) 2009.01.20
Posted by Satsol 샛솔

댓글을 달아 주세요

이 글은 2006-08-23 10:56:36 에플래시 클럽 에 올렸던 글이다.  

이것이 전산물리학회에 가기 전에 만든 Flex2.0 마지막 프로그래밍이다.

 

Flex3.0 프로그래밍 강좌를 위해 여기에 다시 가져 왔다.

 

 

 

해와 달 그리고 떠돌이별들

 

 


 

 

 

플래시로 꼭 한번 해 보려던 것이 태양계를 시늉내는 것이었습니다.  그러나 AS3 이 나오기 전까지는 플래시의 속도가 느려서 태양계를 시늉내기는 어려웠을 것입니다.

사실 태양계의 주성을 태양까지 10개인데  달이 비록 떠돌이 별은 아니라 해도 우리에게는 태양 다음 밝은 천체이니 포함시키지 않을 수 없지요 그러니  모두 11개가 됩니다.  내일 열리는  국제천문학 연맹 (International Astronomical Union)에서 3개의 떠돌이 별을 추가할 가능성이 많아졌으니 그것 까지 포함시키면 모두 14개의 질량체가 됩니다.  

이들이 모두 중력 서로작용을 하고 있으니  각각의 질량체는 13개의 다른 질량체의 중력을 받는 셈입니다.  이 힘에 의해서 일어나는 운동을 미분 방정식을 풀어서 자리길을 계산해 낸다는 것은 엄청난 계산량이 됩니다.  따라서 플래시 AS2.0으로는 꿈꾸기 힘든 상황이었습니다.  

AS3.0은 가능할까?  

가능하다는 것을 알게 되었습니다.   AS3.0의 가능성이 무진장이라는 말을 했지요.  사실입니다.  

이번 시늉내기 미니 태양계는 수금지화목토 성에 해와 달 까지 넣어 8체 문제를 다루었습니다.  전에 전산물리를 가르칠 때 Java로 시범 풀그림으로 태양계를 시늉내었었는데 그때에는 목성까지만  넣고 달은 빼었었으니 그 때 보다 달과 토성의 2체가 더 는 셈입니다.  

이번 시늉내기의 가장 큰 특성은 초기상태의 정확한 데이터를 사용할 수 있었다는 점입니다.  NASA 가 운영하는 JPL(Jet Propulsion Lab)에서는 태양계의 정확한 데이타를 무료로 제공합니다.  

그래서 이번 전산물리 학회 강연 날자의 태양계의 데이타를 초기 조건으로 하여 시늉내기를  만들었습니다.

여러가지 테스트 결과 보전량인 총 에너지,  각운동량 3 성분을 모니터한 결과로 얻은 RK4 미방해법의 시간 스텝을 1시간 3600초로 잡았어도 큰 무리가 없었습니다.  그리고 프래임 당 24 스텝 그러니까 정확히 1일의 움직임을 시늉내었습니다.   2006년 8월 31일 오전 9시(GMT+9000 )의 미니 태양계의 역학 상태에서 시작하여 이 미니 태양계는 운동을 시작하여 Stop 버튼을 누를 때까지 운동합니다.   그리고 그 정지한 시점의 일시를 보여 줍니다.

이 미니 태양계는 모델처럼 만들었습니다.   Isometric view 에다 그림자를 넣어 높이를 가늠할 수 있게 하였습니다.   보통은 perspective를 넣어서 멀리 가는 것을 작게 보이게 하여 3차원 시늉을 내지만 자리표 없이 어두운 공간에 공을 그린다는 것은 거의 의미가 없읍니다.

이 시늉내기에서 목성 토성, 달을 빼고는  모두 1 픽셀이  2백만 킬로 미터에 해당되는 스케일로 그렸습니다.   목성과 토성을 포함시키기 위해 목성은 거리 스케일을 1/3 로 줄였고 토성은 1/5 로 줄였습니다. 그리니까 토성은 이 시늉내기에서 보이는 거리의 5배로 태양에서 멀리 떨어져 있습니다.  

이 시늉내기에서 목성과 토성이 느리게 움직여 보이는 이유는 이 인위적인 스케일 때문입니다.  제대로 된 스케일이면 3배 5배로 빠를 것입니다.

  또 달은 지구에 너무 가까이 있어 같은 스케일로 그릴 수 없어 100배 늘려 그렸습니다. 그리니까 모델에서 보이는 거리의 1/100 이 실제 지구에서의 거리입니다. 여기에  다른 천체와 같은 스케일로 그리면 지구와 같은 점이 되어 버립니다.

풀그림은 이미 다 설명한 바 있는 내용입니다.  3차원 그리기는 이미 "Isometric view",  "빛과 그리고 그림자"에  RK4 는 "바보들을 위한 미방" 과 이어진 강좌에서 그리고 중력 서로 작용의 문제는 "떠돌이별의 운동" 에서 자세히 설명 드렸읍니다.  

AS3 특유의 새로운 내용은 새 depth management 기법입니다.  전산물리 학회가 끝나면 천천히 설명 드리겠습니다.  

강좌를 읽어 주셔서 감사합니다.

부록 초기 상태의 데이타

Vectors  Km, Km/s

Sun
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X = 0.000000000000000E+00 Y = 0.000000000000000E+00 Z = 0.000000000000000E+00
VX= 0.000000000000000E+00 VY= 0.000000000000000E+00 VZ= 0.000000000000000E+00

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X = 0.000000000000000E+00 Y = 0.000000000000000E+00 Z = 0.000000000000000E+00
VX= 0.000000000000000E+00 VY= 0.000000000000000E+00 VZ= 0.000000000000000E+00

Mercury
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X =-4.656646942490446E+07 Y = 2.388755607970573E+07 Z = 6.224910433736013E+06
VX=-3.224482514504295E+01 VY=-4.128465596918252E+01 VZ=-4.138068385701885E-01

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X = 4.095025367510563E+07 Y =-4.756466553370416E+07 Z =-7.643889233724162E+06
VX= 2.723358304612402E+01 VY= 3.412364873634338E+01 VZ= 2.886471685155101E-01

Venus
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X =-5.462745529812206E+07 Y = 9.246768282459620E+07 Z = 4.418218840158559E+06
VX=-3.027203183831064E+01 VY=-1.800605855426683E+01 VZ= 1.500799946800666E+00

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X =-1.012820942450337E+08 Y =-3.693780651054496E+07 Z = 5.340178102913741E+06
VX= 1.176203397382913E+01 VY=-3.305967021603297E+01 VZ=-1.131250378523294E+00

Earth
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X = 1.394079297299942E+08 Y =-5.808987662689899E+07 Z = 1.103829489812255E+03
VX= 1.096315833230429E+01 VY= 2.739085656828412E+01 VZ= 5.218572603382654E-05

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X = 1.346492558310886E+08 Y = 6.386068356105489E+07 Z =-1.193455289136618E+03
VX=-1.324884123955707E+01 VY= 2.681458909140181E+01 VZ= 6.681153393639505E-04

Moon
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X = 1.391892475844499E+08 Y =-5.841728941449566E+07 Z =-3.066210774254799E+04
VX= 1.181712152125688E+01 VY= 2.688998914755920E+01 VZ=-3.968845538769727E-02

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X = 1.342489279218244E+08 Y = 6.392828272990467E+07 Z = 1.851278635684401E+03
VX=-1.341409730480903E+01 VY= 2.586361036417885E+01 VZ=-8.735248296661524E-02

Mars
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X =-2.449852977829843E+08 Y =-2.213965291399480E+07 Z = 5.554334154690327E+06
VX= 3.085741667754069E+00 VY=-2.206147012938125E+01 VZ=-5.380527012458254E-01

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X =-2.125490330522144E+08 Y =-1.112056563053284E+08 Z = 2.891355715446621E+06
VX= 1.214002704062227E+01 VY=-1.939854748284263E+01 VZ=-7.046689877719707E-01

Jupiter
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X =-4.858829634313659E+08 Y =-6.446397166545756E+08 Z = 1.354883908805799E+07
VX= 1.027886068158904E+01 VY=-7.255886070799312E+00 VZ=-1.999309894703085E-01

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X =-4.412920183868400E+08 Y =-6.738746087994304E+08 Z = 1.267237999132797E+07
VX= 1.077748968529709E+01 VY=-6.548330491741995E+00 VZ=-2.139605303609002E-01

Saturn
2453978.500000000 = A.D. 2006-Aug-31 00:00:00.0000 (CT)
X =-9.783510734541842E+08 Y = 9.574791593359984E+08 Z = 2.226350198371911E+07
VX=-7.266762358286020E+00 VY=-6.932942266105382E+00 VZ= 4.105005792404426E-01

2454027.500000000 = A.D. 2006-Oct-19 00:00:00.0000 (CT)
X =-1.008656789111779E+09 Y = 9.276951449388936E+08 Z = 2.398812901606554E+07
VX=-7.048403399320413E+00 VY=-7.138480148569037E+00 VZ= 4.053184882737213E-01

//***********************************

Masses:

Sun
Mass (10^30 kg)       =    1.9891

Mercury
Mass (10^23 kg )      =     3.302

Venus
Mass (10^23 kg )      =     48.685

Earth
Mass, 10^24 kg = 5.9736

Moon
Mass, 10^20 kg        =  734.9

Mars
Mass (10^23 kg )      =    6.4185

Jupiter
Mass (10^24 kg)       =  1898.6

Saturn
Mass (10^26 kg)       = 5.68461037873


  

'IT > Flex 3.0' 카테고리의 다른 글

GradientFill - 급변하는 IT 세계  (0) 2009.01.30
해와 달 그리고 떠돌이별들  (0) 2009.01.27
Flex3.0 Project를 FlashDevelop에서 쓰는 법  (0) 2009.01.26
FlashDevelop3(FD3) 사용법  (0) 2009.01.25
무료 플래시 통합개발환경 구축하는 법  (0) 2009.01.25
Flex 3.0  (0) 2009.01.20
Posted by Satsol 샛솔

댓글을 달아 주세요

Flex3.0 Project를 FlashDevelop에서 쓰는 법

 

오늘 글에서는 FD3에서 Flex3 프로그램을 하는 법을 플래시무비로 설명한다.

 

앞글에서는 ActionScript3.0 만을 쓰는 프로젝트를 FD3 통합개발환경에서 수행하는 방법을 설명했다.

 

그러나 Flex는 Flex 고유의 코드로 개발해야 Flex3.0 SDK 에 포함된 기본적인 컴포넌트를 활용할 수 있다는 것을 Flex 2.0 강좌를 통해서 알았을 것이다.  

 

이 글에서는 Flex3.0 프로젝트를 FD3 IDE에서 수행하는 법을 플래시 무비로 보여 주려고  한다.

그 방법은 ActionScript3.0 프로젝트 수행법과 거의 같다.  

 

단지 처음 새 프로젝트를 만들 때 Flex3.0을 지정해 주어야  디폴트 Main.mxml  문서를 포함한 기본 틀(Templet)이 열리고  이 문서를 기점으로 프로그램을 짤 수 있다.

 

AS3.0은 이 문서에 삽입하는 법은 Flex 2.0 강좌에서 이미 설명한 바 있다.

 

여기서도 HelloFx.mxml 문서를 빌드하고 무비를 테스트한다.   

 

마지막 출판할 때에는 debug 모드가 아니라 release 모드로 빌드해야 무비의 파일 크기가 작고 swf 파일이 빨리 돈다.

무비를 따라가면서 방법을 익히기 바란다.

 

 

 

 

 이 것으로 일단 Flex3.0 SDK를 FlashDevelp 이라는 통합개발환경에서 프로젝트 수행의 기본은 알았으리라 생각된다.

 

 

 

'IT > Flex 3.0' 카테고리의 다른 글

GradientFill - 급변하는 IT 세계  (0) 2009.01.30
해와 달 그리고 떠돌이별들  (0) 2009.01.27
Flex3.0 Project를 FlashDevelop에서 쓰는 법  (0) 2009.01.26
FlashDevelop3(FD3) 사용법  (0) 2009.01.25
무료 플래시 통합개발환경 구축하는 법  (0) 2009.01.25
Flex 3.0  (0) 2009.01.20
Posted by Satsol 샛솔

댓글을 달아 주세요

FlashDevelop3(FD3) 사용법

 

먼저 명령창에서 Flex2.0를 써서 Actionscript 3.0(AS3) 프로그램하던 것을 FD3 IDE(통합개발환경)에서 어떻게 하는가를 보여 준다.

 

Flex 2.0 에 대한 설명은 전에 올렸던 아래의 플래시클럽의 강좌를 참조하기 바란다.

 

http://www.flashclub.co.kr/bbss/zboard.php?id=tutorial_09

 

아래와 같은 "Hello" 코드를 FD3에서 어떻게 빌드하고 결과물인 플래시 무비(swf 파일)를 Test 까지 하는가를 보여 준다.

 

 

 

package {

        import flash.display.Sprite;

        import flash.display.*;

        import flash.text.TextField;

 

        public class helloAS extends Sprite

        {

public var myText:TextField = new TextField();

 

                public function helloAS()

                {

        

myText.text = "물리로 배우는 플래시입니다.  이것은  Actionscript 3.0 입니다. " ;

myText.x = 50;

myText.y = 250;

myText.width = 350;

trace("trace 로 내 보낸  "+myText.text);

this.addChild(myText);

                }

         }

 

 

  

 

 

아래에 보여 주는 강의동영상은

 

1.AS3 프로젝트를 원하는 디렉토리에 원하는 이름으로 만들면 AS3 프로젝트 기본틀(templet)이 생긴다.

 

2.이 기본틀에는 Main.as 라는 기본 클래스가 따라 오는데 여기서부터  AS3 프로그램을  적어 넣으면 된다.  

 

이 강의에서는 위의 코드를 클립해다 옮기는 것으로 대신한다.  위의 코드에서는 클래스 이름이 helloAS 이므로 파일 이름을 helloAS.as로 바꿔 주어야 한다.

 

3.이 프로젝트를 빌드하기 위해서는 컴파일러 옵션을 셋팅해 주어야 한다. "Project" 메뉴창에서 "Properties" 창에 가서 이 옵션들을 설정한다.

 

4. 위의 코드에서는 trace 명령문이 있다.  이 trace의 출력은 output 창의 끝부분에 나온다.

 

 

 

 

 

 

 

'Play' 단추를 눌러 화살표 커서의 움직임을 따라 가면

FD3 IDE 에서 AS3 프로그램을 어떻게 사용하는가

쉽게 배울 수 있을 것이다.

 

 

 

'IT > Flex 3.0' 카테고리의 다른 글

GradientFill - 급변하는 IT 세계  (0) 2009.01.30
해와 달 그리고 떠돌이별들  (0) 2009.01.27
Flex3.0 Project를 FlashDevelop에서 쓰는 법  (0) 2009.01.26
FlashDevelop3(FD3) 사용법  (0) 2009.01.25
무료 플래시 통합개발환경 구축하는 법  (0) 2009.01.25
Flex 3.0  (0) 2009.01.20
Posted by Satsol 샛솔

댓글을 달아 주세요

Flex 3.0

IT/Flex 3.0 2009.01.20 00:46

Flex 3.0

 

매크로 미디아사 Flex 2.0을 Open Source 무료로 공개한지(2006) 3년이 되었다.

 

작년 가을에 미국에 여행중 들린 대형서점 Barnes and Noble 의 컴퓨터 관련 서가에 Flex 3.0 해설서가 나와 있는 걸 봤다.  

 

그러고 보니 프로그래밍을 손 놓은지 3년이 되어 간다.   경주에서 열린 국제 전산물리학회에 초청연사로 갔다 온 후엔 프로그래밍을 놔 버렸다.  

 

그 때 몇가지 주제를 시뮤레이션 해 보겠다고 마음속에 적어 둔 것이 있는데 한번 놔 버리니 다시 시작하는 것이 쉽지 않았다.  

 

Barnes and Noble 에서 Flex 3.0 책을 보니 불현듯 다시 프로그래밍을 하고 싶은 생각이 일었다.  

 

서울에 돌아 가면 시작해야겠다고 했는데 또 차일 피일 날이 갔다.  너무 머리가 굳어지기 전에 해야지 하고 어제 그 Flex 3.0 책을 아마존에서 주문했다.

 

다시 프로그래밍을 시작하려고 매크로미디아 사이트에서 Flex 3.0 SDK 를 다운 받아 깔았다. 

 

또 FlashDevelp 에서 FlashDevelp 프로그램(역시 오픈소스로 무료)을 내려 받아 깔았다. 

 

간단히 테스트해 보니 Flex 2.0 으로 제작하였던 플래시 프로그램이 잘 돌아 간다.   

 

이 두 프로그램을 같이 쓰면 플래시 프로그램을 제작하는 통합개발 환경을 무료로 얻을 수 있다. 

 

100만원이 훌쩍 넘는 매크로미디아사의 Flex Buidler 와 같은 개발툴을 무료로 설치할 수 있다.

 

 평생 그랬듯이 배우는 것은 가르치며 하는 것이 가장 좋은 방법이다.  

 

그래서 이 카테고리에 "Flex 3.0  과 ActionScript 3.0" 를 강의할 생각이다.  

 

자전거 여행이 주 주제였던 이 블로그가 당분간 프로그래밍 강좌로 바뀔 것 같다.   

 

첨부한 파일은 새 툴로 제작한 유명한 프랙탈 그림이다.

 

 


 

 

만델부롯의 쪽거리(프랙탈)그림을 그리는데 걸리는 시간을 재어 보기위한

플래시 그림이다.  다시 시작하면 새로 그리는데 걸린 새 시간이 표시된다.

이 그림을 그리기 위해 엄청난 계산을 하는데도

내 컴퓨터로는 1초도 안걸린다.

 

 

 

 

'IT > Flex 3.0' 카테고리의 다른 글

GradientFill - 급변하는 IT 세계  (0) 2009.01.30
해와 달 그리고 떠돌이별들  (0) 2009.01.27
Flex3.0 Project를 FlashDevelop에서 쓰는 법  (0) 2009.01.26
FlashDevelop3(FD3) 사용법  (0) 2009.01.25
무료 플래시 통합개발환경 구축하는 법  (0) 2009.01.25
Flex 3.0  (0) 2009.01.20
Posted by Satsol 샛솔

댓글을 달아 주세요