none
WPF 로 그림을 그릴때 Shape 클래스와 Geometry 클래스의 차이를 알고 싶습니다. RRS feed

  • 질문

  • WPF 를 이용해서

    Canvas 에 그림을 그리고자 합니다.

    그런데

    System.Windows.Shapes.Shape 클래스와

    System.Windows.Media.Geometry 클래스가 있는데

    어떤 차이가 있나요?

    그리고 어떤 클래스를 사용하여 그리는게 좋은지 조언 부탁드립니다.

    2018년 8월 6일 월요일 오전 1:51

답변

  • 가장 큰 차이점은 사용자 상호 작용 (User Interaction) 사용 가능 여부 차이입니다.

    Shape는 UIElement를 상속 받기 때문에 사용자 상호 작용을 하는 UI를 구현할 때 유용합니다. 예를 들면 Shape로 그린 도형 위에서 마우스 이벤트를 자유롭게 구현할 수 있습니다.

    반면에 사용자 상호 작용을 필요로 하지 않는 경우에는 Geometry를 이용해서 그림을 그릴 수 있습니다. Geometry는 Shape 보다 경량화 되어 있습니다. 일부 그래픽을 표현하는데 그 복잡성이나 구성에 따라 Shape 계열은 다소 오버헤드일 수 있습니다. 이 때 기능을 조금 희생하고 경량화 된 그림을 그리는데는 Geometry를 사용하는 것이 더 좋을 수 있겠죠.

    2018년 8월 8일 수요일 오전 1:20