Comment obtenir 4 points de rotation à certains degrés autour d'un pointeur pour former un rectangle? Je peux faire pivoter un point autour d'un point, mais je ne peux pas le décaler pour faire un rectangle qui ne soit pas déformé.Faire pivoter un rectangle autour d'un point
Répondre
Si vous pouvez faire pivoter un point autour d'un point, il devrait être facile de faire pivoter un rectangle - il vous suffit de faire pivoter 4 points.
est ici une fonction js pour faire tourner un point autour d'une origine:
function rotate_point(pointX, pointY, originX, originY, angle) {
angle = angle * Math.PI/180.0;
return {
x: Math.cos(angle) * (pointX-originX) - Math.sin(angle) * (pointY-originY) + originX,
y: Math.sin(angle) * (pointX-originX) + Math.cos(angle) * (pointY-originY) + originY
};
}
Et vous pouvez le faire à chaque point. est un exemple: http://jsfiddle.net/dahousecat/4TtvU/
Modifier l'angle et exécuter frappé pour voir le résultat ...
Pouvez-vous expliquer cela? jsfiddle.net/bjhc34xk/7 Est-ce que cela a quelque chose à voir avec l'approximation de PI, ou peut-être des erreurs mathématiques en virgule flottante? –
fourchu violon de Felix pour inclure un curseur pour l'entrée dynamique pour le rendre plus facile à expérimenter - https://jsfiddle.net/brichins/0ccdd362/ – brichins
@MaxMastalerz Je suis sûr que vous avez évolué à partir de maintenant, mais votre violon est probablement ne fais pas ce que tu pensais. Vous modifiez la coordonnée X de votre point de terminaison, au milieu du calcul, puis faites pivoter la coordonnée Y à partir de ce point de décalage au lieu du centre. Résultats dans une spirale d'or cool, mais je pense que vous vouliez faire cela: https://jsfiddle.net/brichins/w2rxsbt4/ – brichins
- 1. Faire pivoter un point autour d'un point avec OpenCV
- 2. Faire pivoter CCSprite autour d'un point spécifique?
- 3. Trigonométrie appropriée pour faire pivoter un point autour de l'origine
- 4. Comment faire pivoter un polygone autour d'un point avec Java?
- 5. three.js - comment faire pivoter un cylindre autour d'un point spécifique?
- 6. Comment faire pivoter une seule image autour d'un point distant
- 7. Faire pivoter autour du centre d'un CCLabelTTF comme point d'achnor
- 8. Android - Faire pivoter l'image autour du point central?
- 9. iPhone opengl es: faire pivoter une matrice autour d'un point
- 10. faites pivoter UIView/UITableView autour d'un point
- 11. comment faire pivoter un rectangle dans Java2D
- 12. Faire pivoter un cercle autour d'un autre cercle
- 13. Faire pivoter un point par un autre point en 2D
- 14. Faire pivoter div sur un point d'ancrage?
- 15. Faire pivoter le bitmap rectangle sous Android
- 16. Cocos2d. Faire pivoter le point autour d'un autre point sans calculs mathématiques difficiles?
- 17. Faire pivoter l'image-objet autour d'elle-même?
- 18. Comment faire pivoter un objet 2D autour d'elle-même?
- 19. Faire pivoter un élément autour d'un certain point (sans utiliser l'origine de la transformation) avec javascript
- 20. iPhone, Comment faire pivoter un UIImageView autour d'un point en utilisant Core Animation et CATransform3D?
- 21. Comment faire pivoter un objet autour d'un point à l'aide de quaternions?
- 22. Le moyen le plus simple de faire pivoter un rectangle
- 23. tourner autour du point
- 24. Faire pivoter l'appareil photo par rapport à un point
- 25. Comment faire pivoter un vecteur2 autour d'un autre vecteur2?
- 26. Comment faire pivoter un GLKView autour de l'axe x?
- 27. Comment faire pivoter un modèle 3D autour de son centre?
- 28. comment faire pivoter un UIImageView autour de son centre
- 29. Faire pivoter un groupe d'objets
- 30. Faire un rectangle autour d'une image-objet cocos2d
avez-vous essayé de le faire jusqu'à présent? du code? merci – Trufa
Traduisez vos quatre points de sorte que vous traitiez le pointeur comme le centre, effectuez la rotation via la méthode de matrice de rotation standard, puis traduisez les points en arrière. [Explication ici] (http://www.euclideanspace.com/maths/geometry/affine/aroundPoint/index.htm) – Michal
Si j'ai compris que je l'utiliserais, mais j'ai besoin d'une solution en anglais ou de préférence JavaScript. – Anonymous