Giter Site home page Giter Site logo

jadegeek / chill Goto Github PK

View Code? Open in Web Editor NEW

This project forked from shapeforge/chill

0.0 1.0 0.0 44.94 MB

Chill, node editor

License: GNU General Public License v3.0

CMake 1.31% C++ 49.24% C 28.23% Lua 1.17% Makefile 0.68% HTML 18.11% Roff 0.46% CSS 0.42% Batchfile 0.07% PostScript 0.31%

chill's Introduction

ChiLL, the node-based editor for IceSL

ChiLL banner

What is Chill?

Chill is a node-based editor for IceSL, the Modeler and Slicer.

Created by members of the team behind IceSL, ChiLL aims to provide a Visual Programming interface for IceSL.

Because IceSL offers the possibility to directly create models using Lua scripting, ChiLL provide a way to create those modeling scripts using an approach based on Visual Programming. No need to code or learn the scripting language!

Note ChiLL is easily extendable, all nodes are IceSL scripts themselves.

How to install ChiLL?

Note First and foremost, install IceSL. Once this is done, you have everything required to run a pre-build version of Chill!

Pre-build versions

For both Windows and Linux based systems, ChiLL is available as a .zip containing pre-build executables and nodes to provide a quick start!

Installers

On Windows

For Windows users, .msi installer is available.

On Linux

For Linux users, a .deb is available for Debian-based distributions.

From Source

ChiLL can also be used direcly from the source code, by building and compiling the project manually. To do so, please see the section below.

How to build ChiLL?

To build ChiLL, you will need the following components installed on your computer:

  • git
  • CMake
  • C++ 17 standard libraries
  • Any IDE supporting C++ (on windows, Visual Studio is recommended)

Once the required components installed, you can fetch the source code by cloning or downloading a .zip of the source files.

git clone https://github.com/shapeforge/Chill.git

Initialize and fetch the submodules dependencies.

git submodule update --init --recursive

git submodule update --recursive --remote 	# with git 1.8.2 or above
# or
git submodule update --recursive			# with git 1.7.3 or above

Then you can, if you want, fetch the latest changes of each submodule.

git pull --recurse-submodules

You can now build the project for your IDE of choice using CMAKE, and then compile.

How to Use ChiLL?

Once ChiLL is opened -- and IceSL alongside it -- a menu containing the different nodes is displayed in the left side-bar of ChiLL.

You can also access the nodes by doing a right-click on the working space.

Nodes Menu

To create a graph, start by creating a new node on the workspace, using the nodes menu..

Using an input-node

You can now create an emit-node and link the nodes.

To do this click and drag a link from the output of the first node to the input of the second node.

Linking nodes

At launch time, ChiLL opens IceSL to produce a preview of the geometry generated by the nodes. You can modify the parameters of any node interactively by typing or dragging values. The modifications are immediately reflected in the preview of the object rendered in IceSL.

Live preview with IceSL

You can then save the produced graph for later use, or you can export it as a .lua file tailored for IceSL.

How to contribute to ChiLL?

New features or reworking the project

Create your own fork of the project, and submit a pull request.

Note When contributing using a pull request, don't hesitate to be precise in the description of your contribution, and don't forget to document what you did. It will greatly help us to integrate your changes!

Bug reports and feature requests

If you encounter a bug, or have an idea for a new feature, please fill an issue so we can discuss about it.

Note Please be as precise as possible when filling an issue. For bug reports, please join some scripts/files that reproduce the problem. Using a label on your Issue will greatly help us tracking and processing them.

C++ Style Guide

You can follow the Google C++ Style Guide for new code.

Credits

Developpers:

Logos:

Acknowledgments:

Special thanks to the IceSL devs and in particular Salim Perchy [@ysperchy] for his help!

ChiLL initial development was supervised by Sylvain Lefebvre [@sylefeb]. It is inspired by an earlier prototype by Jean Hergel [@jhergel].

Feel free to join us in improving ChiLL!

External libraries and tools used:

Funding:

ChiLL initial development was mainly supported by the ERC ShapeForge (StG-2012-307877) and Inria.

chill's People

Contributors

phazon54 avatar judepom avatar sylefeb avatar czanni avatar

Watchers

James Cloos 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.