2009-08-16 1 views
4

지도 응용 프로그램 (지도 뷰어)을 다음과 같이 만들려고합니다. Java에서 http://sunsite.ubc.ca/UBCMap/. 누군가가지도 위의 건물 위로 마우스를 가져 가면 건물의 사무실 전화 번호 등지도에 해당 건물에 대한 정보를 제공하는 풍선 도움말이 있어야하며 해당 건물은 2D지도에서 빛을 발해야합니다. 어떤 사람이 나에게 자바에서 어떤 프레임 워크를 사용해야하는지 (예 : JavaFx)에 대한 지침을 제공 할 수 있습니까? 비슷한 것을 수행하는 샘플 코드가 있습니까?Java의 대화식지도 뷰어 데스크톱 응용 프로그램

+0

여기에도 비슷한 질문이 있다고 생각합니다. http : //forums.adobe.co.kr/thread/21693 – iceman

+0

(정보를 위해 불안정성을 야기하는 링크에 대한 격리 된 보고서가 있습니다 - 폐쇄 불가 Java 애플릿 등, 안전하게 작동합니다; 링크가 아닌 링크로 만들지 만 href는 그대로 두십시오. - 예방책과 마찬가지로) –

답변

1

만약 당신이 가지고있는 모든 것이 이미지이고 그 위에 툴팁을 원한다면 - 여기에 30 초의 설명이 있습니다.

  • 서브 클래스 JPanel의
  • 재정의 paint() 메소드는 텍스트 툴팁 문자열
  • 과 함께 당신의 "건물"으로 Shape 객체 (다각형,의 구형 등)의 어떤 수를 정의 이미지
  • 을 그립니다
  • JPanel 서브 클래스에서 getTooltip을 대체하십시오. 각 호출에서 Shape 객체를 반복하고 포인트가 모양 안에 있는지 테스트합니다 (모양에는이 방법이 있습니다). Shape에 적절한 툴 힌트를 돌려 주거나, 마우스가 끝나지 않은 경우는 null
  • 롤오버 효과를 원한다면 MouseMotionListener를 등록하고 "hover"모양을 찾으십시오. repaint()를 호출하고 특별한 방법으로 "마우스 오버"를 렌더링하십시오.
  • 붐! 완료되었습니다.

힌트 : 대부분의 경우 TooltipManager로 JPanel을 등록해야합니다.

0

JavaFX는 이러한 유형의 응용 프로그램에 적합한 후보입니다. JavaFX 스크립트 구문은 조금 익숙해졌지만 일단 속도를 높이면 그래픽/GUI 구성 요소를 쉽게 만들 수 있습니다.

또한 기존 Java API 및 웹 서비스를 응용 프로그램에 사용할 수 있습니다.

설명 된 것과 유사한 앱의 경우 herehere을 확인하십시오. (Javafx지도의 경우 Google)

JavaFX에 대한 경고의 말씀은 아직 초기 단계이기 때문에 버그가 발생하고 이후 릴리스에서 변경 사항이 깨질 가능성이 있음을 경고합니다.

+0

네 말이 맞아 ... javafx로 시작하는 것은 스크립팅에 약간 이상해 보입니다. 그래서 지금은 간단하게하고 싶습니다. 스윙을 사용하여 해봅시다. google/yahoo map..its GIF/비트 맵,지도가있는 개별 건물의 풍선 도움말을 마우스 오버 할 수 있도록 campus.how의지도가 있습니까? – iceman

+0

나를 잘못 이해하지 마라. 나는 JavaFX로 일하는 것을 꺼려하지 않을 것이다. 일단 익숙해지면 사용하기 쉽고 설명하는 응용 프로그램 유형에 적합합니다. –

1

지도가 실제로 연결된 예처럼 간단하면 java (또는 javaFX)를 사용하지 않는 것이 좋습니다. javascript DHTML 매핑 api로 원하는 것을 할 수 있습니다. 자바는 과잉이다

  • Google지도 API를
  • OpenLayers

를 참조하십시오. 애플릿은로드 속도가 느리고 다양한 환경에서 제대로 배포하기 어렵습니다. 직접 전체 애플리케이션을 작성하고 유지 관리하는 것보다 KML 파일 (또는 이와 동등한 것)을 게시하고 다른 사람의지도를 활용하는 것이 좋습니다.

+0

Joel에게 제안 해 주셔서 감사합니다.하지만 내 게시물을 읽는다면 브라우저가 아닌 데스크톱 응용 프로그램에서 원합니다. 어떻게하면 맵을 읽고 처리 할 수 ​​있는지에 대한 제안을 원합니다 .. 타일 맵이어야합니다 .. – iceman

+0

아,이 경우에는 GeoTools 라이브러리를 살펴볼 수 있습니다. 그것은지도 소프트웨어를 구축하기위한 많은 도구를 제공하는 자바 라이브러리입니다. –

0

JxMaps 제품을 살펴보십시오. Java 데스크톱 응용 프로그램에 대화식지도를 추가하는 기능을 제공합니다.