Bahasa

InteractionTracker Kelas

Definisi

Menangani logika input yang dapat digunakan sebagai target dalam ExpressionAnimations—biasanya untuk mendorong gerakan visual berdasarkan input.

public ref class InteractionTracker sealed : CompositionObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.LiftedContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class InteractionTracker final : CompositionObject
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
class InteractionTracker final : CompositionObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.LiftedContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class InteractionTracker : CompositionObject
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
public sealed class InteractionTracker : CompositionObject
Public NotInheritable Class InteractionTracker
Inherits CompositionObject
Warisan
Object Platform::Object IInspectable CompositionObject InteractionTracker
Atribut

Contoh

void SetupSimpleInteractionTracker(Visual viewportVisual, Visual contentVisual)
{
  //
  // Create the InteractionTracker and set its min/max position and scale.  These could 
  // also be bound to expressions.  Note: The scrollable area can be changed from either 
  // the min or the max position to facilitate content updates/virtualization.
  //

  _tracker = InteractionTracker.Create(_compositor);

  _tracker.MaxPosition = new Vector3(
    contentVisual.Size.X - viewportVisual.Size.X,
    contentVisual.Size.Y - viewportVisual.Size.Y,
    0.0f);

  _tracker.MinScale = 0.5f;
  _tracker.MaxScale = 4.0f;


  //
  // Configure the interaction source.  Enable input with inertia on all axes.
  //

  var interactionSource = VisualInteractionSource.Create(viewportVisual);

  interactionSource.PositionXSourceMode = InteractionSourceMode.EnabledWithInertia;
  interactionSource.PositionYSourceMode = InteractionSourceMode.EnabledWithInertia;
  interactionSource.ScaleSourceMode = InteractionSourceMode.EnabledWithInertia;

  _tracker.InteractionSources.Add(interactionSource);


  //
  // Bind the InteractionTracker outputs to the contentVisual.
  //

  var positionExpression = _compositor.CreateExpressionAnimation("-tracker.Position");
  positionExpression.SetReferenceParameter("tracker", _tracker);

  contentVisual.StartAnimation("Offset", positionExpression);


  var scaleExpression = _compositor.CreateExpressionAnimation("Vector3(tracker.Scale, tracker.Scale, 1.0)");

  scaleExpression.SetReferenceParameter("tracker", _tracker);

  contentVisual.StartAnimation("Scale", scaleExpression);
}

Keterangan

InteractionTracker adalah mesin status yang dapat didorong oleh input aktif, atau dengan panggilan eksplisit untuk memperbarui atau menganimasikan propertinya. Kelas InteractionTracker dimaksudkan untuk mengaktifkan input untuk mendorong KomposisiAnimasiuntuk pengalaman interaksi kustom. Untuk membangun pengalaman interaktif, perlu untuk mengaitkan satu atau beberapa VisualInteractionSourcedengan InteractionTracker.

Skenario Umum

IneractionTracker dimaksudkan untuk digunakan untuk:

  • Menambahkan perilaku gesek kustom, misalnya menggesek item ListView atau visual lain untuk menghapus/menutup
  • Transisi yang terkait dengan panning, misalnya menggesek ke transisi antara status "tertutup" dan "terbuka"
  • Animasi efek berbasis input, misalnya panning menyebabkan layar kabur
  • Kontrol Kustom, misalnya membuat implementasi kustom ScrollViewer dengan kecepatan panning yang berbeda atau kemampuan untuk dikontrol secara terprogram

Status dan Transisi InteractionTracker

InteractionTracker adalah mesin status dengan empat status:

  • Menganggur: Tidak ada input atau animasi aktif yang mengendarai InteractionTracker
  • Berinteraksi: Input pengguna aktif mendorong InteractionTracker
  • Inertia: Animasi aktif yang merupakan hasil dari input aktif atau kecepatan terprogram mendorong InteractionTracker
  • CustomAnimation: Properti InteractionTracker sedang dianimasikan langsung Diagram di bawah ini menunjukkan keempat status ini dan transisi status mana yang valid.

Gambar memperlihatkan status InteractionTracker: Idle, Inertia, Interacting, dan Custom Animation.

Transisi status dapat terjadi karena tindakan pengguna (seperti memulai atau menghentikan manipulasi) atau karena panggilan eksplisit ke metode di InteractionTracker. Setiap kali salah satu panggilan eksplisit ini dilakukan, requestID dikeluarkan untuk melacak apakah permintaan diabaikan atau menyebabkan perubahan status.

