• Stars
    star
    1,286
  • Rank 36,580 (Top 0.8 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 8 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

โœ๏ธ A React Component for plans design. Draw a 2D floorplan and navigate it in 3D mode.

react-planner

react-planner is a React component which can be used to draw model buildings. Drag & drop from a catalog of customizable and ready-to-use objects, you can start from 2D wireframes and land on 3D models. As a developer you can provide your users with new objects by adding them to the catalog.

npm javascript react-version

Demo

Demo

react-planner

Usage

import React from 'react';
import ReactDOM from 'react-dom';
import {Map} from 'immutable';
import {createStore} from 'redux';
import {Provider} from 'react-redux';

//download this demo catalog https://github.com/cvdlab/react-planner/tree/master/demo/src/catalog
import MyCatalog from './catalog/mycatalog';

import {
  Models as PlannerModels,
  reducer as PlannerReducer,
  ReactPlanner,
  Plugins as PlannerPlugins,
} from 'react-planner';


//define state
let AppState = Map({
  'react-planner': new PlannerModels.State()
});

//define reducer
let reducer = (state, action) => {
  state = state || AppState;
  state = state.update('react-planner', plannerState => PlannerReducer(plannerState, action));
  return state;
};

let store = createStore(reducer, null, window.devToolsExtension ? window.devToolsExtension() : f => f);

let plugins = [
  PlannerPlugins.Keyboard(),
  PlannerPlugins.Autosave('react-planner_v0'),
  PlannerPlugins.ConsoleDebugger(),
];

//render
ReactDOM.render(
  (
    <Provider store={store}>
      <ReactPlanner
        catalog={MyCatalog}
        width={800}
        height={600}
        plugins={plugins}
        stateExtractor={state => state.get('react-planner')}
      />
    </Provider>
  ),
  document.getElementById('app')
);

Docs

Authors

Developed @ CVDLAB

Contributing

Your contributions (issues and pull request) are very appreciated!

Contributors

License

MIT

More Repositories

1

plasm.js

JavaScript Programming Language for Solid Modeling
JavaScript
47
star
2

LinearAlgebraicRepresentation.jl

Official repository of the package LAR for Julia.
Julia
39
star
3

nn-segmentation-for-lar

Neural networks to segment some type of biomedical images
Python
21
star
4

plasm

JavaScript Programming Language for Solid Modeling
JavaScript
11
star
5

simplexn.js

dimension-independent geometric kernel based on simplicial complex
JavaScript
11
star
6

lar

Linear algebraic representation framework
JavaScript
10
star
7

react-planner-mobile

JavaScript
8
star
8

walle

A visual wall editor
JavaScript
7
star
9

three

Three.js component
JavaScript
6
star
10

line-segments-intersections

An implementation of the Bentleyโ€“Ottmann sweep line algorithm for detecting crossings in a set of line segments.
JavaScript
6
star
11

Triangle.jl

A Julia interface to Jonathan Richard Shewchuk's Triangle library.
Julia
5
star
12

lar-cc-js

JavaScript
5
star
13

plasm-fun

JavaScript functional PLaSM
JavaScript
4
star
14

lar-demo

Linear Algebraic Representation demo
JavaScript
3
star
15

line-segments-intersections-cpp

C++
3
star
16

lar-cc

Linear Algebraic Representation to Compute with Cellular (Co)Chains
TeX
3
star
17

f

JavaScript functional library
JavaScript
3
star
18

ViewerGL.jl

Julia's OpenGL visualization of 3D models
Julia
3
star
19

simplexn

JavaScript dimension-independent geometric kernel based on simplicial complex
JavaScript
3
star
20

LAR.jl

Julia
2
star
21

lar-running-demo

Set of scripts to run a lar demo session to extract models from images.
Python
2
star
22

vectorn

JavaScript dimension-independent vector library
JavaScript
2
star
23

SolidGeometry

Official repo for CSG (Constructive Solid Geometry) with LAR (LinearAlgebraicRepresentation)
Julia
2
star
24

visigrapp17

TeX
2
star
25

matrixn

JavaScript dimension-independent Matrix library
JavaScript
2
star
26

larpy

Linear Algebraic Representation in Python
Python
2
star
27

x-project-paper

x-project short paper to be submitted to DocEng2015
PostScript
1
star
28

iccvm2016

iccvm 2016 paper
PostScript
1
star
29

showdown

Markdown to Slide Show
JavaScript
1
star
30

website

CVDLAB website
JavaScript
1
star
31

stag2015

STAG 2015 paper
PostScript
1
star
32

lar-surf

paper about surface extraction from 3D images
TeX
1
star
33

cvdlab.org

http://cvdlab.org
JavaScript
1
star
34

doceng2015

ACM DocEng2015 paper
PostScript
1
star
35

three.js

Three.js for Bower
JavaScript
1
star
36

path3d-demo

Path3D project demo
JavaScript
1
star
37

larcc

Linear Algebraic Representation for Computing with Cochains
TeX
1
star
38

svg2lines

Transform simplified SVGs to `.lines` exchange file format
HTML
1
star
39

plasm-boilerplate

PLaSM boilerplate
Perl
1
star