집634 베지어 곡선 그리기 Visual Studio 2005 Express의 managed C++을 이용하여 제작되었다. 베지어 곡선 함수는 이미 MFC때부터 있었고 당연히 managed C++에서도 지원한다. 그래서 아주 쉽게 제작. 아쉬운 점은 제어 포인트의 추가/삭제를 반영하지 못했다는 점. 교수가 1시간만에 짜라는 바람에... 실행하려면 Visual C++ 2005 Redistriable Package를 설치해야 한다.http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=en 2006. 6. 13. 팔레스타인 지극히 중립적, 아니 중립적이란 있을 수 없지. 지극히 현실적, 그래도 추할 정도로 적나라하게 현실을 보여주는 이야기. 팔레스타인들을 인터뷰하고 만화를 그리려는 작가, 지겹게 팔레스타인 이야기를 외부인에게 전하지만 변하지 않는 현실에 좌절하는 팔레스타인들, 우월한 이스라엘인들. 그래서 더 사실적으로 다가선다. 사실상 신문에서 듣는 이야기는 너무나 감상적인, 그냥 소설일 뿐. 만화지만 칼처럼 머리를 찌른다. 내가 느낀 기분이란... 아마 이스라엘인들은 이제 나치들을 이해할지도 모르겠다... 그런 생각이다. 팔레스타인들의 열악한 현실과 그렇게 몰아가는 이스라엘인들... 그러나 변화할 수 없는 현실. 폭력으로 해결되는 사회. 대화는 불가능하다... 기존 이권자들... 현실은 복잡하다. 나 하나도 추릴 수 없다.. 2006. 6. 13. 어둠의 저편 스포일러 주의! 한 소녀가 중국으로 유학을 가기 전에 생긴 일. 환상이 간간히 언급되는데, 명확히 비밀을 파헤쳐주지 않는다. 하기야 이 사람이 스릴러 작가는 아니다. 어쩌면 자매의 우애 회복을 위한 모험담(동생의 일방적인)으로 봐도 되겠다. 그래도 이 필력이라는 것이 실체가 있는 것 같다. 사실상 수수께끼만 늘어놓고 끝나는 이 책을 - 뭐하나 속시원히 해결되지 않는다 - 끝까지 보고도 작가에 대한 원망이 생기지 않았으니 말이다. 2006. 6. 13. 십자군 이야기 십자군 이야기의 서양적 관점을 최대한 동양적으로 이끌어놓고 보는 책. 만화라서 보기도 쉽다. 새로운 관점에서 기존 사실을 보는 재미는 상당하다. 저자의 많은 공부가 엿보인다. 단 1권까지만. 2권부터는 농담도 더욱 썰렁해지고 길어진다. 공부를 많이 해서 그런가. 말하고 싶은게 많아서 그런지 이야기가 계속 새나간다 - 진행이 안된다는 뜻. 게다가 프롤로그가 너무 길고, 그래서 더 지루하다. 역사의 반복을 말하라고 미국을 빗대는데, 이것도 너무 많이 쓴다. 저자는 아무래도 간결의 힘은 잊은 채, 독자에게 자신이 발견한 새로운 관점을 그저 주입해주고 싶은 듯하다... 이쯤되면 자랑? 출판사는 5권까지 발매될 것이라고 했지만, 3권도 발매되지 않은 상태. 그러나... 이제는 그리 기대되지 않는다. 비슷한 성격의.. 2006. 6. 13. 세상의 중심에서 사랑을 외치다 여름의 긴 낮, 겨울의 긴 밤을 당신은 여기에 잠든다. 백년 후에 나도 결국 당신 곁에 잠들겠지. 편안히 그날을 기다려주오. 책에 있는 시. 2천년 전의 시라는데 사실 여부는 확인 불가이지만, 마음에 생생히 와닿는다. 그냥 읖조리기만 해도 마음이 차분해지고 언젠가의 그날을 기다릴 수 있을 것 같다. 그런 당신이 없는 건 아쉬운 일. 현실적인 결말도 상쾌하다. 슬플까? 아니다. 그게 더 괜찮다. 연인이 순애보를 강요한 건 아니지 않은가? 2006. 6. 1. 스피드 이제 이 작가의 책은 그만 봐야겠다. 플라이, 대디, 플라이의 업그레이드 같은 책. 확장판? 주인공의 성별이 바뀌고, 훈련 과정이 여성화되었다. GO의 그 상쾌함은 대체 어디로... 박순신의 터프함도, 야마시타의 굉장한 불운도 잦다 보니, 하품이 나올 뿐... 2006. 6. 1. 강철군화 강철군화로 노동자의 얼굴을 짓이긴다... 자본가와 노동자와의 대결을 전쟁으로 그려낸 소설. 학살과 복수, 그래서 피가 넘친다. 자본주의 국가가 제국주의로 이전하는 과정을 굉장한 문체로 예언했다. 흥분되는 소설. 노조 간의 갈등을 더욱 증폭시키는, 지금도 생생히 존재하는 귀족 노조들의 존재는 나를 뜨겁게 한다. 착취해서 번영하는 이들! 그러나, 소설처럼 군대를 퍼부어 학살을 늘어놓는 자본주의는 없다. 대부분의 자본주의 국가는 사회주의를 가미하고 있으니... 그러나, 신자유주의는 이 모든 것을 헤집으려 한다. 노조 자체를 싫어하는 노동자들. 부유층을 섬기는 빈곤층, 우경화되는 국가들 - 특히 아시아... 과연, 강철군화가 도래할까? 그건 부정적이지만, 최소한 노동자의 운명은 이제 해가 지려한다... 살아남으.. 2006. 6. 1. 도쿄 타워 두 명의 대학생과 두 명의 연상 여성과의 서로 다른 사랑 - 재미있게도 둘다 불륜 - 을 마음에 와닿게 그려낸 책. 읽으면서 드라마를 보는 듯한 그런 느낌에 빠졌다. 한쪽은 격렬한, 또 한쪽의 잔잔한 사랑이 교대로 그려지는 것이 정말 서정적이다. 남자 주인공들을 화자로 설정하고, 마음을 그려내는 것이 마치 내가 그 마음인 것인양 느낄 정도. 특히 불륜이 들켜 집으로 돌아오는 비참한 심정의 주인공. 해보지도 않은 불륜에 왜 내가 그리 공감이 가는지... 안개에 빠진 듯한 결말이 더욱 여운을 남게 한다. 안타까운 내 젊은 시절이여. 불륜은 커녕, 순정만 갖다가 지났으니... 지나면 후회고, 앞으로는 안개밭이다. 그나마 이런 책이 현실을 잠시 잊게 한다. 사랑을 생각하려는 이의 성서가 될만한 책. 2006. 5. 23. 쥐 2차 대전, 유태인들이 겪었던 아우슈비츠 대학살을 그려낸 책. 작가이자 아들인 아트 슈피겔만이 홀로코스트를 체험한 아버지로부터의 생생한 증언을 그대로 그려냈다. 책에서 유대인은 그저 피해자로만 그려지지 않으며 - 심지어 그의 아버지는 분명히 문제있어 보인다. 상당히 중립적인 시각으로 이 비극을 그려낸 덕에 더욱 사실적이다. 아주 인상적인 구절이 있다. "그저 무작위로 죽을 뿐이다" 책은 각 민족을 동물에 비유하여, 거친 스케치와 단조로운 선 덕에 묻혀버릴 뻔한 개성을 살렸다. 자세한 묘사를 일부러 피함으로써, 오히려 독자의 상상을 더욱 불러일으킨다. 중국이나 일본이 역사를 왜곡해서 여기에 대항하려는가? 한국도 그에 못지 않게 역사를 왜곡했지만(베트남 학살이 역사책에 실리는 날이 금방 올까? 그러나 나 또.. 2006. 5. 23. 온라인 도서관리 4학년 1학기 과목인 소프트웨어 개발방법론의 프로젝트...라고 하지만 너무 약소하다. 교수가 개발 사양으로 준 것 CBD를 표방하지만, 교수는 소스 퍼오기를 권장하니 이 과목의 진심은 충분히 파악되었다. 온라인 도서 관리가 나의 조에게 주어졌는데 조원은 HTML도 모르고, 교수가 제공하는 FTP는 방화벽으로 교실(!) 내에서만 접속되고, DB는 윈도우즈 계정으로 로그인한 다음에 접속되고... 그저 노가다 뿐이었지만, 배운게 있다면 왜 모델 1의 유지 보수가 쉽지 않느냐 하는 것을 몸으로 익혔다. 하나의 서블릿에 모든 기능을 몰아넣다보니, 너무나 덩치가 크고, 관리도 어려웠다. DB 연결의 난점으로 해법을 찾은 것이 XML 파일의 입/출력을 통한 데이타 관리. 그러나 이에 따라 멀티스레드는 처리 불능..... 2006. 5. 22. 페르세폴리스 만화의 힘이 머리를 때리는 작품. 이란의 샤 왕조가 무너지는 혁명 와중의 일을 사실감있게 그렸다. 빵으로 백조를 만들어준 삼촌도 죽고, 고문으로 손톱이 뽑힌 부모 친구도 죽고, 작가의 친구도 미사일에 직격되어 죽지만, 그들은 여전히 이란에서 살아간다. 악화가 앙화를 초래한다는게 어떤 것인지 책을 보면 절실히 실감할 수 있다. 여러 충격적인 장면들이 있다. 특히 갓 사춘기가 된 소년들에게 플라스틱에 금칠한 열쇠를 나눠주고, 이걸 갖고 죽으면 천국에서 미녀와 성찬이 기다리고 있다고 꼬인 후 지뢰밭으로 내모는 장면은 아직도 잊혀지지 않는다. 어떤 사람의 인생이란 무슨 값어치를 지니는가. 여기 이렇게 느슨하게 살고 있는 나는 무엇일까. 재수좋게, 어디에 태어났는가. 그런 것만으로 인생이 정해진다. 그런데서 태어.. 2006. 5. 22. 플라이, 대디, 플라이 야... 이건 만화네... 소설을 읽으면서 저절로 들어버린 생각. 어쨌든, 이걸 원작으로 한 만화도 있다. 레볼루션 No.3와 맥락이 닿아있다. 바람의 파이터나 다름없는 박순신이 일본의 전형적인(이른바 스테레오 타입) 가장을 인간 병기로 만들어간다. 그래서 나오는 훈련, 약간의 자기 만족, 초월, 용서... 이것까지 전형적. 그냥 머리가 무거울 때 볼만한 책. 2006. 5. 22. 코인로커 베이비스 이 책은 환상 소설이나 진배없다. 좀처럼 있을 법하지 않은 일들이 주마등처럼 펼쳐진다. 그런데도, 두 주인공 키쿠와 하시는 생생이 살아서 나를 기대하게 했다. 좁디 좁은 코인 로커에 버려졌으나 살아남은, 유이(有二)한 그들이 세상에게 복수하는 것이 만화처럼 펼쳐진다. 각 장마다 각자의 이야기를 교대로 풀어나가는 것이 더욱더 독자를 조바심나게 한다. 결말에서 하시의 선택들은 마치 싯타르타가 보리수 밑에서 겪었던 고뇌를 생각나게 할 정도로 인상적. 키쿠의 뛰어난 육상 능력과 하시의 음울한 노래 솜씨. 뭔가 안 맞지만, 그래서 그 둘은 더 잘 묶여진다. 키쿠가 열혈남아라면, 하시는 쥐스킨트의 향수에 등장했던 주인공의 분위기. 꽤 두꺼운 책인데(700쪽), 작가가 그려내는 이미지가 머리 속에 너무나도 잘 그려지.. 2006. 5. 19. 삼각형 그리기/이동/반전 2차원 상에서 삼각형을 그리고, 이동시키고, 반전(mirror)시키는 프로그램. 숙제이다. 간단한 문제지만 처음에 교수가 시간 제한을 두고 수업 시간에 시키는 바람에 개판으로 짜서, 오늘 술먹고 온 김에 완전히 뜯어 고쳤다. 실행 파일 프로젝트 파일 닷넷 라이브러리가 없어 실행이 안될 경우 여기서 다운받고, 실행 파일이 위치한 곳에 복사해야 한다: VS2005로 컴파일되었으며, Managed C++을 사용했다. 프로그램을 실행시키면 삼각형이 표시된다. 기능은 다음과 같다.Shape: 꼭지점이 표시되며, 이를 드래그하여 삼각형의 모습을 바꿀 수 있다.Mirror: 삼각형을 X축으로 반전시킨다.Translation: 삼각형 전체를 이동시킨다.Reset: 초기화 2006. 5. 18. 시모츠마 이야기 아주 귀여운 모모코의 청춘 이야기. 로코코의 매니아가 되어, 닥치는대로 아버지를 속여 뜯어낸 돈으로 값비싼 '베이비 더 스타 샤인 브라이트' 브랜드의 로리타 의상에 심취한 아가씨. 어리고 홀아버지 밑에서 자랐지만, 나름대로의 단단한 인생관을 갖고 있는 아가씨가 양키 아가씨인 이치고를 만나 겪는 일상 이야기가 아기자기하게 그려진다. 이 책을 읽고, 정말 이런 딸이 있을 경우를 대비해서 돈을 열심히 벌어야 겠다는 생각이 들었다. 그녀의 행복인 로리타 의상 쯤은 마련해줄만한 아빠가 되어야하지 않겠는가. 잠옷에서 신발까지 로리타 풍으로 차려입는 건 만만한 일이 아니다. 정말 힘들고 엄격하고 귀찮아하는 성격이면 시도도 하지 말아야 할 정도. 약간의 편집증도 필요할 정도. 빠징코 대박의 화신이자 수예의 대가인 그녀.. 2006. 5. 17. GO 아버지는 프로 권투 선수, 아들도 강하다. 어머니는 여성적이지만, 뒤늦게 페미니즘에 눈을 뜬다. 그들은 재일교포지만 그런 건 중요한 게 아니다. 이 소설은 본질적으로 연애담에 관한 것이다. 소설을 읽는다는 건 좋다. 남의 인생을, 단조롭지 않은 그런 인생을 롤러코스터 타듯이 즐겨볼 수 있다. 물론 내 인생이 아니니 책을 덮는 것도 자유다. 그래서 재밌는 소설이 좋다. 이 소설은 재밌다. 웃음이 나온다고 재밌는 소설은 아니다. 책 속의 인생에 공감이 되어야 한다. 배경 따위는 상관 없다. 책상에 재떨이를 넣고 다니는 범상치 않는 싸움닭 소년이 아버지한테 구타에 가깝게 얻어맞으면서도, 왜 미워할 수 없을까. 가장 친한 친구가 다른 소년의 칼에 동맥이 찢어져 죽었는데 왜 화나지 않을까. 여자친구가 한국인은 피.. 2006. 5. 16. Java API for XML http://www.perfectxml.com/JAXP.asp 이 글은 위 링크의 문서를 기초하여 작성되었다. DOM 방식의 예제가 먼저 있으나, 오픈 API 기반은 SAXON 예제도 포함되어 있다. DOM은 문서 전체를 파싱하여 메모리에 로드하므로, 문서가 클 경우 SAX 형식으로 파싱해야 한다. 작성한 예제는 다음과 같다 넷빈 5.0으로 작성했으며, 톰캣 5.0이면 돌릴 수 있다. 예제는 회원 가입 시 XML에 저장하고, 회원 여부는 동일한 XML을 검색하여 수행한다. 먼저 다음 라이브러리를 임포트해야 한다. import org.w3c.dom.*; import javax.xml.parsers.*; import javax.xml.transform.*; import javax.xml.transform.d.. 2006. 5. 9. AJAX로 구현한 동적 웹사이트 학교 프로젝트로 하게 된 웹 프로그래밍. 나는 뷰 측을 맡았고, 자바 스크립트 코딩을 하게 되었다. AJAX가 자바스크립트의 노가다 극한을 요구하다보니, 자바스크립트만 천줄이 넘는다... 덕분에 자바스크립트의 파워를 충분히 만끽했다. 디버깅만 빼면 정말 훌륭하다. 교수는 스트럿츠 프레임워크를 쓰도록 강요했는데, 나는 뷰를 AJAX로 구현했으므로 정적으로 업데이트되는 태그 라이브러리 등은 쓸 수 없었다. 스트럿트를 이해해야하는 필요성을 비껴나갔다고나 할까? 다만 뷰이다 보니 모델/컨트롤러가 없으면 테스트하기도 힘들고, 나중들어서야 동작시켜볼 수 있으므로 괜시리 고생할 가능성이 컸다. 그런 피해를 막기 위해, 쿠키와 서블릿을 이용해 자체적으로 테스트 모델을 만들어서 모델/컨트롤러 측 결과물이 전혀 없는 상태.. 2006. 5. 1. Cohen-Sutherland Algorithm for line clipping 학교 숙제. 간단한 문제라고 생각했으나, 알고리즘과 실제는 좌표계가 달라 매우 혼동을 일으켰다. 게다가 Managed C++로 작성했는데 컨테이너도 익숙하지 않고 참조형 사용도 잘 안되어 매우 당황스러웠다. 참조형에 대한 이해가 필요하다 -_-; 이게 잘 안되어서 계속 배정으로 값을 넣을 수 밖에 없었다. 덕분에 코드가 참 할 말이 없다.... 이렇게 혼란스럽게 코딩해본 적은 처음인 것 같다. 좋은 경험을 했다. 알고리즘에 대한 쉬운 설명은 역시 위키피디아. http://en.wikipedia.org/wiki/Cohen-Sutherland 알고리즘에 대한 자세한 이해는 여기로. 복잡해보여도 조금만 집중하면 쉽게 이해할 수 있다. 그리 어려운 알고리즘은 아니다. 기울기에 대한 지식만 있으면 된다. http.. 2006. 4. 16. 뷔퐁의 바늘 파이썬 2.4로 작성했다. 참 http://www.pygame.org 에서 pygame 라이브러리도 다운받아 설치해야한다. 뷔퐁의 바늘(Buffon's needle)은 바늘 크기보다 크게 간격을 잡고, 양 끝에 닿는 수자를 측정한 것이 점점 3.14에 근접해가는 것을 보여준다. 이 프로그램에서는 바늘을 10만번 던지고 그중 32%쯤 양 끝에 닿는다. 2006. 3. 29. AJAX 두번째 샘플 첫번째 샘플을 뜯어보면서 많은 이해를 할 수 있었다. 간단하게나마 구조를 파악할 수 있었다. 이 샘플은 첫번째 샘플을 약간 변형한 것이다. 제목과 주소를 입력받아 로딩없이 웹페이지에 추가된 목록을 보여준다. 2006. 3. 22. 틱택토 학교숙제로 작성한 간단한 프로그램. 숙제 요구 사항이 그저 끝난 후 재시작을 할 수 있게 하는것이라 완성도는 엉망 -_-; 원본은 '변영철 교수의 비주얼 C++' 강의에 나온 소스인데, 그 소스가 참으로 복잡하게 짜여져있어 나에 맞게 수정했다. 어째서, 0과 O을 같이 쓰고, 가끔 전역 변수와 지역 변수를 오가면서 플래그를 체크하는데 참으로 혼란스러웠다. 2006. 3. 21. 무료 통계 소프트웨어: R 가볍고 빠르고 강력하면서도 무료로 배포되는 통계 소프트웨어인 R. http://www.r-project.org 통계학 수업의 강의 계획서에는 R을 써본다고 했는데, 거의 언급을 안한다니 안타까울 뿐이다. 시험 시간에 이걸 사용하면 쉽게 계산 문제를 풀 수 있을테니 - 노트북 허용! - 틈틈이 연습해놓아야겠다. 템플릿도 만들어놓고 말이지... 다운로드를 하려면 아래 링크 중 어디든 골라 binary를 선택하면 된다. Korea 도 있다. http://cran.r-project.org/mirrors.html 아래 프로그램은 R을 더욱 쉽게 쓰게 해주는 애드온이다. 홈페이지를 가도 이걸 구할 수가 없다... 교수에게 직접 받아온 파일. 김태수 교수의 '통계학(R활용)'(자유아카데미,2006)에서 그 쓰임새를 .. 2006. 3. 15. 원과 파이 그리기 설정된 크기의 원을 그리고, 그 위에 역시 설정된 크기의 파이를 그리는 프로그램. 역시 숙제이며, managed C++로 짜여졌다. 참, .net 2.0 필수 2006. 3. 10. 행렬 곱셈 계산기 학교 숙제로 나온 문제. managed C++로 해보았다. .net 과 native C++을 결합할 수 있다는데... Visual Express 2005를 이용했다. 웬지 C# 그 자체가 되버린듯한 느낌. 포인터가 없고 참조형 연산자인 ^ 덕분에 많은 검색이 요구되었다. 그래도 응용 프로그램만들기는 쉽다. 2006. 3. 10. C++를 이용한 게임 상태 관리 현재와 같이 메시지 기반의 멀티 태스킹 환경에 효율적으로 적용할 수 있는 게임 엔진. 콘솔용으로 만든 테트리스를 렌더링 엔진으로 돌리려고 했는데, Ogre3D가 callback 기반이다보니 소개 -> 메뉴 -> 게임 -> 메뉴 로 반복되는 과정을 포현하는데 너무나 많은 플래그가 소용되었다. 역시 이 문제또한 선각자들이 이미 고민했던 것으로, 해결법 또한 비교적 쉽다. 게다가 완전히 컴파일되는 코드까지 첨부되어 있다. Managing Game States in C++ 원문 http://tonyandpaige.com/tutorials/game1.html 게임에서 여러 다른 상태가 있다는 걸 몇년 전 한 데모를 보면서 알게 되었다. 이 데모란 것이 미출시 게임에 대한 맛보기판이 아니라, scene 에 서 본 .. 2006. 2. 21. 테트리스 그 동안 공부한 것을 테스트해보기 위해 급히 만든 테트리스. 현재는 도스 용이다. 네트워크 모듈도 붙일 예정(이건 동훈이가 함)인데, 혼자하는 것보다 생각해야할 것들이 많다. 이래저래 많다. 코드가 조금 긴데, 나름대로 확장성(임의 개수의 블록, 임의 크기의 게임 판, 임의의 플레이어 수)을 생각하느냐 그런 듯 싶다. 별 기능도 없는데 코드가 길어져서 웬지 무안하다. // 싱글, 멀티 플랫폼 분리. 자동 블록 떨어지기 추가. 완전 메시지 방식 // for network play test 그건 그렇고 메모리 누수는 없는지 걱정된다. 처음에 웬일인지 프로그램이 종료되기 위해 5초 이상 걸리는 일도 있어서(지금은 코드를 엎어서 다행히 해방), 가능한 메모리 관리를 적게 할 수 있는 STL을 적극 사용했다. 최.. 2006. 2. 13. 이전 1 ··· 19 20 21 22 23 24 다음