Hal penting yang perlu diperhatikan adalah bahwa InteractionTracker berjalan dalam proses yang berbeda dari aplikasi yang menggunakannya. Dengan demikian, semua panggilan metode di InteractionTracker dan kelas terkait tidak sinkron, seperti halnya panggilan balik yang dikeluarkan melalui antarmuka IInteractionTrackerOwner.

Berikut ini menjelaskan apa yang memicu setiap perubahan status terjadi:

Mulai Status Status Akhir Kemungkinan Pemicu
Menganggur Berinteraksi Transisi status ini hanya terjadi ketika manipulasi pengguna yang selaras dengan VisualInteractionSource yang terkait dengan InteractionTracker sedang dilakukan.
Menganggur Inersia Transisi status ini hanya terjadi ketika InteractionTracker dalam status Menganggur dan TryUpdatePositionWithVelocity atau TryUpdateScaleWithVelocity dipanggil.
Menganggur AnimasiKustom Transisi status ini terjadi ketika InteractionTracker dalam status Menganggur dan TryUpdatePositionWithAnimation atau TryUpdateScaleWithAnimation dipanggil.
Berinteraksi Inersia Transisi status ini hanya terjadi ketika manipulasi pengguna yang telah dikirim ke InteractionTracker selesai. Ketika input aktif berakhir, InteractionTracker akan memasuki status Inertia, dan informasi seperti kecepatan rilis jari dan InertiaDecayRate akan menentukan perilaku selama status Inertia.
Inersia Menganggur Transisi status ini terjadi ketika fungsi yang digunakan untuk memperbarui posisi dan/atau skala tidak lagi mengakibatkan perubahan. Dengan kata lain, posisi dan kecepatan skala keduanya telah menjadi nol. Transisi status ini juga dapat terjadi jika panggilan dilakukan untuk memperbarui posisi atau skala secara eksplisit tanpa animasi atau kecepatan. Panggilan ini akan mengakhiri inertia dan transisi ke Diam dengan nilai properti yang diperbarui.
Inersia Inersia Transisi status ini terjadi ketika TryUpdatePositionWithVelocity atau TryUpdateScaleWithVelocity dipanggil ketika sudah dalam status Inertia. Memasukkan kembali Inertia akan menyebabkan semua properti InertiaStateEntered dievaluasi ulang.
Inersia AnimasiKustom Transisi status ini terjadi ketika panggilan ke TryUpdatePositionWithAnimation atau TryUpdateScaleWithAnimation dilakukan saat berada di sate Inertia.
Inersia Berinteraksi Transisi status ini terjadi ketika input aktif dari pengguna yang melakukan hit-test ke VisualInteractionSource masuk sebelum Inertia selesai.
AnimasiKustom Menganggur Transisi status ini terjadi ketika semua animasi yang diatur pada posisi InteractionTracker dan properti skala telah selesai.
AnimasiKustom AnimasiKustom Transisi status ini terjadi ketika panggilan ke TryUpdatePositionWithAnimation atau TryUpdateScaleWithAnimation dilakukan saat sudah dalam status CustomAnimation.
AnimasiKustom Inersia Transisi status ini terjadi ketika panggilan ke TryUpdatePositionWithVelocity atau TryUpdateScaleWithVelocity dilakukan ketika dalam status CustomAnimation.
AnimasiKustom Berinteraksi Transisi status ini terjadi ketika manipulasi pengguna yang melakukan hit-test ke VisualInteractionSource yang terkait dengan InteractionTracker sedang dilakukan.

Setiap transisi status yang dibuat oleh InteractionTracker akan menghasilkan panggilan balik yang menunjukkan status baru dengan arg yang menyertakan informasi yang relevan dengan status tersebut serta requestID untuk permintaan yang menyebabkan perubahan status. Manipulasi aktif dari pengguna akan menghasilkan requestID 0. Setiap panggilan Coba* akan mengeluarkan requestID yang dapat digunakan untuk melacak panggilan Coba* yang menyebabkan perubahan status. RequestID pertama selama masa pakai aplikasi adalah 1, dan setiap panggilan berikutnya akan meningkatkan requestID, yang berarti bahwa masing-masing akan unik.

Posisi dan Skala InteractionTracker

