0.2.0 • Published 6 years ago

stl-part-viewer v0.2.0

Weekly downloads
5
License
MIT
Repository
github
Last release
6 years ago

npm version

\<stl-part-viewer>

A web component that displays an STL part file with three.js, Polymer 3, and LitHTML.

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 stl-part-viewer --save
# or
yarn add 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.

NameDescriptionDefault
srcLocation of the STL file you want the viewer to load
fullscreenText value of the full screen buttonFull Screen
backgroundcolorSet the background color of the scene; rgb(), hsl(), or X11 color string0xf1f1f1
floorcolorSet the floor plane color; rgb(), hsl(), or X11 color string0x666666
modelcolorSet the model color; rgb(), hsl(), or X11 color string0xfffe57

Polyfills Required

stl-part-viewer utilizes Custom Elements and Shadow DOM (Web Components), and Intersection Observer. As you can see in the table below, you'll need some polyfills to make use of this across a wide range of browsers.

Platform SupportChromeChrome for AndroidFirefoxSafariiOS SafariEdgeIE 11
Supported
Polyfill(s) Required--

Within your project, you can load them as such:

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