Subversion Repositories gelsvn

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
405 6079 d 5 h jab /trunk/doc/ I removed the little CGLA-usage document with a new one which is the beginning or real documentation.  
404 6080 d 1 h jab /trunk/ Small changes  
403 6080 d 1 h jab /trunk/apps/MeshEdit/ I added curvature visualization and made the Renderer interface much nicer.  
402 6081 d 5 h mkm /trunk/ CMake files updated after jab's changes.  
401 6083 d 7 h jab /trunk/ Some adjustments to the renderers.  
400 6084 d 17 h jab /trunk/ Some minor changes.  
399 6084 d 17 h jab /trunk/apps/MeshEdit/ VisObj which is responsible for drawing a single mesh in the MeshEdit application is now in its own file.
I have created a class hierarchy of renderers. This leads to a homogeneous way for drawing different appearances.
I have added some renderers: A reflection line renderer, an isophote renderer, a metallic renderer, and also
a gouraud renderer and a wireframe renderer. So far these are just for MeshEdit but could perhaps migrate to
GLGraphics.

The dual function in MeshEdit was made robust, but it will bite off a layer of polygons around any boundary.

Overall, the code is now much cleaner.
 
398 6086 d 1 h jab /trunk/apps/OBJViewer/ Wireframe drawing is now handled in GLGraphics  
397 6086 d 1 h jab /trunk/apps/MeshEdit/ I embedded the two shader programs used for drawing
harmonics and tweaked the code to provide generic
wireframe support.
 
396 6086 d 1 h jab /trunk/src/GLGraphics/ I have added the SinglePassWireFrameRenderer which is a
fast path for triangle meshes.
I have addedd the IDBufferWireframeRenderer which is
less fast but should handle anything.
draw has grown some functions for wireframe drawing,
but you will need to use IDBufferWireframeRenderer directly,
it keeps a lot of state and it is difficult to make a
convenience function.
 
394 6087 d 2 h jab /trunk/ Minor changes to the viewcontroller and the MeshEdit application  
392 6097 d 2 h jab /trunk/ Many mostly minor changes. The QuatTrackball and GLViewController had
some questionable code that I improved. Fixed a bug in the loader.
 
391 6097 d 2 h jab /trunk/apps/MeshEdit/ A number of changes were made, and the MeshEdit application now supports
almost all of the functions that operate on the Manifold objects.
 
390 6097 d 2 h mkm /trunk/ Minor changes in the CMake files - in order to put binaries into the right folders.  
389 6101 d 16 h jab /trunk/ minor changes  
388 6101 d 16 h jab /trunk/apps/MeshEdit/ MeshEdit now really works. It contains a simple console interface which
allows you to try out almost any of the functions in HMesh which modify
a Manifold: Smoothing, edge refinement, face refinement, triangulation of
polygons, optimization of triangulations, Garland Heckbert simplification,
and more.

It is not perfect however, the harmonics analysis which started the whole thing
only works for small meshes, and wireframe drawing simply does not work for
non-triangles. Moreover to be really useful it should provide for plugins.
 
387 6103 d 1 h jab /trunk/apps/MeshEdit/ I added a lot of editing functions already in GEL  
386 6104 d 2 h jab /trunk/apps/MeshEdit/ Added MeshEdit. So far it can only do harmonic analysis but more should be
added
 
385 6109 d 0 h jab /trunk/ CMakefiles included.

Note that exceptions were removed from Geometry/Polygonize.cpp since it did not play nice with visual studio 2005. An improved solution is needed so that the program does not just abort.
 
384 6109 d 0 h jab /trunk/GEL.xcodeproj/ minor change to the xcode framework - should perhaps not be under version control  
383 6109 d 0 h jab /trunk/src/HMesh/ Added ply load as well as a generic loader that detects file type  
382 6115 d 5 h jab /trunk/ a number of fixes  
381 6125 d 0 h jrf /trunk/src/Util/ trimming element names to make more robust  
380 6125 d 2 h jrf /trunk/src/ switching the XML parser to a process-while-reading strategy  
379 6125 d 3 h jab /trunk/src/LinAlg/ I added a function "EigenSolutionsSym" to LapackFunc.cpp. This is simply a veiled version of
the Lapack function dsyev that works with the CMatrix and CVector classes.
 
378 6125 d 3 h jab /trunk/test/LinAlg-eigensolver/ Added a test for the Lapack based routine for finding eigensolutions to dense symmetric real matrices.  
377 6125 d 5 h jrf /trunk/src/ making the XML parser more robust  
376 6128 d 0 h jrf /trunk/src/Util/ Changing buffer size  
375 6128 d 0 h jrf /trunk/src/ Adding a homebrewed XmlParser and bashing the Expat dependency!  
374 6128 d 1 h jrf /trunk/apps/OBJViewer/ reinserting texture toggle on/off  
373 6128 d 2 h jrf /trunk/ eliminating errors and warnings in VS 2005 compile  
372 6128 d 6 h jab /trunk/ Minor changes to draw and the Xcode project  
371 6128 d 6 h jab /trunk/src/Geometry/ Ply loading was added to this Directory. Two files rply.c and rply.h which
expose an MIT licensed ply handling API have been introduced as well as
a ply_load function declared in ply_load.h and defined in ply_load.cpp
 
370 6128 d 6 h jab /trunk/apps/OBJViewer/ First of all the wireframe drawing has been put in its own file. It is a shader
based feature (SM 4.0) and the shaders are inside the file as strings.

glsl_shader.cpp and glsl_shader.h were removed from this application and added
to GLGraphics in the GEL library. I wanted to do that for some time but it means that GEL becomes directly dependent on Glew. That is not a big issue though: GEL already depends on GL and GLEW is very easy to install.

I have added another ply loader (rply.c and rply.h) while ply.c and ply.h
were removed. The new one has the benefit of also loading binary ply files, but that is now all in the Geometry directory.

objview.cpp has been changed slightly. It now loads OBJ, PLY and X3D
 
369 6129 d 1 h jab /trunk/src/GLGraphics/ The SOIL - simple opengl image library is in the public domain. I added it to
GEL because it is much simpler to use and more compact than DevIL.
By including it in the actual GEL distribution, we also lower the number
of external dependencies by 1 while slightly increasing compilation time.
 
368 6130 d 0 h jrf /trunk/ Bruteforce wireframe rendering introduced in draw framework and OBJViewer. Texture toggle on/off introduced in OBJViewer.  
367 6158 d 2 h jab /trunk/ Slight changes to quadric simplification. I made the interface a little saner.  
366 6158 d 7 h jab /trunk/src/CGLA/ So a variable l has now been given a default value to protect against
warnings
 
365 6220 d 5 h jab /trunk/ minor changes.  
364 6235 d 19 h jrf /trunk/src/Geometry/ Corrections to have the ray tracer run properly in Visual Studio