ModelVisual3D クラス

定義

Visual3D オブジェクトをレンダリングする Model3D を提供します。Provides a Visual3D that renders Model3D objects.

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
type ModelVisual3D = class
    inherit Visual3D
    interface IAddChild
Public Class ModelVisual3D
Inherits Visual3D
Implements IAddChild
継承
属性
実装

次の例は、マークアップ内の ModelVisual3D のインスタンスを示しています。The following example shows an instance of ModelVisual3D in markup. myTeapot は、外部で定義された MeshGeometry3D を参照します。myTeapot refers to a MeshGeometry3D defined externally. 独自の任意のジオメトリを置き換えることができます。You can substitute any geometry of your own.

<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>

注釈

ヒットテスト、座標変換、境界ボックス計算など、すべてのビジュアルオブジェクトに共通のサービスとプロパティを提供します。Provides services and properties that are common to all visual objects, including hit-testing, coordinate transformation, and bounding-box calculations.

ModelVisual3D クラスには、ModelVisual3D オブジェクトのツリー構造を構築できる Children プロパティがあります。The ModelVisual3D class has a Children property that enables you to build a tree structure of ModelVisual3D objects.

ModelVisual3D オブジェクトは、シーンノードとして最適化されます。ModelVisual3D objects are optimized as scene nodes. たとえば、境界がキャッシュされます。For example, they cache bounds. 可能な場合は常に、シーン内のオブジェクトの一意のインスタンスに対して ModelVisual3D オブジェクトを使用します。Whenever you can, use ModelVisual3D objects for unique instances of objects within your scene. この使用方法は、共有および再利用するように最適化された軽量オブジェクトである Model3D のオブジェクトとは対照的です。This usage contrasts with that of Model3D objects, which are lightweight objects that are optimized to be shared and reused. たとえば、Model3D オブジェクトを使用して、車のモデルを作成します。また、10個の ModelVisual3D オブジェクトを使用して、シーンに10台の車を配置します。For example, use a Model3D object to build a model of a car; and use ten ModelVisual3D objects to place ten cars in your scene.

コンストラクター

ModelVisual3D()

ModelVisual3D クラスの新しいインスタンスを初期化します。Initializes a new instance of the ModelVisual3D class.

フィールド

ContentProperty

Content 依存関係プロパティを識別します。Identifies the Content dependency property.

TransformProperty

Transform 依存関係プロパティを識別します。Identifies the Transform dependency property.

プロパティ

Children

Visual3D オブジェクトのコレクションを取得します。Gets a collection of child Visual3D objects.

Content

ModelVisual3D の内容を構成するモデルを取得または設定します。Gets or sets the model that comprises the content of the ModelVisual3D.

DependencyObjectType

このインスタンスの DependencyObjectType 型をラップする CLRCLR を取得します。Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(継承元 DependencyObject)
Dispatcher

この Dispatcher が関連付けられている DispatcherObject を取得します。Gets the Dispatcher this DispatcherObject is associated with.

(継承元 DispatcherObject)
HasAnimatedProperties

この Visual3D にアニメーション化されたプロパティかあるかどうかを示す値を取得します。Gets a value that indicates whether this Visual3D has any animated properties.

(継承元 Visual3D)
IsSealed

このインスタンスが現在シールされている (読み取り専用である) かどうかを示す値を取得します。Gets a value that indicates whether this instance is currently sealed (read-only).

(継承元 DependencyObject)
Transform

ModelVisual3D 上の変換セットを取得または設定します。Gets or sets the transform set on the ModelVisual3D.

Visual3DChildrenCount

子オブジェクトの数を返します。Returns the number of child objects.

Visual3DModel

描画される Model3D オブジェクトを取得または設定します。Gets or sets the Model3D object to render.

(継承元 Visual3D)

メソッド

AddVisual3DChild(Visual3D)

2 つの 3-D ビジュアル間の親子リレーションシップを定義します。Defines the parent-child relationship between two 3-D visuals.

(継承元 Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock)

指定された AnimationClock の効果を、指定された依存関係プロパティに適用します。Applies the effect of a given AnimationClock to a given dependency property.

(継承元 Visual3D)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

指定された AnimationClock の効果を、指定された依存関係プロパティに適用します。Applies the effect of a given AnimationClock to a given dependency property. 現在のアニメーションに対する新しい AnimationClock の効果は、handoffBehavior パラメーターの値によって決まります。The effect of the new AnimationClock on any current animations is determined by the value of the handoffBehavior parameter.

(継承元 Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline)

指定した DependencyProperty に基づいて、AnimationTimeline オブジェクトの一連のアニメーションを開始します。Initiates an animation sequence for the DependencyProperty object, based on the specified AnimationTimeline.

(継承元 Visual3D)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

指定した DependencyPropertyAnimationTimeline の両方に基づいて、HandoffBehavior オブジェクトの一連のアニメーションを開始します。Initiates an animation sequence for the DependencyProperty object, based on both the specified AnimationTimeline and HandoffBehavior.

(継承元 Visual3D)
CheckAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。Determines whether the calling thread has access to this DispatcherObject.

(継承元 DispatcherObject)
ClearValue(DependencyProperty)

プロパティのローカル値をクリアします。Clears the local value of a property. クリアするプロパティは DependencyProperty 識別子で指定されます。The property to be cleared is specified by a DependencyProperty identifier.

(継承元 DependencyObject)
ClearValue(DependencyPropertyKey)

読み取り専用プロパティのローカル値を消去します。Clears the local value of a read-only property. 消去するプロパティは、DependencyPropertyKey で指定します。The property to be cleared is specified by a DependencyPropertyKey.

