GMT

3차원 이미지 그리기 [grdview]

작성자
heukchoo
작성일
2021-01-17 20:27
조회
439
Synopsis

grdview relief_file -Jparameters [ -B[p|s]parameters ] [ -C[cpt]] [ -Gdrapefile | -Ggrd_r -Ggrd_g -Ggrd_b ] [ -I[intensfile|intensity|modifiers] ] [ -Jz|Zparameters ] [ -K ] [ -Nlevel[+gfill] ] [ -O ] [ -P ] [ -Qargs[+m] ] [ -Rwest/east/south/north[/zmin/zmax][+r] ] [ -Ssmooth ] [ -T[s][o[pen]] ] [ -U[stamp] ] [ -Wtypepen ] [ -Xx_offset ] [ -Yy_offset ] [ -nflags ] [ -pflags ] [ -ttransp ]

 



 
앞선 차례에서는 grdimage 툴을 이용해 2차원의 평면 그림을 그려보았다.

이제 grdview 툴을 이용해 z방향의 축을 추가하여 3차원의 이미지를 그려본다.

 
gmt grdview data.grd -JM15c -JZ1c -p260/20 -P -Qm > data.ps

gmt grdview data.grd -JM15c -JZ1c -p260/20 -P -Qi300 -Cdata.cpt > data.ps
 

필수옵션은 -J와 -Jz 이며 그리드 파일은 필수로 입력되어야 한다.
-J는 xy의 프로젝션으로 설명은 생략한다.

-Jz는 z방향 축의 설정이다.
-Jx 프로젝션 설정과 동일하며 아래와 같이 설정한다.
'-Jz1:5000000'와 같이 첨자를 소문자 z로 사용하면 뒤에 축척을 사용한다.

'-JZ1c'와 같이 첨자를 대문자 Z로 사용하면 이미지에서 z축 길이로 설정한다.
단위는 c, i, p를 사용한다.


-p 옵션은 바라보는 시각 방향을 설정한다.
'-p260/20'과 같이 평면 방향의 각도(0~360)와 z방향 각도(0~90)를 설정한다.
평면 각도는 180이 북방향으로 값이 증가하면 반시계 방향으로 회전한다.
z방향 각도는 90일 경우 하늘에서 바라보는 2차원의 평면 이미지가 된다.






3차원 이미지 타입


-Q 옵션은 3차원 이미지의 타입을 설정한다.

'-Qm'은 매쉬 타입이다. 매쉬 타입은 말 그대로 xy 방향 격자선으로 표현된다.
'-Qmx'와 같이 mx로 사용하면 x방향의 선만으로 표현하며, my는 y방향의 선만으로 표현한다.
'-Qmblue'와 같이 뒤에 배경색을 지정할 수 있다. (기본은 흰색)

'-Qs'는 surface 타입으로 표현한다.
이 타입은 -C 옵션이 반드시 설정되어야 한다.
surface 타입에서 -C 옵션으로 z값에 따른 색으로 표현할 수도 있고 패턴으로 표현할 수도 있다.
(패턴 채우기 글 참고)
'-Qsm'과 같이 m을 뒤에 붙이면 surface 타입 이미지 위에 메쉬선을 추가로 그린다.

'-Qi'는 이미지 타입으로 표현한다.
이 타입은 -C 옵션이 반드시 설정되어야 한다.
surface 타입과 차이점은 '-Qi300'과 같이 dpi 단위의 해상도를 설정할 수 있다. (기본 100)
또한, -G 옵션을 사용한 R/G/B 텍스쳐 이미지를 사용할 수 있다.
그러나, surface 타입에서 가능했던 패턴채우기와 매쉬선 추가는 사용할 수 없다.

'-Qc'는 이미지 타입과 동일하나, NaN 값을 투명 처리한다.

 
-Qm -Qmxblue
-Qs -Cdata.cpt -Qsm -Cdata.cpt
-Qs -Cpattern.cpt -Qi300 -Cdata.cpt
 



 

-R 옵션은 각 축의 범위를 설정하며, '-R128/129/35/36/-100/1200' 과 같이 z축의 범위도 추가하여 설정할 수 있다.
 

-B 옵션은 도곽을 설정한다.
설명은 생략한다.
 

-C 옵션은 grdimage에서 사용한 방법과 같다.
그 외에도 '-Qs'의 surface 타입 사용시 패턴 cpt 파일도 사용가능하다.

 
-I 옵션은 grdimage 에서 사용한 방법과 같다.
설명은 생략한다.





-G 옵션은 3차원 공간 정보의 표면에 텍스쳐 이미지를 입힌다.
'-Gtexture.grd'와 같이 일반적인 xyz의 그리드 파일을 입력하면 -C 옵션으로 cpt 파일을 지정해야 한다.
이경우 cpt 파일은 -G 옵션의 texture.grd 파일에 적용되어 컬러인 텍스쳐 이미지를 만들고, data.grd 파일로 그려진 3차원 이미지의 표면에 만들어진 텍스쳐 이미지를 입힌다.

R/G/B 그리드 파일도 -G 옵션으로 입력할 수 있다.
'-Ggrdp_r.grd,grdp_g.grd,grdp_b'와 같이 콤마로 구분하여 세개의 그리드 파일을 입력한다.
이 경우 -C 옵션은 사용하지 않는다.

 



위의 이미지는 앞서 grd2rgb에서 제작한 드래곤볼의 R/G/B 그리드 파일을 텍스쳐로 입힌 것이다.

텍스쳐를 입히는 것은 지질 관련 맵을 그릴때 중요하다.
사용 예로는 해저지형도에 후방산란이나 저질분류 이미지를 텍스쳐로 입히는 경우가 있다.
 

-N 옵션은 도곽으로 부터 3차원 이미지를 지정한 값 만큼 띄운다.





위의 그림은 '-N-1000'을 적용한 것이다. 파란색 선이 이미지를 띄운만큼 그려진 선이다.
원래 검은색이고 '-Wf1p,blue' 옵션으로 선 스타일을 변경하였다.

'-N-1000+gblue'와 같이 첨자 +g를 사용하면 띄워진 공간을 색으로 채울 수 있다.
 

-W 옵션은 메쉬선 등의 선 스타일을 지정한다. (선 스타일 지정 방법은 psxy 참고)
-Wc 는 매쉬 타입과 surface 타입의 이미지에 등치선을 추가한다.
-Wm 은 메쉬 타입의 이미지에서 메쉬의 선 스타일을 지정한다.
-Wf 는 -N 옵션으로 생성된 선의 스타일을 지정한다.





위의 이미지는 -Wc를 적용한 것이다.

 
-S 옵션은 등치선의 해상도를 높여 부드럽게 만든다. (grdcontour 참고)

 


 

-T 옵션은 보간하지 않은 타일 형식의 이미지를 제작한다.
'-Ts'는 기본적인 사용 방법이고, '-To'는 격자선을 추가한다.
'-To1p'와 같이 격자선의 스타일을 조정할 수 있다.


2차원 평면 그림을 출력하므로 -Jz 옵션, -Qi 옵션, -p 옵션은 함께 사용하지 않는다.
gmt grdview data.grd -JM15c -Ts -Cdata.cpt > data.ps
 



 
지역별 위험도와 같은 위치별(격자별) 분석정보의 표현에 유용하다.

 
이제 GMT를 이용한 기본적인 이미지들은 모두 그릴 수 있는 셈이다.

이후로는 스케일바, 범례 등의 디테일한 표현 방법을 소개한다.

 

 
전체 0