grits
8 years agoVersion bump for 0.6.3
Andy Spencer [Tue, 10 Jan 2012 08:22:20 +0000 (08:22 +0000)]
Version bump for 0.6.3

8 years agoRemove object when test plugin unloads
Andy Spencer [Tue, 10 Jan 2012 07:21:35 +0000 (07:21 +0000)]
Remove object when test plugin unloads

8 years agoFix clipping plane issues
Andy Spencer [Sun, 8 Jan 2012 23:06:16 +0000 (23:06 +0000)]
Fix clipping plane issues

The clipping plane is flat, so the distance between the camera and the
clipping plane varies based on where screen location. I.e. it is closest
in the center and farther at the corners. Add a offset to elev to
account of this. It would be better to use a sin or to calculate
distances directly, but this is easy and appears to work.

8 years agoFix test rules
Andy Spencer [Sat, 7 Jan 2012 22:36:41 +0000 (22:36 +0000)]
Fix test rules

8 years agoCompute near/far clipping planes
Andy Spencer [Sat, 7 Jan 2012 22:36:05 +0000 (22:36 +0000)]
Compute near/far clipping planes

8 years agoRemove haze over the oceans
Andy Spencer [Tue, 3 Jan 2012 07:35:54 +0000 (07:35 +0000)]
Remove haze over the oceans

The blue haze is nice of there's a white background, but we don't have a
working white background at the moment..

8 years agoAdd GritsLine
Andy Spencer [Tue, 3 Jan 2012 07:32:34 +0000 (07:32 +0000)]
Add GritsLine

GritsLine is similar to GritsPoly, but does not draw a filled polygon.
As such it does not need to do any tessellation.

Currently it draws the points directly instead of using a display list.
This should make it easier to updated the line at runtime without
needing to create a new object.

8 years agoMove polygon parsing into grits-util
Andy Spencer [Tue, 3 Jan 2012 07:31:53 +0000 (07:31 +0000)]
Move polygon parsing into grits-util

This allows it to be used in other places
e.g. for line parsing

8 years agoUpdate plugins folder symlink
Andy Spencer [Tue, 3 Jan 2012 01:03:12 +0000 (01:03 +0000)]
Update plugins folder symlink

8 years agoIgnore local gen.sh
Andy Spencer [Tue, 3 Jan 2012 00:34:50 +0000 (00:34 +0000)]
Ignore local gen.sh

8 years agoMove build scripts to separate repository
Andy Spencer [Sun, 1 Jan 2012 21:01:27 +0000 (13:01 -0800)]
Move build scripts to separate repository

8 years agoImprove support for relative search paths
Andy Spencer [Mon, 19 Dec 2011 08:19:31 +0000 (08:19 +0000)]
Improve support for relative search paths

8 years agoAdd support for Mac OS
Andy Spencer [Mon, 12 Dec 2011 06:42:23 +0000 (06:42 +0000)]
Add support for Mac OS

8 years agoCleanup OpenGL example and add Mac OS support
Andy Spencer [Mon, 12 Dec 2011 06:34:00 +0000 (06:34 +0000)]
Cleanup OpenGL example and add Mac OS support

8 years agoUpdate windowing system tests
Andy Spencer [Mon, 12 Dec 2011 06:16:19 +0000 (06:16 +0000)]
Update windowing system tests

- Add support for Mac OS
- Hopefully make things simpler

8 years agoMove OpenGL includes to a common place
Andy Spencer [Mon, 12 Dec 2011 05:37:20 +0000 (05:37 +0000)]
Move OpenGL includes to a common place

Apple seems to think the should put GL.h in OpenGL instead of GL..
putting it all gtkgl.h makes it a little easier, but requires gtkgl.h to
be included in the install and by grits.h.

8 years agoUpdate teapot example
Andy Spencer [Sun, 11 Dec 2011 23:36:53 +0000 (23:36 +0000)]
Update teapot example

