views:

44

answers:

1

When using the ScaleTransform class, Silverlight also scale the thickness of the strokes on the shapes that I display. But what if I don't want this behaviour? Is it possible to disable the scaling of strokes, or will I have to iterate over every shape object and set the reciprocal thickness?

A: 

A ScaleTransform is a render transform. It doesn't change the underlying layout just changes the way it is drawn on the screen. It isn't possible to have the points scale but not have the line thickness scale.

Stephan
By far, any line is defined by its endpoints and its thickness. It makes sense to scale the thickness too, but it makes even more sense to be able to disable it. OpenGL and Direct3D only works with the vertices and the rasterizer draws lines directly to the backbuffer without caring about any transforms, since the vertices already are. If it isn't possible then that's because how it was made by Microsoft, not because it's intrinsically impossible.
Cario Dactylus
I was talking purely in the context of Silverlight. I know it's possible to implement a way to do it, but the way render transforms in SL work makes it not possible to do automatically.
Stephan