converted_force_hierarchy_beyond_distance, measurement_units) else: report_value_with_units = "{0} {1}".format( force_hierarchy_beyond_distance, distance_attribute_units) arcpy.AddIDMessage("WARNING", 30109) arcpy.AddIDMessage("WARNING", 30127, report_value_with_units) else: arcpy.AddIDMessage("ERROR", 30119, "Force Hierarchy beyond Distance") raise nau.InputError() #Throttling Check 5: Check if the number of barrier features (point, line and polygon) are within maximum allowed load_point_barriers, load_line_barriers, load_polygon_barriers = nau.check_barriers( point_barriers_obj, line_barriers_obj, polygon_barriers_obj, max_features_point_barriers, max_features_line_barriers, max_features_polygon_barriers, desc_nds) ##Perform the closest facility analysis as all throttling conditions are met. #Get the restrictions and accumulate attributes that are valid for the network dataset if restrictions: restrictions_to_use = nau.get_valid_attributes(desc_nds_attributes, restrictions) else: restrictions_to_use = [] #Determine the accumulation attributes to use #Get only the attributes that are valid for the current network dataset. if accumulate_attributes: accumulate_attributes = nau.get_valid_attributes( desc_nds_attributes, accumulate_attributes, "Cost", 30128) #remove time attribute and distance attribute from the list of accumulate attributes as we will manage
convertedForceHierarchyDistanceWithUnits = "%s %s" % (convertedForceHierarchyDistance, breakUnits) arcpy.AddIDMessage("WARNING", 30120,endBreakValue, convertedForceHierarchyDistanceWithUnits) else: arcpy.AddIDMessage("ERROR", 30119, parameterInfo[parameterIndex['forceHierarchyDistance']].displayName) raise nau.InputError() #Check if generating detailed polygons when using hierarchy if useHierarchy and detailedPolygons: arcpy.AddIDMessage("ERROR", 30097, parameterInfo[parameterIndex['detailedPolygons']].displayName) raise nau.InputError() #Thortling Check 4: Check if the number of barrier features (point, line and polygon) #are within maximum allowed loadPointBarriers, loadLineBarriers, loadPolygonBarriers = nau.check_barriers(point_barriers_obj, line_barriers_obj, polygon_barriers_obj, maxPointBarrierCount, maxEdgeCountLineBarriers, maxEdgeCountPolygonBarriers, descNDS) ##Perform the Service Area analysis as all throtlling conditions are met. #We don't want to use extra break when using hierarchy as the solver does this for us. #trimming is not supported when using hierarchy #detailed Polygons are not supported when using hierarchy if useHierarchy: useExtraBreak = False trimPolygons = "NO_TRIM_POLYS" polygonType = "SIMPLE_POLYS" #Add warning messages that trim distance and detailed polygons will not be generated if isTrimDistanceZero == False: arcpy.AddIDMessage("WARNING", 30097, parameterInfo[parameterIndex['trimDistance']].displayName) else: #If a trim distance is specified, we use trimming instead of extra break
else: report_value_with_units = "{0} {1}".format( force_hierarchy_beyond_distance, distance_attribute_units ) arcpy.AddIDMessage("WARNING", 30109) arcpy.AddIDMessage("WARNING", 30127, report_value_with_units) else: arcpy.AddIDMessage("ERROR", 30119, "Force Hierarchy beyond Distance") raise nau.InputError() # Throttling Check 5: Check if the number of barrier features (point, line and polygon) are within maximum allowed load_point_barriers, load_line_barriers, load_polygon_barriers = nau.check_barriers( point_barriers_obj, line_barriers_obj, polygon_barriers_obj, max_features_point_barriers, max_features_line_barriers, max_features_polygon_barriers, desc_nds, ) ##Perform the closest facility analysis as all throttling conditions are met. # Get the restrictions and accumulate attributes that are valid for the network dataset if restrictions: restrictions_to_use = nau.get_valid_attributes(desc_nds_attributes, restrictions) else: restrictions_to_use = [] # Determine the accumulation attributes to use # Get only the attributes that are valid for the current network dataset. if accumulate_attributes: accumulate_attributes = nau.get_valid_attributes(desc_nds_attributes, accumulate_attributes, "Cost", 30128)
arcpy.AddIDMessage( "ERROR", 30119, parameterInfo[ parameterIndex['forceHierarchyDistance']].displayName) raise nau.InputError() #Check if generating detailed polygons when using hierarchy if useHierarchy and detailedPolygons: arcpy.AddIDMessage( "ERROR", 30097, parameterInfo[parameterIndex['detailedPolygons']].displayName) raise nau.InputError() #Thortling Check 4: Check if the number of barrier features (point, line and polygon) #are within maximum allowed loadPointBarriers, loadLineBarriers, loadPolygonBarriers = nau.check_barriers( point_barriers_obj, line_barriers_obj, polygon_barriers_obj, maxPointBarrierCount, maxEdgeCountLineBarriers, maxEdgeCountPolygonBarriers, descNDS) ##Perform the Service Area analysis as all throtlling conditions are met. #We don't want to use extra break when using hierarchy as the solver does this for us. #trimming is not supported when using hierarchy #detailed Polygons are not supported when using hierarchy if useHierarchy: useExtraBreak = False trimPolygons = "NO_TRIM_POLYS" polygonType = "SIMPLE_POLYS" #Add warning messages that trim distance and detailed polygons will not be generated if isTrimDistanceZero == False: arcpy.AddIDMessage( "WARNING", 30097, parameterInfo[parameterIndex['trimDistance']].displayName)