Viewport2DVisual3D 类

定义

在指定的三维视区边界内呈现二维子对象。

public ref class Viewport2DVisual3D sealed : System::Windows::Media::Media3D::Visual3D
[System.Windows.Markup.ContentProperty("Visual")]
public sealed class Viewport2DVisual3D : System.Windows.Media.Media3D.Visual3D
[<System.Windows.Markup.ContentProperty("Visual")>]
type Viewport2DVisual3D = class
    inherit Visual3D
Public NotInheritable Class Viewport2DVisual3D
Inherits Visual3D
继承
属性

示例

以下示例演示如何在三维对象上放置一个按钮(一个二维对象)。 请注意,必须在希望放置二维视觉对象的材料上设置 IsVisualHostMaterial 附加属性。

<Viewport3D>
    <Viewport3D.Camera>
        <PerspectiveCamera Position="0, 0, 4"/>
    </Viewport3D.Camera>
    
    <!-- Button on 3D -->
    <Viewport2DVisual3D>
        <!-- Give the plane a slight rotation -->
        <Viewport2DVisual3D.Transform>
            <RotateTransform3D>
                <RotateTransform3D.Rotation>
                    <AxisAngleRotation3D Angle="40" Axis="0, 1, 0" />
                </RotateTransform3D.Rotation>
            </RotateTransform3D>
        </Viewport2DVisual3D.Transform>
        
        <!-- The Geometry, Material, and Visual for the Viewport2DVisual3D -->
        <Viewport2DVisual3D.Geometry>
            <MeshGeometry3D Positions="-1,1,0 -1,-1,0 1,-1,0 1,1,0"
                            TextureCoordinates="0,0 0,1 1,1 1,0" TriangleIndices="0 1 2 0 2 3"/>
        </Viewport2DVisual3D.Geometry>

        <Viewport2DVisual3D.Material>
            <DiffuseMaterial Viewport2DVisual3D.IsVisualHostMaterial="True" Brush="White"/>
        </Viewport2DVisual3D.Material>                               
        
        <Button>Hello, 3D</Button>
    </Viewport2DVisual3D>
    
    <!-- Lights -->
    <ModelVisual3D>
        <ModelVisual3D.Content>
            <DirectionalLight Color="#FFFFFFFF" Direction="0,0,-1"/>
        </ModelVisual3D.Content>
    </ModelVisual3D>
</Viewport3D>

注解

Viewport2DVisual3D 使你能够在三维对象上放置交互式二维内容。 其对应项是 Viewport3DVisual 类,它是具有三维子级的二维视觉对象。

Viewport2DVisual3D.NET Framework版本 3.5 中引入。

构造函数

Viewport2DVisual3D()

初始化 Viewport2DVisual3D 类的新实例。

字段

CacheModeProperty

标识 CacheMode 依赖项属性。

GeometryProperty

标识 Geometry 依赖项属性。

IsVisualHostMaterialProperty

标识 IsVisualHostMaterial 附加属性。

MaterialProperty

标识 Material 依赖项属性。

VisualProperty

标识 Visual 依赖项属性。

属性

CacheMode

获取或设置 Viewport2DVisual3D 的缓存表示形式。

DependencyObjectType

获取包装 DependencyObjectType 此实例的 CLR 类型。

(继承自 DependencyObject)
Dispatcher

获取与此 Dispatcher 关联的 DispatcherObject

(继承自 DispatcherObject)
Geometry

获取或设置此 Viewport2DVisual3D 的三维几何图形。

HasAnimatedProperties

获取一个值,该值指示此 Visual3D 是否具有任何进行动画处理的属性。

(继承自 Visual3D)
IsSealed

获取一个值,该值指示此实例当前是否为密封的(只读)。

(继承自 DependencyObject)
Material

获取或设置描述三维对象外观的材料。

Transform

获取或设置应用于三维对象的变换。

(继承自 Visual3D)
Visual

获取或设置要放置在三维对象上的二维可视化对象。

Visual3DChildrenCount

获取 Visual3D 对象的子元素数量。

(继承自 Visual3D)
Visual3DModel

获取或设置要呈现的 Model3D 对象。

(继承自 Visual3D)

附加属性

IsVisualHostMaterial

获取或设置一个值,该值指定材料是否应具有交互性。

方法

AddVisual3DChild(Visual3D)

定义两个三维可视对象之间的父子关系。

(继承自 Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock)

将给定 AnimationClock 的效果应用于给定的依赖属性。