8 years agoVersion bump for 0.6.2 v0.6.2
Andy Spencer [Wed, 30 Nov 2011 07:53:12 +0000 (07:53 +0000)]
Version bump for 0.6.2

8 years agoFix grits-demo linking on 64-bit
Andy Spencer [Wed, 30 Nov 2011 07:48:20 +0000 (07:48 +0000)]
Fix grits-demo linking on 64-bit

8 years agoVersion bump for 0.6.1 v0.6.1
Andy Spencer [Fri, 25 Nov 2011 06:54:48 +0000 (06:54 +0000)]
Version bump for 0.6.1

8 years agoFix off-by-one error
Andy Spencer [Fri, 25 Nov 2011 07:44:09 +0000 (07:44 +0000)]
Fix off-by-one error

8 years agoFix more warnings
Andy Spencer [Fri, 25 Nov 2011 06:57:52 +0000 (06:57 +0000)]
Fix more warnings

8 years agoFix 64-bit warnings
Andy Spencer [Thu, 24 Nov 2011 10:07:14 +0000 (10:07 +0000)]
Fix 64-bit warnings

8 years agoFix extra mouse-over bug
Andy Spencer [Thu, 24 Nov 2011 09:40:03 +0000 (09:40 +0000)]
Fix extra mouse-over bug

When selecting one polygon, it sets the line width and makes it appear
that following polygons are also selected.

8 years agoMake picking 64-bit compatible
Andy Spencer [Thu, 24 Nov 2011 09:23:12 +0000 (09:23 +0000)]
Make picking 64-bit compatible

Use an array and index into that instead of passing pointers to
glPushName since 64-bit pointers do not fit in the name stack.

8 years agoUse correct resolution tiles when zooming out
Andy Spencer [Thu, 10 Nov 2011 08:18:06 +0000 (08:18 +0000)]
Use correct resolution tiles when zooming out

8 years agoVersion bump for 0.6 v0.6.x v0.6
Andy Spencer [Mon, 31 Oct 2011 07:39:14 +0000 (07:39 +0000)]
Version bump for 0.6

8 years agoFix warning if with non-existent cache paths
Andy Spencer [Wed, 2 Nov 2011 07:18:48 +0000 (07:18 +0000)]
Fix warning if with non-existent cache paths

8 years agoUpdate dolt
Andy Spencer [Wed, 2 Nov 2011 06:32:21 +0000 (06:32 +0000)]
Update dolt

8 years agoUse -no-undefined for win32 builds
Andy Spencer [Thu, 25 Aug 2011 05:56:56 +0000 (05:56 +0000)]
Use -no-undefined for win32 builds

This is the libtool flag which is different than the ld flag, and is
needed for building win32 dlls..

8 years agoUpdate copyright notices
Andy Spencer [Mon, 31 Oct 2011 06:53:11 +0000 (06:53 +0000)]
Update copyright notices

8 years agoUpdate some documentation
Andy Spencer [Mon, 31 Oct 2011 06:47:51 +0000 (06:47 +0000)]
Update some documentation

8 years agoAdd alert plugin to grits-test
Andy Spencer [Mon, 31 Oct 2011 06:26:47 +0000 (06:26 +0000)]
Add alert plugin to grits-test

8 years agoUse rounded corners for GritsPoly
Andy Spencer [Thu, 27 Oct 2011 07:28:47 +0000 (07:28 +0000)]
Use rounded corners for GritsPoly

8 years agoFix memory leaks
Andy Spencer [Thu, 27 Oct 2011 07:18:02 +0000 (07:18 +0000)]
Fix memory leaks

8 years agoPass objects to grits_viewer_remove instead of refs
Andy Spencer [Thu, 27 Oct 2011 05:12:34 +0000 (05:12 +0000)]
Pass objects to grits_viewer_remove instead of refs

(finally)

