SetWorldTransform 函式 (wingdi.h)

SetWorldTransform函式會為指定的裝置內容設定世界空間與頁面空間之間的二維線性轉換。 此轉換可用來縮放、旋轉、切割或轉譯圖形輸出。

語法

BOOL SetWorldTransform(
  [in] HDC         hdc,
  [in] const XFORM *lpxf
);

參數

[in] hdc

裝置內容的控制碼。

[in] lpxf

包含轉換資料的 XFORM 結構的指標。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。

備註

以下是轉換矩陣 (請注意,元素標記法中的數位是 1 個數據行編號,後面接著 1 個數據列編號,而不是反向) 。

| eM11 eM21 eDx |
| eM12 eM22 eDy |
| 0    0    1   |

因此,對於世界空間 (x、y) 的任何座標而言,頁面空間中轉換的座標 (x', y') 可以透過如下所示的方式來決定。

| x' |   | eM11 eM21 eDx |   | x |   
| y' | = | eM12 eM22 eDy | . | y |
| 1  |   | 0    0    1   |   | 1 |

x' = x * eM11 + y * eM21 + eDx
y' = x * eM12 + y * eM22 + eDy

此函式使用邏輯單元。

世界轉換通常用來以裝置無關的方式調整或旋轉邏輯映射。

預設世界轉換是具有零位移的識別矩陣。

除非先前呼叫SetGraphicsMode函式將指定裝置內容的圖形模式設定為 GM_ADVANCED,否則SetWorldTransform函式將會失敗。 同樣地,除非世界轉換第一次呼叫 SetWorldTransformModifyWorldTransform,否則無法將裝置內容的圖形模式重設為預設GM_COMPATIBLE模式。

範例

如需範例,請參閱 使用座標空間和轉換

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 wingdi.h (包含 Windows.h)
程式庫 Gdi32.lib
Dll Gdi32.dll

另請參閱

座標空間和轉換函式

座標空間和轉換概觀

GetWorldTransform

ModifyWorldTransform

SetGraphicsMode

SetMapMode

SetViewportExtEx

SetViewportOrgEx

SetWindowExtEx

SetWindowOrgEx

XFORM