Dua properti interactionTracker yang paling umum digunakan adalah posisi dan skala. Setiap kali ada perubahan pada salah satu atau kedua properti ini, panggilan balik ValuesChanged akan dikirim dengan informasi tentang nilai saat ini. Karena sifat asinkron InteractionTracker, nilai yang diterima melalui callback InteractionTracker adalah cara terbaik untuk memperbarui logika aplikasi pada status dan nilai InteractionTracker saat ini dan propertinya.

Perbedaan penting tentang InteractionTracker adalah bahwa posisi dan skalanya tidak terkait dengan ruang koordinat visual tertentu. Pada saat InteractionTracker dibuat, posisinya akan memiliki subchannels x, y dan z dari vektor yang diatur ke 0, dan skala akan diatur ke 1. Hanya input aktif atau panggilan Coba* yang dapat menyebabkan nilai-nilai ini berubah. Nilai minimum dan maksimum untuk setiap properti akan menentukan rentang di mana nilai dapat berfluktuasi. Satu pengecualian adalah konsep "overpan" atau "overzoom", di mana manipulasi aktif dapat menyebabkan nilai sedikit melampaui minimum atau maksimum selama status Berinteraksi. Namun, ketika manipulasi selesai, nilai akan selalu beristirahat dalam rentang yang ditetapkan. CustomAnimations akan selalu dijepit dalam rentang yang ditetapkan untuk posisi dan skala.

Konsep ruang koordinat InteractionTracker selaras dengan konsep koordinat layar karena gerakan atas/kiri meningkatkan nilai posisi dan gerakan bawah/kanan mengurangi nilai posisi. Akibatnya, sangat umum untuk meniadakan properti posisi saat melampirkannya ke Offset Visual.

Secara default, saluran posisi minimum dan maksimum adalah 0, dan nilai skala minimum dan maksimum adalah 1. Jika perilaku yang diinginkan untuk salah satu properti adalah mengizinkannya untuk mengubah di luar nilai awal ini, nilai minimum/maksimum perlu diperbarui.

InteractionTracker dan ExpressionAnimations

InteractionTracker mengekspos berbagai properti yang dapat digunakan dalam konteks ExpressionAnimationsuntuk mendorong pembaruan ke properti komposisiObject yang dapat dianimasikan. Karena sifat asinkron InteractionTracker, tidak disarankan untuk mengkueri properti ini secara langsung. Sebagai gantinya, Anda harus menggunakan properti yang dikirimkan dalam panggilan balik untuk mendorong logika aplikasi, dan untuk mereferensikan nilai dalam ExpressionAnimation untuk memperbarui properti yang dapat dianimasikan.

Seperti disebutkan di atas, dua properti InteractionTracker yang paling umum digunakan adalah properti Posisi dan Skala. Ini adalah properti yang akan diperbarui sebagai respons terhadap input pengguna dan panggilan Coba*. Menggunakan properti ini di dalam ExpressionAnimations akan menyebabkan properti KomposisiObjects yang dapat dianimasikan diperbarui sebagai respons. Misalnya, properti InteractionTracker.position mungkin terkait dengan Offset Visual. Juga umum untuk menggunakan properti ini untuk mengisi CompositionPropertySet yang melacak kemajuan, yang pada gilirannya dapat mendorong serangkaian animasi terkoordinasi.

Mengarahkan Input ke InteractionTracker

Setelah dikonfigurasi, InteractionTracker masih memerlukan satu langkah terakhir untuk benar-benar menerima input sentuhan dan merespons. Silakan lihat dokumentasi tentang VisualInteractionSource. TryRedirectForManipulation untuk informasi selengkapnya tentang mengonfigurasi input masuk untuk mengalir ke InteractionTracker.

Properti

Nama Deskripsi
Comment

String yang akan dikaitkan dengan CompositionObject.

(Diperoleh dari CompositionObject)
Compositor

Compositor digunakan untuk membuat CompositionObject ini.

(Diperoleh dari CompositionObject)
DispatcherQueue

Mendapatkan DispatcherQueue untuk CompositionObject.

(Diperoleh dari CompositionObject)
ImplicitAnimations

Kumpulan animasi implisit yang melekat pada objek ini.

(Diperoleh dari CompositionObject)
InteractionSources

Kumpulan objek yang menghasilkan interaksi.

IsInertiaFromImpulse

Mendapatkan nilai yang menunjukkan apakah inertia adalah hasil dari impuls.

