トップボーダー トップボーダー トップボーダー
ロゴ ロゴ ロゴ
トップ会社概要旅行業登録票動物取扱業個人情報お問合せお便り通訳ガイド | IT | 猫カフェ

TSP Solver 1.0 COMコンポーネント −リファレンス−

TOPへ

COMコンポーンネント名称

参照設定名称 TspSolver 1.0 タイプ ライブラリ
ProgID(バージョンなし) GNTspSolver.TspSolver
ProgID(バージョン付) GNTspSolver.TspSolver.1
ライブラリの名称 GNTspSolver
クラス名 TspSolver

メソッド/プロパティ一覧

名称 概要
CalcDistanceEUC2D 都市のXY座標から都市間の直線距離距離を計算します。
CheckDistance 都市間の距離をチェックします。
Distance 都市間の距離を返します。
Length 順回路長を返します。
MaxX 都市のX座標の最大値を返します。
MaxY 都市のY座標の最大値を返します。
MinX 都市のX座標の最小値を返します。
MinY 都市のY座標の最小値を返します。
NewTsp 新しいTSPを作成します。
Num 都市数を返します。
PosX 引数idで指定された都市のX座標を返します。
PosY 引数idで指定された都市のY座標を返します。
ReadTourFile 順回路をファイルから読み込みます。
ReadTspFile TSPファイルを読み込みます。
Root 指定されたi番目の順回路の都市idを返します。
RootX 指定されたi番目の順回路の都市のX座標を返します。
RootY 指定されたi番目の順回路の都市のY座標を返します。
SetDistance 都市間の距離を設定します。
SetNodePos 都市idのXY座標を設定します。
Solve TSPを解きます。
WriteTourFile 順回路をファイルへ出力します。
WriteTspFile TSPをファイルへ出力します。

エラー一覧

エラーコード(16進数)内容
ERR_FILE_OPEN80040301ファイルのオープンに失敗しました。ファイルが存在しない可能性があります。
ERR_FILE_READ80040302ファイルのリードに失敗しました。ファイルが壊れている可能性があります。
ERR_FILE_WRITE80040303ファイルのライトに失敗しました。ディスクの空き容量がないかディスクが壊れている可能性があります。
ERR_FILE_FORMAT80040304ファイルのフォーマット異常です。
ERR_NOT_MEMORY80040305メモリが不足しています。
ERR_MAX_NODES80040306最大都市数を超えています。
ERR_RANGE_NODES80040307指定された都市IDは範囲外です。
ERR_RANGE_POS80040308ポジションは0から10000までです。
ERR_RANGE_DISTANCE80040309距離は0から14142までです。
ERR_DONT_SETUP_TSP8004030DTSPが未作成です。
ERR_DONT_SOLVE8004030ESolve関数を実行していません。
ERR_FILE_TYPE8004030F指定されたファイルタイプはサポートしていません。

メソッド/プロパティ詳細

メソッド CalcDistanceEUC2D

形式 obj.CalcDistanceEUC2D
引数なし
戻値なし
エラーERR_DONT_SETUP_TSP
説明objで指定されたTSPSolverオブジェクトの都市間の距離を直線距離で設定します。本メソッドを呼び出す前にNewTSPを実行し、各都市の座標をSetNodePosで設定する必要があります。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

メソッド CheckDistance

形式 obj.CheckDistance
引数なし
戻値long:チェック結果
エラーERR_DONT_SETUP_TSP
説明objで指定されたTSPSolverオブジェクトの都市間の距離を検査します。本バージョンのTSPSolverでは解くことができるTSPに以下の制約があります。
  • 同一の都市の距離は0であること。
  • 異なる都市の距離は0より大きいこと。
  • 都市間の距離は対象であること(行きと帰りが同じ距離)。
チェック結果がOKの場合、本メソッドは0を返します。チェック結果がNGの場合、は 10(同一都市の距離は0でない)、11(異なる都市の距離が0)、12(都市間の距離が対象でない)のうちどれかを返します。また都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

メソッド Distance

形式 obj.Distance(from, to)
引数from long:元都市
to long:先都市
戻値long:都市間の距離
エラーERR_DONT_SETUP_TSP,ERR_RANGE_NODES
説明objで指定されたTSPSolverオブジェクトの都市fromからto間の距離を返します。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。from,toには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。
メソッド/プロパティ一覧へ

メソッド Length

