InteractionTracker.TryUpdateScale(Single, Vector3) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Versucht, die Skalierung auf den angegebenen Wert zu aktualisieren.
Die TryUpdateScale-Methode aktualisiert den Skalierungsort von InteractionTracker auf die Als Parameter angegebene Skalierungsposition und den Mittelpunkt. TryUpdateScale wird verwendet, um die Skalierung von InteractionTracker zu einem beliebigen Zeitpunkt deklarativ zu definieren (entweder beim Start, aus einem vom Zustand eingegebenen Ereignis usw.). TryUpdateScale kann entweder im Leerlauf-, CustomAnimation- oder Inertia-Zustand aufgerufen werden. Dadurch wird die Skalierungsposition von InteractionTracker an die definierte Position verschoben und in den Leerlaufzustand versetzt.
public:
virtual int TryUpdateScale(float value, float3 centerPoint) = TryUpdateScale;
int TryUpdateScale(float const& value, float3 const& centerPoint);
public int TryUpdateScale(float value, Vector3 centerPoint);
function tryUpdateScale(value, centerPoint)
Public Function TryUpdateScale (value As Single, centerPoint As Vector3) As Integer
Parameter
- value
-
Single
float
Der neue Wert für die Skalierung.
Gibt zurück
int
Gibt die Anforderungs-ID zurück. Bei Zustandsübergängen wird die Anforderung, die die Zustandsänderung verursacht hat, in die Argumente einbezogen. Diese IDs beginnen bei 1 und erhöhen sich mit jedem Try-Aufruf während der Lebensdauer der Anwendung.
Beispiele
void SetupInteractionTracker()
{
// Setup InteractionTracker
_tracker = InteractionTracker.Create(_compositor);
_interactionSource.PositionXSourceMode = InteractionSourceMode.EnabledWithInertia;
_interactionSource.PositionYSourceMode = InteractionSourceMode.EnabledWithInertia;
_tracker.InteractionSources.Add(_interactionSource);
_tracker.PositionInertiaDecayRate = new Vector3(0.95f);
// Update the scale position of InteractionTracker
_tracker.TryUpdateScale(0.5f, new Vector3(50f));
}
Hinweise
Wenn Sich InteractionTracker in seinem interagierenden Zustand befindet (benutzerseitig aktiv manipuliert), und TryUpdateScale aufgerufen wird, ignoriert das System diese Anforderung – ein Ereignis wird ausgelöst, wenn dies auftritt, auf das lauscht werden kann. Wenn sie von einem der anderen Zustände gesendet wird, lauschen Sie auf das Ereignis, das für IdleStateEntered ausgelöst wurde, und überprüfen Sie die RequestID-Eigenschaft, die identifiziert, welche Anforderung den Rückruf ausgelöst hat.
Die folgende Tabelle fasst das erwartete Verhalten zusammen, wenn diese Methode in einem bestimmten Zustand aufgerufen wird:
Aktueller Zustand | Ergebnis |
---|---|
Idle | Eigenschaftenaktualisierungen auf den angeforderten Wert, keine Zustandsänderungen |
Interaktion | Anforderung ignoriert |
Trägheit | Eigenschaftenupdates für den angeforderten Wert, Zustandsänderungen im Leerlauf |
CustomAnimation | Eigenschaftenupdates für den angeforderten Wert, Zustandsänderungen im Leerlauf |