IsPositionRoundingSuggested

Nilai Boolean menunjukkan apakah pembulatan posisi saat ini disarankan.

MaxPosition

Posisi maksimum yang diizinkan untuk InteractionTracker.

MaxScale

Skala maksimum untuk InteractionTracker.

MinPosition

Posisi minimum yang diizinkan untuk InteractionTracker.

MinScale

Skala minimum untuk InteractionTracker.

NaturalRestingPosition

Posisi istirahat alami untuk InteractionTracker.

Properti NaturalRestingPosition adalah posisi terhitung yang akan dihentikan InteractionTracker tanpa memperhitungkan batas atau pengubah inertia. Properti ini sering berguna untuk tindakan seperti virtualisasi dalam pengalaman bergulir, di mana penting untuk mengetahui lokasi di mana InteractionTracker akan berhenti. Ada dua kasus penggunaan utama untuk menggunakan properti NaturalRestingPosition: Mengambil nilainya saat ini dalam args peristiwa InertiaStateEntered atau mereferensikan properti ini dalam ExpressionAnimation saat membuat hal-hal seperti pengubah inersia.

NaturalRestingScale

Skala istirahat alami untuk InteractionTracker.

Properti NaturalRestingScale adalah posisi skala terhitung yang akan dihentikan InteractionTracker tanpa memperhitungkan batas atau pengubah inertia. Properti ini sering berguna untuk tindakan seperti virtualisasi dalam pengalaman bergulir, di mana penting untuk mengetahui lokasi di mana InteractionTracker akan berhenti. Ada dua kasus penggunaan utama untuk menggunakan properti NaturalRestingScale: Mengambil nilainya saat ini dalam args peristiwa InertiaStateEntered atau mereferensikan properti ini dalam ExpressionAnimation saat membuat hal-hal seperti pengubah inersia.

Owner

IInteractionTrackerOwner yang terkait dengan InteractionTracker.

Position

Posisi output dihitung oleh InteractionTracker. Posisi saat ini adalah nilai relatif. Selama status Idle dan CustomAnimation, itu akan selalu antara nilai yang ditentukan dalam properti MinPosition dan MaxPosition. Properti posisi InteractionTracker dapat berada di luar rentang ini selama status Berinteraksi dan Inertia untuk menunjukkan pantulan atau perlawanan di batas.

Properti posisi InteractionTracker adalah Vector3 yang mewakili posisi dalam sumbu X, Y, dan Z. Saluran X dan Y adalah satu-satunya komponen yang akan diperbarui oleh InteractionTracker pada saat ini. Saluran Vektor3 ini tidak akan berfluktuasi di luar 0 (nilai default) jika MinPosisi dan MaxPosition tidak diatur.

PositionInertiaDecayRate

Inertia decay rate untuk posisi. Rentangnya dari 0 hingga 1.

Properti PositionInertiaDecayRate mendefinisikan laju di mana InteractionTracker akan melambat ke pemberhentian ketika telah memasuki Inertia dan posisi berubah. Semakin dekat ke 1, Semakin cepat InteractionTracker akan melambat ke perhentian dan sebaliknya. Didefinisikan sebagai Vector3, setiap komponen mewakili laju pembuangan inertia untuk x, y, z yang sesuai.

PositionVelocityInPixelsPerSecond

Kecepatan saat ini diterapkan ke posisi.

Properti PositionVelocityInPixelsPerSecond mewakili kecepatan posisi InteractionTracker saat ini saat berada di Inertia. Ada dua kasus penggunaan utama untuk properti ini: Mengambil kecepatan posisi InteractionTracker tepat setelah interaksi terjadi atau mereferensikan kecepatan InteractionTracker terbaru dalam ExpressionAnimation.

Properties

Kumpulan properti yang terkait dengan CompositionObject.

(Diperoleh dari CompositionObject)
Scale

Skala output yang dihitung oleh InteractionTracker. Skala saat ini adalah nilai relatif yang bergantung pada nilai yang ditentukan dalam properti MinScale dan MaxScale .

