engine-filled from Material Line Icons by Vjacheslav Trushkin · Line · Automotive · animated · MIT Free for personal and commercial use.

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

More automotive icons from Material Line Icons

Use the engine filled icon

SVG

<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path fill="currentColor" fill-opacity="0" stroke-dasharray="42" d="M11 9h6v10h-6.5l-2 -2h-2.5v-6.5l1.5 -1.5Z"><animate fill="freeze" attributeName="stroke-dashoffset" dur="0.5s" values="42;0"/><animate fill="freeze" attributeName="fill-opacity" begin="1.3s" dur="0.4s" to="1"/></path><g fill="none"><path d="M17 13h4v-3h1v8h-1v-3h-4Z" opacity="0"><set fill="freeze" attributeName="opacity" begin="0.6s" to="1"/><animate fill="freeze" attributeName="d" begin="0.6s" dur="0.2s" values="M17 13h0v-3h0v8h0v-3h0Z;M17 13h4v-3h1v8h-1v-3h-4Z"/></path><path d="M6 14h-4M2 11v6" opacity="0"><set fill="freeze" attributeName="opacity" begin="0.8s" to="1"/><animate fill="freeze" attributeName="d" begin="0.8s" dur="0.2s" values="M6 14h0M6 11v6;M6 14h-4M2 11v6"/></path><path d="M11 9v-4M8 5h6" opacity="0"><set fill="freeze" attributeName="opacity" begin="1s" to="1"/><animate fill="freeze" attributeName="d" begin="1s" dur="0.2s" values="M11 9v0M8 9h6;M11 9v-4M8 5h6"/></path></g></g></svg>

React

import type { SVGProps } from "react";

export function LineMdEngineFilled(props: SVGProps<SVGSVGElement>) {
  return (
    <svg {...props} xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2"><path fill="currentColor" fillOpacity="0" strokeDasharray="42" d="M11 9h6v10h-6.5l-2 -2h-2.5v-6.5l1.5 -1.5Z"><animate fill="freeze" attributeName="strokeDashoffset" dur="0.5s" values="42;0"/><animate fill="freeze" attributeName="fillOpacity" begin="1.3s" dur="0.4s" to="1"/></path><g fill="none"><path d="M17 13h4v-3h1v8h-1v-3h-4Z" opacity="0"><set fill="freeze" attributeName="opacity" begin="0.6s" to="1"/><animate fill="freeze" attributeName="d" begin="0.6s" dur="0.2s" values="M17 13h0v-3h0v8h0v-3h0Z;M17 13h4v-3h1v8h-1v-3h-4Z"/></path><path d="M6 14h-4M2 11v6" opacity="0"><set fill="freeze" attributeName="opacity" begin="0.8s" to="1"/><animate fill="freeze" attributeName="d" begin="0.8s" dur="0.2s" values="M6 14h0M6 11v6;M6 14h-4M2 11v6"/></path><path d="M11 9v-4M8 5h6" opacity="0"><set fill="freeze" attributeName="opacity" begin="1s" to="1"/><animate fill="freeze" attributeName="d" begin="1s" dur="0.2s" values="M11 9v0M8 9h6;M11 9v-4M8 5h6"/></path></g></g></svg>
  );
}

Vue

<template>
  <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path fill="currentColor" fill-opacity="0" stroke-dasharray="42" d="M11 9h6v10h-6.5l-2 -2h-2.5v-6.5l1.5 -1.5Z"><animate fill="freeze" attributeName="stroke-dashoffset" dur="0.5s" values="42;0"/><animate fill="freeze" attributeName="fill-opacity" begin="1.3s" dur="0.4s" to="1"/></path><g fill="none"><path d="M17 13h4v-3h1v8h-1v-3h-4Z" opacity="0"><set fill="freeze" attributeName="opacity" begin="0.6s" to="1"/><animate fill="freeze" attributeName="d" begin="0.6s" dur="0.2s" values="M17 13h0v-3h0v8h0v-3h0Z;M17 13h4v-3h1v8h-1v-3h-4Z"/></path><path d="M6 14h-4M2 11v6" opacity="0"><set fill="freeze" attributeName="opacity" begin="0.8s" to="1"/><animate fill="freeze" attributeName="d" begin="0.8s" dur="0.2s" values="M6 14h0M6 11v6;M6 14h-4M2 11v6"/></path><path d="M11 9v-4M8 5h6" opacity="0"><set fill="freeze" attributeName="opacity" begin="1s" to="1"/><animate fill="freeze" attributeName="d" begin="1s" dur="0.2s" values="M11 9v0M8 9h6;M11 9v-4M8 5h6"/></path></g></g></svg>
</template>

CSS

.icon-engine-filled {
  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%3Cg%20stroke%3D%22currentColor%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%3E%3Cpath%20fill%3D%22currentColor%22%20fill-opacity%3D%221%22%20stroke-dasharray%3D%2242%22%20d%3D%22M11%209h6v10h-6.5l-2%20-2h-2.5v-6.5l1.5%20-1.5Z%22%20stroke-dashoffset%3D%220%22%3E%3C%2Fpath%3E%3Cg%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M17%2013h4v-3h1v8h-1v-3h-4Z%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M6%2014h-4M2%2011v6%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M11%209v-4M8%205h6%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3C%2Fg%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%3Cg%20stroke%3D%22currentColor%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%3E%3Cpath%20fill%3D%22currentColor%22%20fill-opacity%3D%221%22%20stroke-dasharray%3D%2242%22%20d%3D%22M11%209h6v10h-6.5l-2%20-2h-2.5v-6.5l1.5%20-1.5Z%22%20stroke-dashoffset%3D%220%22%3E%3C%2Fpath%3E%3Cg%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M17%2013h4v-3h1v8h-1v-3h-4Z%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M6%2014h-4M2%2011v6%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3Cpath%20d%3D%22M11%209v-4M8%205h6%22%20opacity%3D%221%22%3E%3C%2Fpath%3E%3C%2Fg%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/engine-filled.svg?color=%231a73e8&size=48