Skip to content

Commit 9c133ae

Browse files
committed
Initial commit
0 parents  commit 9c133ae

32 files changed

+6907
-0
lines changed

.gitignore

+144
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
# Created by https://www.gitignore.io
2+
3+
### C++ ###
4+
# Compiled Object files
5+
*.slo
6+
*.lo
7+
*.o
8+
*.obj
9+
10+
# Precompiled Headers
11+
*.gch
12+
*.pch
13+
14+
# Compiled Dynamic libraries
15+
*.so
16+
*.dylib
17+
*.dll
18+
19+
# Fortran module files
20+
*.mod
21+
22+
# Compiled Static libraries
23+
*.lai
24+
*.la
25+
*.lib
26+
27+
# Executables
28+
*.exe
29+
*.out
30+
*.app
31+
32+
33+
### Qt ###
34+
# C++ objects and libs
35+
36+
*.slo
37+
*.lo
38+
*.o
39+
*.a
40+
*.la
41+
*.lai
42+
*.so
43+
*.dll
44+
*.dylib
45+
46+
# Qt-es
47+
48+
/.qmake.cache
49+
/.qmake.stash
50+
*.pro.user
51+
*.pro.user.*
52+
*.moc
53+
moc_*.cpp
54+
qrc_*.cpp
55+
ui_*.h
56+
Makefile*
57+
*-build-*
58+
59+
# QtCreator
60+
61+
*.autosave
62+
63+
#QtCtreator Qml
64+
*.qmlproject.user
65+
*.qmlproject.user.*
66+
67+
68+
### Linux ###
69+
*~
70+
71+
# KDE directory preferences
72+
.directory
73+
74+
75+
### OSX ###
76+
.DS_Store
77+
.AppleDouble
78+
.LSOverride
79+
80+
# Icon must end with two \r
81+
Icon
82+
83+
84+
# Thumbnails
85+
._*
86+
87+
# Files that might appear on external disk
88+
.Spotlight-V100
89+
.Trashes
90+
91+
# Directories potentially created on remote AFP share
92+
.AppleDB
93+
.AppleDesktop
94+
Network Trash Folder
95+
Temporary Items
96+
.apdisk
97+
98+
99+
### C ###
100+
# Object files
101+
*.o
102+
*.ko
103+
*.obj
104+
*.elf
105+
106+
# Precompiled Headers
107+
*.gch
108+
*.pch
109+
110+
# Libraries
111+
*.lib
112+
*.la
113+
*.lo
114+
115+
# Shared objects (inc. Windows DLLs)
116+
*.dll
117+
*.so
118+
*.so.*
119+
*.dylib
120+
121+
# Executables
122+
*.exe
123+
*.out
124+
*.app
125+
*.i*86
126+
*.x86_64
127+
*.hex
128+
129+
130+
### SublimeText ###
131+
# cache files for sublime text
132+
*.tmlanguage.cache
133+
*.tmPreferences.cache
134+
*.stTheme.cache
135+
136+
# workspace files are user-specific
137+
*.sublime-workspace
138+
139+
# project files should be checked into the repository, unless a significant
140+
# proportion of contributors will probably not be using SublimeText
141+
# *.sublime-project
142+
143+
# sftp configuration file
144+
sftp-config.json

License.txt

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
Copyright (C) 2014 Di Zhang and Mete Yurtoglu
2+
3+
This software is provided 'as-is', without any express or implied
4+
warranty. In no event will the authors be held liable for any damages
5+
arising from the use of this software.
6+
7+
Permission is granted to anyone to use this software for any purpose,
8+
including commercial applications, and to alter it and redistribute it
9+
freely, subject to the following restrictions:
10+
11+
1. The origin of this software must not be misrepresented; you must not
12+
claim that you wrote the original software. If you use this software
13+
in a product, an acknowledgement in the product documentation would be
14+
appreciated but is not required.
15+
2. Altered source versions must be plainly marked as such, and must not be
16+
misrepresented as being the original software.
17+
3. This notice may not be removed or altered from any source distribution.

PhysicsSystem.pro

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
#-------------------------------------------------
2+
#
3+
# Project created by QtCreator 2014-11-26T13:10:50
4+
#
5+
#-------------------------------------------------
6+
7+
QT += core gui opengl
8+
9+
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
10+
11+
TARGET = PhysicsSystem
12+
TEMPLATE = app
13+
14+
15+
SOURCES += main.cpp\
16+
mainwindow.cpp \
17+
glwidget.cpp \
18+
addtetdialog.cpp \
19+
editobjdialog.cpp \
20+
particlesystem.cpp \
21+
objvertexsystem.cpp \
22+
particle.cpp \
23+
editskeletondialog.cpp \
24+
simoptionsdialog.cpp \
25+
editsystemdialog.cpp
26+
27+
HEADERS += mainwindow.hpp \
28+
glwidget.hpp \
29+
vec.hpp \
30+
addtetdialog.hpp \
31+
editobjdialog.hpp \
32+
particlesystem.hpp \
33+
objvertexsystem.hpp \
34+
particle.hpp \
35+
editskeletondialog.hpp \
36+
simoptionsdialog.hpp \
37+
editsystemdialog.hpp
38+
39+
FORMS += mainwindow.ui \
40+
addtetdialog.ui \
41+
editobjdialog.ui \
42+
editskeletondialog.ui \
43+
simoptionsdialog.ui \
44+
editsystemdialog.ui
45+
46+
CONFIG += c++11
47+
48+
49+
macx {
50+
INCLUDEPATH += /opt/local/include
51+
LIBS += -framework GLUT
52+
LIBS += -L/opt/local/lib -lassimp
53+
}
54+
55+
56+
unix:!macx {
57+
LIBS += -lglut -lGL -lGLU -lassimp
58+
}
59+
60+
61+
OTHER_FILES += \
62+
.gitignore \
63+
License.txt \
64+
README.md

README.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
## ModelsToLife
2+
3+
### About
4+
5+
This software project is written by Di Zhang and Mete Yurtoglu in C++ using the [Qt framework](http://www.qt.io). It also uses [Open Asset Import Library](http://assimp.sourceforge.net) to import models into it. It can also accept .node and .ele files output from [TetGen](http://wias-berlin.de/software/tetgen/) for tetrahedralization purposes.
6+
7+
### Description
8+
9+
ModelsToLife brings models to life by putting a mass-spring-damper particle system around the objects to be manipulated. It has gravity and collision for dropping objects. Individual nodes can also be picked and manipulated. There is also support for skeleton building and for skeletal manipulation. All these effects can be simulated under different conditions using sliders to set the gravity, the stiffness of the springs, etc.

0 commit comments

Comments
 (0)