사각형 (원/원)과 같은 도형을 그릴 수 있고 색상으로도 채울 수있는 win forms 애플리케이션이 있습니다. 이제 셰이프를 채우기 위해 브러시를 선택하고 모양의 '경계'를 클릭하면 (이 경우 모양을 채우고 싶지는 않습니다) '포인트' 모양의 경계 (즉, '가장자리')에 있습니다.도형의 경계 (즉, '모서리')에 점이 있는지 감지하는 방법
1
A
답변
1
모양을 GraphicsPath로 표시 한 다음 IsOutlineVisible을 사용하여 요점은 윤곽선 아래에있다.
IsVisible() 메서드는 포인트가 전체 GraphicsPath 내에 있는지 알려줍니다.
1
두 가지 모양의 좌표가 있습니다.
shape.Height
shape.Width
당신은 또한 모양의 크기가
shape.X
shape.Y
당신은 마우스 위치의 좌표를 mouse.X이 shape.X 및 shape.X 사이 인 경우
mouse.X
mouse.Y
+ 모양. 너비와 마우스 .Y는 모양과 동일합니다 .Y 또는 모양 .Y + 모양. 사각형과 같은 높이.
하지만 "일반"모양은 복잡하고 불규칙한 형태를 들어 similarway
에서 그것을 계산해야 당신은에 작은 조각으로 안정을 잃게하다와 같은 계산을 수행해야합니다
확인이 : determine if a point sits inside an arbitrary shape?
모양이 할 수있는 경우를 비트 맵으로 변환 할 수있는 다른 방법은 픽셀 색상을 확인할 수 있지만 모양 가장자리 색상이 모양의 다른 픽셀과 다른 경우에만 작동합니다.
관련 문제
- 1. RGBA 경계 즉
- 2. openlayers 마커가 다각형 내에 있는지 감지하는 방법
- 3. 빛을 투사하고 주어진 점이 그 안에 들어 있는지 감지하는 알고리즘?
- 4. 도형의 테두리를 클릭하는 방법
- 5. 액티비티 경계 외부에서 터치 이벤트를 감지하는 방법
- 6. 점이 경계 상자 안에 떨어지는 지 확인합니다.
- 7. 키보드가 있는지 여부를 감지하는 방법
- 8. 어떤 레이어가 있는지 감지하는 방법
- 9. 요소에 'auto'높이가 있는지 감지하는 방법
- 10. Google지도 API를 사용하여 점이 육지에 있는지 물에 있는지 알고있는 방법
- 11. 포인트가 직사각형 경계 근처에 있는지 확인하십시오.
- 12. 지도 경계! 주소가 경계에 있는지 확인하는 방법?
- 13. 점이 다각형 안에 있는지 알아보기
- 14. 2D 점이 사변형 안에 있는지 확인하십시오.
- 15. 블루투스 장치가 연결되어 있는지 감지하는 방법
- 16. vimscript : 특정 파일이 있는지 여부를 감지하는 방법
- 17. 마우스가 컨텍스트 메뉴 위에 있는지 감지하는 방법
- 18. 서버가 SPDY를 사용하고 있는지 감지하는 방법
- 19. php로 어떤 사용자가 있는지 감지하는 방법
- 20. 아이폰 - NSUserDefaults standardUserDefaults에 키가 있는지 감지하는 방법
- 21. iPhone이 MonoTouch의 자동 모드에 있는지 감지하는 방법
- 22. Android 모바일이 컴퓨터 근처에 있는지 감지하는 방법
- 23. div가 여전히 DOM에 있는지 감지하는 방법
- 24. 배열에 인덱스가 있는지 감지하는 방법 (문자열 [])
- 25. Chromecast가 동일한 WLAN에 있는지 감지하는 방법
- 26. 얼룩말 프린터가 설치되어 있는지 여부를 감지하는 방법
- 27. 이미지에 어떤 물체가 있는지 감지하는 방법?
- 28. Travis-Ci가 있는지 여부를 감지하는 방법
- 29. 사용자가 코코아 앱을 가지고 있는지 감지하는 방법
- 30. 종류가 이미 등록되어 있는지 여부를 감지하는 방법
좋은 답변입니다! GraphicsPath에 대해 몰랐습니다! +1 – giammin
@ 아이드 마인드 : 고마워요. 나는 이것을 결코 발견하지 못했을 것이다. –
.Net은 큰 세상입니다. 저는 이것을 10 년 동안 사용해 왔으며 여전히 "새로운"기능을 발견하고 있습니다. 적어도 그들은 나에게 "새롭다"! –