Properti skala InteractionTracker adalah float yang mewakili skala di ruang koordinat InteractionTracker . Nilai ini akan dimulai pada 1 dan akan meningkat atau berkurang berdasarkan input aktif atau panggilan langsung untuk memperbarui atau menganimasikan properti. Properti skala ketika InteractionTracker berada dalam status Idle atau CustomAnimation tidak akan berubah dari 1 kecuali properti MinScale dan MaxScale , yang keduanya default ke 1, diperbarui. InteractionTracker Skala dapat sedikit melampaui rentang ini selama keadaan Berinteraksi dan Inertia untuk menunjukkan pantulan atau ketahanan pada batas.

ScaleInertiaDecayRate

Inertia decay rate, untuk skala. Rentangnya dari 0 hingga 1.

Properti ScaleInertiaDecayRate mendefinisikan laju di mana InteractionTracker akan melambat ke perhentian ketika telah memasuki Inertia dan skala berubah. Semakin dekat ke 1, Semakin cepat InteractionTracker akan melambat ke perhentian dan sebaliknya. Tidak seperti PositionInertiaDecayRate yang didefinisikan sebagai Vector3, ScaleInertiaDecayRate didefinisikan sebagai float tunggal.

ScaleVelocityInPercentPerSecond

Tingkat perubahan untuk skala.

Properti ScaleVelocityInPercentPerSecond mewakili kecepatan skala InteractionTracker saat ini saat berada di Inertia. Mengambil kecepatan posisi InteractionTracker tepat setelah Interaksi terjadi atau mereferensikan kecepatan InteractionTracker terbaru dalam ExpressionAnimation.

Metode

Nama Deskripsi
AdjustPositionXIfGreaterThanThreshold(Single, Single)

Menyesuaikan koordinat posisi x jika lebih besar dari ambang yang ditentukan.

AdjustPositionYIfGreaterThanThreshold(Single, Single)

Menyesuaikan koordinat posisi y jika lebih besar dari ambang yang ditentukan.

Close()

Menutup CompositionObject dan merilis sumber daya sistem.

(Diperoleh dari CompositionObject)
ConfigureCenterPointXInertiaModifiers(IIterable<CompositionConditionalValue>)

Mengambil daftar yang diurutkan dari CompositionConditionalValue. Dalam bingkai, sementara pelacak berada di Inertia, CompositionConditionalValue pertama yang memiliki ". Kondisi" mengevaluasi ke true menggantikan nilai CenterPointX zoom yang digunakan pelacak dengan ". Nilai". Jika tidak ada yang dievaluasi ke true, CenterPointX tidak diganti bingkai tersebut.

ConfigureCenterPointYInertiaModifiers(IIterable<CompositionConditionalValue>)

Mengambil daftar yang diurutkan dari CompositionConditionalValue. Dalam bingkai, sementara pelacak berada di Inertia, CompositionConditionalValue pertama yang memiliki ". Kondisi" mengevaluasi ke true menggantikan nilai Zoom CenterPointY yang digunakan pelacak dengan ". Nilai". Jika tidak ada yang dievaluasi ke true, CenterPointY tidak diganti bingkai tersebut.

ConfigurePositionXInertiaModifiers(IIterable<InteractionTrackerInertiaModifier>)

Menerapkan kumpulan objek InteractionTrackerInertiaModifier ke inertia x interactionTracker.

Metode ConfigurePositionXInertiaModifiers menerapkan individu atau kumpulan InteractionTrackerInertiaModifierke komponen x InteractionTracker. Sistem akan mengevaluasi setiap properti kondisi pengubah X dalam urutan ditambahkan ke InteractionTracker. Dengan demikian, urutan yang dimiliki InteractionTrackerInertiaModifier dalam koleksi akan menjadi urutan yang sama dengan yang akan dievaluasi sistem.

ConfigurePositionYInertiaModifiers(IIterable<InteractionTrackerInertiaModifier>)

Menerapkan kumpulan objek InteractionTrackerInertiaModifier ke inertia y dari InteractionTracker.

Metode ConfigurePositionYInertiaModifiers menerapkan individu atau koleksi InteractionTrackerInertiaModifierke komponen y InteractionTracker. Sistem akan mengevaluasi setiap properti kondisi pengubah Y dalam urutan ditambahkan ke InteractionTracker. Dengan demikian, urutan yang dimiliki InteractionTrackerInertiaModifier dalam koleksi akan menjadi urutan yang sama dengan yang akan dievaluasi sistem.

ConfigureScaleInertiaModifiers(IIterable<InteractionTrackerInertiaModifier>)

Menerapkan kumpulan objek InteractionTrackerInertiaModifier ke skala InteractionTracker.

