[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| [udig-devel] Re: Commit Access and pgRouting module | 
Hey Tim :-)
Thanks for looking at net.refractions.udig.graph - I had a couple of 
reasons to ask you to look at it:
- it may be what you need? (but since you are doing pgRouting...)
- we may make a plan on how to integrate both graph functionality
You have done the first step required to get commit access (ie email the 
udig-devel email list; I will email admin@xxxxxxxxxxxxxxx and ask for 
you to get commit access - although Refractions does have a PSC member 
on staff right now it appears as if emily is more active). I do ask that 
you go over the developers guide - specifically the udig guidelines and 
the eclipse house rules.
If I can also ask you to leave some time at the end of your project to 
work on integrating; the unsupported module idea is great for quickly 
doing a contract for a customer - but it can be bad for improving core 
udig unless we are disciplined.
Here are some idea to leave with you for how your work can be integrated:
1. Get what you need for your customer (ie create 
net.refractions.udig.routing in a community module)
- make an API you can use to talk to pgRouting services - do this in the 
most direct fashion possible
- add a IResolveFactory teaching PostGISGeoResoruceImpl (or 
PostGISServiceImpl) how to adapt to your API based on check if pgRouting 
is installed
- sort out your workflow (do you define a bunch of waypoints and then 
run a wizard? do you run a wizard to set routing constratins and then 
define waypoints to generate a route?)
2. take the tools defined in the graph module and have them check if the 
current layer resolves to your API; and if so have them call your API.
3. Ask me, jesse or another PSC member to review your module and we will 
add your code to the net.refractions.udig.graph module.
Before you start you should understand how the existing graph module works:
- some kind of graph set up (in net.refractions.udig.graph an operation 
is called to turn the current seleciton into a graph). In your plugin 
you may want to run a wizard and configure pgRouting access; although 
you could do it just once against your PostGISGeoResource if you like; 
and not have it be map specific. Or depending on how pgRouting works you 
may just have a preference page and configure pgRouting on the fly as it 
is needed on a table by table basis?
- way points are added to a layer blackboard by a tool; the tricky part 
is snapping the point to the road in question (you may need to snap to a 
node rather than an edge?)
- an operation is called to find the shortest route between the 
waypoints. Other operations of course can be written
If possible write up any workflow or design documents in the HACK space 
(since that is what it is used for). Finally we are looking at doing a 
code sprint later this month; Jesse and myself may focus on bug fixing; 
and also answering questions for people doing new work. There is also a 
weekly IRC meeting that Emily has been good about attending that is 
smack dab in the middle of your work day; I would be happy to review any 
design ideas you had prepaired at that time.
Jody
Tim Wetzer wrote:
Hi Jody,
I wrote to the list about a routing project I was doing and was 
wondering about commit access. You mentioned that I should have a look 
at net.refractions.udig.graph first.
I had a look, and it isn't really applicable to what I'm doing. My 
routing is based on pgRouting and using a PostGIS connection. It would 
be nice if I could have community commit access so that I can start 
committing my plug-in. Is there anything I need to do for this?
Thanks,
--
Tim Wetzer
Refractions Research
(250) 383-3022
Email: twetzer@xxxxxxxxxxxxxxx <mailto:twetzer@xxxxxxxxxxxxxxx>