GeometryModel3D 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
渲染 a Geometry3D 並指定為 Material。
public ref class GeometryModel3D sealed : System::Windows::Media::Media3D::Model3D
public sealed class GeometryModel3D : System.Windows.Media.Media3D.Model3D
type GeometryModel3D = class
inherit Model3D
Public NotInheritable Class GeometryModel3D
Inherits Model3D
- 繼承
範例
以下程式碼摘錄將生成 GeometryModel3D 一個立方體形狀的 。
<GeometryModel3D>
<GeometryModel3D.Geometry>
<MeshGeometry3D
Positions="-1 -1 0 1 -1 0 -1 1 0 1 1 0"
Normals="0 0 1 0 0 1 0 0 1 0 0 1"
TextureCoordinates="0 1 1 1 0 0 1 0 "
TriangleIndices="0 1 2 1 3 2" />
</GeometryModel3D.Geometry>
<GeometryModel3D.Material>
<DiffuseMaterial>
<DiffuseMaterial.Brush>
<SolidColorBrush Color="Cyan" Opacity="0.3"/>
</DiffuseMaterial.Brush>
</DiffuseMaterial>
</GeometryModel3D.Material>
<!-- Translate the plane. -->
<GeometryModel3D.Transform>
<TranslateTransform3D
OffsetX="2" OffsetY="0" OffsetZ="-1" >
</TranslateTransform3D>
</GeometryModel3D.Transform>
</GeometryModel3D>
以下程式碼摘錄使用 了 GeometryModel3D , Geometry 其 定義為靜態資源。
<ModelVisual3D>
<ModelVisual3D.Content>
<GeometryModel3D Geometry="{StaticResource myTeapot}">
<GeometryModel3D.Material>
<DiffuseMaterial>
<DiffuseMaterial.Brush>
<SolidColorBrush Color="Blue" Opacity="1.0" />
</DiffuseMaterial.Brush>
</DiffuseMaterial>
</GeometryModel3D.Material>
<GeometryModel3D.Transform>
<RotateTransform3D>
<RotateTransform3D.Rotation>
<AxisAngleRotation3D x:Name="myAngleRotation" Axis="0,3,0" Angle="1" />
</RotateTransform3D.Rotation>
</RotateTransform3D>
</GeometryModel3D.Transform>
</GeometryModel3D>
</ModelVisual3D.Content>
</ModelVisual3D>
備註
如果你需要建立一個使用多種材質的 Class Model3D ,你必須用這個 Model3DGroup 類別來合併多個 GeometryModel3D 物件。
的 GeometryModel3D 前後兩側由三角形的 MeshGeometry3D繞組順序決定。 前側風向逆時針。
與MaterialBackMaterial性質可能是Transparent或null。 當材質透明時,你看不到三角形的那一側,但命中測試照常運作。 當材料是 null時,你看不到,點擊測試也無法運作。
建構函式
| 名稱 | Description |
|---|---|
| GeometryModel3D() |
建立一個新的 實例。GeometryModel3D |
| GeometryModel3D(Geometry3D, Material) |
建立一個新的實例 GeometryModel3D ,使用指定的 Geometry3D 和材質。 |
欄位
| 名稱 | Description |
|---|---|
| BackMaterialProperty |
識別 BackMaterial 依賴性質。 |
| GeometryProperty |
識別 Geometry 依賴性質。 |
| MaterialProperty |
識別 Material 依賴性質。 |
屬性
| 名稱 | Description |
|---|---|
| BackMaterial |
取得或設定 用 Material 來渲染這個 GeometryModel3D背面。 |
| Bounds |
得到 , Rect3D 指定了此 Model3D的軸對齊邊界框。 (繼承來源 Model3D) |
| CanFreeze |
會得到一個值,表示該物件是否能被設定為不可修改。 (繼承來源 Freezable) |
| DependencyObjectType |
會取得 DependencyObjectType 包裹此實例 CLR 類型的 。 (繼承來源 DependencyObject) |
| Dispatcher |
了解 Dispatcher 這與此 DispatcherObject 有關。 (繼承來源 DispatcherObject) |
| Geometry |
得到或設定 , Geometry3D 描述了這個 GeometryModel3D形狀。 |
| HasAnimatedProperties |
會得到一個值,表示是否有一個或多個 AnimationClock 物件與該物件的相依屬性相關聯。 (繼承來源 Animatable) |
| IsFrozen |
會得到一個值,表示該物件目前是否可修改。 (繼承來源 Freezable) |
| IsSealed |
會獲得一個值,表示該實例目前是否封存(唯讀)。 (繼承來源 DependencyObject) |
| Material |
取得或設定 用 Material 來渲染這個 GeometryModel3D的前端。 |
| Transform |
取得或設定 Transform3D 模型上的集合。 (繼承來源 Model3D) |
方法
事件
| 名稱 | Description |
|---|---|
| Changed |
當 Freezable 它所包含的物件被修改時,會發生這種情況。 (繼承來源 Freezable) |
明確介面實作
| 名稱 | Description |
|---|---|
| IFormattable.ToString(String, IFormatProvider) |
使用指定的格式,格式化目前實例的值。 (繼承來源 Model3D) |