@justinribeiro/stl-part-viewer

2.1.1 • Public • Published

npm version

<stl-part-viewer>

A web component that displays an STL model with three.js and Lit.

screenshot of stl-part-viewer

Features

  • Uses Intersection Observer to load STL files when only in the viewport.
  • Uses Intersection Observer to pause rendering of scene when viewer is not in viewport
  • Loads Binary and ASCII STL files
  • Built as a web component on Polymer 3 / LitElement

Install

This web component is built with Polymer 3 and ES modules in mind and is available on NPM:

Install stl-part-viewer:

npm i @justinribeiro/stl-part-viewer
# or
yarn add @justinribeiro/stl-part-viewer

After install, import into your project:

import 'stl-part-viewer';

Finally, use as required:

<stl-part-viewer src="part.stl"></stl-part-viewer>

Attributes

The web component allows certain attributes to be give a little additional flexibility.

Name Description Default
src Location of the STL file you want the viewer to load ``
fullscreen Text value of the full screen button Full Screen
backgroundcolor Set the background color of the scene; rgb(), hsl(), or X11 color string 0xf1f1f1
floorcolor Set the floor plane color; rgb(), hsl(), or X11 color string 0x666666
modelcolor Set the model color; rgb(), hsl(), or X11 color string 0xfffe57

Polyfills Required

stl-part-viewer utilizes Custom Elements and Shadow DOM (Web Components), and Intersection Observer. You may need the Lit polyfill-support depending on what you're trying to target.

Within your project, you can load them as such:

<script src="../node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js"></script>
<script src="../node_modules/lit/platform-support.js">
<script src="../node_modules/intersection-observer/intersection-observer.js"></script>

Package Sidebar

Install

npm i @justinribeiro/stl-part-viewer

Weekly Downloads

0

Version

2.1.1

License

MIT

Unpacked Size

126 kB

Total Files

13

Last publish

Collaborators

  • justinribeiro