확대

2009-10-30 5 views
0

그러나, 제가 에 노력하고있어 달성, 현재 http://www.bobpowell.net/zoompicbox.htm에서 밥 파월의 예를 을 따라 나는 현재 줌 가능한 UserControl을 쓰기 위해 노력하고있어 나는 를했습니다 중앙 지점으로 확대한다 컨트롤의 왼쪽 상단 모서리가 이 아닙니다. 경험/아이디어가있는 사람이 있습니까? 감사.확대

답변

1

컨트롤의 값을 가운데로 오프셋하고 스케일 변환을 적용한 다음 다시 오프셋해야합니다. 컨트롤이 100,100 인 경우 2의 줌 배율이 생성됩니다

(-old_centre * factor) + old_centre 

: 0.5의 줌 배율로

((-50, -50) * 2) + (50, 50) = (-100, -100) + (50, 50) = (-50, -50) 

:

새로운 왼쪽 상단을 계산하기 위해 다음과 같은 알고리즘을 시도

((-50, -50) * 0.5) + (50, 50) = (-25, -25) + (50, 50) = (25, 25)