ModelVisual3D 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
public ref class ModelVisual3D : System::Windows::Media::Media3D::Visual3D, System::Windows::Markup::IAddChild
[System.Windows.Markup.ContentProperty("Children")]
public class ModelVisual3D : System.Windows.Media.Media3D.Visual3D, System.Windows.Markup.IAddChild
[<System.Windows.Markup.ContentProperty("Children")>]
type ModelVisual3D = class
inherit Visual3D
interface IAddChild
Public Class ModelVisual3D
Inherits Visual3D
Implements IAddChild
- 继承
- 属性
- 实现
示例
以下示例演示标记中的 ModelVisual3D 实例。
myTeapot
引用 MeshGeometry3D 外部定义的 。 可以替换自己的任何几何图形。
<DockPanel>
<Viewport3D Name="myViewport">
<Viewport3D.Camera>
<PerspectiveCamera FarPlaneDistance="20" LookDirection="5,-2,-3" UpDirection="0,1,0" NearPlaneDistance="0" Position="-5,2,3" FieldOfView="45" />
</Viewport3D.Camera>
<ModelVisual3D x:Name="topModelVisual3D">
<ModelVisual3D.Children>
<ModelVisual3D>
<ModelVisual3D.Content>
<DirectionalLight Color="#FFFFFFFF" Direction="-3,-4,-5" />
</ModelVisual3D.Content>
</ModelVisual3D>
<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>
</ModelVisual3D.Children>
</ModelVisual3D>
<Viewport3D.Triggers>
<EventTrigger RoutedEvent="Viewport3D.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="myAngleRotation"
Storyboard.TargetProperty="Angle"
From="0" To="360" Duration="0:0:10"
RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Viewport3D.Triggers>
</Viewport3D>
</DockPanel>
注解
提供所有视觉对象通用的服务和属性,包括命中测试、坐标转换和边界框计算。
类 ModelVisual3D 具有 属性 Children ,可用于生成 对象的树结构 ModelVisual3D 。
ModelVisual3D 对象优化为场景节点。 例如,它们缓存边界。 只要可以,将 ModelVisual3D 对象用于场景中对象的唯一实例。 此用法与 Model3D 对象的用法形成鲜明对比,对象是优化为共享和重复使用的轻量级对象。 例如,使用 对象 Model3D 生成汽车模型;使用 10 ModelVisual3D 个对象将 10 辆汽车放置在场景中。
构造函数
ModelVisual3D() |
初始化 ModelVisual3D 类的新实例。 |
字段
ContentProperty |
标识 Content 依赖项属性。 |
TransformProperty |
标识 Transform 依赖项属性。 |
属性
Children |
获取子 Visual3D 对象的集合。 |
Content |
获取或设置包含 ModelVisual3D 内容的模型。 |
DependencyObjectType |
获取 DependencyObjectType 包装此实例的 CLR 类型的 。 (继承自 DependencyObject) |
Dispatcher |
获取与此 Dispatcher 关联的 DispatcherObject。 (继承自 DispatcherObject) |
HasAnimatedProperties |
获取一个值,该值指示此 Visual3D 是否具有任何进行动画处理的属性。 (继承自 Visual3D) |
IsSealed |
获取一个值,该值指示此实例当前是否为密封的(只读)。 (继承自 DependencyObject) |
Transform |
获取或设置在 ModelVisual3D 上设置的转换。 |
Visual3DChildrenCount |
返回子对象的数目。 |
Visual3DModel |
获取或设置要呈现的 Model3D 对象。 (继承自 Visual3D) |
方法
显式接口实现
IAddChild.AddChild(Object) |
添加子对象。 |
IAddChild.AddText(String) |
将节点的文本内容添加到对象。 |