|
POST
|
Filip and I worked out the issues and his traffic information is working correctly now. To summarize the important points: - Be sure your TMC codes are 9 characters long with the following formatting: TMC is encoded as ABBCDDDDD A - Country code BB - Region code C - One character RDS direction: + - P N DDDDD - Location code Make sure that the A value is not zero. - There are issues (before 10.1 SP2) with traffic data written in one date format (for example MM/DD/YYYY), then read in another format (DD/MM/YYYY). SP2 will fix it, but prior to that, be sure to read and write in the same format. - The ITrafficProvider API does not currently allow for setting the speed units to anything other than MPH. I'm not sure when this will be fixed. In the meantime, there are a couple of workarounds if you are using KPH: 1) Manually convert the value in your feed from KPH to MPH before feeding it into the UpdateTraffic GP tool. If your network is in KPH, the coversion from MPH in traffic files to KPH in the solver will happen automatically. 2) Use the ITrafficDataManager API instead of ITrafficProvider. What you gain is flexibility in how the traffic files are written, including setting the speed units. What you lose is the ability to get your custom provider in the UpdateTraffic GP tool. - VERY IMPORTANT. As of now (not sure when it will be fixed), you are required to have historical traffic data to use live traffic. If you don't have it, you have to fake it. To fake it, you need a profiles table with 1 profile. Set the scale factor for each time slice to 1. You also need a Streets_Profiles join table to assign your fake profile to every street (as well as provide a base speed for the street segment). Check out the San Diego tutorial data to see how it should all look. -------------------------- Whew! That is a lot of stuff. Live traffic is really built to be used with supported vendor data. To get it working with custom proprietary data takes some strange workarounds. As people try this, when they have problems, please post them either in this thread or in a new forum thread. Thanks!
... View more
12-20-2012
01:04 PM
|
2
|
0
|
3075
|
|
POST
|
That's good news. When you run into struggles loading locations, post here and I'll help you out. Thanks for using our software!
... View more
12-20-2012
10:30 AM
|
0
|
0
|
1670
|
|
POST
|
Hello, Angelo! The code sample for "How to open a network dataset" should work for SDC as well as FGDB. Are you getting an error when you try to use the code sample to open an SDC dataset? What error is it? Can you see your SDC dataset in ArcMap? The steps from the sample are basically: Get the IWorkspaceFactory, like they do in Connecting to a geodatabase. However, use "esriDataSourcesFile.SDCWorkspaceFactory"as the ProgID: public static IWorkspace SDCWorkspaceFromPath(String path) { Type factoryType = Type.GetTypeFromProgID( "esriDataSourcesFile.SDCWorkspaceFactory"); IWorkspaceFactory workspaceFactory = (IWorkspaceFactory)Activator.CreateInstance (factoryType); return workspaceFactory.OpenFromFile(path, 0); } Once you have the workspace, you should be able to pass it into OpenNetworkDataset from How to open a network dataset and have it work. Let me know what errors you are getting and we'll try to work them out. Clipping a FGDB out of SDC is possible, but you lose a lot of information, like turns and signposts. Regards, Patrick
... View more
12-19-2012
12:39 PM
|
0
|
0
|
1670
|
|
POST
|
The fixed value you set on the service area layer properties will only be used for facilities where you did not specify an override for the break value. For each facility where there is a Breaks_<AttributeName> for the cost you are solving against, the value in Breaks_<AttributeName> will be used for that facility. If will override the solver setting. For example, if you have the following solver settings: Cost attribute = TravelTime (minutes) Breaks = 2 3 4 And the following data values Name Breaks_TravelTime --------- --------------------- Facility1 <Null> Facility2 20 When you solve the service area, Facility1 will generate polygons at 2, 3, and 4 minutes. Facility2 will generate a polygon at 20 minutes.
... View more
12-19-2012
12:17 PM
|
0
|
0
|
1339
|
|
POST
|
Hello, Filip, Do you think I could see your TrafficIndex.xml and an associated DTF? If so, please zip it up and send it to pstevens at esri.com. I'm not sure if the problem is in the traffic files, in the ArcMap time settings, or in the network dataset traffic tables. If I don't see anything obvious in the traffic files, we'll take a look at the network. Also, if you need a fast response, you can contact support. Thanks, and sorry that you are having such difficulties!
... View more
12-17-2012
08:25 AM
|
0
|
0
|
3075
|
|
POST
|
Getting the traffic to display in ArcMap can be a bit tricky. You need to make sure that you have time enabled on the map and that the time settings are correct. I'm probably missing some steps, but the general idea to check your traffic display is: Make sure your network dataset layer is in the map, and set to display live traffic only (no historical). Open up the time slider by clicking the little clock button on the main toolbar Click the options button on the time slider On the Time Display tab, be sure to correctly set your time zone. This is very important. On the Time Extent tab, I usually set the full time extent to <Undefined>, then fill in a start and end time that more than covers the extent of my traffic data. Here is a very important part: The DTFs and TrafficIndex.xml files all use UTC time. Check inside TrafficIndex.xml and look at the time that is the DTF file name. If you have properly set your time zone on the time slider, you should see live traffic if the time slider time is offset by the proper amount from UTC. A quick test is to set the time zone on the slider to UTC, then set the time to be just after the start time of one of your DTFs. I hope this helps, Patrick
... View more
12-13-2012
08:13 AM
|
1
|
0
|
3074
|
|
POST
|
Just adding a comment to bump this thread back to the top. Thanks everyone for your input, it is very important to us. If you'd like Network Analyst to better reflect your particular use cases and data, then please let us know via the survey. Thanks!
... View more
12-11-2012
11:10 AM
|
0
|
0
|
767
|
|
POST
|
Excellent question! I should have mentioned that it is the same survey. If you got the email, please follow that link.
... View more
12-06-2012
07:57 AM
|
0
|
0
|
767
|
|
POST
|
As an ArcGIS Network Analyst user, your input is critical to ensure future versions are designed to meet your needs. Please spend a few minutes to share your thoughts on how this product can be improved and important features you would like to see included. This questionnaire should take less than 10 minutes to complete. http://surveys2.esri.com/s3/2012-ArcGIS-Network-Analyst-Survey
... View more
12-05-2012
01:24 PM
|
0
|
7
|
2502
|
|
POST
|
Here is a question from a user that I thought is useful enough to post here on the forums for others to see. The question: "I was attempting to take the geometry of a road segment, and use it as a polyline barrier. However, what seems to happen is that the street intersections contained by the endpoints of the barrier disqualify use of the intersection altogether. In other words, if I have a four-way intersection, and I use the geometry of one of those streets as a polyline barrier, that entire intersection will not be used by the generated route, even though each of the three other streets should be available." The response: Using a street geometry as a restriction polyline barrier will block the intersections that the street touches. It is because the endpoints of the streets are spatially coincident. As with everything in ArcGIS, there are a bunch of different things you could do to solve your problem. Increasing the cost, instead of restricting the road segment, is a good idea. If you set the BarrierType on your polyline barrier feature to be scaled cost, instead of restriction, then you can easily increase the cost of the edge. If you want it to be practically restricted, then scale it a lot, say 1000 times. That way, the segment would be traversed only if there was no other possible route to your destination. The reason this works and restrictions wouldnâ??t is that you are scaling your restricted street feature from position 0.0 to 1.0, and scaling the spatially coincident unrestricted feature endpoints from 1.0 to 1.0 (or 0.0 to 0.0). If you scale a zero dimensional point like that, it will have no effect on the route. To accomplish this, youâ??ll need to set proper values on two fields for your polyline barrier feature. First, is the BarrierType field. Set this field to â??Scaled costâ??, which is enumerator esriNABTScaledCost, which has an integer value of 1. Next is the proper Attr_ field. You will have one Attr_ field for every cost impedance in your network. Make sure to set the value for the right impedance. For example, if you are solving against TravelTime, then set your scale factor in the Attr_TravelTime field to 1000. If for some reason the solution above doesnâ??t work, then here are a couple of other options: Use a point barrier. You can get the midpoint of the feature, load that as a point barrier, and set FullEdge to true. This will restrict the entire edge. Do something to slightly alter the shape of the line you load. You could shrink in each end a little bit to avoid restricting the intersections.
... View more
11-28-2012
11:35 AM
|
0
|
0
|
745
|
|
POST
|
Should it be so complex? Sorry that it is a complicated solution. The problem is that Network Analyst doesn't yet support time-dependent restrictions, or non-traffic based time-dependent travel costs, unless you use a custom evaluator. Let me separate the problem into two different problems. 1) I have calculated a route. How do I get the time my car will be on each segment. I think if I have the ordered segment collection and the time for each segment �?? it should not be too hard to get it. If you are on 10.1, use the geoprocessing tool Copy Traversed Source Features to generate the ordered segment collection you are looking for. 2) I have a network and information about the time it takes to cross each segment in a different time in the week. How do I put this information into the network so the routing will take it in to account. Not sure I understand this completely. Are you saying you have historical travel times? Historical travel speeds/times are supported, but they are in a specific format. Here is the help doc on historical traffic: http://resources.arcgis.com/en/help/main/10.1/index.html#/Historical_traffic/0047000001rs000000/ Or are you saying that the paths that other trains take are known throughout the week and that is what affects travel speeds? If that is the case, then you are back to needing a custom evaluator. If I solve these two questions and combine them I solve the problem. There is not to much more into the real problem, it is just a way to make sure two "cars" will not be on the same segment in the same time. Your use case is not a common one. For the traditional road network, you won't have segments of the road blocked by other vehicles. That is why you will have to jump through a few hoops to get it work like you want it.
... View more
11-20-2012
07:30 AM
|
0
|
0
|
1156
|
|
POST
|
One possible solution to your scenario would be time-dependent restrictions. Unfortunately, the only way to accomplish this currently is through a custom evaluator. There is a sample that should be hugely helpful. Here is a link to the time-aware restriction evaluator: http://www.arcgis.com/home/item.html?id=dc2e55c6e9c64cb19a5e8e3224032c87 1. Create your custom time-aware evaluator and add it to a restriction attribute. 2. Add the restriction to your network. 3. Solve the route for train A with the restriction turned off, and measures turned on, and an appropriate start time. 4. Take the traversal result (or route shape) of the output route and use it to create a feature class (or csv, or whatever) of edges along with the time in which that edge is restricted. 5. Solve the route for train B with the restriction turned on and an appropriate start time. If the evaluator is set up properly, the edges that train A is on at the specified time should not be traversable by train B at those times. A couple of caveats with this approach... First, you mentioned that your description of the problem is a simplification, so I can't tell you that the above solution is the best approach. The solution seems like a good approach based on your description. Second, there is the registration of a custom evaluator. This means that if you share this network (either across Desktop instances or via Server), the evaluator needs to be registered along with the network wherever it goes. Also, there is coding involved. You will need to take the sample evaluator and modify it to fit your needs. Try to understand how and why it works the way it does and adjust it as appropriate.
... View more
11-15-2012
06:16 AM
|
0
|
0
|
1156
|
|
POST
|
Let me make sure I understand some details. You are solving the route against some kind of cost attribute that is either time or distance. After the route is solved, you want a way to accumulate what tolls were paid along the way. You don't care, necessarily, to avoid tolls, you just want to know how much was paid along the way. Your toll information is stored in a table with edge IDs? This is as opposed to using junctions, turns, or point barriers for tolls. If I have the details right, here are a couple of suggestions: Set up a cost attribute on your network, based on tolls paid. Call it TollCost or something. When you solve your route against your regular cost attribute, say TravelTime, you can also accumulate TollCost. You should get a Total_TollCost value with the output route. Another idea, if you really want to use Traversal Result or accumulating doesn't work or you don't have access to edit your network attributes, would be to change your routing service. Instead of just using the traditional route service, set up a GP model that solves a route, generates a traversal result and perhaps does some analysis on tolls before returning an answer. The best answer really depends on how you model the toll costs along with performance and client/server processing expectations. Did this help?
... View more
10-18-2012
07:53 AM
|
0
|
0
|
1069
|
|
POST
|
Hello! Do you have the same issue as Jill? Are you trying to find out about additive cost barriers that you encountered along a route? The reason I ask is that I want to make sure that trying to get to the traversal result is the best way to accomplish your goals? What exactly are your goals? Also, what version of server are you using? Thanks
... View more
10-16-2012
06:55 AM
|
0
|
0
|
1069
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 04-14-2015 07:46 AM | |
| 1 | 07-31-2015 09:09 AM | |
| 1 | 04-10-2013 06:58 AM | |
| 2 | 02-14-2018 03:51 PM | |
| 2 | 02-14-2018 02:20 PM |
| Online Status |
Offline
|
| Date Last Visited |
10-19-2021
04:18 PM
|