8 years agoSave prefs after changes
Andy Spencer [Thu, 27 Oct 2011 05:03:46 +0000 (05:03 +0000)]
Save prefs after changes

8 years agoImprove performance of GritsPoly
Andy Spencer [Mon, 17 Oct 2011 07:57:35 +0000 (07:57 +0000)]
Improve performance of GritsPoly

Use separate display lists, and only create them and perform
tessellation when they are actually used.

This is especially useful for large number of polygons which aren't
always displayed (or may never be displayed).

Generating the display lists from the first draw() also avoids a large
number of idle callbacks.

8 years agoFix typo
Andy Spencer [Mon, 17 Oct 2011 07:56:50 +0000 (07:56 +0000)]
Fix typo

8 years agoAdd clicked signal to GritsObject
Andy Spencer [Sat, 15 Oct 2011 09:20:50 +0000 (09:20 +0000)]
Add clicked signal to GritsObject

Using mouse-down/mouse-up is rather not helpful since GritsViewer does a
lot with mouse drags.

8 years agoAdd mouse-over testing to test plugin
Andy Spencer [Sat, 15 Oct 2011 06:22:56 +0000 (06:22 +0000)]
Add mouse-over testing to test plugin

8 years agoAdd mouse, keyboard, and motion events to GritsObject
Andy Spencer [Sat, 15 Oct 2011 06:20:43 +0000 (06:20 +0000)]
Add mouse, keyboard, and motion events to GritsObject

These work by chaining the event from GritsOpenGL up to each individual
object, which then emits the callback if it is currently selected
(moused over).

8 years agoAdd mouse enter/leave signals to objects
Andy Spencer [Sat, 15 Oct 2011 06:13:39 +0000 (06:13 +0000)]
Add mouse enter/leave signals to objects

This uses the OpenGL Selection render mode to determine which objects
the mouse is over. It requires fairly tight integration between
GritsOpenGL and GritsObject.

The signal code is handled internally by GritsObject. However, most of
the actual selection matching work is done by GritsOpenGL.

Object types that wish to improve performance can implement the pick()
function in addition to the draw() function. The pick function is used
when performing selection matching. It works similar to draw, but does
not need to do textures/lighting/opacity/etc.

8 years agoCleanup GritsPoly
Andy Spencer [Sat, 15 Oct 2011 06:03:48 +0000 (06:03 +0000)]
Cleanup GritsPoly

- Add GL points at the corners
- Use polygon offset between fill and border
- Calculate actual center position

8 years agoRemove excess debug messages
Andy Spencer [Sat, 15 Oct 2011 06:01:09 +0000 (06:01 +0000)]
Remove excess debug messages

8 years agoAdd string parser to GritsPoly
Andy Spencer [Wed, 12 Oct 2011 08:30:35 +0000 (08:30 +0000)]
Add string parser to GritsPoly

8 years agoAdd configurable borders to GritsPoly
Andy Spencer [Wed, 12 Oct 2011 08:30:16 +0000 (08:30 +0000)]
Add configurable borders to GritsPoly

8 years agoFix crash when unable to cache http files
Andy Spencer [Tue, 11 Oct 2011 06:28:27 +0000 (06:28 +0000)]
Fix crash when unable to cache http files

8 years agoVersion bump for 0.5.2 v0.5.2
Andy Spencer [Mon, 12 Sep 2011 00:35:19 +0000 (00:35 +0000)]
Version bump for 0.5.2

8 years agoRemove no-undefined-symbols from gen.sh
Andy Spencer [Fri, 9 Sep 2011 06:19:49 +0000 (06:19 +0000)]
Remove no-undefined-symbols from gen.sh

This should be done properly in the Makefiles now.

8 years agoAdd linker flag for the math library
Andy Spencer [Fri, 9 Sep 2011 06:13:49 +0000 (06:13 +0000)]
Add linker flag for the math library