Metode ConfigureScaleInertiaModifiers menerapkan individu atau kumpulan InteractionTrackerInertiaModifierke komponen skala InteractionTracker. Sistem akan mengevaluasi setiap properti kondisi pengubah Skala dalam urutan ditambahkan ke InteractionTracker. Dengan demikian, urutan yang dimiliki InteractionTrackerInertiaModifier dalam koleksi akan menjadi urutan yang sama dengan yang akan dievaluasi sistem.

ConfigureVector2PositionInertiaModifiers(IIterable<InteractionTrackerVector2InertiaModifier>)

Menerapkan kumpulan objek InteractionTrackerInertiaModifier ke posisi InteractionTracker.

Create(Compositor)

Membuat instans InteractionTracker.

Metode Buat ini akan membuat instans InteractionTracker. Setelah membuat InteractionTracker mengatur properti, melampirkan VisualInteractionSource, dan mereferensikan posisi atau skala dalam ExpressionAnimation, input aktif dapat mendorong ExpressionAnimation.

CreateWithOwner(Compositor, IInteractionTrackerOwner)

Membuat instans InteractionTracker dengan pemilik yang ditentukan.

Metode Buat ini akan membuat instans InteractionTracker dengan pemilik untuk mendaftar untuk panggilan balik. Setelah membuat InteractionTracker mengatur properti, melampirkan VisualInteractionSource, dan mereferensikan posisi atau skala dalam ExpressionAnimation, input aktif dapat mendorong ExpressionAnimation. Membuat InteractionTracker dengan pemilik hanya diperlukan jika aplikasi perlu menerima panggilan balik mengenai status dan nilai InteractionTracker.

Dispose()

Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola.

(Diperoleh dari CompositionObject)
GetBindingMode(InteractionTracker, InteractionTracker)

Mengambil mode sumbu pengikatan antara dua pelacak interaksi.

PopulatePropertyInfo(String, AnimationPropertyInfo)

Menentukan properti yang dapat dianimasikan.

(Diperoleh dari CompositionObject)
SetBindingMode(InteractionTracker, InteractionTracker, InteractionBindingAxisModes)

Mengatur mode sumbu pengikatan antara dua pelacak interaksi.

StartAnimation(String, CompositionAnimation, AnimationController)

Menyambungkan animasi dengan properti objek yang ditentukan dan memulai animasi.

(Diperoleh dari CompositionObject)
StartAnimation(String, CompositionAnimation)

Menyambungkan animasi dengan properti objek yang ditentukan dan memulai animasi.

