GeometryModel3D 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用指定的 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>
以下代码摘录使用GeometryModel3DGeometry定义为静态资源的 。
<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>
注解
如果需要创建 Model3D 使用多个材料的 ,则必须使用 Model3DGroup 类来合并多个 GeometryModel3D 对象。
的正面和背面 GeometryModel3D 由 中 MeshGeometry3D三角形的缠绕顺序决定。 正面逆时针向风。
Material和 BackMaterial 属性可以是 Transparent 或 null
。 当材料透明时,你看不到三角形的这一侧,但命中测试照常工作。 当材料为 null
时,你看不到它,并且命中测试不起作用。
构造函数
GeometryModel3D() |
创建 GeometryModel3D 的新实例。 |
GeometryModel3D(Geometry3D, Material) |
用指定的 Geometry3D 和 Material 创建 GeometryModel3D 的一个新实例。 |
字段
BackMaterialProperty |
标识 BackMaterial 依赖项属性。 |
GeometryProperty |
标识 Geometry 依赖项属性。 |
MaterialProperty |
标识 Material 依赖项属性。 |
属性
BackMaterial |
获取或设置用于呈现此 GeometryModel3D 背面的 Material。 |
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 |
获取或设置用于呈现此 GeometryModel3D 的正面的 Material。 |
Transform |
获取或设置在模型上设置的 Transform3D。 (继承自 Model3D) |
方法
事件
Changed |
在修改 Freezable 或其包含的对象时发生。 (继承自 Freezable) |
显式接口实现
IFormattable.ToString(String, IFormatProvider) |
使用指定格式对当前实例的值设置格式。 (继承自 Model3D) |