Question

Je l'écriture d'un traceur 2D, et le long de l'axe X et l'axe Y I ont des marqueurs avec des valeurs imprimées. Maintenant, ma question est: comment puis-je trouver des distances appropriées

Ma méthode (pour un axe numérique) est jusqu'à présent:

  • Je sais que la hauteur de l'axe à l'écran en pixels
  • Déterminez une distance optimale entre les marqueurs en pixels (ce qui ressemble bien à l'écran ...), par exemple 32 pixels.
  • recalculer le nombre de pixels à la valeur d'axe (Si l'axe est de 320 pixels et la plage de l'axe est de 0 à 40 ° C par exemple, la valeur est 32 * (40/320) = 4. Ainsi, la distance optimale est 4 ° C).
  • Commencer avec une distance de 1 ° C. Si la distance est plus grande que la distance optimale, il faut diviser par deux jusqu'à ce que moins de la distance optimale. Et de même, si la distance est inférieure à la distance optimale, il faut multiplier par deux jusqu'à ce que supérieure à la distance optimale.

Cela fonctionne, mais il ne me donne pas les mêmes distances que je l'aurais choisi à la main. Par exemple: si la plage est 0-1000, je décide une des distances suivantes:

  • 1000 (0, 1000
  • 500 (0, 500, 1000)
  • 250 (0, 250, 500, 750, 1000)
  • 200 (0, 200, 400, 600, 800, 1000)
  • 100 (0, 100, ..., 900, 1000)
  • 50 (0, 50, ..., 950, 1000)

et ainsi de suite ...

Avez-vous une idée intelligente?

Était-ce utile?

La solution

Une suggestion qui pourrait aider est de prédéterminer quelles distances vont bien paraître, définir ensuite une table de consultation en fonction de la taille de la portée de vos axes. Mais, pour éviter de devoir trop de données, assurez-vous que vos axes sont normalisées retour à une gamme standard.

Ainsi, par exemple, calculer la plage, puis revenir à normaliser une gamme de 1-100, puis trouver la valeur la plus proche dans votre table de recherche et utiliser cette distance.

Si vous avez Excel, vous pouvez regarder les résultats qu'ils créent et voyez si vous pouvez glaner un algorithme utile de cela, bien que je trouve souvent que je dois remplacer manuellement les distances Excel vomit pour plus de clarté. Il pourrait se qu'avoir commande manuelle est une caractéristique essentielle pour votre application aussi.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top