RenderSurfaceBase
RenderSurface の抽象ベースクラス。これは、BaseRenderableSeriesの型を高速にレンダーするビューポートです。レンダラアーキテクチャはプラグインベースで、つまり RenderSurfaceBase の複数の実装をビルドしています。
継承元: ContentControl
実装: IRenderSurface2D, IRenderSurface, IDisposable, IHitTestable, IInvalidatableElement
コンストラクター
protected RenderSurfaceBase()
renderSurfaceBase = RenderSurfaceBase()
RenderSurfaceBaseクラスの新しいインスタンスを初期化します。
プロパティ
public ReadOnlyCollection<IRenderableSeries> ChildSeries { get; }
value = renderSurfaceBase.ChildSeries
このIRenderSurface2DインスタンスでRenderableSeriesを子供に取得
public Grid Grid { get; }
value = renderSurfaceBase.Grid
RenderSurfaceBase のコンポーネントをホストするルート要素 Grid を取得する
public virtual bool IsSizeValidForDrawing { get; }
value = renderSurfaceBase.IsSizeValidForDrawing
RenderSurfaceBase@ のサイズが図面に有効である場合は、true を返します。
public double? MaxFrameRate { get; set; }
value = renderSurfaceBase.MaxFrameRate
renderSurfaceBase.MaxFrameRate = value
デフォルトでは、この@RenderSurfaceの最大フレームレートを取得または設定します。 デフォルトでは、この値は、親UltrachartSurface.MaxFrameRate@にバインドされます。
public virtual bool NeedsResizing { get; }
value = renderSurfaceBase.NeedsResizing
RenderSurfaceBaseサイズが変更され、ビューポートが再サイズ化する必要がある場合は、trueを返します
public int ResizeThrottleMs { get; set; }
value = renderSurfaceBase.ResizeThrottleMs
renderSurfaceBase.ResizeThrottleMs = value
再サイズをタイムアウトする e.g.100ms は RenderSurfaceが 100ms ウィンドウ内で受信したすべてのリサイズイベントを一括して処理することを意味します。これにより、リサイズ時に CPU の使用量が削減されます。また、UseResizeThrottle 依存性プロパティーが真であることが確認されています。
public IServiceContainer Services { get; set; }
value = renderSurfaceBase.Services
renderSurfaceBase.Services = value
IServiceContainer インスタンスを受け取り、設定する
public bool UseResizeThrottle { get; set; }
value = renderSurfaceBase.UseResizeThrottle
renderSurfaceBase.UseResizeThrottle = value
もしtrueなら、ResizeThrottleMs値を使って、特定の時間ウィンドウ内で受信したリサイズイベントをバッチアップし、リサイズ時にCPU負荷を削減します。
メソッド
public void AddSeries(IRenderableSeries renderableSeries)
renderSurfaceBase.AddSeries(renderableSeries)
IRenderableSeries インスタンスをRenderSurfaceBaseに追加
- renderableSeries
- レンダリング可能なシリーズ。
public void AddSeries(IEnumerable<IRenderableSeries> renderableSeries)
renderSurfaceBase.AddSeries(renderableSeries)
IRenderableSeries インスタンスをIRenderSurface2Dに追加
- renderableSeries
public virtual void ClearSeries()
renderSurfaceBase.ClearSeries()
RenderSurfaceBase の IRenderableSeries を全てクリア
public bool ContainsSeries(IRenderableSeries renderableSeries)
result = renderSurfaceBase.ContainsSeries(renderableSeries)
RenderSurfaceBase に IRenderableSeries が含まれている場合は、true を返します。
- renderableSeries
- IRenderableSeries インスタンス
戻り値: 指定されたレンダブルシリーズにシリーズが含まれている場合、true です。そうしないと false です。
public void Dispose(bool disposing)
renderSurfaceBase.Dispose(disposing)
管理されていないリソースと - 任意に - 管理されたリソースを解放します。
- disposing
- 管理されていないリソースと管理されていないリソースの両方を解放する真の; 偽りなく管理されていないリソースのみを解放します。
public void Dispose()
renderSurfaceBase.Dispose()
管理されていないリソースを解放、解放、またはリセットする関連アプリケーション定義タスクを実行します。
protected virtual void DisposeUnmanagedResources()
renderSurfaceBase.DisposeUnmanagedResources()
派生したクラスは、未管理のリソースを処分する際に通知するこのメソッドを上書きすることができます。RenderSurfaceBaseが処分されると呼び出されます。
protected override void Finalize()
renderSurfaceBase.Finalize()
RenderSurfaceBaseクラスインスタンスを継承します。
public Rect GetBoundsRelativeTo(IHitTestable relativeTo)
result = renderSurfaceBase.GetBoundsRelativeTo(relativeTo)
別のIHitTestable要素に相対的に現在のIHitTestable@要素の境界を取得します
- relativeTo
public abstract IRenderContext2D GetRenderContext()
result = renderSurfaceBase.GetRenderContext()
派生したクラスにオーバーライドすると、現在のレンダーパスでRenderContextを有効に返します。
public static string GetRenderSurfaceType(UIElement element)
result = RenderSurfaceBase.GetRenderSurfaceType(element)
RenderSurfaceType 添付プロパティを取得
- element
- 要素。
public void InvalidateElement()
renderSurfaceBase.InvalidateElement()
再塗装を行なうRenderSurfaceを無効化
public bool IsPointWithinBounds(Point point)
result = renderSurfaceBase.IsPointWithinBounds(point)
ポイントが現在のIHitTestable要素の境界内にある場合は、trueを返します
- point
- 試験のポイント
戻り値: ポイントが境界内にある場合 true
protected virtual void OnRendered(double duration)
renderSurfaceBase.OnRendered(duration)
指定された期間でレンダリングされたイベントを発生させます
- duration
- 期間。
protected virtual void OnRenderSurfaceBaseLoaded(object sender, RoutedEventArgs e)
renderSurfaceBase.OnRenderSurfaceBaseLoaded(sender, e)
RenderSurfaceBase がビジュアルツリーにロードされると呼び出される
- sender
- 送信者。
- e
- イベントデータを含むRoutedEventArgsインスタンス。
protected virtual void OnRenderSurfaceBaseUnloaded(object sender, RoutedEventArgs e)
renderSurfaceBase.OnRenderSurfaceBaseUnloaded(sender, e)
RenderSurfaceBase がビジュアルツリーからアンロードされると呼び出される
- sender
- 送信者。
- e
- イベントデータを含むRoutedEventArgsインスタンス。
protected virtual void OnRenderTimeElapsed()
renderSurfaceBase.OnRenderTimeElapsed()
レンダリングイベントが発生したときに呼び出される
protected void PublishResizedMessage(int width, int height)
renderSurfaceBase.PublishResizedMessage(width, height)
実際のビューポートサイズでRenderSurfaceResizedMessageを発行
- width
- height
public virtual void RecreateSurface()
renderSurfaceBase.RecreateSurface()
スタートアップで一度呼び出されるViewportで必要な要素を再作成し、表面をリサイズする
public void RemoveSeries(IRenderableSeries renderableSeries)
renderSurfaceBase.RemoveSeries(renderableSeries)
RenderSurfaceBase から RenderSurfaceBaseを削除
- renderableSeries
- レンダリング可能なシリーズ。
public static void SetRenderSurfaceType(UIElement element, string value)
RenderSurfaceBase.SetRenderSurfaceType(element, value)
RenderSurfaceType に添付されたプロパティを設定
- element
- 要素。
- value
- 値。
public Point TranslatePoint(Point point, IHitTestable relativeTo)
result = renderSurfaceBase.TranslatePoint(point, relativeTo)
他のIHitTestable要素に相対的なポイントを翻訳します
- point
- このページの先頭へ
- relativeTo
- 点を変形させるときに使用する他のIHitTestable
戻り値: トランスフォーメーションポイント
イベント
public event EventHandler<DrawEventArgs> Draw
renderSurfaceBase.Draw += handler
レンダリング面を描画するたびに上げます。このイベントを表面に塗装する
public event EventHandler<RenderedEventArgs> Rendered
renderSurfaceBase.Rendered += handler
レンダリング操作が完了したらすぐにレイズ
フィールド
public static readonly DependencyProperty MaxFrameRateProperty
value = RenderSurfaceBase.MaxFrameRateProperty
電子メール:MaxFrameRateDependencyProperty@
public static readonly DependencyProperty RenderSurfaceTypeProperty
value = RenderSurfaceBase.RenderSurfaceTypeProperty
RenderSurfaceType に添付されたプロパティを定義する
public static readonly DependencyProperty ResizeThrottleMsProperty
value = RenderSurfaceBase.ResizeThrottleMsProperty
電子メール:ResizeThrottleMsDependencyProperty@
public static readonly DependencyProperty UseResizeThrottleProperty
value = RenderSurfaceBase.UseResizeThrottleProperty
電子メール:UseResizeThrottleDependencyProperty@