Théophile Bastian
97966377f5
Merge commit 'cf0d7af'
2018-02-12 13:40:49 +01:00
Théophile Bastian
cf0d7af712
Refactor code in prevision of hints support
2018-02-12 13:38:50 +01:00
Rémi Oudin
247528fe63
Horizontal drift
2018-02-12 13:19:56 +01:00
Rémi Oudin
21ee9ff0e6
Add min height for ball
2018-02-12 12:09:39 +01:00
Rémi Oudin
0f70e4e023
keep track of initial radius, for deformation
2018-02-12 12:08:50 +01:00
Rémi Oudin
19cb1eb343
min_height for bounce as a parameter
2018-02-12 12:06:44 +01:00
Rémi Oudin
e80becdaee
A ball has a min heihgt (for deformation)
2018-02-12 11:38:46 +01:00
Rémi Oudin
9e605b0fec
Center is an attribute of ImplicitSurface.
...
This way the search space for Marching Cubes is way smaller.
2018-02-12 11:37:38 +01:00
Rémi Oudin
1e059742f4
Better number of iterations
2018-02-12 10:50:45 +01:00
Rémi Oudin
61933b9b78
A height shouldn't be negative.
2018-02-12 10:48:26 +01:00
Rémi Oudin
dfbaa80e03
Debug of the physical model
2018-02-12 10:21:49 +01:00
Rémi Oudin
d600f51a3a
Update makefile with my .o files
2018-02-12 01:27:16 +01:00
Rémi Oudin
e1c759e429
Operator should be const
2018-02-12 01:26:51 +01:00
Rémi Oudin
a824763e3b
Merge commit
2018-02-12 01:20:05 +01:00
Rémi Oudin
1dff2ab839
test for a ball
2018-02-12 01:12:31 +01:00
Rémi Oudin
006d2de34a
Stream operator for Ball
2018-02-12 01:11:23 +01:00
Théophile Bastian
d1d2811978
Enhance test for marching cubes
2018-02-12 00:56:35 +01:00
Théophile Bastian
c527ecc611
Marching: various fixes
2018-02-12 00:34:41 +01:00
Rémi Oudin
80f0e96acf
Horizontal bounces.
2018-02-11 22:42:15 +01:00
Théophile Bastian
0e026ccad1
Marching: fix static integration process
2018-02-11 20:39:59 +01:00
Théophile Bastian
52ca47cde6
Marching: add test implicit surface and main
...
The test surface is the sphere TestImplicitSphere
2018-02-11 20:23:21 +01:00
Théophile Bastian
4a3a1b9d76
Fix: ImplicitSurface.operator() is pure virtual
2018-02-11 20:19:26 +01:00
Théophile Bastian
8d11d49b81
Marching: add compilation process
...
Also fix minor bugs
2018-02-11 18:34:00 +01:00
Théophile Bastian
3100ef520f
Marching: implement algorithm, still untested
2018-02-11 17:54:44 +01:00
Rémi Oudin
22e24258cd
Add a vertical plan collision
2018-02-11 17:29:56 +01:00
Rémi Oudin
98fe6ebc12
s/ellipsoid/spheroid
2018-02-11 17:29:17 +01:00
Théophile Bastian
998c77f643
Marching: add dichitomic search of intersection
2018-02-11 16:46:55 +01:00
Théophile Bastian
4804309182
Marching: write C++ data structures
2018-02-11 14:50:41 +01:00
Rémi Oudin
9ef21a2dc9
Update spheroid if conflict with a plan at a given height.
2018-02-09 20:23:06 +01:00
Théophile Bastian
62730a03b4
March gen: add some testing and viz capabilities
...
This allows to visualize easily a generated configuration, thus allowing
testing
2018-02-09 20:07:54 +01:00
Théophile Bastian
fc2f17b453
March gen: refactor for easier testing
2018-02-09 20:07:38 +01:00
Théophile Bastian
f15151ff57
March gen: refactor for easier testing
2018-02-09 01:52:00 +01:00
Théophile Bastian
0f60c717f0
March gen: symmetries do not seem to be needed
...
This would be backed by the base cases 10 and 15 being the same up to
planar symmetry with a plane of normal vector x.
2018-02-09 01:39:49 +01:00
Théophile Bastian
b5ae4b5463
March generator: fix pretty printing
...
Fix various display/valid C++ generation problems.
2018-02-09 01:31:18 +01:00
Théophile Bastian
65cb03487d
March generator: enhance error handling
2018-02-09 01:31:18 +01:00
Théophile Bastian
1dece061a3
march generator: add reverse activated points
2018-02-09 01:31:06 +01:00
Théophile Bastian
39d12ef8a4
Marching cubes: tentative configurations generator
...
First attempt to generate the configurations of the marching cubes
algorithm, following naively the definition — using the 15 base cases
and generating all rotations and symmetries. This implementation does
not try to be parcimonious, it bruteforces the configurations, since the
search space is quite small anyway.
The plan is to implement a python generator that outputs a valid .cpp
file containing the pre-computed (at compile time) array for
configurations.
2018-02-09 00:29:16 +01:00
Théophile Bastian
776303b18d
Make operator() const for implicit surfaces
2018-02-08 12:22:19 +01:00
Théophile Bastian
8b98f373bc
Add a context to implement marching cubes
2018-02-07 18:00:48 +01:00
Théophile Bastian
4e41e88462
Add a cuboid structure
2018-02-07 18:00:48 +01:00
Théophile Bastian
6c095dba0b
Fix missing semicolon
2018-02-07 17:57:49 +01:00
Rémi Oudin
bf3232d790
Fix -Wreorder warnings
2018-02-07 15:18:53 +01:00
Rémi Oudin
522ab7be39
Raw implementation of a Ball
2018-02-07 15:08:16 +01:00
Rémi Oudin
e76974204d
s/ellipsoid/spheroid + implementation of operator()
2018-02-07 15:07:59 +01:00
Théophile Bastian
b614979c7a
GlutRender.cpp: fix tab indentation
2018-02-06 22:15:35 +01:00
Théophile Bastian
7e797980ac
Enable depth buffering
2018-02-06 22:15:19 +01:00
Théophile Bastian
ae95da9cd8
Fancify scene, adding a tet
2018-02-06 21:29:32 +01:00
Théophile Bastian
66d6d89aeb
Randomizing face colour for each face
...
Allows to easily identify each face.
2018-02-06 21:26:18 +01:00
Théophile Bastian
6e89298950
Use mesh center everywhere else
2018-02-06 21:08:37 +01:00
Théophile Bastian
8655e39fba
Add center to a mesh to allow easy translation
2018-02-06 20:45:23 +01:00