コマンドライン オプション

Cutting Plannerの欠点はデータ入力が面倒なところにあります。在庫データや、図面など、他のソフトからのデータ移行を容易にするためにコマンドラインオプションでCSVデータを読ませることができます。コマンドラインオプションを活用することで、他のソフトウェアと連携させることができます。.recx ファイル仕様も参照してください。

RectPacker.exe "[filename.recx]" /PartsBoard="[filename.csv]" /SourceBoard="[filename.csv]" /Save="[filename.recx]" /D=[x] /K=[x] /=R=[x] /H=[x] /Run [ ]の 内容を適宜変更します。

スペース付きに対応するため、ファイル名は" "で囲むようにしてください。
アプリのファイル名は旧名のままRectPacker.exeです。

コマンドラインオプションについては複数シートに対応しておりません。コマンドラインが複雑になりすぎるためです。ただし、複数シートが入った.recxファイルを作成することはできます(ファイル形式を参照)。

入力系オプション1

"xxxx.recx" or "xxxx.xml"

起動時に読み込む.recx, xmlファイルを指定します。入力系2のオプションとは同時使用できません。


入力系オプション2

CSV形式のデータを読ませるときは /Problem /K= /R= などの各オプションも重要となります。
指定しなければ以前終了した時の設定となってしまいますので、間違い防止のために、同時指定してください。
テキストの文字コードは Shift-Jis または BOM付きUnicodeテキストの自動判別です。


/Problem=1D or 2D

最適化問題の1次元または2次元を指定します。

/PartsPanel ="xxxx.csv"

起動時に読み込むCSV形式の部材リストを指定します。

特に部材の回転の可否を個別設定している場合は /R=2 にしなければその情報が欠落します。

/StocksPanel ="xxxx.csv"

起動時に読み込むCSV形式の原版リストを指定します。


/SmallSourcePriorityPoint=

小さい方の原版を使用する優先度を指定します。


/FirstUsageStocksPanel ="xxxx.csv"

起動時に読み込むCSV形式の優先使用材リストを指定します。


/LengthFormat=

長さの形式を指定します。フィートインチは米国向け機能です。

ftDecimal, 小数点
ftFeetDecimalInches, フィートと小数点インチ
ftFactionalInches, 分数インチ
ftFeetFractionalInches, フィートと分数インチ


/SameSizePartsMerge=

同一サイズの部材を統合します。統合は 1、別にするときは0を指定。


/Precision=

精度を指定します。小数点の桁数[0, 1, 2]。または分母の値[8, 16, 32, 64, 128]を指定します。
/D=は過去のバージョンの互換性のため、長さの形式が小数点の場合のみ同様に使用可能です。
無指定の場合はCSVデータの内容から自動設定します。

/K=

アサリ寸法を指定します。値の範囲は/Precision= または /D=で指定した小数部分の桁数によります。
無指定の場合は前回終了した時の値が設定されます。


/R=x

回転の可否を 可=0 不可=1 個別=2 で指定します。
特に部材リストのCSVファイルに個別設定の情報がある場合、/R=2 にしなければその情報が欠落することになります。
無指定の場合は前回終了した時の値が設定されます。


/SearchLevel=

配置速度と探索数(配置探索レベル)、値1~5、無指定の場合は前回終了した時の値が設定されます。


/CutTableLength=

切断機の最大切断長・未指定は無制限


/MinimumSearchTime=

最小探索時間。単位は秒。


/Material=

素材名を指定します。ファイル保存させた場合、指定の名前が.xmlファイル内に埋め込まれます。


/Thickness=

厚さを指定します。 ファイル保存させた場合、指定の名前が.xmlファイル内に埋め込まれます。

/TopTrimSize= /BottomTrimSize= /LeftTrimSize= /RightTrimSize=

トリミングのサイズを指定します。

/PartsLayout=

部材の向き 以下のいずれかを指定
LeftTop
LeftBottom
RightTop
RightBottom

出力系

