Git Product home page Git Product logo

adcb4321 / web-3d-model-viewer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wx-chevalier/ts-3d-model-viewer

0.0 0.0 0.0 62.88 MB

整合了 google-model-viewer/WebGL/Three.js/WASM 等一系列 3D 模型(STL/OBJ/GLTF/PLY/STEP/X_T)预览工具,便捷地进行模型预览、生成截图、计算拓扑信息。支持 Blender 进行模型压缩优化,提供了基于 Web 的简单 CAD 在线排版操作。

Home Page: https://ng-tech.icu/

License: MIT License

JavaScript 43.57% TypeScript 4.11% HTML 0.46% CSS 0.21% Shell 11.13% Less 0.01% Makefile 1.15% Roff 0.08% C 1.73% M4 0.03% C++ 0.04% Python 0.52% COBOL 6.91% Go 0.43% Dockerfile 0.03% Rust 29.59% GLSL 0.02%

web-3d-model-viewer's Introduction

Contributors Forks Stargazers Issues MIT License


Logo

@m-fe/react-model-viewer

STL 3D 预览
Explore the docs »

View Demo · Report Bug · Request Feature

Introduction

整合了 google-model-viewer 等一系列 3D 模型预览工具,便捷地进行模型预览、生成截图、计算拓扑信息。

模板来自于 m-fe-libs

WebGLViewer 截图

Getting Started

To get a local copy up and running follow these simple steps.

Installation

Install NPM packages

npm install @m-fe/react-model-viewer
# or
yarn add @m-fe/react-model-viewer

Usage

GoogleModelViewer

Add the <model-viewer>

<script type="module" src="https://unpkg.com/@google/model-viewer/dist/model-viewer.js"></script>
<script nomodule src="https://unpkg.com/@google/model-viewer/dist/model-viewer-legacy.js"></script>
import * as React from "react";

import { GoogleModelViewer } from "@m-fe/react-model-viewer";

export default function Simple() {
  return (
    <div>
      <GoogleModelViewer
        key="1"
        type="gltf"
        src="https://cdn.glitch.com/36cb8393-65c6-408d-a538-055ada20431b/Astronaut.glb?1542147958948"
      />
      <GoogleModelViewer
        key="2"
        type="stl"
        src="https://ufc-assets.oss-cn-shanghai.aliyuncs.com/test/pr2_head_pan.stl"
        onTopology={(m) => {
          console.log(m);
        }}
      />
    </div>
  );
}

WebGLViewer

<WebGLViewer
  key="33"
  type="stl"
  src="/error.stl"
  width={600}
  height={400}
  onTopology={(m) => {
    // console.log(m);
  }}
  onZip={(b) => {
    // 执行解压缩
    const modelArray: Uint8Array = pako.inflate(new Uint8Array(b));
    console.log(modelArray);
  }}
  onError={(err) => {
    console.log(err);
  }}
/>

WasmViewer

About

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Acknowledgements

  • Awesome-Lists: 📚 Guide to Galaxy, curated, worthy and up-to-date links/reading list for ITCS-Coding/Algorithm/SoftwareArchitecture/AI. 💫 ITCS-编程/算法/软件架构/人工智能等领域的文章/书籍/资料/项目链接精选。

  • Awesome-CS-Books: 📚 Awesome CS Books/Series(.pdf by git lfs) Warehouse for Geeks, ProgrammingLanguage, SoftwareEngineering, Web, AI, ServerSideApplication, Infrastructure, FE etc. 💫 优秀计算机科学与技术领域相关的书籍归档。

  • UZIP.js #Project#: Simple ZIPping library for Javascript.

Viewer

  • webgl-3d-viewer #Project#

  • 参考设计:Sketchfab

  • xeogl #Project#: xeogl is a data-driven WebGL-based engine created by xeolabs for 3D visualization in the browser without using plugins.

  • Foxtrot #Project#: Foxtrot is a fast viewer for STEP files, a standard interchange format for mechanical CAD. It is an experimental project built from the ground up, including new libraries for parsing and triangulation.

  • f3d #Project#: A fast and minimalist 3D viewer.

  • mayo #Project#: 3D CAD viewer and converter based on Qt + OpenCascade

  • Online3DViewer #Project#: A free and open source web solution to visualize and explore 3D models right in your browser.

Optimizer

Studio

  • jsketcher #Project#: JS.Sketcher is a parametric 2D and 3D CAD modeler written in pure javascript.

  • JSCAD #Project#: JSCAD (formally know as OpenJSCAD) provides a programmer’s approach to develop 3D models. In particular, this functionality is tuned towards creating precise models for 3D printing.

  • meshy #Project#: Slicing, measurements, transformations, and visualizations on polygon meshes.

  • CascadeStudio #Project#: A Full Live-Scripted CAD Kernel and IDE in the Browser.

Copyright & More | 延伸阅读

笔者所有文章遵循知识共享 署名 - 非商业性使用 - 禁止演绎 4.0 国际许可协议,欢迎转载,尊重版权。您还可以前往 NGTE Books 主页浏览包含知识体系、编程语言、软件工程、模式与架构、Web 与大前端、服务端开发实践与工程架构、分布式基础架构、人工智能与深度学习、产品运营与创业等多类目的书籍列表:

NGTE Books

web-3d-model-viewer's People

Contributors

wx-chevalier avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.