Algorithme d'interpolation linéaire

T

Tracid

Guest
Salut à tous! J'aurais deux questions à vous. Parlons du premier seulement dans mon projet, j'ai Electronics à utiliser linéaires interpolation.I trouvé ce document sur le web: ~ http://www.ieor.berkeley.edu/ goldberg/pubs/XY-Interpolation- Algorithms.pdf Le problème est que, après lecture et en essayant de suivre les équations i se confondre. Je pense que l'auteur mélange les variables et donc ce n'est pas possible d'arriver à ce résultat. Quelqu'un pourrait-il s'il vous plaît examiner ce document et de trouver le bug ou si il n'ya pas de bourgeons, puis m'expliquer la méthode décrite? Merci!
 
désolé, qu'est-ce que vous remercier pour? Avez-vous trouvé ce lien utile pour vous?
 
Salut, je ne l'ai pas lu en détail mais assez sûr que c'est l'algorithme de Bresenham, essayez de Google, vous trouverez beaucoup d'explications. Cordialement, CI.
 
Merci Itchan! Je ne suis pas un homme anglais, donc quelqu'un pourrait-il me dire ce que signifie la valeur de base signifie? par exemple: delatX et deltaY sont relativement premiers, ou la valeur de X. PIME ******* Un lien vers une explication algorithme de Bresenham: ~ http://www.cs.mcgill.ca/ cs644/Godfried / 2005/Fall/Menard/integer.htm Avez-vous d'accord avec cette bas wheres le "dernier pixel atteint?" cochée, la comparaison est bonne? Il dit revenir si X est inférieure ou égale à la destination. Mais je pense que si son égal, puis il ne faut pas revenir en arrière parce qu'il va traverser le point de destination en 1 (si cette façon, il saute en arrière jusqu'à ce que son pas plus grand)! Que pensez-vous: c'est le «supérieur ou égal à 2 * deltaX« bon ou son assez «supérieure»?
 
J'ai suivi un diagramme de flux Bresenham algorithme pour développer le code nécessaire pour mon microprocesseur qui tourne moteurs pas à pas. J'ai maintenant profondément dans ce calcul étape (déterminée dont l'axe de se déplacer plus, les directions se déplacer, etc) Lors de l'écriture des parties d'extrémité du sous-programme a obtenu une chose difficile pour moi. J'ai cassé mon axe dans l'algorithme 256 positions.The j'ai suivi l'axe dit plus avoir à déplacer chaque itération et le petit axe (distance plus courte du début à la fin) ont de se déplacer selon les calculs results.There aurait pas de problème si j'utilise l'intensification complète parce qu'à chaque itération i déplacer l'axe d'un pas plus complet (et donc d'une position). Mais la réalité est que j'utilise micropas et à l'avance exactement une position arrière / avant je dois faire exactement 6 microsteps.This signifie que je ne doit pas mettre à jour les informations de position à chaque itération, mais seulement tous les six itérations. (I did it de cette façon parce que je veux avoide calculs 16 bits) Ma question est: faut-il affecter le débit de la ligne et l'achèvement aproximation si je compléter la position seulement après tous les 6 étapes? (Donc je ne les calculs comme si je n'étais pas à pas complet, mais en utilisant à jour la position que tous les 6 itérations) Merci!
 
À mon avis, vous aurez besoin d'utiliser plus grand nombre de BYTE, utiliser des entiers ou même entier long. Si vous utilisez des microcontrôleurs et la programmation en assembleur, puis liés bibliothèque mathématique 16bit doit être disponible quelque part sur le web. Par votre question, je pense que son possible, mais à nouveau en utilisant plus grand nombre est le meilleur choix, à mon humble avis. Cordialement, CI.
 

Welcome to EDABoard.com

Sponsor

Back
Top