(Diperoleh dari CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Memulai grup animasi.

Metode StartAnimationGroup pada CompositionObject memungkinkan Anda memulai CompositionAnimationGroup. Semua animasi dalam grup akan dimulai pada saat yang sama pada objek.

(Diperoleh dari CompositionObject)
StopAnimation(String)

Memutuskan sambungan animasi dari properti yang ditentukan dan menghentikan animasi.

(Diperoleh dari CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Menghentikan grup animasi.

(Diperoleh dari CompositionObject)
TryGetAnimationController(String)

Mengembalikan AnimationController untuk animasi yang berjalan pada properti yang ditentukan.

(Diperoleh dari CompositionObject)
TryUpdatePosition(Vector3, InteractionTrackerClampingOption, InteractionTrackerPositionUpdateOption)

Mencoba memperbarui posisi InteractionTracker menggunakan opsi penjepitan yang ditentukan.

TryUpdatePosition(Vector3, InteractionTrackerClampingOption)

Mencoba memperbarui posisi InteractionTracker menggunakan opsi penjepitan yang ditentukan.

TryUpdatePosition(Vector3)

Mencoba memperbarui posisi InteractionTracker.

Metode TryUpdatePosition memperbarui lokasi InteractionTracker ke posisi Vector3 yang ditentukan sebagai parameter. TryUpdatePosition digunakan untuk secara deklaratif menentukan posisi InteractionTracker kapan saja (baik pada awalnya, dari beberapa peristiwa yang dimasukkan status, dll.). TryUpdatePosition dapat dipanggil dari status Idle, CustomAnimation, atau Inertia – melakukannya akan memindahkan posisi InteractionTracker ke posisi yang ditentukan dan memasukkan status menganggur.

TryUpdatePositionBy(Vector3, InteractionTrackerClampingOption)

Mencoba menyesuaikan posisi InteractionTracker dengan jumlah yang ditentukan menggunakan opsi penjepitan yang ditentukan.

TryUpdatePositionBy(Vector3)

Mencoba menyesuaikan posisi InteractionTracker dengan jumlah yang ditentukan.

Metode TryUpdatePositionBy memperbarui lokasi InteractionTracker saat ini oleh delta Vector3 yang ditentukan sebagai parameter. Demikian pula dengan TryUpdatePosition, TryUpdatePositionBy digunakan untuk secara deklaratif memindahkan InteractionTracker oleh delta yang ditentukan tanpa perlu animasi atau Inertia. TryUpdatePositionBy dapat dipanggil dari status Idle, CustomAnimation, atau Inertia – melakukannya akan memindahkan posisi InteractionTracker oleh delta yang ditentukan dan memasukkan status menganggur.

TryUpdatePositionWithAdditionalVelocity(Vector3)

Mencoba memperbarui posisi InteractionTracker dengan menambahkan kecepatan.

Metode TryUpdatePositionWithAdditionalVelocity menambahkan input Vector3 yang mewakili kecepatan tambahan ke kecepatan InteractionTracker saat ini. Akibatnya, karena kecepatan InteractionTracker sekarang telah berubah, posisi istirahat yang ditargetkan untuk InteractionTracker sekarang berubah. TryUpdatePositionWithAdditionalVelocity dapat dipanggil dari status Idle, Inertia, atau CustomAnimation - melakukannya akan menambahkan atau memperbarui kecepatan InteractionTracker dan memasuki status Inertia.

TryUpdatePositionWithAnimation(CompositionAnimation)

Mencoba memperbarui posisi InteractionTracker dengan menerapkan animasi.

Metode TryUpdatePositionWithAnimation memperbarui posisi InteractionTracker berdasarkan input CompositionAnimation sebagai parameter. Metode ini digunakan dalam situasi di mana gerakan InteractionTracker perlu didefinisikan oleh animasi tertentu, bukan pengalaman Inertia tradisional. TryUpdatePositionWithAnimation dapat dipanggil dari status Idle atau Inertia – dengan demikian, posisi InteractionTracker akan didorong oleh animasi yang ditentukan dan memasuki status CustomAnimation.

TryUpdateScale(Single, Vector3)

Mencoba memperbarui skala ke nilai yang ditentukan.

Metode TryUpdateScale memperbarui lokasi skala InteractionTracker ke posisi Skala dan titik tengah yang ditentukan sebagai parameter. TryUpdateScale digunakan untuk secara deklaratif menentukan skala InteractionTracker kapan saja (baik pada awalnya, dari beberapa peristiwa yang dimasukkan status, dll.). TryUpdateScale dapat dipanggil dari status Idle, CustomAnimation, atau Inertia – melakukannya akan memindahkan posisi skala InteractionTracker ke posisi yang ditentukan dan memasukkan status menganggur.

TryUpdateScaleWithAdditionalVelocity(Single, Vector3)

Mencoba memperbarui skala dengan menambahkan kecepatan yang ditentukan.

Metode TryUpdateScaleWithAdditionalVelocity menambahkan input skalar (mewakili kecepatan tambahan) ke kecepatan InteractionTracker saat ini dan menggeser titik tengah ke input Vector3. Akibatnya, karena kecepatan InteractionTracker sekarang telah berubah, posisi skala istirahat yang ditargetkan untuk InteractionTracker sekarang berubah. TryUpdateScaleWithAdditionalVelocity dapat dipanggil dari status Idle, Inertia, atau CustomAnimation - melakukannya akan menambahkan atau memperbarui kecepatan InteractionTracker dan memasuki status Inertia.

TryUpdateScaleWithAnimation(CompositionAnimation, Vector3)

Mencoba memperbarui skala dengan animasi yang ditentukan.

Metode TryUpdateScaleWithAnimation memperbarui posisi skala InteractionTracker berdasarkan parameter CompositionAnimation . Metode ini digunakan dalam situasi di mana gerakan InteractionTracker perlu didefinisikan oleh animasi tertentu, bukan pengalaman Inertia tradisional. TryUpdateScaleWithAnimation dapat dipanggil dari status Idle atau Inertia – dengan demikian, posisi InteractionTracker akan didorong oleh animasi yang ditentukan dan memasuki status CustomAnimation.

Berlaku untuk

Lihat juga