1.0.36 • Published 3 years ago

three-js-editor-react-2 v1.0.36

Weekly downloads
-
License
MIT
Repository
-
Last release
3 years ago

three-js-editor-react-2

What is this project about?

This is a react component for using ThreeJsEditor inside React. https://github.com/mrdoob/three.js/tree/master/editor


Beta version

This package is at its beta stage. It may break with updates, so please be careful.

Installation

npm install three-js-editor-react-2

yarn add three-js-editor-react-2

Usage

import {
  ThreeJsEditor,
  ObjectLoaderFunctionType,
  ClearEditorFunctionType,
} from 'three-js-editor-react-2';
import axios from 'axios';

const ThreeJsEditorPage = () => {
  const [objectLoaderFunction, setObjectLoaderFunction] =
    useState<null | ObjectLoaderFunctionType>(null);

  const [clearEditorFunction, setClearEditorFunction] =
    useState<null | ClearEditorFunctionType>(null);

  // the loader function will then be available in a state variable
  console.log(objectLoaderFunction);

  // example usage of objectLoaderFunction
  const loadObjectByUrl = (objectUrl: string) => {
    axios({
      url: objectUrl,
      method: 'GET',
      responseType: 'blob',
    }).then((response) => {
      const file = new File([response.data], 'filename.gltf');
      objectLoaderFunction!([file]);
    });
  };

  const _setObjectLoaderFunction = (newFunction: ObjectLoaderFunctionType) => {
    setObjectLoaderFunction(() => newFunction);
  };

  const _setClearEditorFunction = (newFunction: ClearEditorFunctionType) => {
    setClearEditorFunction(() => newFunction);
  };

  return (
    <div>
      <ThreeJsEditor
        menubarCallbacks={{
          fileCallbacks: {
            exportGLTFCallback: (jsonText: string) => {
              console.log('jsonText', jsonText); // the current gltf scene in string format
            },
          },
        }}
        setObjectLoaderFunction={_setObjectLoaderFunction}
        setClearEditorFunction={_setClearEditorFunction}
      />
    </div>
  );
};

Code management

There's little to no code management for now, any suggestions are welcome.

Not supported

  • It doesn't support Scripts due to Codemirror, Acorn, TernServer dependencies for now.
1.0.36

3 years ago

1.0.35

3 years ago

1.0.34

3 years ago

1.0.33

3 years ago

1.0.32

3 years ago

1.0.31

3 years ago

1.0.30

3 years ago

1.0.29

3 years ago

1.0.28

3 years ago

1.0.27

3 years ago

1.0.26

4 years ago

1.0.25

4 years ago

1.0.24

4 years ago

1.0.23

4 years ago

1.0.22

4 years ago

1.0.21

4 years ago

1.0.20

4 years ago

1.0.19

4 years ago

1.0.18

4 years ago

1.0.17

4 years ago

1.0.16

4 years ago

1.0.15

4 years ago

1.0.14

4 years ago

1.0.13

4 years ago

1.0.12

4 years ago

1.0.11

4 years ago

1.0.10

4 years ago

1.0.9

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago