J'essaie de créer une fonction qui va retourner les coordonnées de 3 points de la tête de flèche (triangle isoscele) que je veux dessiner à la fin d'un ligne. Le défi est dans l'orientation (angle) de la ligne qui peut varier entre 0 et 360 degrés dans le quadrant.Trouver les coordonnées pour dessiner la tête de la flèche (triangle isoscele) à la fin d'une ligne
Je les valeurs suivantes:
//start coordinates of the line
var x0 = 100;
var y0 = 100;
//end coordinates of the line
var x1 = 200;
var y1 = 200;
//height of the triangle
var h = 10;
//width of the base of the triangle
var w = 30 ;
C'est ma fonction jusqu'à présent qui renvoie les deux coordonnées du point de la base du triangle:
var drawHead = function(x0, y0, x1, y1, h, w){
var L = Math.sqrt(Math.pow((x0 - x1),2)+Math.pow((y0 - y1),2));
//first base point coordinates
var base_x0 = x1 + (w/2) * (y1 - y0)/L;
var base_y0 = y1 + (w/2) * (x0 - x1)/L;
//second base point coordinates
var base_x1 = x1 - (w/2) * (y1 - y0)/L;
var base_y1 = y1 - (w/2) * (x0 - x1)/L;
//now I have to find the last point coordinates ie the top of the arrow head
}
Comment puis-je déterminer les coordonnées de le haut du triangle en considérant l'angle de la ligne?
Merci pour votre réponse. Je suis en vacances pour une semaine. Je vais examiner votre solution quand je serai de retour –