Yuk, kita belajar bersama mengenai konsep transformasi geometri, jenis-jenis, sifat, hingga contoh soalnya supaya kamu semakin paham! Simak sampai habis artikel Matematika kelas 9 ini, ya.
—
Apa yang terlintas dipikiran kamu kalo denger kata transformasi?
Wah pasti bervariasi banget deh!
Ada yang langsung kepikiran film transformers atau mungkin lagi mikirin transformasi ulat menjadi kupu-kupu.
Secara nggak sadar, kedua hal tadi berhubungan loh sama materi yang kita bahas kali ini. Contohnya, ulat yang berubah menjadi kepompong lalu berubah lagi menjadi kupu-kupu. Terus, kalo transformer sama juga sih. Jadi, sebuah mobil yang berubah menjadi robot berukuran besar.
Nah, dari kedua hal itu kita bisa tau deh arti dari transformasi, yaitu perubahan (bisa perubahan posisi atau ukuran ya). Terus, arti geometri apa dong? Geometri itu sesuatu yang berhubungan sama titik, garis atau bidang.
Jadi, bisa disimpulkan nih bahwa transformasi geometri adalah suatu perubahan posisi atau ukuran pada titik, garis atau bidang. Misalnya, posisi awal (x,y) ketika mengalami transformasi posisinya menjadi (x’,y’).
Jenis-jenis Transformasi Geometri ada 4, yaitu:
- Translasi atau pergeseran
- Refleksi atau pencerminan
- Rotasi atau perputaran
- Dilatasi
Supaya kamu nggak ngah-ngoh-ngah-ngoh, kita bahas satu per satu, yuk!
Baca Juga: Eksponen (Bilangan Berpangkat): Pengertian, Sifat & Contoh
1. Translasi (Pergeseran)
Translasi adalah perpindahan (pergeseran) suatu objek. Jika dinyatakan dalam koordinat Cartesius, translasi merupakan perpindahan titi-titik koordinat dari suatu objek ke arah dan jarak tertentu. Nah, translasi ini, hanya arah dan jaraknya aja yang berubah ya, sedangkan ukuran objeknya masih sama.
Translasi biasanya disimbolkan dengan T. Biasanya, suatu soal akan menanyakan titik bayangan dari hasil translasi. Rumusnya cukup mudah, kok. Kamu bisa lihat pada infografik di bawah ini:
Rumus Umum Translasi
Beneran gampang kan? kamu tinggal menjumlahkan koordinat titik awal dengan translasinya. Setelah itu kamu dapetin titik koordinat bayangan A’(x’,y’). Oke, supaya kamu lebih paham, simak contoh soal di bawah ini, yuk!
Contoh Soal Translasi
Segitiga ABC mengalami translasi atau pergeseran hingga berada di posisi A’B’C’. Kita akan mencari tahu, berapa sih jumlah pergeseran segitiga ABC tersebut?
Pembahasan:
Untuk menentukan jumlah translasi segitiga ABC, kita bisa hitung jarak satuan antara segitiga ABC dengan A’B’C’ ke arah sumbu-x dan sumbu-y.
Misalnya, kita ambil satu titik untuk kita amati, yaitu titik A. Koordinat A = (-3,1), sedangkan koordinat A’ = (1,-2). Berdasarkan rumus translasi, kita bisa mencari jumlah pergeserannya dengan cara:
A(x,y) (a/b) —> A'(x’,y’)
(-3,1) (a/b) —> (1,-2)
(-3,1) (a/b) —> (-3 + a = 1, 1 + b = -2)
-3 + a = 1
a = 1 + 3
a = 4
1 + b = -2
b = -2 – 1
b = -3
Sehingga, didapat faktor translasinya adalah (a/b) = (4/-3). Artinya, segitiga ABC bergeser 4 satuan ke arah sumbu-x positif (a = 4) dan 3 satuan ke arah sumbu-y negatif (b = -3).
Baca Juga: Perbedaan Kesebangunan dan Kongruen pada Bangun Datar
2. Refleksi (Pencerminan)
Siapa sih yang nggak pernah bercermin?
Aku mah rajin banget bercermin hehehehe.
Refleksi adalah perpindahan titik koordinat suatu objek ke arah dan jarak tertentu, namun perpindahannya bersifat seperti cermin. Kebayang nggak?
Intinya, konsep dari refleksi atau pencerminan ini sama aja dengan sifat di cermin datar.
Sifat-Sifat Refleksi
- Sumbu-x atau sumbu-y dianalogikan sebagai cermin atau pusat refleksi antara bayangan dan benda asli,
- Jarak titik asal objek dengan cermin = jarak titik akhir (bayangan) objek dengan cermin,
- Garis yang menghubungkan titik objek dengan bayangannya, akan selalu tegak lurus dengan cerminnya. Jika titik dicerminkan terhadap sumbu-x, maka garis penghubungnya tegak lurus terhadap sumbu-x. Jika titik dicerminkan terhadap sumbu-y, maka garis penghubungnya juga tegak lurus terhadap sumbu-y.
Rumus Umum Refleksi
-
Refleksi terhadap sumbu-x
Jika suatu titik (x,y) direfleksikan terhadap sumbu-x, maka koordinat y’ merupakan lawan dari koordinat y, sementara koordinat x tetap.
A(x,y) → P = A’(x,−y)
Keterangan:
A = titik A
A’ = hasil pencerminan dari titik A
x = titik yang terdapat pada sumbu-x
y = titik yang terdapat pada sumbu-y
P = pencerminan yang dilakukan terhadap sumbu-x
-
Refleksi terhadap sumbu-x
Sebaliknya, jika suatu titik (x,y) direfleksikan terhadap sumbu-y, maka koordinat x’ merupakan lawan dari koordinat x, sementara koordinat y tetap.
A(x,y) → P = A’(−x,y)
Keterangan:
A = titik A
A’ = hasil pencerminan dari titik A
x = titik yang terdapat pada sumbu-x
y = titik yang terdapat pada sumbu-y
P = pencerminan yang dilakukan terhadap sumbu-y
-
Refleksi terhadap garis y = x
Jika suatu titik A(x,y) direfleksikan terhadap garis y = x, maka hasil refleksinya adalah A'(y,x).
A(x,y) → P = A’(y,x)
Keterangan:
A = titik A
A’ = hasil pencerminan dari titik A
x = titik yang terdapat pada sumbu-x
y = titik yang terdapat pada sumbu-y
P = pencerminan yang dilakukan terhadap garis y = x
-
Refleksi terhadap garis y = -x
Jika suatu titik A(x,y) direfleksikan terhadap garis y = -x, maka hasil refleksinya adalah A'(-y,-x).
A(x,y) → P = A’(−y,−x)
Keterangan:
A = titik A
A’ = hasil pencerminan dari titik A
x = titik yang terdapat pada sumbu-x
y = titik yang terdapat pada sumbu-y
P = pencerminan yang dilakukan terhadap garis y = -x
-
Refleksi terhadap garis x = k
Jika titik A(x,y) direfleksikan terhadap garis x = k, maka hasil refleksinya adalah A'((2k-x),y).
A(x,y) → P = A’((2k−x),y)
Keterangan:
A = titik A
A’ = hasil pencerminan dari titik A
x = titik yang terdapat pada sumbu-x
y = titik yang terdapat pada sumbu-y
P = pencerminan yang dilakukan terhadap garis x = k
-
Refleksi terhadap garis y = k
Jika titik A(x,y) direfleksikan terhadap garis y = k, maka hasil refleksinya adalah A'(x,(2k-y)).
A(x,y) → P = A’(x,(2k−y))
Keterangan:
A = titik A
A’ = hasil pencerminan dari titik A
x = titik yang terdapat pada sumbu-x
y = titik yang terdapat pada sumbu-y
P = pencerminan yang dilakukan terhadap garis y = k\
Baca Juga: Cara Menyusun Persamaan Kuadrat dan Contohnya
Contoh Soal Refleksi
Berapakah hasil refleksi titik A(3,5) terhadap sumbu y?
Pembahasan:
Diketahui: A(3,5)
Ditanya: A’ terhadap sumbu-y …?
Jawab:
x = 3
y = 5
A(x,y) → P = A’(−x,y)
A(3,5) → P = A’(−3,5)
Jadi, hasil pencerminan titik A terhadap sumbu-y adalah A’(−3,5).
3. Rotasi (Perputaran)
Coba sebutin benda-benda yang berotasi?
Duh, banyak banget ya pasti. Ada jarum jam, roda kendaraan, sampai planet di angkasa juga berotasi. Nah, prinsip jenis transformasi ini sebenarnya sama ya dengan benda-benda yang berputar di sekeliling kita.
Rotasi adalah perubahan posisi suatu titik atau bidang dengan cara diputar dengan sudut tertentu. Ini nih yang khas dari rotasi, dia berpatokan pada sudut untuk mengubah posisi titiknya. Sudut yang dipakai biasanya sudut 90°, 180°, dan 270°.
Harus diinget, setiap terjadi rotasi, ukuran dan bentuk bidangnya akan selalu sama, nggak berubah-ubah ya. Tapi, kamu juga harus perhatikan unsur dari rotasi. Apa sih unsur-unsur rotasi itu?
Sifat-Sifat Rotasi
- Rotasi memiliki arah dan besar sudut,
- Jika diputar searah jarum jam, sudut akan bernilai negatif,
- Jika diputar berlawanan arah jarum jam, sudut bernilai positif. Jangan kebalik ya!
Rumus Umum Rotasi
Secara umum, rotasi suatu titik dibagi menjadi dua, yakni rotasi terhadap titik pusat (0,0) dan rotasi terhadap titik (a,b).
Namun, pada tingkatan ini, kita hanya akan membahas rotasi terhadap titik pusat (0,0) dulu, ya. Nanti deh kalo kamu sudah berada di bangku SMA, baru akan belajar materi yang lebih lanjut.
Titik Asal
Rotasi
Titik Bayangan
(x,y)
(0,90°)
(-y,x)
(x,y)
(0,-90°)
(y,-x)
(x,y)
(0,180°)
(-x,-y)
(x,y)
(0,-180°)
(-x,-y)
(x,y)
(0,270°)
(y,-x)
(x,y)
(0,-270°)
(-y,x)
Catatan: Sudut positif menandakan rotasi berlawanan jarum jam, sedangkan sudut negatif menandakan rotasi searah jarum jam.
Contoh Soal Rotasi
Segiempat PQRS berkoordinat di titik P(2,-2), Q(4,-1), R(4,-3), dan S(2,-4). Tentukan bayangan segiempat PQRS pada rotasi 90° berlawanan arah jarum jam yang berpusat di titik asal O(0,0)!
Pembahasan:
Rotasi 90° berlawanan arah jarum jam yang berpusat di titik asal O(0,0), maka
(x,y) O,90° → (-y,x)
- Titik P(2,-2) O,90° → P'(2,2)
- Titik Q(4,-1) O,90° → Q'(1,4)
- Titik R(4,-3) O,90° → R'(3,4)
- Titik S(2,-4) O,90° → S'(4,2)
Sehingga, diperoleh titik-titik bayangannya adalah P(2,-2), Q(1,4), R(3,4), dan S(4,2).
Baca Juga: 3 Cara Mudah Menyelesaikan Persamaan Kuadrat
4. Dilatasi
Biasanya saat listrik di rumah padam, terus kamu nyalain senter dan mengarahkan ke tangan, pasti ada bayangan yang terbentuk. Bayangannya berukuran lebih besar dari tangan kita normalnya.
Nah, tanpa disadari perilaku kita itu berkaitan dengan dilatasi, atau bisa dibilang tangan kita didilatasi. Wihh kedengarannya matematis banget tuh ya, hahaha!
Tau nggak sih? dilatasi itu jenis transformasi yang paling beda dari ketiga jenis transformasi lainnya. Hmm, kira-kira apa yang bikin beda, nih?
Dari segi definisinya aja, dilatasi adalah suatu transformasi yang mengubah ukuran suatu objek atau benda, bisa memperbesar atau memperkecil. Kalo jenis transformasi sebelumnya kan yang berubah hanya posisinya, nah kalo hasil dari dilatasi posisi sama ukurannya yang berubah. Eits, tapi bentuknya tetap sama ya.
Unsur-Unsur Dilatasi
Unsur dilatasi yang harus kamu perhatikan, ada 2 nih:
1. Pusat dilatasi atau titik acuan
Kalo dari ilustrasi di awal tadi sih, senter itu adalah pusat dilatasinya.
2. Faktor skala biasa disimbolkan dengan k
Maksudnya adalah faktor yang menyebabkan hasil dilatasi memperbesar atau memperkecil objek aslinya.
Rumus Umum Dilatasi
Kamu bisa liat rumusnya di bawah ini ya! Kamu pahami dulu, nanti kita bahas soal-soal dari jenis transformasi ini:
Contoh Soal Dilatasi
Titik A(1,3) akan didilatasikan sebesar tiga kali, dengan pusat yang berada di (-3,1). Tentukanlah bayangan titik A setelah didilatasikan!
Pembahasan:
Diketahui:
k = 3
x = 1, y = 3
a = -3, b = 1
Ditanya: A’ … ?
Jawab:
A(x, y) = A'(k(x-a) + a, k(y – b) + b)
A(1, 3) = A'(3(1 – (-3)) + (-3), 3(3 – 1) + 1)
A(1, 3) = A'(3(1 + 3) – 3, 3(2) + 1)
A(1,3) = A'(3(4) – 3, 6 + 1)
A(1,3) = A'(12 – 3, 6 + 1)
A(1,3) = A'(9,7)
Maka letak titik A’ dari koordinat (1,3) dengan dilatasi sebesar tiga kali yang berada di titik pusat (-3,1) adalah (9,7).
—
Keempat jenis transformasi udah dibahas. Menurut kamu yang paling seru yang mana nih? Eits, tapi sesuai janji aku tadi, kita bahas soal HOTS yuk, supaya kamu paham untuk penggunaan rumus-rumus tadi.
Baca Juga: Ketahui Sifat-Sifat Bentuk Akar & Cara Merasionalkannya
Titik A(2,1) direfleksikan terhadap garis y = 3. Kemudian, dilatasi terhadap pusat (1,2) dengan faktor skala -2. Selanjutnya, dirotasi 180 derajat dengan pusat O(0,0). Bayangan titik A adalah…
- A’’’(-1,4)
- A’’’(-1,-4)
- A’’’(1,4)
- A’’’(1,-4)
Nah, karena di awal kita sudah banyak mengerjakan soal-soal transformasi geometri, boleh dong yang ini kamu kerjakan mandiri sebagai bahan latihan. hehehe… Kalo sudah ketemu jawabannya, bisa tulis di kolom komentar, ya!
Buat kamu yang masih gemes untuk ngerjain soal-soal seru lainnya langsung gabung aja deh ke ruangbelajar. Soal-soalnya selalu upgrade plus ada pembahasan soalnya juga. Sampai ketemu di artikel selanjutnya, dadah!
Referensi:
Subchan. Winarni. Mufid, M. S. dkk. (2018) Matematika. Jakarta: Kemendikbud.
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta author="viewport" content="Ruangguru Tech Team">
<title>Macam-Macam Transformasi Geometri, Sifat & Contoh Soal</title>
<link rel="shortcut icon" href="https://cdn-web-2.ruangguru.com/homepage-web/public/assets/icons/favicon.id.ico" type="image/x-icon" />
<!-- <link rel="profile" href="https://gmpg.org/xfn/11"> -->
<link rel="pingback" href="https://www.ruangguru.com/blog/xmlrpc.php">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/css/bootstrap.min.css">
<link rel="stylesheet" href="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/css/style.css">
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/jquery-3.6.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/bootstrap.min.js"></script>
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/main.js"></script>
<script src="https://www.ruangguru.com/blog/wp-content/themes/ruangguru/js/side-banner.js"></script>
<!-- Google Tag Manager -->
<meta name="google-site-verification" content="VJAn1g6wmtTZPpTXh-B4xoSFEkUi5jcV74xQSr6jnOM" />
<!-- <script>
document.querySelector('meta[name="author"]').setAttribute("content", "Ruangguru Tech Team");
</script> -->
<meta name="publisher" content="PT Ruang Raya Indonesia">
<!-- Google Tag Manager -->
<script>
(function(w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(),
event: 'gtm.js'
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s),
dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src =
'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-PVNLZFT');
</script>
<!-- End Google Tag Manager -->
<meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' />
<style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style>
<!-- This site is optimized with the Yoast SEO plugin v25.9 - https://yoast.com/wordpress/plugins/seo/ -->
<meta name="description" content="Ada 4 jenis transformasi geometri, yaitu translasi, refleksi, rotasi, dan dilatasi. Yuk, kita bahas perbedaan keempatnya, disertai sifat-sifat dan contoh soal!" />
<link rel="canonical" href="https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri" />
<meta property="og:locale" content="en_US" />
<meta property="og:type" content="article" />
<meta property="og:title" content="Macam-Macam Transformasi Geometri, Sifat & Contoh Soal" />
<meta property="og:description" content="Ada 4 jenis transformasi geometri, yaitu translasi, refleksi, rotasi, dan dilatasi. Yuk, kita bahas perbedaan keempatnya, disertai sifat-sifat dan contoh soal!" />
<meta property="og:url" content="https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri" />
<meta property="og:site_name" content="Belajar Gratis di Rumah Kapan Pun! | Blog Ruangguru" />
<meta property="article:publisher" content="https://www.facebook.com/ruanggurucom/" />
<meta property="article:published_time" content="2025-01-10T07:00:00+00:00" />
<meta property="article:modified_time" content="2025-01-12T17:38:47+00:00" />
<meta name="author" content="Kak Efira MT Saintek" />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:creator" content="@ruangguru" />
<meta name="twitter:site" content="@ruangguru" />
<meta name="twitter:label1" content="Written by" />
<meta name="twitter:data1" content="Kak Efira MT Saintek" />
<meta name="twitter:label2" content="Est. reading time" />
<meta name="twitter:data2" content="7 minutes" />
<script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri","url":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri","name":"Macam-Macam Transformasi Geometri, Sifat & Contoh Soal","isPartOf":{"@id":"https://www.ruangguru.com/blog/#website"},"primaryImageOfPage":{"@id":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri#primaryimage"},"image":{"@id":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri#primaryimage"},"thumbnailUrl":"https://cdn-web.ruangguru.com/landing-pages/assets/hs/Header%20Mengenal%20Transformasi%20Geometri.jpg","datePublished":"2025-01-10T07:00:00+00:00","dateModified":"2025-01-12T17:38:47+00:00","author":{"@id":"https://www.ruangguru.com/blog/#/schema/person/c5f9aaec46fd8981d912f0560fd5441d"},"description":"Ada 4 jenis transformasi geometri, yaitu translasi, refleksi, rotasi, dan dilatasi. Yuk, kita bahas perbedaan keempatnya, disertai sifat-sifat dan contoh soal!","breadcrumb":{"@id":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri#primaryimage","url":"https://cdn-web.ruangguru.com/landing-pages/assets/hs/Header%20Mengenal%20Transformasi%20Geometri.jpg","contentUrl":"https://cdn-web.ruangguru.com/landing-pages/assets/hs/Header%20Mengenal%20Transformasi%20Geometri.jpg"},{"@type":"BreadcrumbList","@id":"https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.ruangguru.com/blog"},{"@type":"ListItem","position":2,"name":"Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9"}]},{"@type":"WebSite","@id":"https://www.ruangguru.com/blog/#website","url":"https://www.ruangguru.com/blog/","name":"Ruangguru Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.ruangguru.com/blog/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https://www.ruangguru.com/blog/#/schema/person/c5f9aaec46fd8981d912f0560fd5441d","name":"Kak Efira MT Saintek","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.ruangguru.com/blog/#/schema/person/image/","url":"https://secure.gravatar.com/avatar/?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/?s=96&d=mm&r=g","caption":"Kak Efira MT Saintek"},"url":"https://www.ruangguru.com/blog/author/kak-efira-mt-saintek"}]}</script>
<!-- / Yoast SEO plugin. -->
<link rel="alternate" type="application/rss+xml" title="Belajar Gratis di Rumah Kapan Pun! | Blog Ruangguru » Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9 Comments Feed" href="https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri/feed" />
<script type="text/javascript">
/* <![CDATA[ */
window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.1.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.1.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.ruangguru.com\/blog\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.8.1"}};
/*! This file is auto-generated */
!function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\ud83d\udd25","\ud83d\udc26\u200b\ud83d\udd25")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);
/* ]]> */
</script>
<style id='wp-emoji-styles-inline-css' type='text/css'>
img.wp-smiley, img.emoji {
display: inline !important;
border: none !important;
box-shadow: none !important;
height: 1em !important;
width: 1em !important;
margin: 0 0.07em !important;
vertical-align: -0.1em !important;
background: none !important;
padding: 0 !important;
}
</style>
<link rel='stylesheet' id='wp-block-library-css' href='https://www.ruangguru.com/blog/wp-includes/css/dist/block-library/style.min.css?ver=6.8.1' type='text/css' media='all' />
<style id='classic-theme-styles-inline-css' type='text/css'>
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
</style>
<style id='global-styles-inline-css' type='text/css'>
:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}
:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}
:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}
:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;}
</style>
<link rel="https://api.w.org/" href="https://www.ruangguru.com/blog/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.ruangguru.com/blog/wp-json/wp/v2/posts/2974" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.ruangguru.com/blog/xmlrpc.php?rsd" />
<meta name="generator" content="WordPress 6.8.1" />
<link rel='shortlink' href='https://www.ruangguru.com/blog/?p=2974' />
<link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.ruangguru.com/blog/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.ruangguru.com%2Fblog%2Fpengertian-dan-jenis-jenis-transformasi-geometri" />
<link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.ruangguru.com/blog/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.ruangguru.com%2Fblog%2Fpengertian-dan-jenis-jenis-transformasi-geometri&format=xml" />
</head>
<body class="wp-singular post-template-default single single-post postid-2974 single-format-standard wp-theme-ruangguru">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M28L4XJ" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<header class="header">
<div class="container">
<nav class="navbar navbar-expand-lg header-inner">
<div style="display:flex; gap:12px;">
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<img alt="menu" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/beba4a70-3971-41be-9364-f9ee6857b192.svg" loading="lazy" width="30px" height="32px" />
</button>
<a href="https://ruangguru.com" class="header-logo">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com/static/logo-ruangguru.png" alt="Logo">
</a>
</div>
<form class="form-inline my-2 my-lg-0" role="search" method="get" id="searchformmobile" class="searchform" action="https://www.ruangguru.com/blog/">
<div>
<label class="screen-reader-text" for="s">Search for:</label>
<div class="input-group input-group-sm">
<span class="input-group-text" id="search-2"><img width="20px" height="20px" loading="lazy" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/baf38d7b-226b-4374-8b2b-e49766395871.png" alt="" /></span>
<input type="text" value="" name="s" class="form-control" placeholder="Cari artikel di sini!" aria-label="Cari artikel di sini!" aria-describedby="Cari artikel di sini!">
</div>
</div>
</form>
<div class="collapse navbar-collapse dropdown-hover-all" id="navbarSupportedContent">
<div class="d-lg-none navbar-head-collapse">
<a href="https://ruangguru.com" class="header-logo">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com/static/logo-ruangguru.png" alt="Logo">
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
X
</button>
</div>
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link" href="https://www.ruangguru.com/blog/">Blog</a>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Konsep & Tips Pelajaran </p>
<div class="dropdown-menu" aria-labelledby="nav1">
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu0" href="https://www.ruangguru.com/blog/c/bahasa-indonesia" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Bahasa Indonesia</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu0">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sd-kelas-6">Kelas 6</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-indonesia/bahasa-indonesia-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu1" href="https://www.ruangguru.com/blog/c/bahasa-inggris" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Bahasa Inggris</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu1">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sd-kelas-6">Kelas 6</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/bahasa-inggris/bahasa-inggris-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu2" href="https://www.ruangguru.com/blog/c/biologi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Biologi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu2">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/biologi/biologi-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu3" href="https://www.ruangguru.com/blog/c/ekonomi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Ekonomi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu3">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ekonomi/ekonomi-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu4" href="https://www.ruangguru.com/blog/c/fisika" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Fisika</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu4">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/fisika/fisika-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu5" href="https://www.ruangguru.com/blog/c/geografi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Geografi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu5">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/geografi/geografi-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu6" href="https://www.ruangguru.com/blog/c/ipa-terpadu" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">IPA Terpadu</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu6">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ipa-terpadu/ipa-terpadu-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ipa-terpadu/ipa-terpadu-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ipa-terpadu/ipa-terpadu-sd-kelas-6">Kelas 6</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu7" href="https://www.ruangguru.com/blog/c/ips-terpadu" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">IPS Terpadu</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu7">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ips-terpadu/ips-terpadu-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ips-terpadu/ips-terpadu-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/ips-terpadu/ips-terpadu-sd-kelas-6">Kelas 6</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu8" href="https://www.ruangguru.com/blog/c/kimia" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Kimia</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu8">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/kimia/kimia-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/kimia/kimia-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/kimia/kimia-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu9" href="https://www.ruangguru.com/blog/c/matematika" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Matematika</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu9">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sd-kelas-4">Kelas 4</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sd-kelas-5">Kelas 5</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sd-kelas-6">Kelas 6</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/matematika/matematika-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu10" href="https://www.ruangguru.com/blog/c/sejarah" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Sejarah</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu10">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sejarah/sejarah-sma-kelas-12">Kelas 12</a>
</div>
</div>
<div class="dropdown dropend">
<a class="dropdown-item dropdown-toggle" id="nav1-menu11" href="https://www.ruangguru.com/blog/c/sosiologi" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Sosiologi</a>
<div class="dropdown-menu" aria-labelledby="nav1-menu11">
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-smp-kelas-7">Kelas 7</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-smp-kelas-8">Kelas 8</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-smp-kelas-9">Kelas 9</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-sma-kelas-10">Kelas 10</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-sma-kelas-11">Kelas 11</a>
<a class="dropdown-item" href="https://www.ruangguru.com/blog/c/sosiologi/sosiologi-sma-kelas-12">Kelas 12</a>
</div>
</div>
</div>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Latihan Soal </p>
<div class="dropdown-menu" aria-labelledby="nav2">
<a class="dropdown-item" id="nav2-menu0" href="https://www.ruangguru.com/blog/c/latihan-soal/sd-kelas-4">Latihan Soal Kelas 4</a>
<a class="dropdown-item" id="nav2-menu1" href="https://www.ruangguru.com/blog/c/latihan-soal/sd-kelas-5">Latihan Soal Kelas 5</a>
<a class="dropdown-item" id="nav2-menu2" href="https://www.ruangguru.com/blog/c/latihan-soal/sd-kelas-6">Latihan Soal Kelas 6</a>
<a class="dropdown-item" id="nav2-menu3" href="https://www.ruangguru.com/blog/c/latihan-soal/smp-kelas-7">Latihan Soal Kelas 7</a>
<a class="dropdown-item" id="nav2-menu4" href="https://www.ruangguru.com/blog/c/latihan-soal/smp-kelas-8">Latihan Soal Kelas 8</a>
<a class="dropdown-item" id="nav2-menu5" href="https://www.ruangguru.com/blog/c/latihan-soal/smp-kelas-9">Latihan Soal Kelas 9</a>
<a class="dropdown-item" id="nav2-menu6" href="https://www.ruangguru.com/blog/c/latihan-soal/sma-kelas-10">Latihan Soal Kelas 10</a>
<a class="dropdown-item" id="nav2-menu7" href="https://www.ruangguru.com/blog/c/latihan-soal/sma-kelas-11">Latihan Soal Kelas 11</a>
<a class="dropdown-item" id="nav2-menu8" href="https://www.ruangguru.com/blog/c/latihan-soal/sma-kelas-12">Latihan Soal Kelas 12</a>
</div>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Pojok Kampus </p>
<div class="dropdown-menu" aria-labelledby="nav3">
<a class="dropdown-item" id="nav3-menu0" href="https://www.ruangguru.com/blog/c/info-beasiswa">Info Beasiswa</a>
<a class="dropdown-item" id="nav3-menu1" href="https://www.ruangguru.com/blog/c/kampus-dan-jurusan">Kampus dan Jurusan</a>
<a class="dropdown-item" id="nav3-menu2" href="https://www.ruangguru.com/blog/c/seleksi-masuk">Seleksi Masuk</a>
</div>
</li>
<li class="nav-item
">
<a class="nav-link
" href=" https://www.ruangguru.com/blog/c/fakta-seru" id="nav4"
>
Fakta Seru </a>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dunia Kata </p>
<div class="dropdown-menu" aria-labelledby="nav5">
<a class="dropdown-item" id="nav5-menu0" href="https://www.ruangguru.com/blog/tag/cerpen">Cerpen</a>
<a class="dropdown-item" id="nav5-menu1" href="https://www.ruangguru.com/blog/tag/resensi-buku">Resensi Buku</a>
</div>
</li>
<li class="nav-item
">
<a class="nav-link
" href=" https://www.ruangguru.com/blog/tag/for-kids" id="nav6"
>
For Kids </a>
</li>
<li class="nav-item
dropdown dropdown-hover">
<p class="nav-link dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Seputar Ruangguru </p>
<div class="dropdown-menu" aria-labelledby="nav7">
<a class="dropdown-item" id="nav7-menu0" href="https://www.ruangguru.com/blog/tag/info-ruangguru">Info Ruangguru</a>
<a class="dropdown-item" id="nav7-menu1" href="https://www.ruangguru.com/blog/tag/siaran-pers">Siaran Pers</a>
<a class="dropdown-item" id="nav7-menu2" href="https://www.ruangguru.com/blog/tag/cerita-juara">Cerita Juara</a>
<a class="dropdown-item" id="nav7-menu3" href="https://www.ruangguru.com/blog/tag/seputar-guru">Seputar Guru</a>
<a class="dropdown-item" id="nav7-menu4" href="https://www.ruangguru.com/blog/tag/lifeatruangguru">Life at Ruangguru</a>
</div>
</li>
</ul>
<form class="form-inline my-2 my-lg-0" role="search" method="get" id="searchform" class="searchform" action="https://www.ruangguru.com/blog/">
<div>
<label class="screen-reader-text" for="s">Search for:</label>
<div class="input-group input-group-sm">
<span class="input-group-text" id="search-2"><img width="10" height="10" loading="lazy" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/baf38d7b-226b-4374-8b2b-e49766395871.png" alt="" /></span>
<input type="text" value="" name="s" class="form-control" placeholder="Cari artikel di sini!" aria-label="Cari artikel di sini!" aria-describedby="Cari artikel di sini!">
</div>
</div>
</form>
</div>
</nav>
<script>
(function($bs) {
const CLASS_NAME = 'has-child-dropdown-show';
$bs.Dropdown.prototype.toggle = function(_orginal) {
return function() {
document.querySelectorAll('.' + CLASS_NAME).forEach(function(e) {
e.classList.remove(CLASS_NAME);
});
let dd = this._element.closest('.dropdown').parentNode.closest('.dropdown');
for (; dd && dd !== document; dd = dd.parentNode.closest('.dropdown')) {
dd.classList.add(CLASS_NAME);
}
return _orginal.call(this);
}
}($bs.Dropdown.prototype.toggle);
document.querySelectorAll('.dropdown').forEach(function(dd) {
dd.addEventListener('hide.bs.dropdown', function(e) {
if (this.classList.contains(CLASS_NAME)) {
this.classList.remove(CLASS_NAME);
e.preventDefault();
}
e.stopPropagation(); // do not need pop in multi level mode
});
});
// for hover
document.querySelectorAll('.dropdown-hover, .dropdown-hover-all .dropdown').forEach(function(dd) {
dd.addEventListener('mouseenter', function(e) {
let toggle = e.target.querySelector(':scope>[data-bs-toggle="dropdown"]');
if (!toggle.classList.contains('show')) {
$bs.Dropdown.getOrCreateInstance(toggle).toggle();
dd.classList.add(CLASS_NAME);
$bs.Dropdown.clearMenus(e);
}
});
dd.addEventListener('mouseleave', function(e) {
let toggle = e.target.querySelector(':scope>[data-bs-toggle="dropdown"]');
if (toggle.classList.contains('show')) {
$bs.Dropdown.getOrCreateInstance(toggle).toggle();
}
});
});
})(bootstrap);
$(document).ready(() => {
if ($(window).width() > 991) {
$("a[data-bs-toggle='dropdown']").click(function() {
window.location = $(this).attr('href');
});
}
})
</script>
</div>
</header>
<div class="main-content">
<div class="side-banner-mobile">
</div>
<div class="glider-navigation mobile">
<div role="tablist" class="dots" id="side-banner-mobile-dots"></div>
<div class="glider-button-navigation">
<button aria-label="Previous" class="glider-prev" id="side-banner-mobile-prev"><img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/412de767-9fab-4a4e-9a21-09b7ac9c5f96.png"></button>
<button aria-label="Next" class="glider-next" id="side-banner-mobile-next">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/754b0134-4f20-4cdd-af8c-d5918044d734.png">
</button>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-md-8 post">
<div class="content">
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<!-- Home Link -->
<li class="breadcrumb-item"><a href="https://www.ruangguru.com/blog">Home</a></li>
<!-- Categories -->
<li class="breadcrumb-item"><a href="https://www.ruangguru.com/blog/c/matematika">Matematika</a></li><li class="breadcrumb-item"><a href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-9">Matematika SMP Kelas 9</a></li> </ol>
</nav>
<h1 class="content-title">
Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9 </h1>
<div class="content-meta">
<p class="content-author"><a href="https://www.ruangguru.com/blog/author/kak-efira-mt-saintek" class="">Kak Efira MT Saintek</a> </p>
<p class="content-info"><span>January 10, 2025 • </span> <span>9 minutes read</span></p>
<br />
</div>
<div class="content-body">
<p style="text-align: justify;"><img decoding="async" class="aligncenter" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Header%20Mengenal%20Transformasi%20Geometri.jpg" alt="Header Mengenal Transformasi Geometri" /></p>
<blockquote>
<p style="text-align: center;"><em>Yuk, kita belajar bersama mengenai <strong>konsep transformasi geometri</strong>, jenis-jenis, sifat, hingga contoh soalnya supaya kamu semakin paham! Simak sampai habis <strong><a href="https://www.ruangguru.com/blog/c/matematika/matematika-smp-kelas-9">artikel Matematika kelas 9</a></strong> ini, ya.</em></p>
</blockquote>
<p style="text-align: center;">—</p>
<p> </p>
<p style="text-align: justify;">Apa yang terlintas dipikiran kamu kalo denger kata transformasi?</p>
<p style="text-align: justify;">Wah pasti bervariasi banget deh!</p>
<p style="text-align: justify;">Ada yang langsung kepikiran film transformers atau mungkin lagi mikirin transformasi ulat menjadi kupu-kupu.</p>
<p style="text-align: justify;">Secara nggak sadar, kedua hal tadi berhubungan loh sama materi yang kita bahas kali ini. Contohnya, ulat yang berubah menjadi kepompong lalu berubah lagi menjadi kupu-kupu. Terus, kalo transformer sama juga sih. Jadi, sebuah mobil yang berubah menjadi robot berukuran besar.</p>
<p style="text-align: justify;">Nah, dari kedua hal itu kita bisa tau deh <strong>arti dari transformasi, yaitu perubahan</strong> (bisa perubahan posisi atau ukuran ya). Terus, arti geometri apa dong? <strong>Geometri</strong> <strong>itu sesuatu yang berhubungan sama titik, garis atau bidang</strong>.</p>
<p style="text-align: justify;">Jadi, bisa disimpulkan nih bahwa <strong>transformasi geometri adalah suatu perubahan posisi atau ukuran pada titik, garis atau bidang</strong>. Misalnya, posisi awal (x,y) ketika mengalami transformasi posisinya menjadi <strong>(x’,y’)</strong>.</p>
<p style="text-align: justify;">Jenis-jenis Transformasi Geometri ada 4, yaitu:</p>
<ol style="text-align: justify;">
<li>Translasi atau pergeseran</li>
<li>Refleksi atau pencerminan</li>
<li>Rotasi atau perputaran</li>
<li>Dilatasi</li>
</ol>
<p> </p>
<p style="text-align: justify;">Supaya kamu nggak <em>ngah-ngoh-ngah-ngoh</em>, kita bahas satu per satu, yuk!</p>
<p style="text-align: justify;"><strong>Baca Juga: <a href="https://www.ruangguru.com/blog/bilangan-berpangkat-pengertian-dan-sifatnya">Eksponen (Bilangan Berpangkat): Pengertian, Sifat & Contoh</a></strong></p>
<p> </p>
<h2><span style="font-size: 18pt;">1. Translasi (Pergeseran)</span></h2>
<p style="text-align: justify;">Translasi adalah perpindahan (pergeseran) suatu objek. Jika dinyatakan dalam koordinat Cartesius, translasi merupakan <strong>perpindahan titi-titik koordinat dari suatu objek ke arah dan jarak tertentu</strong>. Nah, translasi ini, hanya arah dan jaraknya aja yang berubah ya, sedangkan ukuran objeknya masih sama.</p>
<p style="text-align: justify;">Translasi biasanya disimbolkan dengan <strong>T</strong>. Biasanya, suatu soal akan menanyakan titik bayangan dari hasil translasi. Rumusnya cukup mudah, kok. Kamu bisa lihat pada infografik di bawah ini:</p>
<p> </p>
<h3><span style="font-size: 14pt;">Rumus Umum Translasi</span></h3>
<p style="text-align: justify;"><img decoding="async" class="aligncenter" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Rumus%20Umum%20Translasi.jpg" alt="Rumus Umum Translasi" width="600" /></p>
<p> </p>
<p style="text-align: justify;">Beneran gampang kan? kamu tinggal menjumlahkan koordinat titik awal dengan translasinya. Setelah itu kamu dapetin titik koordinat bayangan A’(x’,y’). Oke, supaya kamu lebih paham, simak contoh soal di bawah ini, yuk!</p>
<p> </p>
<h3><span style="font-size: 14pt;"><strong>Contoh Soal Translasi</strong></span></h3>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/bb0fd0af-2cd5-41a6-9b61-d592aa229b10.png" alt="contoh soal translasi" /></p>
<p> </p>
<p style="text-align: justify;">Segitiga ABC mengalami translasi atau pergeseran hingga berada di posisi A’B’C’. Kita akan mencari tahu, berapa sih jumlah pergeseran segitiga ABC tersebut?</p>
<p> </p>
<p><strong>Pembahasan:</strong></p>
<p style="text-align: justify;">Untuk menentukan jumlah translasi segitiga ABC, kita bisa hitung jarak satuan antara segitiga ABC dengan A’B’C’ ke arah sumbu-x dan sumbu-y.</p>
<p style="text-align: justify;">Misalnya, kita ambil satu titik untuk kita amati, yaitu titik A. Koordinat A = (-3,1), sedangkan koordinat A’ = (1,-2). Berdasarkan rumus translasi, kita bisa mencari jumlah pergeserannya dengan cara:</p>
<p>A(x,y) (a/b) —> A'(x’,y’)</p>
<p>(-3,1) (a/b) —> (1,-2)</p>
<p>(-3,1) (a/b) —> (-3 + a = 1, 1 + b = -2)</p>
<p> </p>
<p>-3 + a = 1</p>
<p>a = 1 + 3</p>
<p><strong>a = 4</strong></p>
<p> </p>
<p>1 + b = -2</p>
<p>b = -2 – 1</p>
<p><strong>b = -3</strong></p>
<p> </p>
<p style="text-align: justify;">Sehingga, didapat faktor translasinya adalah (a/b) = (4/-3). Artinya, segitiga ABC bergeser 4 satuan ke arah sumbu-x positif (a = 4) dan 3 satuan ke arah sumbu-y negatif (b = -3).</p>
<p><strong>Baca Juga: <a href="https://www.ruangguru.com/blog/matematika-kelas-9-apa-bedanya-kongruen-dan-sebangun-pada-bangun-datar">Perbedaan Kesebangunan dan Kongruen pada Bangun Datar</a></strong></p>
<p> </p>
<h2 style="text-align: justify;"><span style="font-size: 18pt;">2. Refleksi (Pencerminan)</span></h2>
<p style="text-align: justify;">Siapa sih yang nggak pernah bercermin?</p>
<p style="text-align: justify;">Aku mah rajin banget bercermin <em>hehehehe</em>.</p>
<p style="text-align: justify;">Refleksi adalah <strong>perpindahan titik koordinat suatu objek ke arah dan jarak tertentu, namun perpindahannya bersifat seperti cermin</strong>. Kebayang nggak?</p>
<p style="text-align: justify;">Intinya, konsep dari refleksi atau pencerminan ini sama aja dengan sifat di cermin datar.</p>
<p> </p>
<h3 style="text-align: justify;"><span style="font-size: 14pt;"><strong>Sifat-Sifat Refleksi</strong></span></h3>
<ol style="text-align: justify;">
<li>Sumbu-x atau sumbu-y dianalogikan sebagai cermin atau pusat refleksi antara bayangan dan benda asli,</li>
<li aria-level="1">Jarak titik asal objek dengan cermin = jarak titik akhir (bayangan) objek dengan cermin,</li>
<li aria-level="1">Garis yang menghubungkan titik objek dengan bayangannya, akan selalu tegak lurus dengan cerminnya. Jika titik dicerminkan terhadap sumbu-x, maka garis penghubungnya tegak lurus terhadap sumbu-x. Jika titik dicerminkan terhadap sumbu-y, maka garis penghubungnya juga tegak lurus terhadap sumbu-y.</li>
</ol>
<p> </p>
<h3><span style="font-size: 14pt;"><strong>Rumus Umum Refleksi</strong></span></h3>
<ul>
<li>
<h4>Refleksi terhadap sumbu-x</h4>
</li>
</ul>
<p style="text-align: justify;">Jika suatu titik (x,y) direfleksikan terhadap sumbu-x, maka koordinat y’ merupakan lawan dari koordinat y, sementara koordinat x tetap.</p>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/422d5202-dbb9-4d23-aa3e-36eecdabd025.png" alt="gambar refleksi terhadap sumbu-x" /></p>
<p> </p>
<p style="text-align: center;"><span style="font-size: 14pt;">A(x,y) → P = A’(x,−y)</span></p>
<p> </p>
<p style="text-align: left;">Keterangan:</p>
<p>A = titik A</p>
<p>A’ = hasil pencerminan dari titik A</p>
<p>x = titik yang terdapat pada sumbu-x</p>
<p>y = titik yang terdapat pada sumbu-y</p>
<p>P = pencerminan yang dilakukan terhadap sumbu-x</p>
<p> </p>
<ul>
<li style="text-align: justify;">
<h4>Refleksi terhadap sumbu-x</h4>
</li>
</ul>
<p style="text-align: justify;">Sebaliknya, jika suatu titik (x,y) direfleksikan terhadap sumbu-y, maka koordinat x’ merupakan lawan dari koordinat x, sementara koordinat y tetap.</p>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/7f05c908-8640-4468-962e-3b6982a82e98.png" alt="gambar refleksi terhadap sumbu-y" /></p>
<p> </p>
<p style="text-align: center;"><span style="font-size: 14pt;">A(x,y) → P = A’(−x,y)</span></p>
<p> </p>
<p style="text-align: left;">Keterangan:</p>
<p>A = titik A</p>
<p>A’ = hasil pencerminan dari titik A</p>
<p>x = titik yang terdapat pada sumbu-x</p>
<p>y = titik yang terdapat pada sumbu-y</p>
<p>P = pencerminan yang dilakukan terhadap sumbu-y</p>
<p> </p>
<ul>
<li>
<h4>Refleksi terhadap garis y = x</h4>
</li>
</ul>
<p style="text-align: justify;">Jika suatu titik A(x,y) direfleksikan terhadap garis y = x, maka hasil refleksinya adalah A'(y,x).</p>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/ef4b1487-a6c6-4233-b763-50dc776656ab.png" alt="gambar refleksi terhadap garis y=x" /></p>
<p> </p>
<p style="text-align: center;"><span style="font-size: 14pt;">A(x,y) → P = A’(y,x)</span></p>
<p> </p>
<p style="text-align: left;">Keterangan:</p>
<p>A = titik A</p>
<p>A’ = hasil pencerminan dari titik A</p>
<p>x = titik yang terdapat pada sumbu-x</p>
<p>y = titik yang terdapat pada sumbu-y</p>
<p>P = pencerminan yang dilakukan terhadap garis y = x</p>
<p> </p>
<ul>
<li>
<h4>Refleksi terhadap garis y = -x</h4>
</li>
</ul>
<p style="text-align: justify;">Jika suatu titik A(x,y) direfleksikan terhadap garis y = -x, maka hasil refleksinya adalah A'(-y,-x).</p>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/ec892d16-24e9-4b28-a9e2-02e40a943a08.png" alt="gambar refleksi terhadap garis y=-x" /></p>
<p> </p>
<p style="text-align: center;"><span style="font-size: 14pt;">A(x,y) → P = A’(−y,−x)</span></p>
<p> </p>
<p style="text-align: left;">Keterangan:</p>
<p>A = titik A</p>
<p>A’ = hasil pencerminan dari titik A</p>
<p>x = titik yang terdapat pada sumbu-x</p>
<p>y = titik yang terdapat pada sumbu-y</p>
<p>P = pencerminan yang dilakukan terhadap garis y = -x</p>
<p> </p>
<ul>
<li style="text-align: justify;">
<h4>Refleksi terhadap garis x = k</h4>
</li>
</ul>
<p style="text-align: justify;">Jika titik A(x,y) direfleksikan terhadap garis x = k, maka hasil refleksinya adalah A'((2k-x),y).</p>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/b13afdfa-7453-4718-88d9-fd89c3b971b9.png" alt="gambar refleksi terhadap garis x=k" /></p>
<p> </p>
<p style="text-align: center;"><span style="font-size: 14pt;">A(x,y) → P = A’((2k−x),y)</span></p>
<p> </p>
<p style="text-align: left;">Keterangan:</p>
<p>A = titik A</p>
<p>A’ = hasil pencerminan dari titik A</p>
<p>x = titik yang terdapat pada sumbu-x</p>
<p>y = titik yang terdapat pada sumbu-y</p>
<p>P = pencerminan yang dilakukan terhadap garis x = k</p>
<p> </p>
<ul>
<li style="text-align: justify;">
<h4>Refleksi terhadap garis y = k</h4>
</li>
</ul>
<p style="text-align: justify;">Jika titik A(x,y) direfleksikan terhadap garis y = k, maka hasil refleksinya adalah A'(x,(2k-y)).</p>
<p><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/230d936d-cfca-475e-bb9c-754113095403.png" alt="gambar refleksi terhadap garis y=k" /></p>
<p> </p>
<p style="text-align: center;"><span style="font-size: 14pt;">A(x,y) → P = A’(x,(2k−y))</span></p>
<p> </p>
<p style="text-align: left;">Keterangan:</p>
<p>A = titik A</p>
<p>A’ = hasil pencerminan dari titik A</p>
<p>x = titik yang terdapat pada sumbu-x</p>
<p>y = titik yang terdapat pada sumbu-y</p>
<p>P = pencerminan yang dilakukan terhadap garis y = k\</p>
<p><strong>Baca Juga: <a href="https://www.ruangguru.com/blog/menyusun-persamaan-kuadrat">Cara Menyusun Persamaan Kuadrat dan Contohnya</a></strong></p>
<p> </p>
<h3><span style="font-size: 14pt;">Contoh Soal Refleksi</span></h3>
<p style="text-align: justify;">Berapakah hasil refleksi titik A(3,5) terhadap sumbu y?</p>
<p> </p>
<p><strong>Pembahasan:</strong></p>
<p style="text-align: justify;">Diketahui: A(3,5)</p>
<p style="text-align: justify;">Ditanya: A’ terhadap sumbu-y …?</p>
<p style="text-align: justify;">Jawab:</p>
<p style="text-align: justify;">x = 3</p>
<p style="text-align: justify;">y = 5</p>
<p style="text-align: justify;">A(x,y) → P = A’(−x,y)</p>
<p style="text-align: justify;">A(3,5) → P = A’(−3,5)</p>
<p style="text-align: justify;">Jadi, hasil pencerminan titik A terhadap sumbu-y adalah A’(−3,5).</p>
<p> </p>
<h2 style="text-align: justify;"><span style="font-size: 18pt;">3. Rotasi (Perputaran)</span></h2>
<p style="text-align: justify;">Coba sebutin benda-benda yang berotasi?</p>
<p style="text-align: justify;">Duh, banyak banget ya pasti. Ada jarum jam, roda kendaraan, sampai planet di angkasa juga berotasi. Nah, prinsip jenis transformasi ini sebenarnya sama ya dengan benda-benda yang berputar di sekeliling kita.</p>
<p style="text-align: justify;">Rotasi adalah <strong>perubahan posisi suatu titik atau bidang dengan cara diputar dengan sudut tertentu</strong>. Ini nih yang khas dari rotasi, dia berpatokan pada sudut untuk mengubah posisi titiknya. Sudut yang dipakai biasanya sudut 90°, 180°, dan 270°.</p>
<p style="text-align: justify;">Harus diinget, setiap terjadi rotasi, ukuran dan bentuk bidangnya akan selalu sama, nggak berubah-ubah ya. Tapi, kamu juga harus perhatikan unsur dari rotasi. Apa sih unsur-unsur rotasi itu?</p>
<p> </p>
<h3><span style="font-size: 14pt;">Sifat-Sifat Rotasi</span></h3>
<ul>
<li style="text-align: justify;">Rotasi memiliki arah dan besar sudut,</li>
<li style="text-align: justify;">Jika diputar searah jarum jam, sudut akan bernilai negatif,</li>
<li style="text-align: justify;">Jika diputar berlawanan arah jarum jam, sudut bernilai positif. Jangan kebalik ya!</li>
</ul>
<p> </p>
<h3><span style="font-size: 14pt;">Rumus Umum Rotasi</span></h3>
<p style="text-align: justify;">Secara umum, rotasi suatu titik dibagi menjadi dua, yakni <strong>rotasi terhadap titik pusat (0,0) dan rotasi terhadap titik (a,b)</strong>.</p>
<p style="text-align: justify;">Namun, pada tingkatan ini, kita hanya akan membahas rotasi terhadap titik pusat (0,0) dulu, ya. Nanti deh kalo kamu sudah berada di bangku SMA, baru akan belajar materi yang lebih lanjut.</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 33.3333%; text-align: center;"><strong>Titik Asal</strong></td>
<td style="width: 33.3333%; text-align: center;"><strong>Rotasi</strong></td>
<td style="width: 33.3333%; text-align: center;"><strong>Titik Bayangan</strong></td>
</tr>
<tr>
<td style="width: 33.3333%; text-align: center;">(x,y)</td>
<td style="width: 33.3333%; text-align: center;">(0,90°)</td>
<td style="width: 33.3333%; text-align: center;">(-y,x)</td>
</tr>
<tr>
<td style="width: 33.3333%; text-align: center;">(x,y)</td>
<td style="width: 33.3333%; text-align: center;">(0,-90°)</td>
<td style="width: 33.3333%; text-align: center;">(y,-x)</td>
</tr>
<tr>
<td style="width: 33.3333%; text-align: center;">(x,y)</td>
<td style="width: 33.3333%; text-align: center;">(0,180°)</td>
<td style="width: 33.3333%; text-align: center;">(-x,-y)</td>
</tr>
<tr>
<td style="width: 33.3333%; text-align: center;">(x,y)</td>
<td style="width: 33.3333%; text-align: center;">(0,-180°)</td>
<td style="width: 33.3333%; text-align: center;">(-x,-y)</td>
</tr>
<tr>
<td style="width: 33.3333%; text-align: center;">(x,y)</td>
<td style="width: 33.3333%; text-align: center;">(0,270°)</td>
<td style="width: 33.3333%; text-align: center;">(y,-x)</td>
</tr>
<tr>
<td style="width: 33.3333%; text-align: center;">(x,y)</td>
<td style="width: 33.3333%; text-align: center;">(0,-270°)</td>
<td style="width: 33.3333%; text-align: center;">(-y,x)</td>
</tr>
</tbody>
</table>
<p> </p>
<p style="text-align: justify;">Catatan: Sudut positif menandakan rotasi berlawanan jarum jam, sedangkan sudut negatif menandakan rotasi searah jarum jam.</p>
<p> </p>
<h3><span style="font-size: 14pt;">Contoh Soal Rotasi</span></h3>
<p style="text-align: justify;">Segiempat PQRS berkoordinat di titik P(2,-2), Q(4,-1), R(4,-3), dan S(2,-4). Tentukan bayangan segiempat PQRS pada rotasi 90° berlawanan arah jarum jam yang berpusat di titik asal O(0,0)!</p>
<p> </p>
<p style="text-align: justify;"><strong>Pembahasan:</strong></p>
<p style="text-align: justify;">Rotasi 90° berlawanan arah jarum jam yang berpusat di titik asal O(0,0), maka</p>
<p style="text-align: justify;">(x,y) O,90° → (-y,x)</p>
<ul>
<li style="text-align: justify;">Titik P(2,-2) O,90° → P'(2,2)</li>
<li style="text-align: justify;">Titik Q(4,-1) O,90° → Q'(1,4)</li>
<li style="text-align: justify;">Titik R(4,-3) O,90° → R'(3,4)</li>
<li style="text-align: justify;">Titik S(2,-4) O,90° → S'(4,2)</li>
</ul>
<p> </p>
<p>Sehingga, diperoleh titik-titik bayangannya adalah P(2,-2), Q(1,4), R(3,4), dan S(4,2).</p>
<p><strong>Baca Juga: <a href="https://www.ruangguru.com/blog/menyelesaikan-persamaan-kuadrat">3 Cara Mudah Menyelesaikan Persamaan Kuadrat</a></strong></p>
<p> </p>
<h2 style="text-align: justify;"><span style="font-size: 18pt;">4. Dilatasi</span></h2>
<p style="text-align: justify;">Biasanya saat listrik di rumah padam, terus kamu nyalain senter dan mengarahkan ke tangan, pasti ada bayangan yang terbentuk. Bayangannya berukuran lebih besar dari tangan kita normalnya.</p>
<p style="text-align: justify;">Nah, tanpa disadari perilaku kita itu berkaitan dengan dilatasi, atau bisa dibilang tangan kita didilatasi. Wihh kedengarannya matematis banget tuh ya, hahaha!</p>
<p style="text-align: justify;">Tau nggak sih? dilatasi itu jenis transformasi yang paling beda dari ketiga jenis transformasi lainnya. Hmm, kira-kira apa yang bikin beda, nih?</p>
<p style="text-align: justify;">Dari segi definisinya aja, <strong>dilatasi adalah suatu transformasi yang mengubah ukuran suatu objek atau benda</strong>, bisa memperbesar atau memperkecil. Kalo jenis transformasi sebelumnya kan yang berubah hanya posisinya, nah kalo hasil dari dilatasi posisi sama ukurannya yang berubah. Eits, tapi bentuknya tetap sama ya.</p>
<p style="text-align: justify;"><img decoding="async" class="aligncenter" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/GIF%20Dilatasi.gif" alt="GIF Dilatasi" width="600" /></p>
<p> </p>
<h3><span style="font-size: 14pt;">Unsur-Unsur Dilatasi</span></h3>
<p style="text-align: justify;">Unsur dilatasi yang harus kamu perhatikan, ada 2 nih:</p>
<p style="text-align: justify;"><strong>1. Pusat dilatasi atau titik acuan</strong></p>
<p style="text-align: justify;">Kalo dari ilustrasi di awal tadi sih, senter itu adalah pusat dilatasinya.</p>
<p style="text-align: justify;"><strong>2. Faktor skala biasa disimbolkan dengan k</strong></p>
<p style="text-align: justify;">Maksudnya adalah faktor yang menyebabkan hasil dilatasi memperbesar atau memperkecil objek aslinya.</p>
<p> </p>
<h3><span style="font-size: 14pt;">Rumus Umum Dilatasi</span></h3>
<p style="text-align: justify;">Kamu bisa liat rumusnya di bawah ini ya! Kamu pahami dulu, nanti kita bahas soal-soal dari jenis transformasi ini:</p>
<p style="text-align: justify;"><img decoding="async" class="aligncenter" src="https://cdn-web.ruangguru.com/landing-pages/assets/hs/Rumus%20Umum%20Dilatasi.jpg" alt="Rumus Umum Dilatasi" width="600" /></p>
<p> </p>
<h3><span style="font-size: 14pt;">Contoh Soal Dilatasi</span></h3>
<p style="text-align: justify;">Titik A(1,3) akan didilatasikan sebesar tiga kali, dengan pusat yang berada di (-3,1). Tentukanlah bayangan titik A setelah didilatasikan!</p>
<p> </p>
<p><strong>Pembahasan:</strong></p>
<p>Diketahui:</p>
<p>k = 3</p>
<p>x = 1, y = 3</p>
<p>a = -3, b = 1</p>
<p>Ditanya: A’ … ?</p>
<p>Jawab:</p>
<p style="text-align: justify;">A(x, y) = A'(k(x-a) + a, k(y – b) + b)</p>
<p style="text-align: justify;">A(1, 3) = A'(3(1 – (-3)) + (-3), 3(3 – 1) + 1)</p>
<p style="text-align: justify;">A(1, 3) = A'(3(1 + 3) – 3, 3(2) + 1)</p>
<p>A(1,3) = A'(3(4) – 3, 6 + 1)</p>
<p>A(1,3) = A'(12 – 3, 6 + 1)</p>
<p>A(1,3) = A'(9,7)</p>
<p style="text-align: justify;">Maka letak titik A’ dari koordinat (1,3) dengan dilatasi sebesar tiga kali yang berada di titik pusat (-3,1) adalah (9,7).</p>
<p style="text-align: center;">—</p>
<p style="text-align: justify;">Keempat jenis transformasi udah dibahas. Menurut kamu yang paling seru yang mana nih? Eits, tapi sesuai janji aku tadi, kita bahas soal HOTS yuk, supaya kamu paham untuk penggunaan rumus-rumus tadi.</p>
<p><strong>Baca Juga: <a href="https://www.ruangguru.com/blog/bilangan-bentuk-akar-sifat-sifat-dan-cara-merasionalkannya">Ketahui Sifat-Sifat Bentuk Akar & Cara Merasionalkannya</a></strong></p>
<p> </p>
<h2 style="text-align: justify;"><span style="font-size: 18pt;">Contoh Soal Transformasi Geometri</span></h2>
<p style="text-align: justify;">Titik A(2,1) direfleksikan terhadap garis y = 3. Kemudian, dilatasi terhadap pusat (1,2) dengan faktor skala -2. Selanjutnya, dirotasi 180 derajat dengan pusat O(0,0). Bayangan titik A adalah…</p>
<ol style="text-align: justify; list-style-type: upper-alpha;">
<li>A’’’(-1,4)</li>
<li>A’’’(-1,-4)</li>
<li>A’’’(1,4)</li>
<li>A’’’(1,-4)</li>
</ol>
<p> </p>
<p>Nah, karena di awal kita sudah banyak mengerjakan soal-soal transformasi geometri, boleh dong yang ini kamu kerjakan mandiri sebagai bahan latihan. <em>hehehe</em>… Kalo sudah ketemu jawabannya, bisa tulis di kolom komentar, ya!</p>
<p style="text-align: justify;">Buat kamu yang masih gemes untuk ngerjain soal-soal seru lainnya langsung gabung aja deh ke <strong><a href="https://www.ruangguru.com/ruangbelajar">ruangbelajar</a></strong>. Soal-soalnya selalu upgrade plus ada pembahasan soalnya juga. Sampai ketemu di artikel selanjutnya, dadah!</p>
<p><a href="https://app.ruangguru.com/ruangbelajar/"><img decoding="async" class="aligncenter size-medium" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/a2dbab8e-e903-4b70-ae04-39ff5807647e.jpg" alt="CTA ruangbelajar" /></a></p>
<p style="text-align: justify;"><strong>Referensi:</strong></p>
<p style="text-align: justify;">Subchan. Winarni. Mufid, M. S. dkk. (2018) Matematika. Jakarta: Kemendikbud.</p>
</div>
<div class="content-meta-tags">
<a href="https://www.ruangguru.com/blog/tag/kelas-9" rel="tag">Kelas 9</a> <a href="https://www.ruangguru.com/blog/tag/konsep-pelajaran" rel="tag">Konsep Pelajaran</a> <a href="https://www.ruangguru.com/blog/tag/matematika-ix" rel="tag">Matematika IX</a> <a href="https://www.ruangguru.com/blog/tag/smp" rel="tag">SMP</a> </div>
</div>
<div class="author-post">
<img loading="lazy" class="author-avatar" width="64px" height="64px" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/5196bc4b-168b-4b6f-8c46-cb076ca8b451.png">
<div>
<h5 class="author-title">Kak Efira MT Saintek</h5>
<p class="author-description"></p>
</div>
</div> <div class="share-post">
<p>Bagikan artikel ini:</p>
<ul class="socmed">
<li>
<a target="_blank" href="https://api.whatsapp.com/send?phone=&text=Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9%0D%0A%0D%0Ahttps://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri"><img src="https://cdn-web-2.ruangguru.com/static/whatsapp.png" loading="lazy" alt="Logo Whatsapp " /></a>
</li>
<li>
<a target="_blank" href="https://www.facebook.com/share.php?u=https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri&quote=Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9"> <img src="https://cdn-web-2.ruangguru.com/static/facebook.png" loading="lazy" alt="Logo Facebook " /> </a>
</li>
<li>
<a target="_blank" href="https://twitter.com/intent/tweet?text=Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9&url=https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri"> <img src="https://cdn-web-2.ruangguru.com/static/twitter.png" loading="lazy" alt="Logo Twitter " /> </a>
</li>
<li>
<a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.ruangguru.com/blog/pengertian-dan-jenis-jenis-transformasi-geometri&title=Macam-Macam Transformasi Geometri, Sifat & Contoh Soal | Matematika Kelas 9"><img src="https://cdn-web-2.ruangguru.com/static/linkedin.png" loading="lazy" alt="Logo LinkedIn " /></a>
</li>
</ul>
</div>
</div>
<div class="col-md-4 sticky">
<aside id="sidebar">
<div class="side-banner-desktop">
</div>
<div class="glider-navigation desktop">
<div role="tablist" class="dots" id="side-banner-dots"></div>
<div class="glider-button-navigation">
<button aria-label="Previous" class="glider-prev" id="side-banner-prev"><img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/412de767-9fab-4a4e-9a21-09b7ac9c5f96.png"></button>
<button aria-label="Next" class="glider-next" id="side-banner-next">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/754b0134-4f20-4cdd-af8c-d5918044d734.png">
</button>
</div>
</div>
<h2 style="font-size: 24px; font-weight: bold; margin-bottom: 16px;margin-top: 16px;">Artikel Terbaru</h2>
<ul>
<li>
<a href="https://www.ruangguru.com/blog/pergerakan-nasional-indonesia">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png" alt="Pergerakan Nasional" class="external-img wp-post-image " /> <span>Pergerakan Nasional Indonesia: Pengertian, Tujuan & Penyebabnya | Sejarah Kelas 11</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/runtuhnya-uni-soviet">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png" alt="Runtuhnya Uni Soviet" class="external-img wp-post-image " /> <span>Sejarah Runtuhnya Uni Soviet, Penyebab, dan Dampaknya | Sejarah Kelas 12</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/konflik-palestina-israel">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png" class="external-img wp-post-image " /> <span>Latar Belakang Terjadinya Konflik Palestina dengan Israel | Sejarah Kelas 12</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/9-lembaga-dan-pelaku-pasar-modal-di-indonesia">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/279825ac-672b-43f9-b66e-a1c7ec87f784.png" alt="Pelaku Pasar Modal di Indonesia" class="external-img wp-post-image " /> <span>9 Lembaga dan Pelaku Pasar Modal di Indonesia | Ekonomi Kelas 10</span>
</a>
</li>
<li>
<a href="https://www.ruangguru.com/blog/peristiwa-kontemporer-dunia-perpecahan-cekoslovakia">
<img loading="lazy" src="https://cdn-web-2.ruangguru.com//landing-pages/assets/2a1a35c0-f1f5-45d4-8869-ff5083bd90e5.png" alt="Perpecahan Cekoslowakia" class="external-img wp-post-image " /> <span>Latar Belakang Perpecahan Cekoslowakia dan Penyebabnya | Sejarah Kelas 12</span>
</a>
</li>
</ul>
</aside>
</div>
</div>
<div class="row">
<div class="col-12">
<section class="related-posts">
<h2 class="page-title">
Artikel Lainnya
</h2>
<div class="content-grid">
<div class="content">
<a href="https://www.ruangguru.com/blog/pergerakan-nasional-indonesia">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png?height=320&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png?height=320" type="image/png">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/dd9f819a-e3e7-4992-b8c7-3ce436bb27f8.png" loading="lazy" alt="" />
</picture>
<div>
<h2 class="content-title">
Pergerakan Nasional Indonesia: Pengertian, Tujuan & Penyebabnya | Sejarah Kelas 11 </h2>
<div class="content-meta">
<span>March 6, 2026</span> <span>• 8 minutes read</span>
</div>
</div>
</a>
</div>
<div class="content">
<a href="https://www.ruangguru.com/blog/runtuhnya-uni-soviet">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png?height=320&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png?height=320" type="image/png">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/b9f1448f-d581-42c3-bf06-6300fdbcd7c8.png" loading="lazy" alt="" />
</picture>
<div>
<h2 class="content-title">
Sejarah Runtuhnya Uni Soviet, Penyebab, dan Dampaknya | Sejarah Kelas 12 </h2>
<div class="content-meta">
<span></span> <span>• 11 minutes read</span>
</div>
</div>
</a>
</div>
<div class="content">
<a href="https://www.ruangguru.com/blog/konflik-palestina-israel">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png?height=320&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png?height=320" type="image/png">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/724ad604-4b78-4c7c-9d4b-627165954c4a.png" loading="lazy" alt="" />
</picture>
<div>
<h2 class="content-title">
Latar Belakang Terjadinya Konflik Palestina dengan Israel | Sejarah Kelas 12 </h2>
<div class="content-meta">
<span>March 5, 2026</span> <span>• 5 minutes read</span>
</div>
</div>
</a>
</div>
</div>
</section> </div>
</div>
<div class="banner-product-wrapper">
<a href="https://cta.ruangguru.com/7c02db90-610d-11ee-80fe-4201ac180089" target="_blank" class="alert alert-dismissible fade show banner-product" role="alert">
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
<!-- <p>Yuk pilih kelas dan materi belajar kamu di sini</p>
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/0e292531-9ee1-4eed-92f5-b5c053eea4c2.svg" width="42px" height="42px" class="arrow-right"> -->
<img class="image-floating-bottom" src="https://cdn-web-2.ruangguru.com/landing-pages/assets/d19eb9b6-999d-4b92-87c6-c4fb32000d73.png?convert=web" />
</a>
</div>
</div>
</div>
<script>
function sleep(ms) {
return new Promise((resolve) => setTimeout(resolve, ms));
}
async function replaceCtaMarkupAsync() {
await sleep(2000);
alert("replace")
const contentBody = document.querySelector('.content-body');
const paragraphs = contentBody.querySelectorAll('p');
const regexPattern = /{{cta\(['"](.+?)['"]\)}}/g;
paragraphs.forEach((paragraph) => {
const originalHTML = paragraph.innerHTML;
let modifiedHTML = '';
let lastIndex = 0;
for (const match of originalHTML.matchAll(regexPattern)) {
const ctaId = match[1];
modifiedHTML += originalHTML.slice(lastIndex, match.index) + `<b>${ctaId}</b>`;
lastIndex = match.index + match[0].length;
}
modifiedHTML += originalHTML.slice(lastIndex);
paragraph.innerHTML = modifiedHTML;
});
document.addEventListener("DOMContentLoaded", () => {
replaceCtaMarkupAsync();
});
}
</script>
<div class="modal fade" id="popupPromo" tabindex="-1" aria-labelledby="popupPromoLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" data-bs-backdrop="static" data-bs-keyboard="false">
<div class="modal-content">
<div class="button-wrapper">
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="glider-contain">
<div class="glider">
<a class="" target="_blank" href="https://cta.ruangguru.com/ab-web-pop-up-banner-blog-rg">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/4680961a-4e01-4169-8ff4-da0823d0da6c.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/ab-web-pop-up-banner-blog-rg-1">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/e0ebb0c9-e368-4524-9241-dbaf73cafccd.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/rasionalisasi-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/0ec15e92-707a-4660-8134-11f1c1e539a8.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/to-snbt-reg-2026-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/b95e02b2-28a4-4c24-a6db-930ecddef2fa.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/pop-blog-to-snbt-prem">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/1b8558a2-ad51-4144-b30c-01a3231a22da.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/to-prem-tka-sd-smp-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/e6888a56-1d95-4d8a-b87a-b19b8a185651.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/rgp-popup-blog-rg">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/851003e6-07b5-40d1-9068-f9b0bcb1625a.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/25f78174-4fc2-11ef-9a39-4201ac180089">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/cbe7b869-fbe2-4497-8a1e-42344df5b137.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/kitab-tka-smp-popup-blog">
<img src="https://cdn-web-2.ruangguru.com//landing-pages/assets/eb41ad00-e4dc-46f5-b9f6-721266fc371e.jpg" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/pop-rg-kitab-utbk-snbt-lite">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/f7908ac1-3b0b-492c-bf87-dcea2b20b87c.png" />
</a>
<a class="" target="_blank" href="https://cta.ruangguru.com/pop-rg-kitablitetkasmp">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/50097055-1862-46a8-bbe0-fa5b077f88bb.png" />
</a>
</div>
<div class="glider-navigation">
<div role="tablist" class="dots" id="popup-promo-dots"></div>
<div class="glider-button-navigation">
<button aria-label="Previous" class="glider-prev" id="popup-promo-prev"><img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/412de767-9fab-4a4e-9a21-09b7ac9c5f96.png"></button>
<button aria-label="Next" class="glider-next" id="popup-promo-next">
<img src="https://cdn-web-2.ruangguru.com/landing-pages/assets/754b0134-4f20-4cdd-af8c-d5918044d734.png">
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
var jsonString = '[{"CreatedAt":"2025-07-25 01:01:27+00:00","Id":696,"UpdatedAt":"2026-02-25 02:12:12+00:00","campaign":null,"cta":[{"Id":31467,"ctaId":"ab-web-pop-up-banner-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/ab-web-pop-up-banner-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/b9b5f501-be14-4e3f-9ad8-a87e17ec16e9.png","name":"[AB] Web Pop Up Banner - Blog RG","targetUrl":"https:\/\/bayar.ruangguru.com\/?utm-source=ab-web-pop-up-banner-blog-rg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/4680961a-4e01-4169-8ff4-da0823d0da6c.png","name":"[RG] Popup Banner Blog - Promo SNBT Ramadan","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":1,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-07-25 01:01:27+00:00","Id":705,"UpdatedAt":"2026-02-23 10:52:46+00:00","campaign":null,"cta":[{"Id":33341,"ctaId":"ab-web-pop-up-banner-blog-rg-1","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/ab-web-pop-up-banner-blog-rg-1)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/f30c4943-4456-4a96-858b-fe065c9073ae.png","name":"[AB] Web Pop Up Banner - Blog RG 1","targetUrl":"https:\/\/bayar.ruangguru.com\/?utm-source=ab-web-pop-up-banner-blog-rg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/e0ebb0c9-e368-4524-9241-dbaf73cafccd.png","name":"[RG] Popup Banner Blog - Promo TKA Ramadan","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":2,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-08-16 13:35:02+00:00","Id":657,"UpdatedAt":"2026-02-06 03:52:10+00:00","campaign":null,"cta":[{"Id":33189,"ctaId":"rasionalisasi-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/rasionalisasi-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/0ec15e92-707a-4660-8134-11f1c1e539a8.png","name":"[RG] Pop Up Blog - Rasionalisasi","targetUrl":"https:\/\/www.ruangguru.com\/rasionalisasi"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/0ec15e92-707a-4660-8134-11f1c1e539a8.png","name":"[RG] Pop Up Blog RG - Rasionalisasi","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":3,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-12-07 09:26:39+00:00","Id":677,"UpdatedAt":"2026-02-12 02:22:12+00:00","campaign":null,"cta":[{"Id":33305,"ctaId":"to-snbt-reg-2026-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/to-snbt-reg-2026-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/b95e02b2-28a4-4c24-a6db-930ecddef2fa.jpg","name":"[IDN] CTA Popup Blog RG - Tryout SNBT Regular 2026","targetUrl":"https:\/\/link.ruangguru.com\/blPk\/TOUTBKREG7"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/b95e02b2-28a4-4c24-a6db-930ecddef2fa.jpg","name":"[RG] Popup Blog RG - Tryout Regular 2026","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":4,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2026-02-05 10:16:52+00:00","Id":689,"UpdatedAt":"2026-03-05 02:41:12+00:00","campaign":null,"cta":[{"Id":33338,"ctaId":"pop-blog-to-snbt-prem","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/pop-blog-to-snbt-prem)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/1b8558a2-ad51-4144-b30c-01a3231a22da.jpg","name":"[RG] Popup Blog - TO SNBT Prem","targetUrl":"https:\/\/link.ruangguru.com\/blPk\/TOUTBKPREM"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/1b8558a2-ad51-4144-b30c-01a3231a22da.jpg","name":"[RG] Pop blog - TO SNBT Prem","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":5,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-12-07 09:26:39+00:00","Id":679,"UpdatedAt":"2026-03-04 03:44:16+00:00","campaign":null,"cta":[{"Id":33304,"ctaId":"to-prem-tka-sd-smp-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/to-prem-tka-sd-smp-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/1bf472e1-62f4-4aa9-ab8c-4fa72a82dd7b.png","name":"[RG] Pop Up Blog RG - TO Premium TKA SD SMP","targetUrl":"https:\/\/s.id\/TOTKAPREMSDSMP"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/e6888a56-1d95-4d8a-b87a-b19b8a185651.png","name":"[RG] Popup Blog RG - TO TKA Premium SD SMP","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":6,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-08-25 04:25:04+00:00","Id":672,"UpdatedAt":"2026-02-06 03:52:17+00:00","campaign":null,"cta":[{"Id":33285,"ctaId":"rgp-popup-blog-rg","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/rgp-popup-blog-rg)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/851003e6-07b5-40d1-9068-f9b0bcb1625a.png","name":"[RG] Pop Up Blog - RGP","targetUrl":"https:\/\/www.ruangguru.com\/privat"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/851003e6-07b5-40d1-9068-f9b0bcb1625a.png","name":"[RG] Pop Up Blog - RGP","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":7,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-08-16 13:35:02+00:00","Id":379,"UpdatedAt":"2026-03-06 01:54:52+00:00","campaign":null,"cta":[{"Id":31356,"ctaId":"25f78174-4fc2-11ef-9a39-4201ac180089","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/25f78174-4fc2-11ef-9a39-4201ac180089)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/f60bc49c-c00f-4a5e-80a2-2552fa18ae21.jpg","name":"CTA Blog RG - Kitab UTBK SNBT","targetUrl":"https:\/\/bit.ly\/orderkitabrg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/cbe7b869-fbe2-4497-8a1e-42344df5b137.jpg","name":"[RG] Pop Up Blog RG - Kitab UTBK SNBT","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":8,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2023-08-16 13:35:02+00:00","Id":587,"UpdatedAt":"2026-03-06 01:55:00+00:00","campaign":null,"cta":[{"Id":33020,"ctaId":"kitab-tka-smp-popup-blog","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/kitab-tka-smp-popup-blog)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/9ea9eca7-9ef7-433c-baad-14bc1019f890.jpg","name":"[RG] Pop up blog - Kitab TKA SMP","targetUrl":"https:\/\/bit.ly\/kitabtkasmprg"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/\/landing-pages\/assets\/eb41ad00-e4dc-46f5-b9f6-721266fc371e.jpg","name":"[RG] Pop Up Blog RG - Kitab TKA SMP","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":9,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-11-12 10:28:45+00:00","Id":636,"UpdatedAt":"2026-02-06 03:52:20+00:00","campaign":null,"cta":[{"Id":33149,"ctaId":"pop-rg-kitab-utbk-snbt-lite","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/pop-rg-kitab-utbk-snbt-lite)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/8d6f8639-cfff-4d64-89ea-f68bfe7a868c.png","name":"[RG] Pop blog - Kitab utbk snbt lite","targetUrl":"https:\/\/s.id\/litesnbt26"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/f7908ac1-3b0b-492c-bf87-dcea2b20b87c.png","name":"[RG] Pop blog - Kitab utbk snbt lite","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":10,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"},{"CreatedAt":"2025-11-14 08:09:42+00:00","Id":647,"UpdatedAt":"2026-02-06 03:52:21+00:00","campaign":null,"cta":[{"Id":33160,"ctaId":"pop-rg-kitablitetkasmp","ctaLink":"URI::(https:\/\/cta.ruangguru.com\/pop-rg-kitablitetkasmp)","imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/20edba9b-ef84-4938-b698-4a82783478a5.png","name":"[RG] Pop blog - kitab lite tka smp","targetUrl":"https:\/\/s.id\/litetkasmp26"}],"endDate":null,"hide":0,"imageUrl":"https:\/\/cdn-web-2.ruangguru.com\/landing-pages\/assets\/50097055-1862-46a8-bbe0-fa5b077f88bb.png","name":"[RG] Pop blog - kitab lite tka smp","nc_v5ij___rg_campaign_id":null,"nc_v5ij___rg_product_id":41,"product":"ruangguru","rankPosition":11,"rg_campaign":null,"rg_product":{"Id":41,"name":"ruangguru"},"showIn":"blog","startDate":null,"type":"popup"}]';
var jsArray = JSON.parse(jsonString);
console.log(jsArray);
</script>
<script>
let windowHeight = window.innerHeight;
let promosLength = 11;
document.addEventListener('DOMContentLoaded', function() {
// Initialize Bootstrap Modal
let popupPromo = new bootstrap.Modal(document.getElementById('popupPromo'), {});
// Initialize Glider.js inside the Bootstrap Modal
function initGliderInModal() {
new Glider(document.querySelector('#popupPromo .glider'), {
slidesToScroll: 1,
slidesToShow: 1,
draggable: true,
dots: '#popup-promo-dots',
arrows: {
prev: '#popup-promo-prev',
next: '#popup-promo-next'
}
});
}
// Show Bootstrap Modal and initialize Glider.js after a specified scroll amount
const scrollThreshold = 2 / 3 * windowHeight; // The scroll amount in pixels to trigger the Modal
let gliderInitialized = false;
window.addEventListener('scroll', function() {
if (window.scrollY >= scrollThreshold && !gliderInitialized && promosLength > 0) {
popupPromo.show();
// Listen for the 'shown' event to initialize Glider.js after the Modal has been fully displayed
$('#popupPromo').on('shown.bs.modal', function() {
initGliderInModal();
gliderInitialized = true;
// Optionally, remove the 'shown' event listener after initializing the Glider to avoid re-initializing
$('#popupPromo').off('shown.bs.modal');
});
// Remove the scroll event listener after the Modal is shown to avoid re-initializing the Glider
this.removeEventListener('scroll', arguments.callee);
}
});
});
</script>
<script src="https://unpkg.com/analytics@0.8.1/dist/analytics.min.js"></script>
<script type="text/javascript" src="https://unpkg.com/analytics-plugin-trackable-min@0.4.5/dist/analytics-plugin-trackable.min.js"></script>
<script type="text/javascript" defer>
/* Initialize analytics */
var Analytics = window._analytics.init({
app: "ruangguruLanding",
debug: false,
plugins: [analyticsTrackable()],
});
/* Additional context tracker pageView */
const post_id = 2974;
const tags_id = [43,10,247,16];
const category_id = 467;
const sub_category_id = 473;
const customData = {
tags_id: tags_id,
category_id: category_id,
sub_category_id: sub_category_id,
post_id: post_id,
};
Analytics.plugins.trackable.context(JSON.stringify(customData));
Analytics.ready(function () {
Analytics.page();
});
$(document).on('click', '[data-tracking-event-type]', function (event) {
const eventType = $(this).data('tracking-event-type');
const context = $(this).data('tracking-context');
Analytics.track(eventType, context);
});
</script>
<footer class="footer">
<div class="container">
<div class="row">
<div class="col-lg-3">
<div class="office">
<a href="https://www.ruangguru.com/">
<img src="https://cdn-web-2.ruangguru.com/static/RG_LOGO_WHITE.png?convert=auto" alt="Logo Ruangguru" loading="lazy" />
</a>
<address>
<p class="hq">RUANGGURU HQ</p>
<p>
Gedung Sinarmas MSIG Tower Lt. 33. Jl. Jenderal Sudirman Kav. 21, Karet Kuningan, Setiabudi, Jakarta Selatan, Jakarta 12920
</p>
</address>
</div>
<nav class="footer-menu call-us">
<p class="title">Hubungi Kami</p>
<address>
<a href="mailto:info@ruangguru.com">
<img class="icon-call-us" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/4739a139-8f09-42ea-b517-d842c5d1c28d.png" loading="lazy" alt="Logo Email Footer" />
info@ruangguru.com</a>
<a href="tel:02130930000">
<img class="icon-call-us" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/6f4bb6c8-52c9-4acb-859b-47a10a7eec75.png" loading="lazy" alt="Logo Phone Footer" />(021) 3093 0000</a>
<a href="https://wa.me/6281574410000">
<img class="icon-call-us" src="https://cdn-web-2.ruangguru.com/file-uploader/lp/4b58468a-b2f9-40e4-867f-d3242a065dcf.png" loading="lazy" alt="Logo Whatsapp Footer" />0815 7441 0000</a>
</address>
</nav>
<nav class="footer-menu social d-none d-lg-block">
<p class="title">Ikuti Kami</p>
<a target="_blank" href="https://www.instagram.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/instagram.png" loading="lazy" alt="Logo Instagram Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.facebook.com/ruanggurucom/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/facebook.png" loading="lazy" alt="Logo Facebook Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://twitter.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/twitter.png" loading=" lazy" alt="Logo Twitter Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.youtube.com/ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/youtube.png" loading=" lazy" alt="Logo Youtube Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.linkedin.com/company/ruangguru-com">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/linkedin.png" loading=" lazy" alt="Logo LinkedIn Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.tiktok.com/@ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/tiktok.png" loading=" lazy" alt="Logo TikTok Footer" width="32px" height="32px" />
</picture>
</a>
</nav>
</div>
<div class="col-lg-9">
<div class="row">
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title">Produk Ruangguru</p>
<ul type="none">
<li><a href="https://roboguru.ruangguru.com" target="_blank">Roboguru</a></li>
<li><a href="https://www.ruangguru.com/roboguruplus">Roboguru Plus</a></li>
<li><a href="https://www.ruangguru.com/dafa-lulu">Dafa dan Lulu</a></li>
<li><a href="https://www.ruangguru.com/for-kids/kursus">Kursus for Kids</a></li>
<li><a href="https://www.ruangguru.com/for-kids">Ruangguru for Kids</a></li>
<li><a href="https://www.ruangguru.com/bisnis">Ruangguru for Business</a></li>
<li><a href="https://www.ruangguru.com/ruanguji">Ruanguji</a></li>
<li><a href="https://www.ruangguru.com/blog">Ruangbaca</a></li>
<li><a href="https://www.ruangguru.com/ruangkelas">Ruangkelas</a></li>
<li><a href="https://www.ruangguru.com/ruangbelajar">Ruangbelajar</a></li>
<li><a href="https://pengajar.ruangguru.com/">Ruangpengajar</a></li>
<li><a href="https://www.ruangguru.com/privat">Ruangguru Privat</a></li>
<li><a href="https://www.ruangpeduli.org/" target="_blank">Ruangpeduli</a></li>
</ul>
</nav>
</div>
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title">Bantuan & Panduan</p>
<ul type="none">
<li><a href="https://www.ruangguru.com/company-credentials">Company Credentials</a></li>
<li><a href="https://www.ruangguru.com/beasiswa">Beasiswa Ruangguru</a></li>
<li><a href="https://www.ruangguru.com/cicilan">Cicilan Ruangguru</a></li>
<li><a href="https://www.ruangguru.com/promo">Promo Ruangguru</a></li>
<li><a href="https://ticketing.ruangguru.com/help?request_type_id=459" target="_blank">Vulnerability Report</a></li>
<li><a href="https://www.ruangguru.com/bantuan#layanan">Layanan Pengaduan</a></li>
<li><a href="https://www.ruangguru.com/terms-conditions">Syarat & Ketentuan</a></li>
<li><a href="https://www.ruangguru.com/privacy-policy">Kebijakan Privasi</a></li>
<li><a href="https://www.ruangguru.com/about-us">Tentang Kami</a></li>
<li><a href="https://www.ruangguru.com/contact-us">Kontak Kami</a></li>
<li><a href="https://www.ruangguru.com/press">Press Kit</a></li>
<li><a href="https://www.ruangguru.com/bantuan">Bantuan</a></li>
<li><a href="https://career.ruangguru.com/">Karier</a></li>
</ul>
</nav>
</div>
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title">Produk Lainnya</p>
<ul type="none">
<li><a href="https://www.brainacademy.id/" target="_blank">Brain Academy</a></li>
<li><a href="https://www.english-academy.id/" target="_blank">English Academy</a></li>
<li><a href="https://skillacademy.com/" target="_blank">Skill Academy</a></li>
<li><a href="https://www.ruangkerja.id/" target="_blank">Ruangkerja</a></li>
<li><a href="https://www.schoters.com/id/" target="_blank">Schoters</a></li>
<li><a href="https://www.kalananti.id/" target="_blank">Kalananti</a></li>
</ul>
</nav>
</div>
<div class="col-6 col-md-3">
<nav class="footer-menu">
<p class="title"> Coba GRATIS Aplikasi Ruangguru</p>
<div class="download-list">
<ul>
<li>
<a target="_blank" rel="nofollow" href="https://apps.apple.com/id/app/ruangguru-solusi-belajar/id1099742206?l=id">
<img src="https://cdn-web-2.ruangguru.com/static/appstore.png" loading="lazy" alt="Button App Store Footer " />
</a>
</li>
<li>
<a target="_blank" rel="nofollow" href="https://play.google.com/store/apps/details?id=com.ruangguru.livestudents&hl=in">
<img src="https://cdn-web-2.ruangguru.com/static/googleplay.png" loading="lazy" alt="Button Google Play Footer " />
</a>
</li>
<li>
<a target="_blank" rel="nofollow" href="https://appgallery.huawei.com/#/app/C102352375">
<img src="https://cdn-web-2.ruangguru.com/static/huawei.png" loading="lazy" alt="Button AppGallery Footer " />
</a>
</li>
</ul>
</div>
</nav>
</div>
</div>
</div>
</div>
<div class="d-lg-none text-center">
<nav class="footer-menu social">
<p class="title">Ikuti Kami</p>
<a target="_blank" href="https://www.instagram.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/instagram.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/instagram.png" loading="lazy" alt="Logo Instagram Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.facebook.com/ruanggurucom/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/facebook.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/facebook.png" loading="lazy" alt="Logo Facebook Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://twitter.com/ruangguru/">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/twitter.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/twitter.png" loading=" lazy" alt="Logo Twitter Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.youtube.com/ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/youtube.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/youtube.png" loading=" lazy" alt="Logo Youtube Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.linkedin.com/company/ruangguru-com">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/linkedin.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/linkedin.png" loading=" lazy" alt="Logo LinkedIn Footer" width="32px" height="32px" />
</picture>
</a>
<a target="_blank" href="https://www.tiktok.com/@ruangguru">
<picture>
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60&convert=webp" type="image/webp">
<source srcset="https://cdn-web-2.ruangguru.com/static/tiktok.png?height=60" type="image/png">
<img src="https://cdn-web-2.ruangguru.com/static/tiktok.png" loading=" lazy" alt="Logo TikTok Footer" width="32px" height="32px" />
</picture>
</a>
</nav>
</div>
<p class="footer-copyright">
© 2026 All Rights Reserved PT. Ruang Raya Indonesia
</p>
</div>
<style>
.bantuan-container {
position: relative;
}
.bantuan-element {
position: fixed;
z-index: 999;
display: flex;
align-items: flex-end;
justify-content: flex-end;
cursor: pointer;
transition: all 0.6s ease;
}
.bantuan-top {
bottom: 11rem;
right: 2rem;
}
.bantuan-bottom {
bottom: 2rem;
right: 2rem;
}
.bantuan-top-2 {
bottom: 15rem;
right: 2rem;
}
.bantuan-top-3 {
bottom: 19rem;
right: 2rem;
}
.bantuan-bottom-2 {
bottom: 5rem;
right: 2rem;
}
.bantuan-bottom-3 {
bottom: 8rem;
right: 2rem;
}
@media (min-width: 768px) {
.bantuan-element img {
width: auto;
transition: all 0.4s ease;
}
.bantuan-top img {
width: 140px;
}
.bantuan-bottom img {
width: 140px;
}
.bantuan-top-2 img,
.bantuan-top-3 img {
width: 140px;
}
.bantuan-bottom-2 img,
.bantuan-bottom-3 img {
width: 140px;
}
.bantuan-element.clicked {
bottom: 9rem;
right: 2.5rem;
}
.bantuan-element.clicked img {
width: auto;
height: 64px;
}
}
@media (max-width: 767px) {
.bantuan-top {
bottom: 8rem;
right: 1rem;
align-items: center;
}
.bantuan-bottom {
bottom: 2rem;
right: 1.25rem;
align-items: center;
}
.bantuan-top-2 {
bottom: 12rem;
right: 1rem;
align-items: center;
}
.bantuan-top-3 {
bottom: 16rem;
right: 1rem;
align-items: center;
}
.bantuan-bottom-2 {
bottom: 5rem;
right: 1.25rem;
align-items: center;
}
.bantuan-bottom-3 {
bottom: 8rem;
right: 1.25rem;
align-items: center;
}
.bantuan-element img {
width: auto;
}
.bantuan-top img,
.bantuan-top-2 img,
.bantuan-top-3 img {
width: 96px;
}
.bantuan-bottom img,
.bantuan-bottom-2 img,
.bantuan-bottom-3 img {
width: 96px;
}
}
.bantuan-element:hover {
transform: scale(1.05);
}
.bantuan-element img {
max-width: 100%;
height: auto;
}
</style>
<div id="bantuan-divs-container" style="position: relative" data-product="ruangguru" data-table="rg_floating_icon"></div>
<script>
class FloatingDivsComponent {
constructor(product = 'ruangguru', table = 'rg_floating_icon') {
this.container = document.getElementById('bantuan-divs-container');
this.floatingElements = [];
this.product = product;
this.table = table;
// Configuration
this.config = {
baseApiUrl: 'https://gw.ruangguru.com/api/v3/rdb/p_ddgy8hjx5dxsqx/rg_banner/views/',
apiKey: 'vLyK3dJrDBRmOwueX2OJXibMkgsUbBk0WS4ua2p1',
maxElements: 2,
zIndexBase: 100,
};
// Build dynamic API URL based on table parameter
this.config.apiUrl = this.buildApiUrl();
this.init();
}
buildApiUrl() {
const baseUrl = this.config.baseApiUrl;
const tableName = this.table || 'rg_floating_icon';
const queryParams =
'offset=0&limit=99999&sort=rankPosition&where=(type,eq,floating)~and(showIn,anyof,blog)~and(hide,is,false)~and(product,eq,' +
this.product +
')&nested%5Bcta%5D%5Bfields%5D=Id,name,ctaId,imageUrl,ctaLink,targetUrl';
return `${baseUrl}${tableName}?${queryParams}`;
}
async init() {
try {
await this.fetchFloatingElements();
this.renderFloatingElements();
} catch (error) {
console.error('Failed to initialize floating divs component:', error);
}
}
async fetchFloatingElements() {
try {
const options = {
method: 'GET',
headers: {
'xc-token': this.config.apiKey || 'vLyK3dJrDBRmOwueX2OJXibMkgsUbBk0WS4ua2p1',
},
};
const urlNoco = this.config.apiUrl;
const response = await fetch(urlNoco, options);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
this.floatingElements = this.processApiResponse(data);
} catch (error) {
console.error('Error fetching floating elements:', error);
throw error;
}
}
processApiResponse(data) {
if (!data || !data.list || !Array.isArray(data.list)) {
return [];
}
console.log(data.list);
// Ensure we only get maximum 2 elements
const limitedElements = data.list.slice(0, this.config.maxElements);
return limitedElements;
}
renderFloatingElements() {
if (!this.container || this.floatingElements.length === 0) {
return;
}
// Additional safeguard: ensure we never render more than maxElements
const elementsToRender = this.floatingElements.slice(0, this.config.maxElements);
// Clean up existing elements and their event listeners
this.cleanupExistingElements();
// Clear existing content
this.container.innerHTML = '';
elementsToRender.forEach((element, index) => {
const floatingDiv = this.createFloatingDiv(element, index);
this.container.appendChild(floatingDiv);
});
}
cleanupExistingElements() {
// Clear existing elements (no need for event listener cleanup with CSS approach)
const existingElements = this.container.querySelectorAll('[data-floating-element]');
existingElements.forEach(element => {
element.remove();
});
}
createFloatingDiv(element, index) {
const div = document.createElement('div');
const cta = element.cta[0]; // Use the first CTA
// Add data attribute for cleanup tracking
div.setAttribute('data-floating-element', 'true');
// Apply CSS classes based on rankPosition
const positionClass = this.getPositionClass(element.rankPosition, index);
div.className = `bantuan-element ${positionClass}`;
div.style.zIndex = this.config.zIndexBase + index;
// Create the link and image
const link = document.createElement('a');
link.href = 'https://cta.ruangguru.com/' + cta.ctaId || '#';
link.target = '_blank';
// Add tracking attributes
link.setAttribute('data-tracking-event-type', 'landing_page__core__item_click');
link.setAttribute(
'data-tracking-context',
JSON.stringify({
product_name: this.product,
cta_action: 'redirection',
cta_action_detail: link.href,
item_type: 'floating',
item_name: element.name || 'Floating element',
item_category: 'payment',
item_position: index,
item_serial: null,
section_type: 'floating_item',
section_position: 'body',
section_name: 'floating_item',
})
);
const img = document.createElement('img');
img.src = element.imageUrl + '?h=200&convert=webp';
img.alt = element.name || 'Floating element';
img.loading = 'lazy';
// Add click tracking
link.addEventListener('click', () => {
this.trackClick(element, cta);
});
link.appendChild(img);
div.appendChild(link);
return div;
}
getPositionClass(rankPosition, index) {
// Define positioning classes based on rankPosition
if (rankPosition === 1) {
return 'bantuan-top'; // Top position
} else if (rankPosition === 2) {
return 'bantuan-bottom'; // Bottom position
} else {
// For additional elements, distribute them evenly
return `bantuan-${index % 2 === 0 ? 'top' : 'bottom'}-${Math.floor(index / 2) + 1}`;
}
}
trackClick(element, cta) {
// Implement click tracking logic here
console.log('Floating element clicked:', {
elementId: element.Id,
elementName: cta.name,
ctaId: cta.ctaId,
targetUrl: cta.targetUrl,
});
}
// Public method to manually refresh
async refresh() {
try {
await this.fetchFloatingElements();
this.renderFloatingElements();
} catch (error) {
console.error('Failed to refresh floating elements:', error);
throw error;
}
}
// Public method to get current floating elements
getFloatingElements() {
return [...this.floatingElements];
}
}
// Initialize the component when DOM is ready
document.addEventListener('DOMContentLoaded', () => {
// Get product and table parameters from data attributes
const container = document.getElementById('bantuan-divs-container');
const product = container.getAttribute('data-product') || 'ruangguru';
const table = container.getAttribute('data-table') || 'rg_floating_icon';
new FloatingDivsComponent(product, table);
});
// Export for use in other modules if needed
if (typeof module !== 'undefined' && module.exports) {
module.exports = FloatingDivsComponent;
}
</script> <div id="wp-install-nudge" style="
position: fixed;
bottom: 0rem;
right: 0;
z-index: 999;
cursor: pointer;
"></div>
<script>
(function (w, d, s, o, f, js, fjs) {
w['Sales-Nudge-Widget'] = o; w[o] = w[o] || function () { (w[o].q = w[o].q || []).push(arguments) };
js = d.createElement(s), fjs = d.getElementsByTagName(s)[0];
js.id = o; js.src = f; js.async = 1; fjs.parentNode.insertBefore(js, fjs);
}(window, document, 'script', 'wpInstallNudge', 'https://cdn-web-2.ruangguru.com/sales-nudge/6198a95130/dist/widget.js'));
wpInstallNudge('init', { targetElementId: 'wp-install-nudge', clientTarget: 'ruangguru_blog' });
</script>
<script>
// note: disabled due to auto reload page
// var lastScrollTop = 0;
// $(window).scroll(function(event){
// var st = $(this).scrollTop();
// if (st > lastScrollTop){
// $('#wp-install-nudge').slideDown( "slow", function() {});
// } else {
// $('#wp-install-nudge').slideUp( "slow", function() {});
// }
// lastScrollTop = st;
// });
// $(document).ready(function () {
// $("#wp-install-nudge").hide();
// });
$('#wp-install-nudge').click(function(){
Analytics.track("promotion__install_nudge__click",
{
user_email: "ruangguru@blog.com",
cta_link: widgetData.dataConfig.target_link
}).catch((err) => {
console.log("tracker error", err);
});
});
</script>
</footer>
<div id="__next"></div>
<script type="speculationrules">
{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/blog\/*"},{"not":{"href_matches":["\/blog\/wp-*.php","\/blog\/wp-admin\/*","\/blog\/wp-content\/uploads\/*","\/blog\/wp-content\/*","\/blog\/wp-content\/plugins\/*","\/blog\/wp-content\/themes\/ruangguru\/*","\/blog\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]}
</script>
<script>
async function getCtaDetails(ctaIds) {
const endpoint =
" https://gw.ruangguru.com/api/v3/rdb/p_ddgy8hjx5dxsqx/CTA/views/CTA?offset=0&limit=10&where=(ctaId,in," + ctaIds.toString() + ")";
try {
const response = await fetch(endpoint, {
headers: {
"xc-token": "-hG2nBDJzSj0agSgNtcJx97M4F02y54nUMoY6plJ",
},
});
const data = await response.json();
const ctaList = data?.list || [];
const ctaMap = new Map();
for (const ctaData of ctaList) {
ctaMap.set(ctaData.ctaId, ctaData);
}
return ctaMap;
} catch (error) {
console.error("Error fetching CTA details:", error);
return new Map();
}
}
async function replaceCTA() {
const regex = /{{cta\((‘(.*?)’|“(.*?)”)\)}}/g;
const bodyHTML = document.body.innerHTML;
const matches = Array.from(bodyHTML.matchAll(regex));
const ctaIds = matches.map((match) => {
let ctaId = match[2] ?? match[3];
return ctaId;
});
const ctaMap = await getCtaDetails(ctaIds);
const replacedHTML = bodyHTML.replace(regex, (match, _inner, ctaId1, ctaId2) => {
const ctaId = ctaId1 ?? ctaId2;
const ctaData = ctaMap.get(ctaId);
if (ctaData) {
return `<a href="https://cta.ruangguru.com/${ctaData.ctaId}" target="_${ctaData.targetType}" style="position:relative;display:inline-block;">
<img src="${ctaData.imageUrl}" loading="lazy" alt="${ctaData.altText}" />
</a>`;
} else {
return match;
}
});
document.body.innerHTML = replacedHTML;
}
</script>
<meta name="author" content="Ruangguru Tech Team">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PVNLZFT" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- Tracker -->
<script type="text/javascript" src="https://cdn-web-2.ruangguru.com/landing-page-web/public/staticpages/global-assets/js/cta.js"></script>
<script src="https://unpkg.com/@dotlottie/player-component@latest/dist/dotlottie-player.mjs" type="module"></script>
</body>
</html>