8 years agoFix compiler warning with gluTessCallback
Andy Spencer [Fri, 9 Sep 2011 06:07:29 +0000 (06:07 +0000)]
Fix compiler warning with gluTessCallback

8 years agoAdd glut config check v0.5.1
Andy Spencer [Wed, 24 Aug 2011 17:40:41 +0000 (17:40 +0000)]
Add glut config check

8 years agoVersion bump for 0.5.1
Andy Spencer [Wed, 24 Aug 2011 16:10:32 +0000 (16:10 +0000)]
Version bump for 0.5.1

8 years agoFix linker flags
Andy Spencer [Wed, 24 Aug 2011 16:00:47 +0000 (16:00 +0000)]
Fix linker flags

8 years agoAbort when opengl setup fails
Andy Spencer [Wed, 24 Aug 2011 15:43:20 +0000 (15:43 +0000)]
Abort when opengl setup fails

8 years agoAdd timeout for http servers
Andy Spencer [Wed, 24 Aug 2011 15:42:25 +0000 (15:42 +0000)]
Add timeout for http servers

Keep it low for now because a hung sever blocks tile loading

8 years agoSwitch to higher resolution elevation dataset
Andy Spencer [Wed, 24 Aug 2011 15:39:10 +0000 (15:39 +0000)]
Switch to higher resolution elevation dataset

- Tweak perspective so we can zoom in farther
- Use less preference for edge faces for better shading

9 years agoSpeed up movement when at low elevation
Andy Spencer [Sat, 30 Jul 2011 21:14:53 +0000 (21:14 +0000)]
Speed up movement when at low elevation

9 years agoUpdate map URL and layers
Andy Spencer [Sat, 2 Jul 2011 04:17:45 +0000 (04:17 +0000)]
Update map URL and layers

Server moved to vmap0.tiles.osgeo.org

Added new layers for labels, roads, and a few other things

9 years agoAdd reset locale when formatting certain strings
Andy Spencer [Sat, 2 Jul 2011 03:19:35 +0000 (03:19 +0000)]
Add reset locale when formatting certain strings

LC_NUMERIC is used to determine the conversion for "%f" this can result
in errors when formatting strings with expected floating point formats.

9 years agoVersion bump for 0.5 v0.5.x v0.5
Andy Spencer [Sat, 18 Jun 2011 22:42:04 +0000 (22:42 +0000)]
Version bump for 0.5

9 years agoAdd GL bindings example program
Andy Spencer [Sat, 18 Jun 2011 22:16:27 +0000 (22:16 +0000)]
Add GL bindings example program

Basic standalone program that draws a circle using:
  - Cairo
  - GktGLExt
  - GLX (X11)
  - WGL (Win32)
  - CGL (Mac OS, not implemented)

9 years agoAdd some stubbed code for Mac OS support
Andy Spencer [Sat, 18 Jun 2011 22:12:38 +0000 (22:12 +0000)]
Add some stubbed code for Mac OS support

