|
|
在用 DirectX9 3D 将图像进行放大或缩小后,
如何显示图像的任意部分呢?
因为图像大小可能大于显示窗口,而只想显示应该在
窗口那部分的图像,而不是全部。
(窗口外的其他部分的显示将用 ScrollBar 进行控制)
(是用 TextureLoader.FromFile()装入的图像文件)
能告诉我如何做才能显示图像的任意指定的部分吗?
C# (或者VC++ 也可以)。
如果是用设定纹理坐标来实现的话,
如何来设定纹理坐标呢?
我是用 C# 做的,一部分代码如下.
sprite sprite;
Texture texture;
Rectangle drawRect;
...
...
Matrix scale = new Matrix();
scale.Scale( 2.0f, 2.0f, 0.0f);
this.sprite.Transform = scale;
this.sprite.Draw( texture,
Rectangle.Empty,
new Vector3(0.0f, 0.0f, 0.0f),
new Vector3((float)drawRect.X / scale.M11, (float)drawRect.Y / scale.M22, 0.0f),
Color.FromArgb(255, 255, 255, 255)
);
我是初学者,望多多指教。
先谢了
|
|