コード例 #1
0
        public WalkOfInterestInfo SubWalk2(Guid fromNodeId, Guid toNodeId)
        {
            WalkOfInterestInfo result = new WalkOfInterestInfo();

            result.RouteElementIds = new List <Guid>();

            bool subWalkInProgress = false;

            foreach (var routeElementId in RouteElementIds)
            {
                if (subWalkInProgress)
                {
                    result.RouteElementIds.Add(routeElementId);

                    if (routeElementId == fromNodeId || routeElementId == toNodeId)
                    {
                        subWalkInProgress = false;
                    }
                }
                else if (routeElementId == fromNodeId || routeElementId == toNodeId)
                {
                    result.RouteElementIds.Add(routeElementId);
                    subWalkInProgress = true;
                }
            }

            if (subWalkInProgress)
            {
                throw new ArgumentException("Never found toNodeId: " + toNodeId);
            }

            return(result);
        }
コード例 #2
0
        public void AddWalkOfInterest(WalkOfInterestInfo walkOfInterest)
        {
            if (_walkOfInterests == null)
            {
                _walkOfInterests = new List <WalkOfInterestInfo>();
            }

            _walkOfInterests.Add(walkOfInterest);
        }