Geometry 類別

定義

提供定義幾何圖案之物件的基底類別 (Base Class)。 Geometry 物件可用於裁剪區域,以及用來將二維圖形化資料轉譯為 Path的幾何定義。

public ref class Geometry : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Geometry : DependencyObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Geometry : DependencyObject
Public Class Geometry
Inherits DependencyObject
繼承
Object Platform::Object IInspectable DependencyObject Geometry
衍生
屬性

Windows 需求

裝置系列
Windows 10 (已於 10.0.10240.0 引進)
API contract
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)

備註

對於採用 Geometry 的屬性,您必須指定非abstract 衍生的 Geometry 類型、做為 XAML 的物件專案,或指定為程式碼的已定義實例。 如需詳細資訊,請參閱EllipseGeometryGeometryGroupLineGeometry、PathGeometryRectangleGeometry的參考頁面。

幾何概念化為「簡單」或「複雜」。 EllipseGeometry、LineGeometryRectangleGeometry是簡單的幾何,其會將幾何圖形指定為具有基本座標或維度屬性的一個專案。 GeometryGroupPathGeometry 是複雜的幾何。 GeometryGroup 會結合它保留為子物件的其他幾何。 PathGeometry 會使用一組巢狀圖/區段路徑定義元素,或設計工具通常輸出的精簡字串語法來描述幾何的複雜路徑。

Geometry 不會完全定義自己的轉譯,因為它不是 UIElement 本身,而且必須提供為 UIElement 的一些屬性值,才能造成轉譯效果。 一般而言,Geometry 是以 Path (的資料的形式提供,這是一種 Shape) 。

PathIcon.Data屬性會採用 Geometry。 在實務上,您通常會為此指定 PathGeometry ,其 Figures 屬性值會以路徑的精簡字串語法表示。

GeometryCollection 是 Geometry 專案的強型別集合。 GeometryGroup.Children屬性會使用GeometryCollection

幾何圖形

Shape類別具有 Geometry 及其衍生類別缺少的FillStroke和其他轉譯屬性。 Shape類別是FrameworkElement,因此會參與版面配置系統;其衍生類別可用來做為支援UIElement子系之任何元素的內容。 另一方面,Geometry 類別只會將幾何定義為圖形基本類型,而且無法自行轉譯。 您可以使用 Geometry 做為自訂 UI 元素屬性的屬性類型,其中 Geometry 所啟用的基本圖形基本運算式在定義中很有用。

UIElement.Clip 的幾何

若要在Windows 執行階段中提供UIElement.Clip屬性的值,您必須特別使用RectangleGeometry,而不是任何 Geometry 衍生類型。 如果您要從其他 XAML 架構移植 XAML 或程式碼,請參閱您是否可以將 UIElement.Clip 變更為使用 RectangleGeometry。 否則,您可能需要變更 Z 順序關聯性,並使用 ImageBrush 與具有「裁剪」元件 Alpha 透明度的 RenderTargetBitmap 來源重迭等技術。

幾何 衍生類別

Geometry 是數個衍生類別的父類別,可定義不同類別的實際幾何類別:

屬性

Bounds

取得 Rect ,指定 Geometry的軸對齊周框方塊。

Dispatcher

取得與此物件相關聯的 CoreDispatcherCoreDispatcher代表可以存取 UI 執行緒上DependencyObject的功能,即使程式碼是由非 UI 執行緒起始也一樣。

(繼承來源 DependencyObject)
Empty

取得空的 geometry 物件。

StandardFlatteningTolerance

取得多邊形近似法使用的標準容許誤差。

Transform

取得或設定套用至GeometryTransform物件。

TransformProperty

識別 轉換 相依性屬性。

方法

ClearValue(DependencyProperty)

清除相依性屬性的本機值。

(繼承來源 DependencyObject)
GetAnimationBaseValue(DependencyProperty)

傳回針對相依性屬性所建立的任何基底值,如果動畫未使用中,則會套用。

(繼承來源 DependencyObject)
GetValue(DependencyProperty)

DependencyObject傳回相依性屬性的目前有效值。

(繼承來源 DependencyObject)
ReadLocalValue(DependencyProperty)

如果已設定本機值,則傳回相依性屬性的本機值。

(繼承來源 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

註冊通知函式,以接聽此DependencyObject實例上特定DependencyProperty的變更。

(繼承來源 DependencyObject)
SetValue(DependencyProperty, Object)

DependencyObject上設定相依性屬性的本機值。

(繼承來源 DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

取消先前透過呼叫 RegisterPropertyChangedCallback註冊的變更通知。

(繼承來源 DependencyObject)

適用於

另請參閱