• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 683
  • Last Modified:

How can the scale (zoom in/out) be changed?

How can the scale (zoom in/out) be changed?

I am trying to change the 'scale' of  drawn images (lines, rectangles…).I have tried using ScaleViewportExt() and ScaleWindowExt() in combination with MapMode(MM_ANISOTROPIC), SetWindowOrg(), SetWindowExt(), SetViewportOrg() and SetViewportExt(), but have had no luck -my image remains unchanged. Any help dealing with drawings using the CClientDC would be a great, thanks.
0
Malek103197
Asked:
Malek103197
1 Solution
 
chensuCommented:
The following code scales 2 times in X direction and 5 times in Y direction.

CClientDC dc(this);

dc.SetMapMode(MM_ANISOTROPIC);
dc.SetWindowExt(1, 1);
dc.SetViewportExt(2, 5);

// your drawing code
...

0
 
Malek103197Author Commented:
The basic concept provided in the answer is correct, but I still had to adddress the issue of changing the origin as the scale changes, otherwise the image would "walk" across the screen. Thanks for the help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now