라이선스 임시 인출 기능 (Borrow License)

최근 IDL 8.6/ENVI 5.4와 함께 등장한 새로운 라이선스 체계에서 가장 마음에 드는 점은 라이선스 임시 인출 기능(Borrow License)이라고 생각합니다. 라이선스 서버로부터 클라이언트가 라이선스를 가져와서 쓸 때는 IDL/ENVI를 실행할 때마다 라이선스 서버에 접속하여 현재 잔여 라이선스로부터 일부를 끌어오는 과정을 거칩니다. 플로팅(floating) 라이선싱이라고 하는 이 방식은 고정형 라이선스(Node-Locked)에 비해, 다양한 클라이언트 환경에서 IDL/ENVI를 사용할 수 있기 때문에 …

Continue reading ‘라이선스 임시 인출 기능 (Borrow License)’ »

New Graphics의 스타일 적용 사례

http://blog.daum.net/swrush/418        (NG 체계에서 축(Axis)의 세부 조정 예제 / 이상우) 위 링크는, New Graphics 체계에서 축의 속성을 조정하는 방법에 대한 이상우 박사님의 글입니다. 키워드로 그래픽을 제어하는 방식의 Direct Graphics에 비해 오히려 복잡해 보일 수도 있지만, 오브젝트 기반의 New Graphics는 놀라운 장점을 가지고 있습니다. 그래픽 오브젝트 변수만 쥐고 있으면 언제든 어떤 일이든 수행할 수 …

Continue reading ‘New Graphics의 스타일 적용 사례’ »

ENVI 좌표변환 API와 Task

ENVI 인터페이스에서, 영상 위에 마우스를 이동하면, 인터페이스 좌측 하단에 현재 위치의 경위도(또는 설정에 따라 Map 좌표 등 다양한 좌표계 표시 가능)가 표시됩니다. Cursor Value를 실행하면 마우스를 클릭하는 지점의 경위도(Geo), Map 좌표(Map : UTM, 또는 TM 등 투영법 기준의 좌표를 의미합니다), 군용좌표(MGRS; Military Grid Reference System) 이 표시되고, 아래쪽에 영상의 Pixel 좌표(File) 그리고 해당 지점의 Pixel …

Continue reading ‘ENVI 좌표변환 API와 Task’ »

FILE_SAME 함수와 FILE_COPY, /ALLOW_SAME

오랜만에 구글의 IDL-PVWAVE 토론방에 들어가 보니, 생각해 볼만한 질문과 의미있는 답변 두 개가 올라와서 소개해 드립니다. 토론의 원문은 이곳에서 보실 수 있습니다. IDL 문자열 상으로는 다른 내용인데, 운영체제가 인식하기에는 사실상 같은 파일인 상황입니다.

어떻게 작업을 하다보니, 또는 사용자의 완전한 실수로, 또는 코딩을 하다보니 버그로 발생할 수 있는 일입니다. IDL에서 문자열로만 따지면 분명 다른 문자열인데, …

Continue reading ‘FILE_SAME 함수와 FILE_COPY, /ALLOW_SAME’ »

프로그램을 고쳤는데도 예전 프로그램이 실행됩니다. FILE_WHICH 활용.

요즘 IDL의 FILE_WHICH 함수를 사용하거나 추천할 일이 많았습니다. 다음과 같은 질문을 몇 번 받았기 때문입니다. “프로시저(함수)를 수정해서 분명히 저장을 했습니다. 그런데 나중에 보면 예전 프로그램이 자꾸 실행되는데요…” 먼저 검토해 보아야 하는 것은 컴파일을 했는지 확인하는 것입니다. IDL의 프로시저나 함수의 호출 절차가 이렇습니다. 호출한 프로시저(함수)가 컴파일되어 메모리에 적재되어 있는지 검색. 그럴 경우 메모리에 적재된 프로그램을 실행. …

Continue reading ‘프로그램을 고쳤는데도 예전 프로그램이 실행됩니다. FILE_WHICH 활용.’ »

DJI GS Pro 사용 소감

저희가 연구 용역에 무인기 항공촬영이 필요하여 DJI의 작은 드론을 이용하고 있습니다. 그리고 그동안은 실력이 검증되지 않은 조종자의 컨트롤에 따라 수동 촬영을 했습니다. 불규칙하게 울퉁불퉁 수동으로 촬영하여도 중첩되는 영역들이 충분하다면, ENVI OneButton을 이용하여 정사모자익 영상을 생성할 수 있는 것은 확인 하였습니다. 그동안 그렇게 사용해 왔으니까요. (저희 드론 파일롯이 조종 실력은 그저 그렇지만, 촬영전후 신고/검사 절차는 칼같이 …

Continue reading ‘DJI GS Pro 사용 소감’ »

IDL PATH 설정에 따른 시동 시간

“내 IDL은 유독 시동 시간이 오래 걸리는 것 같다.” 이런 느낌을 받았던 적이 있으신가요? 컴퓨터는 제법 괜찮은 사양인데, 일단 시동만 되고 나면 꽤 빠르게 돌아가는데, IDL 시동이 유독 오래 걸린다고 생각이 되시나요? 이런 경우 IDL의 PATH 설정을 검토해 보실 필요가 있습니다.  라이선스 파일에 문제가 있거나 라이선스 서버에 접속이 안되는 경우에는 아예 IDL이 “라이선스가 이상합니다”라는 메시지를 …

Continue reading ‘IDL PATH 설정에 따른 시동 시간’ »

RANDOMU 함수의 알고리즘 변경 (8.2버전 이후)

RandomU 함수에서 Seed 값을 상수로 지정할 경우, 항상 같은 값이 나옵니다.

원하는 것이 매회 다른 무작위 수를 발생하는 것이라면, 이렇게 작성하면 안됩니다. 이렇게 상수로 지정하는 이유는, 주로 교육적인 목적에서, 또는 어떤 특별한 이유로 “재현”을 하기 위한 조치입니다. 난수 생성의 본래의 목적인 매번 다른 무작위 수를 생성하고자 한다면, SEED 값을 변수로 지정해야 합니다. 이 변수를, …

Continue reading ‘RANDOMU 함수의 알고리즘 변경 (8.2버전 이후)’ »

OpenStreetMap을 배경으로 사용하기

이 글은 IDL 도움말의 “Image with a Map Projection” 을 서울 중심으로 일부 수정한 것입니다. OpenStreetMap의 staticMapLite API를 사용하면, 지정한 위치에 대한 지도를 그림 파일로 가져올 수 있습니다. 이 그림은 Mercator 투영법으로 된 지도인데, png 파일로 되어 있습니다.  그림을 가져오는 것은 IDLnetURL 기능을 이용하면 아주 간단한 기능입니다. 어려울 게 없죠. 다만, IDL의 그래픽스에서 지도의 배경으로 …

Continue reading ‘OpenStreetMap을 배경으로 사용하기’ »