(継承元 DependencyObject)
CoerceValue(DependencyProperty)

指定した依存関係プロパティの値を強制します。Coerces the value of the specified dependency property. これは、呼び出し元の CoerceValueCallback の依存関係プロパティのプロパティ メタデータで指定されている DependencyObject 関数を呼び出すことによって実現されます。This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(継承元 DependencyObject)
Equals(Object)

指定した DependencyObject が現在の DependencyObject と等しいかどうかを判断します。Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(継承元 DependencyObject)
FindCommonVisualAncestor(DependencyObject)

ビジュアル オブジェクトおよびそれ以外の指定したビジュアル オブジェクトに共通の先祖を返します。Returns the common ancestor of the visual object and another specified visual object.

(継承元 Visual3D)
GetAnimationBaseValue(DependencyProperty)

指定した DependencyProperty オブジェクトの基本値を取得します。Retrieves the base value of the specified DependencyProperty object.

(継承元 Visual3D)
GetHashCode()

この DependencyObject のハッシュ コードを取得します。Gets a hash code for this DependencyObject.

(継承元 DependencyObject)
GetLocalValueEnumerator()

どの依存関係プロパティがこの DependencyObject 上にローカルに設定された値を持つかを確認するための、専用の列挙子を作成します。Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(継承元 DependencyObject)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
GetValue(DependencyProperty)

DependencyObject のこのインスタンスにある依存関係プロパティの現在の有効値を返します。Returns the current effective value of a dependency property on this instance of a DependencyObject.

(継承元 DependencyObject)
GetVisual3DChild(Int32)

親コレクション内の指定した Visual3D を返します。Returns the specified Visual3D in the parent collection.

InvalidateProperty(DependencyProperty)

指定した依存関係プロパティの有効値を再評価します。Re-evaluates the effective value for the specified dependency property.

(継承元 DependencyObject)
IsAncestorOf(DependencyObject)

ビジュアル オブジェクトが、指定した子孫ビジュアル オブジェクトの先祖かどうかを判定します。Determines whether the visual object is an ancestor of the descendant visual object.

(継承元 Visual3D)
IsDescendantOf(DependencyObject)

ビジュアル オブジェクトが、指定した先祖ビジュアル オブジェクトの子孫かどうかを判定します。Determines whether the visual object is a descendant of the ancestor visual object.

(継承元 Visual3D)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

この DependencyObject の依存関係プロパティの有効値が更新された場合に必ず呼び出されます。Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. 変更された特定の依存関係プロパティは、イベント データで報告されます。The specific dependency property that changed is reported in the event data.

(継承元 DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

ビジュアル オブジェクトの Visual3DCollection が変更されると呼び出されます。Called when the Visual3DCollection of the visual object is modified.

(継承元 Visual3D)
OnVisualParentChanged(DependencyObject)

3-D ビジュアル オブジェクトの親が変更されると呼び出されます。Called when the parent of the 3-D visual object is changed.

(継承元 Visual3D)
ReadLocalValue(DependencyProperty)

ローカルの依存関係プロパティの値を返します (存在する場合)。Returns the local value of a dependency property, if it exists.

(継承元 DependencyObject)
RemoveVisual3DChild(Visual3D)

2 つの 3-D ビジュアル間の親子リレーションシップを削除します。Removes the parent-child relationship between two 3-D visuals.

(継承元 Visual3D)
SetCurrentValue(DependencyProperty, Object)

依存関係プロパティ値のソースを変更せずにその値を設定します。Sets the value of a dependency property without changing its value source.

(継承元 DependencyObject)
SetValue(DependencyProperty, Object)

依存関係プロパティ識別子を指定して、該当する依存関係プロパティのローカル値を設定します。Sets the local value of a dependency property, specified by its dependency property identifier.

(継承元 DependencyObject)
SetValue(DependencyPropertyKey, Object)

依存関係プロパティの DependencyPropertyKey 識別子で指定した読み取り専用の依存関係プロパティのローカル値を設定します。Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(継承元 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

シリアル化プロセスが、指定された依存関係プロパティの値をシリアル化する必要があるかどうかを示す値を返します。Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(継承元 DependencyObject)
ToString()

現在のオブジェクトを表す string を返します。Returns a string that represents the current object.

(継承元 Object)
TransformToAncestor(Visual)

この Visual3D オブジェクトから、オブジェクトの指定した Visual の先祖に座標を変換するために使用できる変換を返します。Returns a transform that can be used to transform coordinates from this Visual3D object to the specified Visual ancestor of the object.

(継承元 Visual3D)
TransformToAncestor(Visual3D)

この Visual3D オブジェクトから、オブジェクトの指定した Visual3D の先祖に座標を変換するために使用できる変換を返します。Returns a transform that can be used to transform coordinates from this Visual3D object to the specified Visual3D ancestor of the object.

(継承元 Visual3D)
TransformToDescendant(Visual3D)

この Visual3D オブジェクトから指定した Visual3D 降下オブジェクトへの座標変換に使用できる変換を返します。Returns a transform that can be used to transform coordinates from this Visual3D object to the specified Visual3D descent object.

(継承元 Visual3D)
VerifyAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。Enforces that the calling thread has access to this DispatcherObject.

(継承元 DispatcherObject)

明示的なインターフェイスの実装

IAddChild.AddChild(Object)

子オブジェクトを追加します。Adds a child object.

IAddChild.AddText(String)

ノードのテキスト コンテンツをオブジェクトに追加します。Adds the text content of a node to the object.

適用対象