messier 페이지에 type icon 표시 추가
Filed in: Astronomy, Computer Add comments
메시에 페이지에 가면 메시에 DB가 있다.
테이블 보기에서는 모든 정보가 보이지만,
촬영 시기별 보기나, 촬영 장비별 보기에서는 대상이 은하인지, 성운인지 알 방법이 없어서,
모든 대상 옆에 icon을 붙였다.
각 대상은 다음과 같다.
- 행성상 성운/초신성 잔해물 :

- 성운 :

- 은하 :

- 산개 성단 :

- 구상 성단 :

- 이중성, 성군(星群), 기타 :

(icon 이미지는 천문노트에 있는 별 있는거 안에 있는 이미지를 편집해서 사용했다.
이 글을 쓰고나서 제작자의 양해를 구해야지…)
messier페이지는 서버에서 html로 렌더링 해서 뿌리기 때문에, 소스보기해도 알 방법은 없지만,
현재는 messier DB를 xml 로 저장해서
<object> <num>M1</num> <ngc>NGC1952</ngc> <const>Taurus</const> <constabbr>Tau</constabbr> <type>Supernova Remnant</type> <subtype>-</subtype> <ra>05 34.5</ra> <dec>+22 01</dec> <mag>8.4</mag> <diameter>6</diameter> <distance>6.3</distance> <desc>Crab Nebula</desc> </object>
xslt를 여러개 만들어서 각 보기마다 실시간으로 렌더링해서 html을 생성하는 구조이다.
이를 위해서 <xsl:choose><xsl:when>을 사용했다.
아래 소스는 xslt 안에 있는 type에 대한 <xsl:template>이다.
<xsl:template match="type"> <xsl:choose> <xsl:when test="contains(.,'Open Cluster')"> <img src="/images/deepskyicon/OpenCluster.png"/> </xsl:when> <xsl:when test="contains(.,'Galaxy')"> <img src="/images/deepskyicon/Galaxy.png"/> </xsl:when> <xsl:when test="contains(.,'Globular Cluster')"> <img src="/images/deepskyicon/GlobularCluster.png"/> </xsl:when> <xsl:when test="contains(.,'Nebula')"> <img src="/images/deepskyicon/DiffuseNebular.png" /> </xsl:when> </xsl:when> <xsl:otherwise> <img src="/images/deepskyicon/BinaryStar.png" /> </xsl:otherwise> </xsl:choose> </xsl:template>
몇가지 패턴을 알수 있다.
추가 계획 대상을 클릭하면 내가 찍은 이미지를 띄우도록 변경 후, 더이상 변경 사항이 없겠다 싶으면 xml + xslt => html 구조를 아예 html을 생성후, 이로 교체해야 겠다.
그리고 ngc대상과 ic대상도 이와 같이 만들어야 겠다.
ngc 와 ic를 다 찍을 계획은 전혀 없지만(죽기 전에 가능하지도 않겠지만)
ngc 와 ic 대상중 크기가 어느 이상 크거나, 밝기가 어느 이상 밝은 대상이라면…
촬영 목록으로 이용하는데 아주 유용할 것 같다.
그리고, messeir 인 경우는 언능 이미지 정리해서, 이미 찍은 이미지 인지, 아닌지도 쉽게 표시 되도록 고안해야 겠다.
3n+1…
이전글(messier 페이지에 type icon 표시 추가)을 올렸더니 allblog에서 같은 카테고리 blog article로 3n + 1 문제 코딩가 올라와서 호기심에서 perl 로 짜 보았다.
원 문제 내용http://acm.uva.es/p/v1/100.html
무….
메시에 페이지 Ajax 도입…
메뉴에서 [astro] 에 가서 [메시에]를 클릭하면
그냥 [메시에]가 있고, [메시에(Ajax)]라는게 지금 일시적으로 보인다.
비록 두 메뉴를 아무리 클릭해봤자 똑같이 보일 뿐이지만, 메뉴 이름 그대로…