Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การหาว่าจุดสามจุดเป็น collinear หรือไม่ - JavaScript


คะแนนคอลลิเนียร์

จุดที่อยู่บนเส้นตรงเดียวกันตั้งแต่ 3 จุดขึ้นไปจะเรียกว่าจุดคอลลิเนียร์

และจุดสามจุดอยู่บนเส้นเดียวกันหากความชันของเส้นทั้งสามคู่ที่เกิดจากมันเท่ากัน

ตัวอย่างเช่น ลองพิจารณาจุด A, B และ C สามจุดโดยพลการบนระนาบ 2 มิติ จุดเหล่านี้จะเชื่อมโยงกันถ้า -

slope of AB = slope of BC = slope of accepts

ความชันของเส้นตรง −

ความชันของเส้นโดยทั่วไปถูกกำหนดโดยแทนเจนต์ของมุมที่ทำกับทิศทางบวกของแกน x

หรือถ้าเรามีจุดที่อยู่บนเส้นตรงสองจุดที่ว่า A(x1, y1) และ B(x2, y2) ความชันของเส้นสามารถคำนวณได้โดย −

Slope of AB = (y2-y1) / (x2-x1)

มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const a = {x: 2, y: 4};
const b = {x: 4, y: 6};
const c = {x: 6, y: 8};
const slope = (coor1, coor2) => (coor2.y - coor1.y) / (coor2.x - coor1.x);
const areCollinear = (a, b, c) => {
   return slope(a, b) === slope(b, c) && slope(b, c) === slope(c, a);
};
console.log(areCollinear(a, b, c));

ผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์ในคอนโซล -

true