# Nakafa Framework: LLM URL: /id/subject/high-school/12/mathematics/analytic-geometry/position-of-a-tangent-line-to-a-circle Source: https://raw.githubusercontent.com/nakafaai/nakafa.com/refs/heads/main/packages/contents/subject/high-school/12/mathematics/analytic-geometry/position-of-a-tangent-line-to-a-circle/id.mdx Output docs content for large language models. --- export const metadata = { title: "Kedudukan Garis Singgung Lingkaran", description: "Pelajari cara menentukan persamaan garis singgung lingkaran melalui titik, dengan gradien tertentu, dan dari titik luar. Visualisasi interaktif dan contoh lengkap.", authors: [{ name: "Nabil Akbarazzima Fatih" }], date: "05/26/2025", subject: "Geometri Analitik", }; import { getColor } from "@repo/design-system/lib/color"; import { LineEquation } from "@repo/design-system/components/contents/line-equation"; ## Memahami Garis Singgung Lingkaran Bayangkan kamu sedang mengendarai sepeda di trek yang berbentuk lingkaran. Pada suatu titik, kamu memutuskan untuk keluar dari trek tersebut dalam garis lurus. Nah, garis lurus yang kamu tempuh itulah yang disebut **garis singgung** terhadap lingkaran trek. Secara matematis, garis singgung lingkaran adalah garis lurus yang menyentuh lingkaran tepat di satu titik saja. Titik persentuhan ini disebut **titik singgung**. Yang menarik adalah, garis singgung selalu **tegak lurus** terhadap jari-jari lingkaran di titik singgung tersebut. Konsep ini sangat berguna dalam berbagai aplikasi, seperti mendesain jalan raya yang keluar dari bundaran, menentukan lintasan benda yang bergerak meninggalkan orbit melingkar, atau bahkan dalam bidang optik untuk menentukan arah pantulan cahaya. ## Garis Singgung Melalui Titik pada Lingkaran Mari kita mulai dengan kasus yang paling sederhana. Ketika kita sudah tahu titik singgungnya, menentukan persamaan garis singgung menjadi relatif mudah. { const angle = (i * Math.PI) / 180; const radius = 3; return { x: radius * Math.cos(angle), y: radius * Math.sin(angle), z: 0, }; }), color: getColor("PURPLE"), showPoints: false, }, { points: Array.from({ length: 1 }, () => { return { x: 0, y: 0, z: 0, }; }), color: getColor("ORANGE"), showPoints: true, labels: [{ text: "O", at: 0, offset: [-0.5, -0.5, 0] }], }, { points: Array.from({ length: 1 }, () => { const angle = Math.PI / 4; const radius = 3; return { x: radius * Math.cos(angle), y: radius * Math.sin(angle), z: 0, }; }), color: getColor("CYAN"), showPoints: true, labels: [{ text: "T", at: 0, offset: [0.5, 0.5, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const angle = Math.PI / 4; const radius = 3; const tangentPoint = { x: radius * Math.cos(angle), y: radius * Math.sin(angle), }; const radiusSlope = tangentPoint.y / tangentPoint.x; const tangentSlope = -1 / radiusSlope; const xRange = 4; return { x: tangentPoint.x + (i - 0.5) * xRange, y: tangentPoint.y + tangentSlope * (i - 0.5) * xRange, z: 0, }; }), color: getColor("TEAL"), showPoints: false, smooth: false, labels: [{ text: "Garis Singgung", at: 1, offset: [1, 2, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const angle = Math.PI / 4; const radius = 3; return { x: i * radius * Math.cos(angle), y: i * radius * Math.sin(angle), z: 0, }; }), color: getColor("AMBER"), showPoints: false, smooth: false, labels: [{ text: "Jari-jari", at: 1, offset: [-2, -0.5, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const xMin = -5; const xMax = 5; const y = 0; return { x: xMin + i * (xMax - xMin), y: y, z: 0, }; }), color: getColor("ROSE"), showPoints: false, smooth: false, }, { points: Array.from({ length: 2 }, (_, i) => { const yMin = -4; const yMax = 4; const x = 0; return { x: x, y: yMin + i * (yMax - yMin), z: 0, }; }), color: getColor("ROSE"), showPoints: false, smooth: false, }, ]} cameraPosition={[0, 0, 12]} showZAxis={false} /> Untuk lingkaran dengan persamaan dan titik singgung , kita bisa menentukan persamaan garis singgungnya dengan langkah berikut: **Langkah pertama**: Hitung gradien jari-jari dari pusat ke titik singgung : **Langkah kedua**: Karena garis singgung tegak lurus dengan jari-jari, maka gradien garis singgung adalah: **Langkah ketiga**: Gunakan rumus persamaan garis dengan gradien dan satu titik: Setelah disederhanakan, kita akan mendapat **rumus praktis** untuk garis singgung lingkaran: > Rumus ini sangat praktis karena kita tinggal mensubstitusikan koordinat pusat lingkaran, titik singgung, dan jari-jari kuadrat. ## Garis Singgung dengan Gradien Tertentu Kadang kita tidak diberikan titik singgung, tetapi diminta mencari garis singgung yang memiliki gradien tertentu. Misalnya, kita ingin mencari garis singgung yang sejajar dengan garis tertentu. { const angle = (i * Math.PI) / 180; const radius = 2.5; return { x: radius * Math.cos(angle), y: radius * Math.sin(angle), z: 0, }; }), color: getColor("PURPLE"), showPoints: false, }, { points: Array.from({ length: 1 }, () => { return { x: 0, y: 0, z: 0, }; }), color: getColor("ORANGE"), showPoints: true, labels: [{ text: "O", at: 0, offset: [-0.5, -0.5, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const m = 1; // gradien yang diberikan const r = 2.5; const c1 = r * Math.sqrt(1 + m * m); const xRange = 6; return { x: -xRange/2 + i * xRange, y: m * (-xRange/2 + i * xRange) + c1, z: 0, }; }), color: getColor("TEAL"), showPoints: false, smooth: false, labels: [{ text: "Singgung 1", at: 0, offset: [0.5, 2.5, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const m = 1; // gradien yang diberikan const r = 2.5; const c2 = -r * Math.sqrt(1 + m * m); const xRange = 6; return { x: -xRange/2 + i * xRange, y: m * (-xRange/2 + i * xRange) + c2, z: 0, }; }), color: getColor("CYAN"), showPoints: false, smooth: false, labels: [{ text: "Singgung 2", at: 1, offset: [0.5, -1.5, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const xMin = -5; const xMax = 5; const y = 0; return { x: xMin + i * (xMax - xMin), y: y, z: 0, }; }), color: getColor("ROSE"), showPoints: false, smooth: false, }, { points: Array.from({ length: 2 }, (_, i) => { const yMin = -4; const yMax = 4; const x = 0; return { x: x, y: yMin + i * (yMax - yMin), z: 0, }; }), color: getColor("ROSE"), showPoints: false, smooth: false, }, ]} cameraPosition={[0, 0, 12]} showZAxis={false} /> Untuk lingkaran dan gradien yang diketahui, kita substitusikan persamaan garis ke persamaan lingkaran:
Karena garis menyinggung lingkaran, diskriminan persamaan kuadrat ini harus nol:
Sehingga diperoleh: Jadi, untuk setiap gradien , selalu ada **dua garis singgung** dengan persamaan: ## Garis Singgung dari Titik Eksternal Kasus yang paling menarik adalah ketika kita diminta mencari garis singgung yang ditarik dari titik di luar lingkaran. Dari satu titik di luar lingkaran, kita bisa menarik tepat **dua garis singgung**. { const angle = (i * Math.PI) / 180; const radius = 2; return { x: radius * Math.cos(angle), y: radius * Math.sin(angle), z: 0, }; }), color: getColor("PURPLE"), showPoints: false, }, { points: Array.from({ length: 1 }, () => { return { x: 0, y: 0, z: 0, }; }), color: getColor("ORANGE"), showPoints: true, labels: [{ text: "O", at: 0, offset: [-0.5, -0.5, 0] }], }, { points: Array.from({ length: 1 }, () => { return { x: 4, y: 2, z: 0, }; }), color: getColor("ROSE"), showPoints: true, labels: [{ text: "P", at: 0, offset: [0.5, 0.5, 0] }], }, { points: Array.from({ length: 1 }, () => { // Titik singgung pertama (dihitung secara matematis) const px = 4, py = 2, r = 2; const d = Math.sqrt(px*px + py*py); const angle1 = Math.atan2(py, px) - Math.acos(r/d); return { x: r * Math.cos(angle1), y: r * Math.sin(angle1), z: 0, }; }), color: getColor("CYAN"), showPoints: true, labels: [{ text: "T₁", at: 0, offset: [0.5, -0.5, 0] }], }, { points: Array.from({ length: 1 }, () => { // Titik singgung kedua (dihitung secara matematis) const px = 4, py = 2, r = 2; const d = Math.sqrt(px*px + py*py); const angle2 = Math.atan2(py, px) + Math.acos(r/d); return { x: r * Math.cos(angle2), y: r * Math.sin(angle2), z: 0, }; }), color: getColor("CYAN"), showPoints: true, labels: [{ text: "T₂", at: 0, offset: [0.5, 0.5, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { // Garis singgung pertama const px = 4, py = 2, r = 2; const d = Math.sqrt(px*px + py*py); const angle1 = Math.atan2(py, px) - Math.acos(r/d); const t1x = r * Math.cos(angle1); const t1y = r * Math.sin(angle1); return { x: i === 0 ? px : t1x, y: i === 0 ? py : t1y, z: 0, }; }), color: getColor("TEAL"), showPoints: false, smooth: false, labels: [{ text: "Singgung 1", at: 0, offset: [0.5, -1, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { // Garis singgung kedua const px = 4, py = 2, r = 2; const d = Math.sqrt(px*px + py*py); const angle2 = Math.atan2(py, px) + Math.acos(r/d); const t2x = r * Math.cos(angle2); const t2y = r * Math.sin(angle2); return { x: i === 0 ? px : t2x, y: i === 0 ? py : t2y, z: 0, }; }), color: getColor("AMBER"), showPoints: false, smooth: false, labels: [{ text: "Singgung 2", at: 0, offset: [0.5, 1, 0] }], }, { points: Array.from({ length: 2 }, (_, i) => { const xMin = -3; const xMax = 5; const y = 0; return { x: xMin + i * (xMax - xMin), y: y, z: 0, }; }), color: getColor("ROSE"), showPoints: false, smooth: false, }, { points: Array.from({ length: 2 }, (_, i) => { const yMin = -2; const yMax = 4; const x = 0; return { x: x, y: yMin + i * (yMax - yMin), z: 0, }; }), color: getColor("ROSE"), showPoints: false, smooth: false, }, ]} cameraPosition={[0, 0, 12]} showZAxis={false} /> Untuk menentukan persamaan garis singgung dari titik di luar lingkaran , kita menggunakan konsep **garis kutub**. Persamaan garis kutub titik terhadap lingkaran adalah: Garis kutub ini adalah **garis yang menghubungkan kedua titik singgung** dari titik ke lingkaran. Jadi, untuk mencari titik-titik singgung, kita perlu: 1. Menentukan persamaan garis kutub 2. Mencari titik potong garis kutub dengan lingkaran 3. Menggunakan kedua titik singgung untuk menentukan persamaan garis singgung > Konsep garis kutub ini sangat elegan karena memberikan cara sistematis untuk menyelesaikan masalah garis singgung dari titik eksternal. ## Contoh Penerapan Mari kita lihat contoh konkret. Diketahui lingkaran dan titik yang berada di luar lingkaran. **Langkah 1**: Tentukan persamaan garis kutub titik terhadap lingkaran:
**Langkah 2**: Cari titik potong garis kutub dengan lingkaran. Dari persamaan garis, kita dapat . Substitusi ke persamaan lingkaran:
Setelah diselesaikan, kita akan mendapat dua titik singgung. Kemudian gunakan titik-titik tersebut untuk menentukan persamaan garis singgung. ## Latihan 1. Tentukan persamaan garis singgung lingkaran di titik . 2. Carilah persamaan garis singgung lingkaran yang sejajar dengan garis . 3. Tentukan persamaan garis singgung lingkaran yang melalui titik . 4. Sebuah lingkaran memiliki persamaan . Tentukan persamaan garis singgung yang tegak lurus dengan garis . ### Kunci Jawaban 1. **Penyelesaian**: Untuk lingkaran dengan pusat dan jari-jari , serta titik singgung . Menggunakan rumus garis singgung:
Jadi persamaan garis singgungnya adalah . 2. **Penyelesaian**: Garis yang sejajar dengan memiliki gradien . Untuk lingkaran dengan , menggunakan rumus:
Jadi ada dua garis singgung: dan . 3. **Penyelesaian**: Lingkaran memiliki pusat dan . Persamaan garis kutub titik :
Cari titik potong dengan lingkaran untuk mendapat titik-titik singgung, lalu tentukan persamaan garis singgung melalui masing-masing titik singgung dan titik . 4. **Penyelesaian**: Ubah persamaan lingkaran ke bentuk standar dengan melengkapkan kuadrat:
Pusat , jari-jari . Garis dapat ditulis , sehingga gradiennya . Garis yang tegak lurus memiliki gradien . Untuk lingkaran dengan pusat , persamaan garis singgung dengan gradien 2:
Jadi dua garis singgung: dan .