(继承自 Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

将给定 AnimationClock 的效果应用于给定的依赖属性。 新 AnimationClock 对任何当前的动画所产生的效果均由 handoffBehavior 参数值确定。

(继承自 Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline)

基于指定的 AnimationTimelineDependencyProperty 对象初始化动画序列。

(继承自 Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

根据指定的 DependencyPropertyAnimationTimeline 启动 HandoffBehavior 对象的动画序列。

(继承自 Visual3D)
CheckAccess()

确定调用线程是否可以访问此 DispatcherObject

(继承自 DispatcherObject)
ClearValue(DependencyProperty)

清除属性的本地值。 要清除的属性由 DependencyProperty 标识符指定。

(继承自 DependencyObject)
ClearValue(DependencyPropertyKey)

清除只读属性的本地值。 要清除的属性由 DependencyPropertyKey 指定。

(继承自 DependencyObject)
CoerceValue(DependencyProperty)

对指定依赖属性的值进行强制。 通过对调用方 DependencyObject 上存在的依赖属性的属性元数据中所指定的任何 CoerceValueCallback 函数进行调用来完成此操作。

(继承自 DependencyObject)
Equals(Object)

确定提供的 DependencyObject 是否等效于当前 DependencyObject

(继承自 DependencyObject)
FindCommonVisualAncestor(DependencyObject)

返回可视对象和其他指定可视对象的公共上级。

(继承自 Visual3D)
GetAnimationBaseValue(DependencyProperty)

检索指定 DependencyProperty 对象的基值。

(继承自 Visual3D)
GetHashCode()

获取此 DependencyObject 的哈希代码。

(继承自 DependencyObject)
GetIsVisualHostMaterial(Material)

获取指定的 UIElementIsVisualHostMaterial 附加属性值。

GetLocalValueEnumerator()

创建一个专用的枚举数,用于确定哪些依赖项属性在此 DependencyObject 上具有以本地方式设置的值。

(继承自 DependencyObject)
GetType()

获取当前实例的 Type

(继承自 Object)
GetValue(DependencyProperty)

DependencyObject 的此实例返回依赖属性的当前有效值。

(继承自 DependencyObject)
GetVisual3DChild(Int32)

返回父级 Visual3D 中的指定 Visual3DCollection

(继承自 Visual3D)
InvalidateProperty(DependencyProperty)

重新评估指定依赖属性的有效值。

(继承自 DependencyObject)
IsAncestorOf(DependencyObject)

确定可视对象是否为后代可视对象的上级。

(继承自 Visual3D)
IsDescendantOf(DependencyObject)

确定可视对象是否为上级可视对象的后代。

(继承自 Visual3D)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

每当更新此 DependencyObject 的任何依赖属性的有效值时调用。 更改的特定依赖属性将在事件数据中报告。

(继承自 DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

修改可视对象的 Visual3DCollection 时调用。

(继承自 Visual3D)
OnVisualParentChanged(DependencyObject)

在三维可视对象的父级更改时调用。

(继承自 Visual3D)
ReadLocalValue(DependencyProperty)

如果存在,则返回依赖属性的本地值。

(继承自 DependencyObject)
RemoveVisual3DChild(Visual3D)

移除两个三维可视对象之间的父子关系。

(继承自 Visual3D)
SetCurrentValue(DependencyProperty, Object)

设置依赖属性的值而不更改其值源。

(继承自 DependencyObject)
SetIsVisualHostMaterial(Material, Boolean)

IsVisualHostMaterial 附加属性的值设置为指定的元素。

SetValue(DependencyProperty, Object)

设置依赖属性的本地值,该值由其依赖属性标识符指定。

(继承自 DependencyObject)
SetValue(DependencyPropertyKey, Object)

设置一个只读依赖属性的本地值,该值由依赖属性的 DependencyPropertyKey 标识符指定。

(继承自 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

返回一个值,该值指示序列化进程是否应序列化所提供的依赖属性的值。

(继承自 DependencyObject)
ToString()

返回表示当前对象的字符串。

(继承自 Object)
TransformToAncestor(Visual)

返回一个转换,该转换可用于将此 Visual3D 对象中的坐标转换为该对象的指定 Visual 上级。

(继承自 Visual3D)
TransformToAncestor(Visual3D)

返回一个转换,该转换可用于将此 Visual3D 对象中的坐标转换为该对象的指定 Visual3D 上级。

(继承自 Visual3D)
TransformToDescendant(Visual3D)

返回一个转换,此转换可用于将坐标从此 Visual3D 对象转换为指定的 Visual3D 派生对象。

(继承自 Visual3D)
VerifyAccess()

强制调用线程具有此 DispatcherObject 的访问权限。

(继承自 DispatcherObject)

适用于