Curriculum Vitae

EDUCATION

Graduate School, Seoul
National University,
Seoul, Korea

Ph.D. in Architectural Engineering

26, Feb. 2002

Dissertation : “A Study on the Integrated Control of
Radiant Floor Cooling and Dehumidification in Apartment Buildings”

Graduate School,
Seoul National
University, Seoul, Korea

M.S. in Architectural Engineering

26, Feb. 1997

Thesis : “A Study on the
Time-Division Hot Water Supply for Energy Saving of Radiant Floor Heating
System”

Seoul National
University, Seoul, Korea

B.S. in Architectural Engineering

26, Feb. 1993

Teaching Experience

Hankyong National University, Ansung city, Kyonggi-do, KoreaArchitectural Environment
Engineering (1998-2000)

Kyungwon University, Sungnam City, Kyonggi-do, Korea
Mechanical Equipment (1999)

Professional Experience

Aug. 2007 – Aug. 2008 :  Visiting Scholar

College of Architecture and Urban Planning, University of Michigan, USA

Apr. 2002 – Present:Assistant Professor

Dept. of Architecture and Building Engineering, Kunsan National University, KOREA

Apr. 1999 – Jan. 2002
:Assistant Researcher

Engineering Research Institute, Seoul National University, KOREA

Jun. 2000 – Jun. 2001
:Teaching Assistant

Dept. of Architecture, Seoul
National University, KOREA

FELLOWSHIPS

Jan. 2006 – Present : Member of Korean Green Building
Council, and member of directors

Feb.
2003 – Present : Member
of
the Korean Housing Association

Apr.
1997- Present : Member
of
the Society of Air-Conditioning and Refrigerating Engineers of Korea

Apr. 1997
Present
:
Member of the Architectural
Institute of Korea

[VBA]macro와 vba

매크로 기록은 조작한 명령을 기록하는 것으로 처리를 자동화할 때 편리한 기능이다. 조건에 따라 처리를 분기시키거나 원하는 값을 구할 때까지 계산을 반복시키는 복잡한 처리는 불가능하다. 이것은 VBA의 범주로 넘어간다. VBA를 시작한 사람은 우선 매크로 기록에서 전체를 이해하고, 다음에 Visual Basic Editor를 사용하여 코드를 추가/수정하는 것으로 원하는 매크로로 바꾸는 것이 VBA를 이해하고 실행하는데 효과적인 방법이다.

출처 : Katsuyuki Watanabe et al, 감춰놓고 혼자보는 엑셀비밀노트 970, p.652

ASCII(Plain Text) vs. Binary Files

ASCII File
ASCII = American Standard Code for Information Interchange
글자의 내용만 있고, 형식을 저장하지 않는다(plain text).
메모장과 같은 Text Editor로 보기와 편집이 가능하다.
호환용 형식(interchange format)으로 많이 사용된다.
파일의 크기가 커질 수 있다.
Character Set의 문제(encoding-decoding)가 발생할 수 있다.(Unicode, EUC-KR 등)
관련 확장자 : TXT, XML, DXF, CSV, PS
관련사이트 : Power of Plain Text

Binary Files
자료를 0과 1의 형태(이진 즉 binary)로 저장한다.
소프트웨어 제작사의 노하우가 숨어져 있다. 일반적으로 그 구조가 어떻게 되어 있는지 알 수 없다. 따라서 특정 편집기를 통해서 열기와 편집이 가능하다.
문서 파일의 경우, 글자의 내용뿐만 아니라 형식(글자체, 모양 등)도 저장한다(formatted text, styled text or rich text).
관련 확장자 : HWP, DOC, DWG, XLS, PDF

파일경로와 파일이름

1. 프로그램이 시작된 경로를 알아내기
– App.Path 함수를 사용한다.

2. App.Path 사용시 주의할 점
– 루트 디렉토리일 경우 “\”를 함께 반환한다.
– 루트 디렉토리가 아닐 경우, 끝에 “\”가 없다.

3. 더 좋은 App.Path (출처 : http://www.freevbcode.com/ShowCode.asp?ID=878)
항상 끝에 “\”가 붙게 한다.

사용예

4. 프로그램 시작 경로에서 파일명 가져오기

사용예 : FormData_5장.txt를 프로그램시작경로에서 찾는다.

5. 전체파일명에서 경로만 뽑아내기

호환성 : Visual Basic 5, 6

Science

No amount of experimentation can ever prove me right; a single experiment can prove me wrong.

Science without religion is lame, religion without science is blind.

 – Albert Einstein

Nothing in life is to be feared, it is only to be understood. Now is the time to understand more, so that we may fear less. – Marie Curie

3차원 벡터(또는 점)에 대한 구조체(structure)

3차원 벡터(또는 점)에 대한 구조체(structure)를 아래와 같이 작성할 수 있다.
<특이점>
1) 벡터의 성분은 X, Y, Z로 명백하므로 그냥 Public 변수로 설정함
2) 배열로 선언된 벡터 성분과도 호환되도록 함
– VB.NET의 Default Property를 이용함
– 사용예 :

구조체 소스코드

Intersection with a ray and an AABB

광선과 AABB가 교차하는지를 평가하는 함수이다. 이 함수는 Stefan Zerbst의 책 “3D Game Engine Programming”의 138~140쪽에 나오는 ZFXRay::Intersects 함수를 VB.NET으로 변환한 것이다. 이 함수의 원천적인 알고리즘은 Andrew Woo의 알고리즘에서 비롯한 것이다.

[Webpage]3D Object Intersection

3D Object Intersection

3차원 객체들의 교차(혹은 충돌)여부를 검사하는 것은 그래픽관련 프로그래밍할 때, 매우 빈번하게 접하는 문제이다.
이런 문제들을 한 자리에 일목요연하게 정리한 웹페이지이다.
위치 : http://www.realtimerendering.com/int/
자체 설명
This page gives a grid of intersection routines for various popular
objects, pointing to resources
in books and on the web. For a unified static and dynamic object
intersection and distance library (non-commercial use only, though),
see
the TGS collision system. The most comprehensive books on the subject are Geometric Tools for Computer Graphics (GTCG) and Real-Time Collision Detection (RTCD); the former is all-encompassing, the latter more approachable and focused.

DoEvents함수를 효과적으로 사용하기

DoEvents함수는 CPU-intensive code를 예방하는 방법 중의 하나이다.
수치해석과 같이 CPU계산량이 많은 응용프로그램일 경우, 계산에만 몰두하느라 다른 응용프로그램을 사용할 수 없게 된다. 해당 프로그램도 응답이 없어 마치 죽은(?) 듯한 반응을 보인다. 이를 방지하기 위해서 다른 응용 프로그램에도 CPU사용을 허락하는 것이 DoEvents함수이다.
이렇듯 좋은 취지의 함수이지만, 이 함수를 남발할 경우 오히려 계산속도가 현저히 떨어지는 상황을 맞이할 수 있다. 그럼 어떻게 할 것인가?

1)DLL 함수 선언

2)함수 사용

이렇게 하면 입력값이 있을 때만, DoEvents 함수를 호출한다.
그냥 DoEvents함수를 사용하는 경우보다 계산속도가 빠르다.