形式 obj.Length
引数なし
戻値long:順回路長
エラーERR_DONT_SOLVE
説明objで解かれた巡回路長を返します。都市の設定をおこなわないで本メソッドを呼び出した場合、およびSolveメソッドを呼び出さないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SOLVE)となります。
メソッド/プロパティ一覧へ

プロパティ MaxX

形式 obj.MaxX
long
エラーERR_DONT_SETUP_TSP
説明objで設定した都市のX座標の最大値を返します。本プロパティは読み込み専用です。都市の設定をおこなわないで本プロパティを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

プロパティ MaxY

形式 obj.MaxY
long
エラーERR_DONT_SETUP_TSP
説明objで設定した都市のY座標の最大値を返します。本プロパティは読み込み専用です。都市の設定をおこなわないで本プロパティを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

プロパティ MinX

形式 obj.MinX
long
エラーERR_DONT_SETUP_TSP
説明objで設定した都市のX座標の最小値を返します。本プロパティは読み込み専用です。都市の設定をおこなわないで本プロパティを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

プロパティ MinY

形式 obj.MinY
long
エラーERR_DONT_SETUP_TSP
説明objで設定した都市のY座標の最小値を返します。本プロパティは読み込み専用です。都市の設定をおこなわないで本プロパティを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

メソッド NewTsp

形式 obj.NewTsp(num)
引数num long:都市数
戻値なし
エラーERR_MAX_NODES
説明 objをnumで指定された都市数でTSPを作成します。個々の都市は乱数により座標が設定され、都市間の距離は直線距離で設定されます。都市数 num が127を超えますとエラー(ERR_MAX_NODES)となります。
本オブジェクトを作成したら、NewTspを呼び出し続けてSetDistanceを呼び出しTSPを作成するかReadTspFileを呼び出してTSPを読み込んで下さい。
メソッド/プロパティ一覧へ

プロパティ Num

形式 obj.Num
long
エラーERR_DONT_SETUP_TSP
説明objで設定した都市数を返します。本プロパティは読み込み専用です。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。
メソッド/プロパティ一覧へ

メソッド PosX

形式 obj.PosX(id)
引数id long:都市id
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_RANGE_NODES
説明 id番目で指定された都市のX座標を返します。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。idには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。 本メソッドを呼び出す場合、あらかじめSetNodePosで都市の座標を設定するか、ReadTspFileで座標が設定されているTSPファイルを指定して下さい。
メソッド/プロパティ一覧へ

メソッド PosY

形式 obj.PosY(id)
引数id long:都市id
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_RANGE_NODES
説明 id番目で指定された都市のY座標を返します。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。idには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。 本メソッドを呼び出す場合、あらかじめSetNodePosで都市の座標を設定するか、ReadTspFileで座標が設定されているTSPファイルを指定して下さい。
メソッド/プロパティ一覧へ

メソッド ReadTourFile

形式 obj.ReadTourFile(TourFilePath)(id)
引数TourFilePath BSTR: ツアーファイルパス
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_FILE_OPEN,ERR_FILE_READ,ERR_RANGE_NODES
説明 巡回路のファイル(ツアーファイル)を読み込みます。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。 ファイルのオープンに失敗(ERR_FILE_OPEN)したり、読み込みに失敗(ERR_FILE_READ)するとエラーとなります。また、読み込むツアーファイルの都市数とobjで設定された都市数が異なるとエラー(ERR_RANGE_NODES)となります。
メソッド/プロパティ一覧へ

メソッド ReadTspFile

形式 obj.ReadTspFile(tspFilePath)(id)
引数tspFilePath BSTR: TSPファイルパス
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_FILE_OPEN,ERR_FILE_READ,ERR_MAX_NODES,ERR_FILE_FORMAT
説明 巡回セールスマン問題ファイル(TSPファイル)を読み込みます。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。 ファイルのオープンに失敗(ERR_FILE_OPEN)したり、読み込みに失敗(ERR_FILE_READ)するとエラーとなります。都市数が127を越えるファイルを読み込みますとエラー(ERR_MAX_NODES)となります。未対応のファイルを読み込むとエラー(ERR_FILE_FORMAT)となります。
メソッド/プロパティ一覧へ

メソッド Root

形式 obj.Root(i)
引数i long:巡回路のi番目の都市
戻値long 都市id
エラーERR_DONT_SOLVE,ERR_RANGE_NODES
説明解かれた巡回路のi番目の都市idを返します。都市の設定をおこなわないで本メソッドを呼び出した場合、およびSolveメソッドを呼び出さないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SOLVE)となります。iには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。
メソッド/プロパティ一覧へ

