<% Map map = OpenMap(); // get the RoutingProblem object RoutingProblem rProblem = map.getRouting().createRoutingProblem(); // set routing stops array GeoLocation[] stops = new GeoLocation[2]; stops[0] = new GeoLocation (map, "Redlands, CA", 34.0528, -117.1531); stops[1] = new GeoLocation (map, "Redlands, CO", 39.0854, -108.6515); RoutingStop rStop; // add routing stops for(int i = 0; i < stops.Length; i++) { rStop = new RoutingStop(); rStop.setStop(new GeoPoint( stops[i].x, stops[i].y)); rStop.setLabel(stops[i].label); rProblem.addStop(rStop); } rProblem.setHighwayPreference( 50); rProblem.setWeight(RoutingProblem.rmShortest); // to find quickest use rmQuickest rProblem.setOptimize( false); // no optimization // Trip planning ***************************************************************** // you should set your local time here to see correct results // see the Time constructor for details rProblem.setTripStart( new Time( "Thu, 02 Jun 2005 08:00:00 GMT -0600")); // see TimeSpan rProblem.setDayDriveStart( new com.esri.rmims.TimeSpan( 0, 8, 30, 0)); rProblem.setDayDriveEnd( new com.esri.rmims.TimeSpan( 0, 17, 0, 0)); rProblem.setDriveBetweenRest( new com.esri.rmims.TimeSpan( 0, 3, 0, 0)); rProblem.setRestDuration( new com.esri.rmims.TimeSpan( 0, 0, 30, 0)); rProblem.setDriveFlexibility( new com.esri.rmims.TimeSpan( 0, 0, 30, 0)); rProblem.enableRestBreaks( true); rProblem.enableTripPlanning( true); //******************************************************************************** Routing routing = map.getRouting(); string RouteID = routing.findRoute(rProblem, true, -1); // show the route routing.setRoute( RouteID); GeoRectangle r = routing.getDrivingDirections( RouteID).getExtent(); map.setExtent( inflateRect(r, 10)); // increase borders // print driving directions DrivingDirections DDirs = routing.getDrivingDirections( RouteID); DirectionsSegment DSeg; Response.Write( "<p>"+DDirs.getStartText()+"<br>\n"); Response.Write( DDirs.getFinishText()+"<br>\n"); Response.Write( DDirs.getTotalText()+"<p>\n"); for( int i=0; i < DDirs.getSegmentCount(); i++) { DSeg = DDirs.getSegment( i); Response.Write( (i+1)+". " + DSeg.getText() + "<br>\n"); // if there is TimeLengthText if( DSeg.getSegmentType() != DirectionsSegmentType.rmArrive && DSeg.getSegmentType() != DirectionsSegmentType.rmDepart) Response.Write( DSeg.getTimeLengthText() + "<br>\n"); } %> <img src="<%= map.getMapImageURL(map.getImageWidth(), map.getImageHeight(), ImageFormat.rmDefault)%>" width="<%=map.getImageWidth()%>" height="<%=map.getImageHeight()%>">