com.esri.arcgis.networkanalyst
Interface INALocationAllocationSolver

All Superinterfaces:
Serializable
All Known Implementing Classes:
NALocationAllocationSolver, NAServerLocationAllocationParams

public interface INALocationAllocationSolver
extends Serializable

Provides access to the location-allocation solver.

Remarks

The INALocationAllocationSolver interface is used by the NALocationAllocationSolver object to access the properties of the Location-Allocation solver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 Object getDefaultCutoff()
          Determines the default cutoff beyond which no demand point can be allocated to a facility
 int getImpedanceTransformation()
          Determines which formula will modify the impedance.
 int getNumberFacilitiesToLocate()
          Determines how many facilities will be present in the solution.
 int getOutputLines()
          Specifies what if any shape geometry will be output
 int getProblemType()
          Specifies which location-allocation problem type to solve.
 double getTargetMarketSharePercentage()
          Applies to the target market share problem, the minimum number of facilites will be placed to obtain the target market share.
 double getTransformationParameter()
          Applies to the impedance transformation.
 int getTravelDirection()
          Specifies which direction the network will be traversed
 void setDefaultCutoff(Object value)
          Determines the default cutoff beyond which no demand point can be allocated to a facility
 void setImpedanceTransformation(int value)
          Determines which formula will modify the impedance.
 void setNumberFacilitiesToLocate(int value)
          Determines how many facilities will be present in the solution.
 void setOutputLines(int value)
          Specifies what if any shape geometry will be output
 void setProblemType(int value)
          Specifies which location-allocation problem type to solve.
 void setTargetMarketSharePercentage(double value)
          Applies to the target market share problem, the minimum number of facilites will be placed to obtain the target market share.
 void setTransformationParameter(double value)
          Applies to the impedance transformation.
 void setTravelDirection(int value)
          Specifies which direction the network will be traversed
 

Method Detail

setTravelDirection

void setTravelDirection(int value)
                        throws IOException,
                               AutomationException
Specifies which direction the network will be traversed

Remarks

TravelDirection can be set to travel from the facility (default) or travel to the facility. This can make a difference in finding the closest facility to a demand point if there are oneway restrictions, turn restrictions, or different travel cost attributes for each side of the street in the network. This property sets and gets the travel direction for the NALocationAllocationSolver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - A com.esri.arcgis.networkanalyst.esriNATravelDirection constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTravelDirection

int getTravelDirection()
                       throws IOException,
                              AutomationException
Specifies which direction the network will be traversed

Remarks

TravelDirection can be set to travel from the facility (default) or travel to the facility. This can make a difference in finding the closest facility to a demand point if there are oneway restrictions, turn restrictions, or different travel cost attributes for each side of the street in the network. This property sets and gets the travel direction for the NALocationAllocationSolver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A com.esri.arcgis.networkanalyst.esriNATravelDirection constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setOutputLines

void setOutputLines(int value)
                    throws IOException,
                           AutomationException
Specifies what if any shape geometry will be output

Remarks

OutputLines specifies the type of lines to be generated by the location-allocation solver. The choice is to generate straight lines, or to generate no lines. This property sets and gets the output line type for the NALocationAllocationSolver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - A com.esri.arcgis.networkanalyst.esriNAOutputLineType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getOutputLines

int getOutputLines()
                   throws IOException,
                          AutomationException
Specifies what if any shape geometry will be output

Remarks

OutputLines specifies the type of lines to be generated by the location-allocation solver. The choice is to generate straight lines, or to generate no lines. This property sets and gets the output line type for the NALocationAllocationSolver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A com.esri.arcgis.networkanalyst.esriNAOutputLineType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setProblemType

void setProblemType(int value)
                    throws IOException,
                           AutomationException
Specifies which location-allocation problem type to solve.

Remarks

ProblemType specifies the type of problem to be solved by the NALocationAllocationSolver.

The choices for the problem type are available via the enum esriNALocationAllocationProblemType are MinimizeWeightedImpedance, MaximizeCoverage, MaximizeCoverageMinimizeFacilities, MaximizeAttendance, MaximizeMarketShare, and TargetMarketShare. This property sets or gets the problem type for the NALocationAllocationSolver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - A com.esri.arcgis.networkanalyst.esriNALocationAllocationProblemType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getProblemType

int getProblemType()
                   throws IOException,
                          AutomationException
Specifies which location-allocation problem type to solve.

Remarks

ProblemType specifies the type of problem to be solved by the NALocationAllocationSolver.

The choices for the problem type are available via the enum esriNALocationAllocationProblemType are MinimizeWeightedImpedance, MaximizeCoverage, MaximizeCoverageMinimizeFacilities, MaximizeAttendance, MaximizeMarketShare, and TargetMarketShare. This property sets or gets the problem type for the NALocationAllocationSolver.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A com.esri.arcgis.networkanalyst.esriNALocationAllocationProblemType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNumberFacilitiesToLocate

int getNumberFacilitiesToLocate()
                                throws IOException,
                                       AutomationException
Determines how many facilities will be present in the solution.

Remarks

The NumberFacilitiesToLocate specifies how many facilities to locate from the existing facilities. Solving for 10 facilities will select the 10 best sites from the existing facilities. Facilities with esriNALocationAllocationFacilityType of esriNALAFTRequired will be chosen before facilities with a status of esriNALAFTCandidate are selected. An error is returned if the number of facilities to locate is less than the number of required facilities.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The value
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setNumberFacilitiesToLocate

void setNumberFacilitiesToLocate(int value)
                                 throws IOException,
                                        AutomationException
Determines how many facilities will be present in the solution.

Remarks

The NumberFacilitiesToLocate specifies how many facilities to locate from the existing facilities. Solving for 10 facilities will select the 10 best sites from the existing facilities. Facilities with esriNALocationAllocationFacilityType of esriNALAFTRequired will be chosen before facilities with a status of esriNALAFTCandidate are selected. An error is returned if the number of facilities to locate is less than the number of required facilities.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - The value (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getDefaultCutoff

Object getDefaultCutoff()
                        throws IOException,
                               AutomationException
Determines the default cutoff beyond which no demand point can be allocated to a facility

Remarks

The DefaultCutoff specifies how far a facility should look to allocate demand points. Any facilities further than the default cutoff are not evaluated. Individual demand points can override this setting with their own cutoff length.

The MaximizeAttendance problem type does not require a cutoff. All other problem types require a cutoff to be specified.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A Variant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setDefaultCutoff

void setDefaultCutoff(Object value)
                      throws IOException,
                             AutomationException
Determines the default cutoff beyond which no demand point can be allocated to a facility

Remarks

The DefaultCutoff specifies how far a facility should look to allocate demand points. Any facilities further than the default cutoff are not evaluated. Individual demand points can override this setting with their own cutoff length.

The MaximizeAttendance problem type does not require a cutoff. All other problem types require a cutoff to be specified.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - A Variant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getImpedanceTransformation

int getImpedanceTransformation()
                               throws IOException,
                                      AutomationException
Determines which formula will modify the impedance.

Remarks

The ImpedanceTransformation specifies the type of scaling to be performed on the results of the OD Cost Matrix computed between the facilities and the demand points. The options for the distance scaling are linear, power and exponential and they can be specified by using the esriNAImpedanceTransformationType enum.

The amount of scaling for each transformation is specified by the TransformationParameter.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
A com.esri.arcgis.networkanalyst.esriNAImpedanceTransformationType constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setImpedanceTransformation

void setImpedanceTransformation(int value)
                                throws IOException,
                                       AutomationException
Determines which formula will modify the impedance.

Remarks

The ImpedanceTransformation specifies the type of scaling to be performed on the results of the OD Cost Matrix computed between the facilities and the demand points. The options for the distance scaling are linear, power and exponential and they can be specified by using the esriNAImpedanceTransformationType enum.

The amount of scaling for each transformation is specified by the TransformationParameter.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - A com.esri.arcgis.networkanalyst.esriNAImpedanceTransformationType constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTransformationParameter

double getTransformationParameter()
                                  throws IOException,
                                         AutomationException
Applies to the impedance transformation.

Remarks

The TransformationParameter specifies the amount of scaling to be done on the distances computed between the facilities and demand points. It type of transformation to be applied is specified by the ImpedanceTransformation.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The value
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTransformationParameter

void setTransformationParameter(double value)
                                throws IOException,
                                       AutomationException
Applies to the impedance transformation.

Remarks

The TransformationParameter specifies the amount of scaling to be done on the distances computed between the facilities and demand points. It type of transformation to be applied is specified by the ImpedanceTransformation.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - The value (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getTargetMarketSharePercentage

double getTargetMarketSharePercentage()
                                      throws IOException,
                                             AutomationException
Applies to the target market share problem, the minimum number of facilites will be placed to obtain the target market share.

Remarks

The TargetMarketSharePercentage specifies the target market share to achieve by the esriNALAPTTargetMarketShare problem type. The Location-Allocation solver finds the minimum number of facilities needed to achieve this market share. The market share is determined by using a Huff (gravity) model. If the target market share can not be achieved then it locates as many facilities to attain the maximum target share possible.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Returns:
The value
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTargetMarketSharePercentage

void setTargetMarketSharePercentage(double value)
                                    throws IOException,
                                           AutomationException
Applies to the target market share problem, the minimum number of facilites will be placed to obtain the target market share.

Remarks

The TargetMarketSharePercentage specifies the target market share to achieve by the esriNALAPTTargetMarketShare problem type. The Location-Allocation solver finds the minimum number of facilities needed to achieve this market share. The market share is determined by using a Huff (gravity) model. If the target market share can not be achieved then it locates as many facilities to attain the maximum target share possible.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Parameters:
value - The value (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.