/Run

起動してすぐに配置計算を実行します。終了後、即アプリを終了しますので以下の保存オプションと組み合わせます。
入力には上記の入力系オプションを使用します。


/Save="xxxxxx.recx" or "xxxxxx.xml"

/Runと組み合わせて配置計算の保存先を指定します。


/SavePartsData="xxxxxx.csv"

/Runと組み合わせて[ファイル]-[エクスポート]-[配置済み部材リスト]メニューと同じ内容を出力します。

1次元-部材番号, 長さ, 枚数, コメント, 単価, 未配置枚数

2次元-部材番号, 横, 縦, 枚数, 回転の可否, コメント, 単価, 未配置枚数

で構成されるCSV形式です。


/SaveStocksData="xxxxxx.csv"

/Runと組み合わせて[ファイル]-[エクスポート]-[配置済み原版リスト]メニューと同じ内容を出力します。

1次元-原版番号, 長さ, 使用枚数, コメント, 単価, 優先使用材

2次元-原版番号, 横, 縦, 使用枚数, コメント, 単価, 優先使用材

で構成されるCSV形式です。


/SaveRemnantsData="xxxxxx.csv"

/Runと組み合わせて[ファイル]-[エクスポート]-[端材リスト]メニューと同じ内容を出力します。

1次元-長さ, 枚数

2次元-横, 縦, 枚数

で構成されるCSV形式です。


/ErrorLog="xxxxxx.txt"

コマンドラインオプションに何らかの間違いがあったときのエラー内容をテキストファイルに出力します。
指定したファイルが存在する場合は最後に内容を追加します。
文字コードは/Encoding=オプションに従います。終了コードを参照。


/Encoding=

CSVファイル及びErrorLogの文字コードを指定します。以下のいずれかです。Shift-Jisの場合はANSIを指定します。無指定は ANSI(Shift-Jis)です。
Unicode系はBOM付きテキストファイルとなります。
ANSI、ASCII、Unicode、BigEndianUnicode、UTF8、UTF7

自動印刷系

/Print

コマンドラインで指定のrecxまたは/Runで自動計算させたファイルを印刷して自動で終了します。
これより下のオプションは/Printと同時に指定した場合のみに有効です。


/PrinterOrientation=

用紙の向き 以下のいずれかを指定。/Printと同時に指定した場合のみに有効です。
poPortrait ページを垂直方向に印刷する
poLandscape ページを水平方向に印刷する


/PrinterCopies=

印刷部数を指定します。/Printと同時に指定した場合のみに有効です。


/PrinterName=

使用するプリンタを指定します。スペース付きは""で囲みます。/Printと同時に指定した場合のみに有効です。
例:/PrinterName="Microsoft Print to PDF"


/PrintPort=

"Microsoft Print to PDF" をプリンタに指定したとき、PDFにするファイル名を指定します。スペース付きは""で囲みます。/Printと同時に指定した場合のみに有効です。
例:/PrintPort="D:\Users\UserName\Documents\Test.pdf"

未指定の場合は、印刷したときにファイル名をつけるためのダイアログボックスが表示されます。
この機能は、プリンタドライバ側の仕様に依存します。他のPDF作成ソフトでの動作は確認しておりません。

終了コード

コマンドラインオプションの指定に間違いがあるなど正常に実行できなかった場合は終了コードに0以外の値が設定されます。

以下は終了コードの値と内容、使い方のサンプルです。終了コードは一つしか出ませんので複数を取得したい場合は/ErrorLog=オプションを利用します。

@echo off

RectPacker.exe /Problem=2D /PartsPanel="parts_test.csv" /StocksPanel="stocks_test.csv" /D=1 /K=3 /R=1 /Run

if %ERRORLEVEL% == 11 echo 強制終了されました.

if %ERRORLEVEL% == 21 echo ライセンスがありません.

if %ERRORLEVEL% == 31 echo 配置できなかった部材があります.

if %ERRORLEVEL% == 51 echo 無効な値です:/Problem=

