compass filled loop icon

compass-filled-loop from Material Line Icons by Vjacheslav Trushkin · Line · Maps · animated · MIT Free for personal and commercial use.

Name
compass-filled-loop
Set
Material Line Icons
Style
Line
Category
Maps
Animation
Animated SVG (SMIL)
Viewbox
24×24
License
MIT

More maps icons from Material Line Icons

Use the compass filled loop icon

SVG

<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><defs><mask id="SVGfa7LP8so4"><path fill="#fff" fill-opacity="0" stroke="#fff" stroke-dasharray="60" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z"><animate fill="freeze" attributeName="stroke-dashoffset" dur="0.6s" values="60;0"/><animate fill="freeze" attributeName="fill-opacity" begin="0.6s" dur="0.4s" to="1"/></path><path d="M11 11l1 1l1 1l-1 -1Z" transform="rotate(-180 12 12)"><animate fill="freeze" attributeName="d" begin="1.1s" dur="0.3s" to="M10.2 10.2l6.8 -3.2l-3.2 6.8l-6.8 3.2Z"/><animateTransform attributeName="transform" begin="1.1s" dur="9s" keyTimes="0;0.8;0.3;0.36;0.42;0.5;0.58;0.65;0.76;0.84;0.92;1" repeatCount="indefinite" type="rotate" values="-180 12 12;0 12 12;0 12 12;270 12 12;-90 12 12;0 12 12;-180 12 12;-35 12 12;-45 12 12;-110 12 12;-135 12 12;-180 12 12"/></path></mask></defs><g fill="currentColor"><path d="M0 0h24v24H0z" mask="url(#SVGfa7LP8so4)"/><circle cx="12" cy="12"><animate fill="freeze" attributeName="r" begin="1.1s" dur="0.3s" to="1"/></circle></g></svg>

React

import type { SVGProps } from "react";

export function LineMdCompassFilledLoop(props: SVGProps<SVGSVGElement>) {
  return (
    <svg {...props} xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><defs><mask id="SVGfa7LP8so4"><path fill="#fff" fillOpacity="0" stroke="#fff" strokeDasharray="60" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z"><animate fill="freeze" attributeName="strokeDashoffset" dur="0.6s" values="60;0"/><animate fill="freeze" attributeName="fillOpacity" begin="0.6s" dur="0.4s" to="1"/></path><path d="M11 11l1 1l1 1l-1 -1Z" transform="rotate(-180 12 12)"><animate fill="freeze" attributeName="d" begin="1.1s" dur="0.3s" to="M10.2 10.2l6.8 -3.2l-3.2 6.8l-6.8 3.2Z"/><animateTransform attributeName="transform" begin="1.1s" dur="9s" keyTimes="0;0.8;0.3;0.36;0.42;0.5;0.58;0.65;0.76;0.84;0.92;1" repeatCount="indefinite" type="rotate" values="-180 12 12;0 12 12;0 12 12;270 12 12;-90 12 12;0 12 12;-180 12 12;-35 12 12;-45 12 12;-110 12 12;-135 12 12;-180 12 12"/></path></mask></defs><g fill="currentColor"><path d="M0 0h24v24H0z" mask="url(#SVGfa7LP8so4)"/><circle cx="12" cy="12"><animate fill="freeze" attributeName="r" begin="1.1s" dur="0.3s" to="1"/></circle></g></svg>
  );
}

Vue

<template>
  <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><defs><mask id="SVGfa7LP8so4"><path fill="#fff" fill-opacity="0" stroke="#fff" stroke-dasharray="60" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z"><animate fill="freeze" attributeName="stroke-dashoffset" dur="0.6s" values="60;0"/><animate fill="freeze" attributeName="fill-opacity" begin="0.6s" dur="0.4s" to="1"/></path><path d="M11 11l1 1l1 1l-1 -1Z" transform="rotate(-180 12 12)"><animate fill="freeze" attributeName="d" begin="1.1s" dur="0.3s" to="M10.2 10.2l6.8 -3.2l-3.2 6.8l-6.8 3.2Z"/><animateTransform attributeName="transform" begin="1.1s" dur="9s" keyTimes="0;0.8;0.3;0.36;0.42;0.5;0.58;0.65;0.76;0.84;0.92;1" repeatCount="indefinite" type="rotate" values="-180 12 12;0 12 12;0 12 12;270 12 12;-90 12 12;0 12 12;-180 12 12;-35 12 12;-45 12 12;-110 12 12;-135 12 12;-180 12 12"/></path></mask></defs><g fill="currentColor"><path d="M0 0h24v24H0z" mask="url(#SVGfa7LP8so4)"/><circle cx="12" cy="12"><animate fill="freeze" attributeName="r" begin="1.1s" dur="0.3s" to="1"/></circle></g></svg>
</template>

CSS

.icon-compass-filled-loop {
  width: 24px;
  height: 24px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cdefs%3E%3Cmask%20id%3D%22SVGfa7LP8so4%22%3E%3Cpath%20fill%3D%22%23fff%22%20fill-opacity%3D%221%22%20stroke%3D%22%23fff%22%20stroke-dasharray%3D%2260%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%20d%3D%22M12%203c4.97%200%209%204.03%209%209c0%204.97%20-4.03%209%20-9%209c-4.97%200%20-9%20-4.03%20-9%20-9c0%20-4.97%204.03%20-9%209%20-9Z%22%20stroke-dashoffset%3D%220%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M10.2%2010.2l6.8%20-3.2l-3.2%206.8l-6.8%203.2Z%22%20transform%3D%22rotate(-180%2012%2012)%22%3E%3C%2Fpath%3E%3C%2Fmask%3E%3C%2Fdefs%3E%3Cg%20fill%3D%22currentColor%22%3E%3Cpath%20d%3D%22M0%200h24v24H0z%22%20mask%3D%22url(%23SVGfa7LP8so4)%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221%22%3E%3C%2Fcircle%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cdefs%3E%3Cmask%20id%3D%22SVGfa7LP8so4%22%3E%3Cpath%20fill%3D%22%23fff%22%20fill-opacity%3D%221%22%20stroke%3D%22%23fff%22%20stroke-dasharray%3D%2260%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%20d%3D%22M12%203c4.97%200%209%204.03%209%209c0%204.97%20-4.03%209%20-9%209c-4.97%200%20-9%20-4.03%20-9%20-9c0%20-4.97%204.03%20-9%209%20-9Z%22%20stroke-dashoffset%3D%220%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M10.2%2010.2l6.8%20-3.2l-3.2%206.8l-6.8%203.2Z%22%20transform%3D%22rotate(-180%2012%2012)%22%3E%3C%2Fpath%3E%3C%2Fmask%3E%3C%2Fdefs%3E%3Cg%20fill%3D%22currentColor%22%3E%3Cpath%20d%3D%22M0%200h24v24H0z%22%20mask%3D%22url(%23SVGfa7LP8so4)%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%221%22%3E%3C%2Fcircle%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
}

This icon is animated. Browsers do not run SVG animation inside a CSS mask, so the rule above uses a still of the drawn icon. Inline the SVG (or use the React/Vue/Svelte snippet) to keep the animation.

Direct links: SVG · download · JSON · https://iconsdb.app/api/v1/icon/line-md/compass-filled-loop.svg?color=%231a73e8&size=48