Device.StretchRectangle - метод
Обновлен: Ноябрь 2007
Копирует все содержимое исходного прямоугольника в прямоугольник назначения.
Пространство имен: Microsoft.WindowsMobile.DirectX.Direct3D
Сборка: Microsoft.WindowsMobile.DirectX (в Microsoft.WindowsMobile.DirectX.dll)
Синтаксис
'Декларация
Public Sub StretchRectangle ( _
sourceSurface As Surface, _
sourceRectangle As Rectangle, _
destSurface As Surface, _
destRectangle As Rectangle, _
filter As TextureFilter _
)
'Применение
Dim instance As Device
Dim sourceSurface As Surface
Dim sourceRectangle As Rectangle
Dim destSurface As Surface
Dim destRectangle As Rectangle
Dim filter As TextureFilter
instance.StretchRectangle(sourceSurface, _
sourceRectangle, destSurface, destRectangle, _
filter)
public void StretchRectangle(
Surface sourceSurface,
Rectangle sourceRectangle,
Surface destSurface,
Rectangle destRectangle,
TextureFilter filter
)
public:
void StretchRectangle(
Surface^ sourceSurface,
Rectangle sourceRectangle,
Surface^ destSurface,
Rectangle destRectangle,
TextureFilter filter
)
public function StretchRectangle(
sourceSurface : Surface,
sourceRectangle : Rectangle,
destSurface : Surface,
destRectangle : Rectangle,
filter : TextureFilter
)
Параметры
- sourceSurface
Тип: Microsoft.WindowsMobile.DirectX.Direct3D.Surface
Объект Surface, представляющий исходную поверхность.
- sourceRectangle
Тип: System.Drawing.Rectangle
Объект Rectangle, представляющий исходный прямоугольник. Если nullссылка null (Nothing в Visual Basic), используется вся исходная поверхность.
- destSurface
Тип: Microsoft.WindowsMobile.DirectX.Direct3D.Surface
Объект Surface, представляющий целевую поверхность.
- destRectangle
Тип: System.Drawing.Rectangle
Объект Rectangle, представляющий целевой прямоугольник. Если nullссылка null (Nothing в Visual Basic), используется вся целевая поверхность.
- filter
Тип: Microsoft.WindowsMobile.DirectX.Direct3D.TextureFilter
Тип фильтра. Допустимыми значениями являются Point и Linear. Дополнительные сведения см. в разделе TextureFilter.
Заметки
Исходный прямоугольник может быть растянут и отфильтрован копией. Этот метод часто используется для изменения пропорций видеопотока.
Если операция заключается в растяжении или сжатии, не все сочетания поверхностей допустимы для StretchRectangle. К числу прочих факторов относятся типы используемых поверхностей и их форматы.
В следующей таблице приведены допустимые сочетания форматов поверхности назначения.
Исходный формат |
Текстура |
RT-текстура |
RT |
Внеэкранная плоскость |
---|---|---|---|---|
Текстура |
Нет |
Да |
Да |
Нет |
RT-текстура |
Нет |
Да |
Да |
Нет |
RT |
Нет |
Да |
Да |
Нет |
Внеэкранная плоскость |
Нет |
Да |
Да |
Да, но без растяжения |
Если задана фильтрация, вызов StretchRectangle завершается неудачей, если драйвер не задает StretchRectangleFilterCaps. Если задано значение None, алгоритм фильтрации выбирает драйвер.
В вызовах StretchRectangle можно использовать поверхности шаблона глубины, при условии что в вызове не производится растяжение или сжатие. К поверхностям DepthStencil также применимы следующие ограничения, когда эти поверхности копируются с помощью вызова StretchRectangle:
Обе поверхности должны иметь один и тот же формат, без формата преобразования.
Растяжение или сжатие не допускаются.
Может быть скопирована только одна полная поверхность. Частичные прямоугольные копии не допускаются.
Для загрузки текстурных карт приложения должны использовать CopyRects или UpdateTexture, а не StretchRectangle, поскольку они разработаны для использования внутренней информации и изменяющихся таблиц прямоугольников.
Растяжение между прямоугольниками на одной поверхности не поддерживается. Чтобы проверить аппаратное обеспечение на предмет преобразования цветов, используйте метод CheckDeviceFormatConversion объекта Manager, поскольку программная эмуляция преобразования не поддерживается. Этот метод также указывает, поддерживается ли растяжение между поверхностями одного формата. Растяжение или сжатие не поддерживается, если одна из поверхностей имеет сжатый формат DXTn. Исходная поверхность не должна быть многовыборочной.
Разрешения
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.
Платформы
Windows CE, Windows Mobile for Smartphone, Windows Mobile для карманных ПК
Среды .NET Framework и .NET Compact Framework поддерживают не все версии каждой платформы. Поддерживаемые версии перечислены в разделе Требования к системе для .NET Framework.
Сведения о версии
.NET Compact Framework
Поддерживается в версиях: 3.5, 2.0
См. также
Ссылки
Microsoft.WindowsMobile.DirectX.Direct3D - пространство имен