(This won't compile yet)

9 years agoChange binaries to shared objects
Andy Spencer [Sat, 18 Jun 2011 22:10:17 +0000 (22:10 +0000)]
Change binaries to shared objects

There's a double load of the GObjects when using static libraries with
plugins. Shared libraries avoid this, I think there are other work
arounds that let static binaries work too, but this should be fine for
now.

9 years agoUse only shared libs on win32
Andy Spencer [Wed, 8 Jun 2011 16:10:52 +0000 (16:10 +0000)]
Use only shared libs on win32

9 years agoVersion bump to 0.5-p0
Andy Spencer [Tue, 7 Jun 2011 09:50:15 +0000 (09:50 +0000)]
Version bump to 0.5-p0

9 years agoSwitch from GtkGLExt to internal OpenGL handling
Andy Spencer [Tue, 7 Jun 2011 08:43:32 +0000 (08:43 +0000)]
Switch from GtkGLExt to internal OpenGL handling

GtkGLExt has many problems:
  - It's code is bloated and convoluted
  - It doesn't work on Win32
  - It doesn't work with gtk+-3.0
  - The last release was in early 2006

Using our own lets us fix these issues and should be easier to maintain
than trying to figure out the GtkGLExt mess, or waiting for someone else
to fix it.

9 years agoUse -shared for plugins
Andy Spencer [Tue, 24 May 2011 06:11:49 +0000 (06:11 +0000)]
Use -shared for plugins

9 years agoMisc http fixes
Andy Spencer [Tue, 24 May 2011 06:01:36 +0000 (06:01 +0000)]
Misc http fixes

Caching still doesn't work, but it appears to be a server problem.

9 years agoSwitch map and sat plugins to using thread pools
Andy Spencer [Tue, 24 May 2011 05:59:48 +0000 (05:59 +0000)]
Switch map and sat plugins to using thread pools

TODO: switch evel as well

9 years agoImprove shutdown code
Andy Spencer [Tue, 24 May 2011 05:51:20 +0000 (05:51 +0000)]
Improve shutdown code

9 years agoUpdate valgrind suppressions
Andy Spencer [Tue, 24 May 2011 05:23:10 +0000 (05:23 +0000)]
Update valgrind suppressions

9 years agoRemove old TODO items
Andy Spencer [Tue, 24 May 2011 05:23:10 +0000 (05:23 +0000)]
Remove old TODO items

9 years agoAdd hidden method for object
Andy Spencer [Tue, 24 May 2011 05:16:55 +0000 (05:16 +0000)]
Add hidden method for object

This allows object to hide nested objects when they are hidden

9 years agoTighten up locking to allow for nested objects
Andy Spencer [Tue, 24 May 2011 05:09:16 +0000 (05:09 +0000)]
Tighten up locking to allow for nested objects

9 years agoFix caching bugs with some http servers
Andy Spencer [Mon, 14 Feb 2011 05:26:29 +0000 (05:26 +0000)]
Fix caching bugs with some http servers

Some server (e.g. weather.gov) send old versions of index files which
causes grits_http_available to return incorrect information.

Setting `Cache-Control: max-age=0' fixes this.

9 years agoAdd GritsPoly for drawing sets of polygons
Andy Spencer [Mon, 24 Jan 2011 03:42:45 +0000 (03:42 +0000)]
Add GritsPoly for drawing sets of polygons

Currently uses OpenGL display lists for performance reasons.

9 years agoAdd volume testing code
Andy Spencer [Mon, 24 Jan 2011 03:36:33 +0000 (03:36 +0000)]
Add volume testing code

Render some iso-balls with optional radar rendering

Based on GritsTester

9 years agoAdd GritsTester for debugging GritsObjects
Andy Spencer [Mon, 24 Jan 2011 03:33:30 +0000 (03:33 +0000)]
Add GritsTester for debugging GritsObjects

The "tester" object is similar to a stripped down version of
GisOpenGL/GisViewer. It is intended for debugging GisObjects during
development. It displays one or more objects centered in the view and
and supports panning/moving around to inspect various parts of the
object.

9 years agoAdd GritsVolume for 3D volume rendering
Andy Spencer [Mon, 24 Jan 2011 03:30:34 +0000 (03:30 +0000)]
Add GritsVolume for 3D volume rendering

This is based on the Marching Cubes algorithm.

Be warned, the API for this is not quite entirely stable..

9 years agoAdd convex tessellation example
Andy Spencer [Mon, 24 Jan 2011 03:23:40 +0000 (03:23 +0000)]
Add convex tessellation example

This tessellates a non-convex polygon such that it can be drawn
correctly.

9 years agoAdd interpolation example
Andy Spencer [Mon, 24 Jan 2011 03:21:23 +0000 (03:21 +0000)]
Add interpolation example

Also interpolate reflectivity colormap

9 years agoCleanup examples organization
Andy Spencer [Mon, 24 Jan 2011 03:07:02 +0000 (03:07 +0000)]
Cleanup examples organization

9 years agoUpdate grits-test
Andy Spencer [Sat, 22 Jan 2011 20:16:55 +0000 (20:16 +0000)]
Update grits-test

9 years agoAllow disabling operations in grits_object_draw
Andy Spencer [Sat, 22 Jan 2011 20:13:05 +0000 (20:13 +0000)]
Allow disabling operations in grits_object_draw

Objects now include a GRITS_SKIP_* bitmask used for disabling various
operations in grits_object_draw. The default is to perform all tests and
operations, however some of these are expensive. Objects which do not
need some operations or take care of it themselves can disable the tests
in grits_object_draw to save processing time.

For instance, saving the OpenGL state can be quite costly for simple
objects.

9 years agoAdd grits_object_queue_draw function
Andy Spencer [Sat, 22 Jan 2011 20:11:13 +0000 (20:11 +0000)]
Add grits_object_queue_draw function

9 years agoStore GritsViewer references in GritsObjects
Andy Spencer [Sat, 22 Jan 2011 20:09:25 +0000 (20:09 +0000)]
Store GritsViewer references in GritsObjects

This makes it easier to write modules without having to store the viewer
reference all over the place.

It could also help simplify adding/removing objects from the viewer, but
that has not been implemented yet.

9 years agoFix bugs in GritsPlugins
Andy Spencer [Sat, 22 Jan 2011 20:03:11 +0000 (20:03 +0000)]
Fix bugs in GritsPlugins

1. Properly track module references
2. Flush events before unloading the module

This prevents the case where the module unloaded while there are still
callbacks that reference the modules executable code.

9 years agoMisc formatting updates
Andy Spencer [Sat, 22 Jan 2011 20:00:41 +0000 (20:00 +0000)]
Misc formatting updates

9 years agoUse common vector operations for ROAM
Andy Spencer [Sat, 22 Jan 2011 19:58:33 +0000 (19:58 +0000)]
Use common vector operations for ROAM

9 years agoAdd vector operations to utilities
Andy Spencer [Sat, 22 Jan 2011 19:57:15 +0000 (19:57 +0000)]
Add vector operations to utilities

9 years agoDelete OpenGL textures in grits_marker_finalize
Andy Spencer [Sat, 22 Jan 2011 19:51:52 +0000 (19:51 +0000)]
Delete OpenGL textures in grits_marker_finalize

9 years agoAdd debugging to GritsCallback
Andy Spencer [Sat, 22 Jan 2011 19:51:10 +0000 (19:51 +0000)]
Add debugging to GritsCallback

9 years agoDraw plugins in wireframe mode as well
Andy Spencer [Sat, 22 Jan 2011 19:48:39 +0000 (19:48 +0000)]
Draw plugins in wireframe mode as well

9 years agoLower contrast on global texture parameters
Andy Spencer [Sat, 22 Jan 2011 19:47:34 +0000 (19:47 +0000)]
Lower contrast on global texture parameters

This looks slightly less `pretty' but makes it easier to see things.

9 years agolibgis -> grits: Update doap
Andy Spencer [Sun, 28 Nov 2010 06:09:57 +0000 (06:09 +0000)]
libgis -> grits: Update doap

9 years agolibgis -> grits: Update functions/types/etc
Andy Spencer [Sat, 20 Nov 2010 07:45:58 +0000 (07:45 +0000)]
libgis -> grits: Update functions/types/etc

9 years agolibgis -> grits: Update non-technical references
Andy Spencer [Sat, 20 Nov 2010 07:16:08 +0000 (07:16 +0000)]
libgis -> grits: Update non-technical references

9 years agolibgis -> grits: Fix build after rename
Andy Spencer [Sat, 20 Nov 2010 07:07:41 +0000 (07:07 +0000)]
libgis -> grits: Fix build after rename