summaryrefslogtreecommitdiff
path: root/meme
AgeCommit message (Collapse)AuthorFilesLines
2014-09-27meme/gui.c, README: keep track of last mouse position; + and - keys zoom in/outWerner Almesberger2-7/+35
2014-09-27meme/gui.c (button_event): move zoom in/out to separate functionsWerner Almesberger1-18/+30
2014-09-27meme/gui.c (button_event, clear_markers), README: right-click clears both ↵Werner Almesberger2-1/+12
markers
2014-09-17meme/README: document the "e" now shows contoursWerner Almesberger1-4/+5
2014-09-17meme/gui.c (surface_draw): draw contour for equality (more precise), change ↵Werner Almesberger1-12/+106
color to purple
2014-09-17meme/README: document "highlight equal" option (E key)Werner Almesberger1-0/+10
2014-09-17meme/gui.c: add equal highlighting mode when pressing "e"Werner Almesberger1-3/+37
2014-09-15meme/README: very short descriptionWerner Almesberger1-0/+96
2014-09-15meme/gui.c: add contrast enhancement mode (hold down C and turn wheel)Werner Almesberger1-9/+100
2014-09-14meme/gaux.h, gaux.c: forgot to commit theseWerner Almesberger2-0/+46
2014-09-14meme/gui.c (change): drop zero- or negative-sized change areas; better error ↵Werner Almesberger1-1/+4
reporting
2014-09-14meme/gui.c (surface_draw): pre-compute depth gradientWerner Almesberger1-7/+27
The run-time saving seems negligible but this also allows us to use more expensive mapping functions.
2014-09-14meme/: use SDL_GetVideoInfo to set up SDL_AllocSurface, instead of ↵Werner Almesberger3-18/+7
SDL_DisplayFormat
2014-09-14meme/: show measurement results on screenWerner Almesberger4-2/+202
2014-09-13meme/gui.c; autoscale on "*" (and enable Unicode translation)Werner Almesberger1-0/+9
2014-09-13meme/gui.c: auto-scale (maximize zoom to 90% of window width/height) at startWerner Almesberger1-3/+14
2014-09-13meme/gui.c: make window resizable and reduce initial size to 640 x 480Werner Almesberger1-5/+12
2014-09-13meme/gui.c (XRES, YRES): use variables for current resolutionWerner Almesberger1-21/+25
2014-09-13meme/gui.c (event_loop): we don't need the "redraw" flag - just return 0Werner Almesberger1-9/+5
2014-09-13meme/gui.c: toggle profiles with PWerner Almesberger1-2/+13
2014-09-13meme/gui.c: add markers and distance measurementsWerner Almesberger1-1/+97
2014-09-13meme/gui.c (show_cursor): add cursor crossWerner Almesberger1-0/+4
2014-09-13meme/: add YZ plane cutWerner Almesberger3-0/+115
All this doesn't look very good. Should sort facets for drawing from differnent angles then do depth grading.
2014-09-12meme/gui.c (button_event): button 2 (middle) centers the current mouse positionWerner Almesberger1-0/+4
2014-09-12meme/gui.c: use SDL_HWSURFACE; time redrawsWerner Almesberger1-2/+8
Redraws with SDL_HWSURFACE are about 10-20% faster than with SDL_SWSURFACE.
2014-09-12meme/gui.c: clean up color handling; increase contrast of depth gradingWerner Almesberger1-5/+11
2014-09-12meme/stl.h, stl.c (stl_load): rename to stl_load_file; new stl_load loads by ↵Werner Almesberger3-3/+26
file name
2014-09-12meme/gui.c (show_grid): don't show grid by defaultWerner Almesberger1-1/+1
2014-09-12meme/plane.c: use correct element size for point array; correct interpolationWerner Almesberger1-8/+6
2014-09-12meme/: show intersection with XZ plane (WIP)Werner Almesberger4-3/+190
Doesn't look quite right yet. Also, there are rendering errors.
2014-09-12meme/: abstract iteration over edges (edge_foreach)Werner Almesberger4-25/+55
This way, we can later remove "struct edge".
2014-09-12meme/gui.c: add idle timer mechanism and update cursor only when idleWerner Almesberger1-2/+129
Since motion updated come in faster than we can update the cursor (and this will get worse when we add projections), we need to rate-limit updates.
2014-09-12meme/gui.c (gui): move event loop to event_loop and fix indentationWerner Almesberger1-29/+38
2014-09-12meme/gui.c (find_nearest): comment out time measurementWerner Almesberger1-4/+4
2014-09-12meme/stl.c (stl_load): use single precision for coordinatesWerner Almesberger1-4/+3
This reduces one mesh load time from about 16.9 s to 15.7 s. Kinda surprising - I thought using "double" didn't have much of a performance impact these days.
2014-09-12meme/gui.c (proximity_fn): use single-precision mathWerner Almesberger1-4/+4
before: min/avg/max = 17/25/39 ms after: min/avg/max = 14/19/29 ms
2014-09-12meme/gui.c (proximity_fn): faster processing of points that are far awayWerner Almesberger1-0/+28
before: min/avg/max = 31/38/52 ms after: min/avg/max = 17/25/39 ms
2014-09-12meme/main.c (main): measure time to load the STL fileWerner Almesberger1-0/+7
2014-09-12meme/time.h, meme/time.c: utilities to measure program execution timeWerner Almesberger3-1/+69
2014-09-12meme/gui.c: add cursor (and nearest vertex lookup, SDL backing store)Werner Almesberger1-2/+186
2014-09-12meme/stl.c (stl_load): reverse y axisWerner Almesberger1-1/+1
2014-09-12meme/gui.c (coord): move coordinate transform to separate functions; simplifyWerner Almesberger1-16/+24
We don't pass width and height anymore. Maybe later.
2014-09-12meme/gui.c: add section title commentsWerner Almesberger1-10/+25
2014-09-12meme/gui.c (button_event): move coordinate transform to separate functionsWerner Almesberger1-4/+14
... for future sharing.
2014-09-12meme/gui.c: don't draw off-screen itemsWerner Almesberger1-12/+23
This greatly improves responsiveness at high zoom levels.
2014-09-12meme/gui.c: process keys: Q to quit, G to toggle grid (edges)Werner Almesberger1-3/+25
2014-09-12meme/mesh.c: allocate memory in large chunksWerner Almesberger1-3/+33
Timing is a bit odd: with individual allocations we get something like this: real 0m37.632s user 0m36.327s allocating vertices in chunks yields a dramatic improvement: real 0m16.755s user 0m16.085s but doing the same with edges real 0m16.686s user 0m15.969s or then with facets real 0m16.122s user 0m15.518s hardly changes anything.
2014-09-12measmesh/: renamed to meme/Werner Almesberger9-0/+684
Too much typing ;-)