メソッド RootX

形式 obj.RootX(i)
引数i long:巡回路のi番目の都市
戻値long X座標
エラーERR_DONT_SOLVE,ERR_RANGE_NODES
説明i番目巡回路の都市のX座標を返します。都市の設定をおこなわないで本メソッドを呼び出した場合、およびSolveメソッドを呼び出さないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SOLVE)となります。iには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。
メソッド/プロパティ一覧へ

メソッド RootY

形式 obj.RootY(i)
引数i long:巡回路のi番目の都市
戻値long Y座標
エラーERR_DONT_SOLVE,ERR_RANGE_NODES
説明i番目巡回路の都市のY座標を返します。都市の設定をおこなわないで本メソッドを呼び出した場合、およびSolveメソッドを呼び出さないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SOLVE)となります。iには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。
メソッド/プロパティ一覧へ

メソッド SetDistance

形式 obj.SetDistance( from, to, distance)
引数from long:元都市
to long:先都市
distance long:設定距離
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_RANGE_NODES,ERR_RANGE_DISTANCE
説明都市fromから都市toへの距離distanceを設定します。NewTspを呼び出さず本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。from,toには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。distanceには1〜14142までの値を設定します。範囲外の場合はエラー(ERR_RANGE_DISTANCE)となります。
メソッド/プロパティ一覧へ

メソッド SetNodePos

形式 obj.SetNodePos( id, x, y)
引数id long:設定する都市id
x long:X座標
y long:Y座標
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_RANGE_NODES,ERR_RANGE_POS
説明都市idのX座標とY座標を設定します。NewTspを呼び出さず本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。idには0 から 都市数-1 までを指定します。範囲外の値を指定した場合は、エラー(ERR_RANGE_NODES)となります。x,yには1〜10000までの値を設定します。範囲外の場合はエラー(ERR_RANGE_DISTANCE)となります。 SetNodePosを呼び出し座標を設定しなくてもSetDistanceを呼び出し都市間の距離を設定すれば、巡回セールスマン問題を解くことができます。SetNodePosを呼び出し都市の座標を設定した後、この座標情報を用いて巡回セールスマン問題を呼び出す場合はCalcDistanceEUC2Dを呼び出します。
メソッド/プロパティ一覧へ

メソッド Solve

形式 obj.Solve
引数なし
戻値long 巡回路長
エラーERR_DONT_SETUP_TSP,ERR_RANGE_NODES
説明objで設定された巡回セールスマン問題を解きます。問題によりまして処理時間が長くなる場合があります。通常、都市数が50以下の都市の場合は数秒以内で処理が終わりますが、問題によってはそれ以上処理時間がかかる場合があります。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。都市数が3未満の場合は、エラー(ERR_RANGE_NODES)となります。
メソッド/プロパティ一覧へ

メソッド WriteTourFile

形式 obj.WriteTourFile(TourFilePath)(id)
引数TourFilePath BSTR: ツアーファイルパス
戻値なし
エラーERR_DONT_SOLVE,ERR_FILE_OPEN,ERR_FILE_WRITE,ERR_RANGE_NODES
説明 巡回路のファイル(ツアーファイル)を出力します。Solveメソッドを呼び出さないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SOLVE)となります。 ファイルのオープンに失敗(ERR_FILE_OPEN)したり、書き込みに失敗(ERR_FILE_WRITE)するとエラーとなります。
メソッド/プロパティ一覧へ

メソッド WriteTspFile

形式 obj.WriteTspFile(tspFilePath)(id)
引数tspFilePath BSTR: TSPファイルパス
戻値なし
エラーERR_DONT_SETUP_TSP,ERR_FILE_OPEN,ERR_FILE_WRITE,ERR_MAX_NODES
説明 巡回セールスマン問題ファイル(TSPファイル)を出力します。都市の設定をおこなわないで本メソッドを呼び出した場合は、エラー(ERR_DONT_SETUP_TSP)となります。 ファイルのオープンに失敗(ERR_FILE_OPEN)したり、書き込みに失敗(ERR_FILE_WRITE)するとエラーとなります。
メソッド/プロパティ一覧へ

TOPへ

旅行会社グローバルナビゲーター

Copyright (C) 2004 Global Navigator,INC. All right reserved.