Java2D를 사용하여 원을 그리면. 서클에 마우스를 가져 가면 텍스트가 표시되는 방법이 있습니까? 즉, 해당 서클의 ID 및 기타 항목을 표시하려고합니다.Java 2D. 호버 오버 서클
2
A
답변
0
당신은 모든 센터와 반경을 저장하고 현재 마우스 위치에 대해 테스트해야합니다.
아주 간단한 조작입니다. 마우스 위치의 거리와 원 중 하나의 중심이 반경보다 작 으면 마우스가 안에 있고 원하는 호버 메시지를 그릴 수 있습니다. 수학 보여줍니다 여기에 질문이
:의 Equation for testing if a point is inside a circle
희망하는 데 도움이 ...
합니다 (이 메소드를 포함) 당신을 위해 그것을 할 수있는 다각형 클래스가 존재하지만 없음 S 당신이 원하는 것을 달성하는 방법은 여러 가지가 있습니다
2
: 클래스를 구현하는 원이다. 이것이 하나의 해결책입니다. 원을 만들기 위해 Ellipse2D를 사용한다고 가정합니다. JPanel과 같은 JComponent에서 원을 그리는 것으로 가정합니다.
그래서 타원을 선언합니다.
Shape circle = new Ellispe2D.Double(x, y, width, height);
는 그런 다음 사용자가 JPanel의 위로 마우스를 이동하면 감지 된 MouseMotionListener를 구현합니다. 그런 다음 (당신이 그림을 어떻게 재정의 중 하나) 페인트() 또는 paintComponent에 방법에
public void mouseMoved(MouseEvent e){
if(circle.contains(e.getPoint())){
//the mouse pointer is over the circle. So set a Message or whatever you want to do
msg = "You are over circle 1";
}else{
msg = "You are not over the circle";
}
}
:
g2.fill(circle);
g2.drawString(msg, 10, 10); //write out the message
1
당신은 직접이 작업을 수행 할 수 있을지 모르겠어요. 그러나 간단한 수학을 사용하여 커서 위치를 확인할 수 있습니다. (x-a)^2 + (y-b)^2 = r^2 여기서 x, y는 커서 위치 a, b는 원 중심이고 r은 반경입니다.
관련 문제
- 1. OpenGL 드로잉 수천 개의 2D 서클
- 2. 목표 C 서클 서클 경고
- 3. Java 2D 그래픽 사각형
- 4. Java 2D 배열 문제
- 5. Java 2D Shading/Filling
- 6. Java 2D 추가 색상
- 7. 피킹 in java 2d
- 8. 웹 페이지의 서클 처리
- 9. Touch로 서클 이동 시도
- 10. 서클 제거 recaptcha
- 11. Google지도에서 서클 제거 V3
- 12. opengl의 비평면 서클
- 13. 호버/마우스 오버 효과를 선택 상태로 유지하는 방법은 무엇입니까?
- 14. Java 2D Drawing 최적의 성능
- 15. 2D 배열 - C 대 Java
- 16. Java 2D 드로잉 프레임 워크
- 17. 그룹 호버 (호버)
- 18. 호버
- 19. Android에서 서클/데이지 레이아웃 (바람개비)?
- 20. Google지도 앱처럼 안드로이드에서 서클 그리기
- 21. Objective C의 서클 프리 로더
- 22. UIButton : 서클 히트 영역이 필요합니다.
- 23. 아이폰 SDK의 서클 형식 문자열?
- 24. IE8에서 마우스 오버/마우스 오버 효과가 느리다
- 25. 낮은 오버 헤드 Java 웹 서비스 컨테이너?
- 26. jQuery 호버 페이드 문제
- 27. blackberry - java - 2D 기하학 및 충돌 패키지
- 28. Java 2D API를 배우기에 좋은 자료는 무엇입니까?
- 29. 회전 및 변환 결합 - Java 2D
- 30. 2D 배열에서 널 포인터 예외 (Java)
확인 거리가 제곱근을 계산해야하기 때문에 원 방정식 (<=에 대해 == 변경)을 사용하십시오. –
사실. 감사 보정 D : D 내가 그것을 파이썬 코드가 다른 질문 링크를 지적했다 : 나는 제곱 반경에 비해 제곱 거리가 말했다한다 D –