Compass Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un capteur de boussole.
Ce capteur retourne un titre par rapport au Nord magnétique et, éventuellement, à True North. (Ce dernier dépend des fonctionnalités du système.)
Pour obtenir un exemple d’implémentation, consultez l’exemple de boussole.
public ref class Compass sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Compass final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class Compass
Public NotInheritable Class Compass
- Héritage
- Attributs
Configuration requise pour Windows
Famille d’appareils |
Windows 10 (introduit dans 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduit dans v1.0)
|
Remarques
Les données du capteur sont fournies par rapport au système de coordonnées fixes du capteur de l’appareil et sont indépendantes de l’orientation de l’affichage. Pour les applications qui s’appuient sur des données de capteur pour le contrôle d’entrée ou pour manipuler des éléments à l’écran, le développeur doit prendre en compte l’orientation actuelle de l’affichage et compenser les données de manière appropriée. Pour plus d’informations sur le système de coordonnées du capteur, consultez Données du capteur et orientation de l’affichage.
L’exemple suivant montre comment une application UWP créée avec XAML et C# utilise la méthode GetDefault pour établir une connexion à une boussole. Si aucune boussole intégrée n’est trouvée, la méthode retourne une valeur null.
_compass = Compass.GetDefault();
L’exemple suivant montre comment une application UWP créée avec XAML inscrit un gestionnaire d’événements ReadingChanged .
private void ScenarioEnable(object sender, RoutedEventArgs e)
{
if (_compass != null)
{
// Establish the report interval
_compass.ReportInterval = _desiredReportInterval;
Window.Current.VisibilityChanged += new WindowVisibilityChangedEventHandler(VisibilityChanged);
_compass.ReadingChanged += new TypedEventHandler<Compass, CompassReadingChangedEventArgs>(ReadingChanged);
ScenarioEnableButton.IsEnabled = false;
ScenarioDisableButton.IsEnabled = true;
}
else
{
rootPage.NotifyUser("No compass found", NotifyType.StatusMessage);
}
}
L’exemple suivant montre le gestionnaire d’événements ReadingChanged .
async private void ReadingChanged(object sender, CompassReadingChangedEventArgs e)
{
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
{
CompassReading reading = e.Reading;
ScenarioOutput_MagneticNorth.Text = String.Format("{0,5:0.00}", reading.HeadingMagneticNorth);
if (reading.HeadingTrueNorth != null)
{
ScenarioOutput_TrueNorth.Text = String.Format("{0,5:0.00}", reading.HeadingTrueNorth);
}
else
{
ScenarioOutput_TrueNorth.Text = "No data";
}
});
}
Historique des versions
Version de Windows | Version du SDK | Valeur ajoutée |
---|---|---|
1709 | 16299 | FromIdAsync |
1709 | 16299 | GetDeviceSelector |
1709 | 16299 | MaxBatchSize |
1709 | 16299 | ReportLatency |
2004 | 19041 | ReportThreshold |
Propriétés
DeviceId |
Obtient l’identificateur de l’appareil. |
MaxBatchSize |
Obtient le nombre maximal d’événements pouvant être traités par lot par le capteur. |
MinimumReportInterval |
Obtient l’intervalle de rapport minimal pris en charge par la boussole. |
ReadingTransform |
Obtient ou définit la transformation qui doit être appliquée aux données du capteur. Les transformations à appliquer sont liées à l’orientation d’affichage avec laquelle aligner les données du capteur. |
ReportInterval |
Obtient ou définit l’intervalle de rapport actuel pour la boussole. |
ReportLatency |
Obtient ou définit le délai entre les lots d’informations du capteur. |
ReportThreshold |
Obtient le CompassDataThreshold pour le capteur de boussole. |
Méthodes
FromIdAsync(String) |
Obtient de manière asynchrone le capteur à partir de son identificateur. |
GetCurrentReading() |
Obtient la lecture actuelle de la boussole. |
GetDefault() |
Retourne la boussole par défaut. |
GetDeviceSelector() |
Obtient le sélecteur d’appareil. |
Événements
ReadingChanged |
Se produit chaque fois que la boussole signale une nouvelle lecture de capteur. |