if %ERRORLEVEL% == 52 echo 無効な値です:/D=

if %ERRORLEVEL% == 53 echo 無効な値です:/K=

if %ERRORLEVEL% == 54 echo 無効な値です:/R=

if %ERRORLEVEL% == 55 echo 無効な値です:/SearchLevel=

if %ERRORLEVEL% == 56 echo 無効な値です:/CutTableLength=

if %ERRORLEVEL% == 57 echo 無効な値です:/MinimumSearchTime=

if %ERRORLEVEL% == 58 echo 無効な値です:/SmallSourcePriorityPoint

if %ERRORLEVEL% == 59 echo 無効な値です: /LengthFormat

if %ERRORLEVEL% == 60 echo 無効な値です: /Precision

if %ERRORLEVEL% == 111 echo ファイルが存在しません.:/PartsPanel=

if %ERRORLEVEL% == 112 echo リストの一部に範囲外の値があります.:/PartsPanel=

if %ERRORLEVEL% == 113 echo 無効なデータです.:/PartsPanel=

if %ERRORLEVEL% == 121 echo ファイルが存在しません.:/StocksPanel=

if %ERRORLEVEL% == 122 echo リストの一部に範囲外の値があります.:/StocksPanel=

if %ERRORLEVEL% == 123 echo 無効なデータです.:/StocksPanel=/FirstUsageStocksPanel=

if %ERRORLEVEL% == 131 echo ファイルが存在しません.:/FirstUsageStocksPanel=

if %ERRORLEVEL% == 132 echo リストの一部に範囲外の値があります.:/FirstUsageStocksPanel=

if %ERRORLEVEL% == 141 echo 利用できない名前が指定されています.:/Material=

if %ERRORLEVEL% == 201 echo 無効な値です:/Encoding=';

if %ERRORLEVEL% == 211 echo 配置済み部材データの出力ができませんでした.

if %ERRORLEVEL% == 212 echo 配置済原板データの出力ができませんでした.

if %ERRORLEVEL% == 213 echo 残材データの出力ができませんでした.

if %ERRORLEVEL% == 221 echo エラーコードリストの出力ができませんでした.

if %ERRORLEVEL% == 231 echo 無効な値 部材の向き /PartsLayout= (LeftTop, LeftBottom, RightTop, RightBottom)

if %ERRORLEVEL% == 241 echo 無効なプリンタ名 /PrinterName=

if %ERRORLEVEL% == 242 echo プリンタの指定ができません.

if %ERRORLEVEL% == 243 echo 無効な値 /PrinterOrientation= (poPortrait, poLandscape)

if %ERRORLEVEL% == 244 echo 印刷向きが設定できません.

if %ERRORLEVEL% == 245 echo 無効な値 /PrinterCopies=

if %ERRORLEVEL% == 246 echo 印刷部数の設定ができません.

if %ERRORLEVEL% == 247 echo 印刷でエラーが発生しました.

pause


ウインドウズストアアプリ版でコマンドラインオプションを利用する方法(現在配布しておりません)

本来ストアアプリはコマンドラインオプションを利用できないのですが

"Cutting Planner CMD Support tool" を使うことで利用可能です。

エラーコードは出ませんので/ErrorLog=でファイルにしてから参照します。


使い方:

上記のリンク先からダウンロードする。

CuttingPlannerCMD.exe と StartCuttingPlanner.bat を同じフォルダに入れる。

CuttingPlannerCMD.exe にコマンドラインオプションを付けて実行する。


仕組み:

    1. CuttingPlannerCMD.exe はコマンドラインオプションをテンポラリファイルとして保存し、StartCuttingPlanner.batを起動します。

    2. StartCuttingPlanner.bat はスタートメニューの検索にCutting Planner という文字を直接入れて実行します。

    3. ストアアプリのCutting Plannerは直前に作られたテンポラリファイルを検索しその内容を参照します。

    4. テンポラリファイルを削除します。