lithop 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +14 -0
- data/Cargo.lock +284 -0
- data/Cargo.toml +6 -0
- data/README.md +34 -13
- data/RELEASING.md +24 -6
- data/docs/README.md +6 -3
- data/docs/artifacts.md +35 -16
- data/docs/bambu-studio.md +17 -11
- data/docs/calibration.md +4 -4
- data/docs/color-model.md +20 -18
- data/docs/command.md +53 -14
- data/docs/config.md +43 -31
- data/docs/getting-started.md +17 -8
- data/docs/images/cmyw-lithophane-preview.png +0 -0
- data/docs/local-ui.md +117 -0
- data/docs/tiling.md +20 -19
- data/docs/troubleshooting.md +12 -2
- data/ext/lithop_native/Cargo.toml +17 -0
- data/ext/lithop_native/build.rs +4 -0
- data/ext/lithop_native/extconf.rb +6 -0
- data/ext/lithop_native/src/column_mesh.rs +388 -0
- data/ext/lithop_native/src/lib.rs +37 -0
- data/ext/lithop_native/src/mesh.rs +187 -0
- data/ext/lithop_native/src/palette.rs +67 -0
- data/ext/lithop_native/src/xml.rs +134 -0
- data/lib/lithop/calibration/export.rb +2 -2
- data/lib/lithop/calibration/target.rb +5 -5
- data/lib/lithop/cli/image_adjustment_options.rb +33 -0
- data/lib/lithop/cli/image_options.rb +5 -18
- data/lib/lithop/cli/options.rb +17 -4
- data/lib/lithop/cli.rb +28 -0
- data/lib/lithop/export/color_metadata.rb +46 -23
- data/lib/lithop/export/generation.rb +38 -27
- data/lib/lithop/export/job.rb +2 -2
- data/lib/lithop/export/metadata.rb +8 -3
- data/lib/lithop/export/planning.rb +82 -45
- data/lib/lithop/export/previews.rb +25 -1
- data/lib/lithop/export/print_readme.rb +20 -4
- data/lib/lithop/formats/three_mf/bambu_metadata.rb +11 -8
- data/lib/lithop/formats/three_mf/mesh.rb +72 -3
- data/lib/lithop/formats/three_mf/model_writer.rb +21 -21
- data/lib/lithop/formats/three_mf/part_writer.rb +37 -0
- data/lib/lithop/formats/three_mf.rb +1 -1
- data/lib/lithop/image/pipeline.rb +84 -31
- data/lib/lithop/image/svg_loader.rb +16 -7
- data/lib/lithop/job_execution.rb +132 -4
- data/lib/lithop/layer_structure.rb +0 -9
- data/lib/lithop/mesh/column_geometry.rb +8 -0
- data/lib/lithop/mesh/column_topology.rb +2 -0
- data/lib/lithop/model/filament_profile.rb +3 -3
- data/lib/lithop/model/material_display_map.rb +2 -1
- data/lib/lithop/model/material_model.rb +17 -5
- data/lib/lithop/model/palette.rb +21 -3
- data/lib/lithop/model/z_region_model.rb +44 -0
- data/lib/lithop/native.rb +39 -0
- data/lib/lithop/settings.rb +147 -15
- data/lib/lithop/settings_file.rb +1 -0
- data/lib/lithop/tiling.rb +3 -2
- data/lib/lithop/version.rb +1 -1
- data/lib/lithop/web/app.rb +517 -0
- data/lib/lithop/web/bambu_studio_launcher.rb +82 -0
- data/lib/lithop/web/job_launcher.rb +214 -0
- data/lib/lithop/web/job_store.rb +390 -0
- data/lib/lithop/web/preview_store.rb +182 -0
- data/lib/lithop/web/public/app.css +330 -0
- data/lib/lithop/web/public/app.js +1949 -0
- data/lib/lithop/web/server.rb +21 -0
- data/lib/lithop/web/settings_form.rb +67 -0
- data/lib/lithop/web/settings_library.rb +154 -0
- data/lib/lithop/web/views/index.erb +418 -0
- data/lib/lithop/web/worker.rb +27 -0
- data/lib/lithop.rb +3 -1
- data/sig/lithop.rbs +41 -0
- metadata +86 -3
- data/lib/lithop/model/layer_region_model.rb +0 -24
data/docs/bambu-studio.md
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
# Bambu Studioでの確認と印刷
|
|
2
2
|
|
|
3
|
-
標準の`lithop.3mf`は、単一`lithophane`プレート、CMYW割り当て、上部Whiteのレイヤー範囲を持ちます。単一プレートとWhite/Cyan/Magenta/Yellow
|
|
3
|
+
標準の`lithop.3mf`は、単一`lithophane`プレート、CMYW割り当て、上部Whiteのレイヤー範囲を持ちます。単一プレートとWhite/Cyan/Magenta/Yellow割り当ての復元に加え、分割なし・分割ありの3MFが正常に開くことをBambu Studioで確認済みです。G-code、温度、速度、AMS実スロット、機種固有の開始・終了コードを含まないため、その他の印刷条件はBambu Studio側で確認します。
|
|
4
4
|
|
|
5
|
-
標準構造は0.2 mmノズル、White下地
|
|
5
|
+
標準構造は0.2 mmノズル、White下地1層0.10 mm、既定YMC順の0.08 mm色領域7層、0.08 mmの連続高White上面を使います。以下の確認をすべて終えるまで印刷を開始しないでください。
|
|
6
6
|
|
|
7
7
|
## 現在の確認範囲
|
|
8
8
|
|
|
9
9
|
- 単一プレートとWhite/Cyan/Magenta/Yellow割り当ての復元は確認済み
|
|
10
10
|
- 0.2 mmノズル、7層構造の細線評価片は問題なく印刷完了
|
|
11
|
-
-
|
|
11
|
+
- カラーチャートは旧0.1 mm積層ピッチで形状欠落がないことを確認済み
|
|
12
|
+
- 現行0.10 mm第1層・0.08 mm積層ピッチでの再スライスと実機確認は未実施
|
|
12
13
|
- 現行140 × 104 mmカラーチャートの0.2 mmノズルによる実機印刷は未実施
|
|
13
14
|
- 120レシピの数値測色は未実施で、測色的一致は保証しない
|
|
14
15
|
|
|
@@ -24,10 +25,14 @@ bundle exec lithop examples/cmy-fine-line.svg --width 20 --height 15 --pixel-siz
|
|
|
24
25
|
|
|
25
26
|
表示された`build/<job_id>/`で、`preview.png`、`PRINT_README.md`、`settings.json`、`manifest.json`を確認してから`lithop.3mf`を開きます。自分のジョブIDと印刷条件は`manifest.json`に記録されています。
|
|
26
27
|
|
|
27
|
-
タイルまたはZ分割ジョブを開く場合は、[3MFタイル分割とZ分割](tiling.md)に従い、対象3MF
|
|
28
|
+
タイルまたはZ分割ジョブを開く場合は、[3MFタイル分割とZ分割](tiling.md)に従い、対象3MF、組み立て座標、生成されたプレート数、材料割り当てを確認します。標準設定の3分割では、色領域を8層に変更し、各プレートの1層目をBase White 0.10 mm、それ以降を0.08 mm積層ピッチにします。Zプレート2は色領域まで、Zプレート3はCMYなしです。Zプレート3はBase White 3層・0.26 mmとTop White 1層以上で、最薄部をWhite合計4層・0.34 mmにします。
|
|
28
29
|
|
|
29
30
|
## 3MFを読み込む
|
|
30
31
|
|
|
32
|
+
macOSで`lithop ui`を使用している場合は、完了ジョブの「成果物 → モデル」にある「Bambu Studioで開く」から対象3MFを渡せます。XY分割ジョブは、分割モデルカードまたは成果物一覧でタイルを1つずつ選びます。画面に成功と表示されても、OSへ起動要求を渡した段階です。Bambu Studioでファイル名、プレート数、材料、寸法を確認してから次へ進んでください。Bambu Studioで既存プロジェクトを開いていると別の3MFが表示されない場合があるため、その場合は現在の作業を確認してから3MFを保存して開きます。
|
|
33
|
+
|
|
34
|
+
ボタンが表示されない環境や起動できない場合は、同じ行の「3MFを保存」を使い、Bambu Studioからファイルを開きます。未保存プロジェクトの確認ダイアログが表示された場合は、現在の編集内容を確認してから操作してください。
|
|
35
|
+
|
|
31
36
|
1. `cmyk_white.stl`ではなく`lithop.3mf`をモデルとして読み込む。
|
|
32
37
|
2. 一つの親オブジェクトの下に、使用材料の部品が同じ位置で組み立てられていることを確認する。
|
|
33
38
|
3. 部品を個別に移動、整列、拡大縮小、結合しない。
|
|
@@ -50,10 +55,10 @@ bundle exec lithop examples/cmy-fine-line.svg --width 20 --height 15 --pixel-siz
|
|
|
50
55
|
| 項目 | 確認内容 |
|
|
51
56
|
| --- | --- |
|
|
52
57
|
| ノズル | 生成時の0.2 mmまたは0.4 mm。既定は0.2 mm |
|
|
53
|
-
| 下地White |
|
|
54
|
-
| 色レイヤー | 既定は0.
|
|
55
|
-
| 色領域 |
|
|
56
|
-
| 上部White |
|
|
58
|
+
| 下地White | 既定は第1層0.10 mmを1層 |
|
|
59
|
+
| 色レイヤー | 既定は0.08 mm |
|
|
60
|
+
| 色領域 | 非分割は7層。Z分割は8層。既定はYellow -> Magenta -> Cyan -> White |
|
|
61
|
+
| 上部White | 色領域直後から0.08 mmでスライス |
|
|
57
62
|
| 充填 | 100 % rectilinear |
|
|
58
63
|
| 向き | 平らな背面をZ=0、完成後は+Z側から見る |
|
|
59
64
|
|
|
@@ -65,9 +70,10 @@ bundle exec lithop examples/cmy-fine-line.svg --width 20 --height 15 --pixel-siz
|
|
|
65
70
|
|
|
66
71
|
レイヤープレビューを下から上まで動かし、すべて確認します。
|
|
67
72
|
|
|
68
|
-
-
|
|
73
|
+
- 非分割とZ分割の各プレートで、最初の1層が0.10 mmの連続したWhiteである
|
|
69
74
|
- 色領域の層数と材料順が`settings.json`、`manifest.json`と一致する
|
|
70
|
-
- 0.
|
|
75
|
+
- 非分割はZ=0.66 mm以上に0.08 mmピッチの連続高White上面がある
|
|
76
|
+
- 3プレートZ分割はZプレート1・2が8層の色領域、Zプレート3がBase White 3層+Top Whiteだけである
|
|
71
77
|
- Cyan、Magenta、Yellowの必要な領域が消えていない
|
|
72
78
|
- 材料同士の重複、穴、孤立領域、浮遊形状がない
|
|
73
79
|
- 画像の上下左右が正しい
|
|
@@ -75,7 +81,7 @@ bundle exec lithop examples/cmy-fine-line.svg --width 20 --height 15 --pixel-siz
|
|
|
75
81
|
|
|
76
82
|
一つでも確認できない場合は印刷を開始しないでください。材料が分かれない場合は[3MFの材料が期待した色に分かれない](troubleshooting.md#3mfの材料が期待した色に分かれない)を参照してください。
|
|
77
83
|
|
|
78
|
-
|
|
84
|
+
非分割の標準ジョブではWhite下地1層0.10 mm、元画像のsRGBから選ぶ0.08 mmのCMY/W色領域7層、その上の0.08 mm Whiteレイヤーを確認します。Z分割では各プレートのBase White第1層0.10 mm、色領域8層、それ以降の共通0.08 mmピッチを確認します。外周、Black部品、写真フレーム、導光板は含みません。
|
|
79
85
|
|
|
80
86
|
## 初回印刷を記録する
|
|
81
87
|
|
data/docs/calibration.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# 色校正
|
|
2
2
|
|
|
3
|
-
Lithopの標準構造は、
|
|
3
|
+
Lithopの標準構造は、0.10 mmのWhite下地1層、0.08 mmピッチの7層CMYW色領域、0.08 mmピッチの連続した上部Whiteで構成されます。未校正出力は材料の表示色を基準にレシピを選ぶため、実際のフィラメント、プリンタ、バックライトを含む測色的一致は保証しません。
|
|
4
4
|
|
|
5
5
|
目視結果で用途を満たす場合、数値校正は不要です。使用する材料と観察条件で透過色を測り、入力色に近いレシピと明るさに対応する厚みを選びたい場合に、任意の実測プロファイルを使用します。
|
|
6
6
|
|
|
@@ -16,11 +16,11 @@ Lithopの標準構造は、2層のWhite下地、7層のCMYW色領域、連続し
|
|
|
16
16
|
| White厚み | `W00`〜`W07`の8段階 |
|
|
17
17
|
| 標準ノズル | 0.2 mm |
|
|
18
18
|
| 第1層/通常レイヤー | 0.1 mm/0.1 mm |
|
|
19
|
-
| 色領域 | 7
|
|
19
|
+
| 色領域 | 7層、既定は`Yellow -> Magenta -> Cyan -> White` |
|
|
20
20
|
|
|
21
21
|
120レシピは、7層をCyan、Magenta、Yellow、Whiteへ配分できる全組み合わせです。レシピは先頭8行の15列を使い、鑑賞面から見て上段左の`R000`から行優先で並びます。各セルは横8.125 mm、縦約11.111 mmです。
|
|
22
22
|
|
|
23
|
-
下段の`W00`から`W07`は、全7色層をWhiteに固定して上部Whiteの厚みだけを変えます。現在の標準設定では、総厚は順に
|
|
23
|
+
下段の`W00`から`W07`は、全7色層をWhiteに固定して上部Whiteの厚みだけを変えます。現在の標準設定では、総厚は順に0.74、0.90、1.06、1.22、1.46、1.62、1.78、1.94 mmです。最薄段は上部White 1層0.08 mmで、明るい色の透過を優先します。値は最小・最大厚さと印刷可能なZ境界から算出されるため、厚さ設定を変更した場合は生成された`calibration-profile.json`の`total_thickness_mm`を正本とします。
|
|
24
24
|
|
|
25
25
|
右端は向き判別用のWhite列で、上端に`TOP`を表示します。下段の未使用セルもWhiteです。`calibration.svg`はパッチID、色、向きを確認する編集可能な配置図です。材料の積層と厚みを持つ印刷データは、同時に生成される`calibration.3mf`です。
|
|
26
26
|
|
|
@@ -32,7 +32,7 @@ Lithopの標準構造は、2層のWhite下地、7層のCMYW色領域、連続し
|
|
|
32
32
|
bundle exec lithop calibrate
|
|
33
33
|
```
|
|
34
34
|
|
|
35
|
-
別の設定ファイルを使う場合は`--config`、別のプロジェクトへ出力する場合は`--project-dir`を指定します。校正片は7
|
|
35
|
+
別の設定ファイルを使う場合は`--config`、別のプロジェクトへ出力する場合は`--project-dir`を指定します。校正片は7層、選択した積層順、相異なるWhite厚みを8段階生成できる厚さ範囲を要求します。積層順を変えた場合は、その順序専用の校正プロファイルを作成してください。画像用の幅、高さ、余白、配置、ピクセルサイズは使用しません。
|
|
36
36
|
|
|
37
37
|
`build/<job_id>-calibration/`へ次の5ファイルを生成します。
|
|
38
38
|
|
data/docs/color-model.md
CHANGED
|
@@ -11,9 +11,11 @@ Lithopは、Cyan、Magenta、Yellow、Whiteの4材料を積み重ね、カラー
|
|
|
11
11
|
| Yellow | PLA Basic Yellow | 10400 | `#FCE300` | C: 3%, M: 9%, Y: 95%, K: 0% | 3 |
|
|
12
12
|
| White | PLA Basic White | 10100 | `#FFFFFF` | C: 0%, M: 0%, Y: 0%, K: 0% | 4 |
|
|
13
13
|
|
|
14
|
-
材料表の表示色はRGB系のHEX(16進カラーコード)であり、隣の列にJapan Color 2001 CoatedでのCMYK
|
|
14
|
+
材料表の表示色はRGB系のHEX(16進カラーコード)であり、隣の列にJapan Color 2001 CoatedでのCMYK変換値を併記しています。いずれも画面や印刷物で材料を識別するための色値で、フィラメントの透過色や光学特性を表すものではありません。通常のJPEG、PNG、SVG入力はsRGBからCMYへ変換します。ただし、入力sRGBが表示色と完全に一致する場合は材料チャンネルの指定値として扱い、`#0086D6`はCyan 7層、`#EC008C`はMagenta 7層、`#FCE300`はYellow 7層へ割り当てます。表示色をWhiteで薄めたチャート色の特殊変換は、`data-lithop-color-encoding="material-display"`をルート要素に持つSVGに限ります。未使用の顔料を省略してもExtruder番号は詰めません。
|
|
15
15
|
|
|
16
|
-
140 mm × 104 mmの`examples/cmy-color-chart.svg
|
|
16
|
+
140 mm × 104 mmの`examples/cmy-color-chart.svg`では、ルート要素の材料表示色マーカーにより、横方向の表示色を図中のCMY配合へ割り当て、縦方向の0〜100%を明暗値として扱います。Yellowを含む列だけでなく、Cyan、Magentaおよび混色の列も5%からCMY配合を保持します。平均CMY濃度が4%以下のごく薄い色差をWhiteのノイズとして除去する処理は既定で無効です。`--suppress-pale-colors`または`suppress_pale_colors: true`で有効にできます。暗い無彩色と茶色い細線はCyan 1層、Magenta 1層、Yellow 1層、White 4層へ割り当てます。明暗値は全色列で共通の上部White連続高へ変換し、Y100だけが別の高さ段階にならないようにします。0%は顔料なしのWhiteです。このマーカーは同梱の材料評価用SVGにだけ指定し、一般画像には指定しません。
|
|
17
|
+
|
|
18
|
+
LED透過確認でYellowが明るすぎる場合は、`yellow_mix_color`と`yellow_mix_percent`でYellow被覆量の一部をCyanまたはMagentaへ置き換えられます。これは材料と光源の組み合わせに応じた任意補正で、既定の0%では無効です。Y100へCyanを20%指定すると目標被覆量はC20/Y80となり、標準7層ではCyan 1層、Yellow 6層が選ばれます。入力RGBとWhite厚さは変えず、CMYWレシピ選択だけを調整します。
|
|
17
19
|
|
|
18
20
|
## 色の作り方
|
|
19
21
|
|
|
@@ -27,7 +29,7 @@ Cyan、Magenta、Yellowは減法混色として扱います。
|
|
|
27
29
|
|
|
28
30
|
標準の色領域7層にCyan、Magenta、Yellow、Whiteを配分すると、120個の整数レシピになります。入力sRGBから求めたCMY被覆量に最も近いレシピを選びます。実際の色は材料の透過率、層数、積層順、光源に依存します。
|
|
29
31
|
|
|
30
|
-
明暗は主に上部White
|
|
32
|
+
明暗は主に上部Whiteの厚さで表します。厚い場所ほどバックライトを通しにくく、暗く見えます。材料表示色マーカー付きSVGのチャート配合には指定された明暗値を使い、それ以外の入力色はRec.601輝度を反転して画像内の最小・最大で正規化します。White上面は連続高のまま生成し、Bambu Studioへ渡すスライス層高は0.08 mmです。
|
|
31
33
|
|
|
32
34
|
## 現行の積層構造
|
|
33
35
|
|
|
@@ -36,24 +38,24 @@ Cyan、Magenta、Yellowは減法混色として扱います。
|
|
|
36
38
|
```text
|
|
37
39
|
+Z / 観察側
|
|
38
40
|
┌─────────────────────────┐
|
|
39
|
-
│ White:
|
|
41
|
+
│ White: 0.66 mm以上で可変 │ 明暗を制御
|
|
40
42
|
├─────────────────────────┤
|
|
41
43
|
│ CMYWレシピ: 標準7層 │ 色相を制御
|
|
42
44
|
├─────────────────────────┤
|
|
43
|
-
│ White: 下地
|
|
45
|
+
│ White: 下地1層 0.10 mm │ 共通の背面
|
|
44
46
|
└─────────────────────────┘
|
|
45
47
|
Z=0 / バックライト側
|
|
46
48
|
```
|
|
47
49
|
|
|
48
50
|
### 下地のWhite
|
|
49
51
|
|
|
50
|
-
最初の
|
|
52
|
+
最初の1層はモデル全体を支える連続したWhiteです。層高は0.10 mmで、平らなバックライト側の面になります。
|
|
51
53
|
|
|
52
54
|
### CMYWの色領域
|
|
53
55
|
|
|
54
|
-
下地の上へ、各0.
|
|
56
|
+
下地の上へ、各0.08 mmの色レイヤーを7層置きます。各XYセル・各高さには4材料のどれか一つだけを割り当て、重複や空洞を作りません。
|
|
55
57
|
|
|
56
|
-
|
|
58
|
+
顔料は既定でバックライト側から`Yellow -> Magenta -> Cyan`の順に並び、残りをWhiteが埋めます。`pigment_order`ではCMY、CYM、MCY、MYC、YCM、YMCの6通りから選択でき、Whiteは常にその後です。
|
|
57
59
|
|
|
58
60
|
| 表現する色 | 色領域7層の例 |
|
|
59
61
|
| ---------- | ------------------------- |
|
|
@@ -67,19 +69,19 @@ Z=0 / バックライト側
|
|
|
67
69
|
|
|
68
70
|
### 明暗を作る上部White
|
|
69
71
|
|
|
70
|
-
|
|
72
|
+
色領域が終わるZ=0.66 mmから、0.08 mmピッチの上部Whiteを置き、上面を連続高にします。材料表示色と同梱カラーチャートの配合色では指定された明暗値を使い、それ以外の入力色ではRec.601輝度を使います。明るい場所は薄く、暗い場所は厚くします。
|
|
71
73
|
|
|
72
74
|
`cmy-color-chart.svg`では同じ明暗行にある全13色列を共通のWhite高さへ変換します。YellowのRGB表示色はほかの材料色より明るく見えますが、Y100だけに別のWhite段差は作りません。高さの比較には`preview.png`の見た目ではなく`thickness.png`を使います。
|
|
73
75
|
|
|
74
76
|
| 領域 | 既定の層数 | Z範囲 |
|
|
75
77
|
| ---------- | ---------: | ------------ |
|
|
76
|
-
| 下地White |
|
|
77
|
-
| CMYW色領域 | 7 | 0.
|
|
78
|
-
| 上部White | 可変 | 0.
|
|
78
|
+
| 下地White | 1 | 0.00–0.10 mm |
|
|
79
|
+
| CMYW色領域 | 7 | 0.10–0.66 mm |
|
|
80
|
+
| 上部White | 可変 | 0.66–1.94 mm |
|
|
79
81
|
|
|
80
|
-
`--separate-z-parts
|
|
82
|
+
`--separate-z-parts`では色領域を8層・0.64 mmへ変更します。各プレートの1層目はBase White 0.10 mm、それ以降は共通の0.08 mm積層ピッチです。3分割時のZプレート3はCMYを含まず、強度確保のためBase Whiteを3層・0.26 mmとします。最薄部はTop White 1層を加えたWhite合計4層・0.34 mmです。積層順は[3MFタイル分割とZ分割](tiling.md)を参照してください。
|
|
81
83
|
|
|
82
|
-
|
|
84
|
+
標準の指定厚さと実効厚さは0.74–1.94 mmです。最薄部は下地White 0.10 mm、色領域0.56 mm、上部White 1層0.08 mmで構成し、明るい色の透過を妨げる余分な上部Whiteを置きません。
|
|
83
85
|
|
|
84
86
|
## 材料別メッシュの関係
|
|
85
87
|
|
|
@@ -89,16 +91,16 @@ Bambu Studioでは一つの親オブジェクトの材料部品として扱い
|
|
|
89
91
|
|
|
90
92
|
## 積層構造の比較結果
|
|
91
93
|
|
|
92
|
-
4層/5層は比較用に指定できます。標準構造は7
|
|
94
|
+
4層/5層は比較用に指定できます。標準構造は0.08 mmの7層`Yellow -> Magenta -> Cyan -> White`です。
|
|
93
95
|
|
|
94
96
|
| 項目 | 標準構造 | 比較可能な代替構造 |
|
|
95
97
|
| ------ | ------------------------- | ------------------------- |
|
|
96
98
|
| 色領域 | 7層 | 4層または5層 |
|
|
97
|
-
| 顔料順 |
|
|
98
|
-
| 下地 | White
|
|
99
|
+
| 顔料順 | Yellow -> Magenta -> Cyan | CMY、CYM、MCY、MYC、YCM |
|
|
100
|
+
| 下地 | White 1層、0.10 mm | White 1層、0.10 mm |
|
|
99
101
|
| 上部 | 可変厚のWhite | 可変厚のWhite |
|
|
100
102
|
|
|
101
|
-
`--color-layer-count`と`--pigment-order
|
|
103
|
+
`--color-layer-count`と`--pigment-order`で比較構造を再生成できます。ローカルUIでは「基本設定」の「色の積層順」から選択します。順序はバックライト側から観察側の向きです。
|
|
102
104
|
|
|
103
105
|
## 現在の制約
|
|
104
106
|
|
data/docs/command.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# コマンドリファレンス
|
|
2
2
|
|
|
3
|
-
このページはCLI構文とオプションの正本です。実行中の版では`lithop --help`、`lithop calibrate --help`、`lithop clean --help
|
|
3
|
+
このページはCLI構文とオプションの正本です。実行中の版では`lithop --help`、`lithop calibrate --help`、`lithop ui --help`、`lithop clean --help`でも確認できます。`lithop doctor`はRust拡張の状態をJSONで表示します。ソースチェックアウトでは、例の`lithop`を`bundle exec lithop`に読み替えてください。
|
|
4
4
|
|
|
5
5
|
## 画像からリトファンを生成する
|
|
6
6
|
|
|
@@ -25,8 +25,8 @@ Usage: lithop IMAGE [options]
|
|
|
25
25
|
| `--tile-layout MODE` | String | `auto` | `auto`、`columns`、`rows`、`grid`から配置を選ぶ |
|
|
26
26
|
| `--tile-rows COUNT` | Integer | なし | `grid`配置の行数を指定する |
|
|
27
27
|
| `--tile-columns COUNT` | Integer | なし | `grid`配置の列数を指定する |
|
|
28
|
-
| `--separate-z-parts` | — | 無効 |
|
|
29
|
-
| `--color-region-parts COUNT` | Integer | `3` |
|
|
28
|
+
| `--separate-z-parts` | — | 無効 | CMYWモデルを連続Zプレートへ分割し、強度に応じたBase Whiteを追加する |
|
|
29
|
+
| `--color-region-parts COUNT` | Integer | `3` | Zプレート数を1〜3で指定する。3分割時のZプレート3はWhite合計4層、最小0.34 mm |
|
|
30
30
|
| `--margin-top MM` | Float | `0` | 上側のWhite余白をmm単位で指定する |
|
|
31
31
|
| `--margin-right MM` | Float | `0` | 右側のWhite余白をmm単位で指定する |
|
|
32
32
|
| `--margin-bottom MM` | Float | `0` | 下側のWhite余白をmm単位で指定する |
|
|
@@ -38,16 +38,20 @@ Usage: lithop IMAGE [options]
|
|
|
38
38
|
| `--brightness PERCENT` | Float | `0` | sRGB明るさを`-100`〜`100`で補正する |
|
|
39
39
|
| `--contrast PERCENT` | Float | `0` | sRGBコントラストを`-100`〜`100`で補正する |
|
|
40
40
|
| `--saturation PERCENT` | Float | `0` | sRGB彩度を`-100`〜`100`で補正する |
|
|
41
|
-
| `--
|
|
42
|
-
| `--
|
|
41
|
+
| `--suppress-pale-colors` | — | 無効 | ごく薄い色をWhiteへ落とす |
|
|
42
|
+
| `--no-suppress-pale-colors` | — | — | ごく薄い色もCMYレイヤー候補として残す |
|
|
43
|
+
| `--yellow-mix-color COLOR` | String | `cyan` | Yellowへ混ぜる色を`cyan`または`magenta`から選ぶ |
|
|
44
|
+
| `--yellow-mix-percent PERCENT` | Float | `0` | Yellow被覆量から選択色へ置き換える割合を`0`〜`100`で指定する |
|
|
45
|
+
| `--min-thickness MM` | Float | `0.74` | 要求最小厚さをmm単位で指定する |
|
|
46
|
+
| `--max-thickness MM` | Float | `1.94` | 要求最大厚さをmm単位で指定する |
|
|
43
47
|
| `--pixel-size MM` | Float | `0.22` | XYセル寸法をmm単位で指定する |
|
|
44
48
|
| `--color-pixel-size MM` | Float | `--pixel-size`と同じ | `--pixel-size`以上のCMYW色セル寸法を指定する |
|
|
45
49
|
| `--first-layer-height MM` | Float | `0.1` | 下地Whiteの層高をmm単位で指定する |
|
|
46
|
-
| `--layer-height MM` | Float | `0.
|
|
50
|
+
| `--layer-height MM` | Float | `0.08` | CMYW色領域の積層ピッチを指定する |
|
|
47
51
|
| `--nozzle-diameter MM` | Float | `0.2` | ノズル径を`0.2`または`0.4`から選ぶ |
|
|
48
52
|
| `--color-model MODEL` | String | `cmy` | 色モデルを指定する。現在は`cmy`のみ |
|
|
49
|
-
| `--color-layer-count COUNT` | Integer | `7` | 色領域を`4`層、`5`層、`7
|
|
50
|
-
| `--pigment-order LIST` | String | `
|
|
53
|
+
| `--color-layer-count COUNT` | Integer | `7` | 色領域を`4`層、`5`層、`7`層、`8`層から選ぶ。Z分割時は`8`層へ固定する |
|
|
54
|
+
| `--pigment-order LIST` | String | `yellow,magenta,cyan` | バックライト側からの顔料順。CMY、CYM、MCY、MYC、YCM、YMC |
|
|
51
55
|
| `--config FILE` | Path | `PROJECT/config/settings.json` | 入力設定JSONを明示する |
|
|
52
56
|
| `--project-dir DIR` | Path | 現在のディレクトリ | 設定を読み、`build/`を作るプロジェクトを選ぶ |
|
|
53
57
|
| `--calibration-profile FILE` | Path | なし | 完了した実測プロファイルを選ぶ |
|
|
@@ -102,6 +106,18 @@ lithop image.png --image-fit contain
|
|
|
102
106
|
lithop image.png --brightness 10 --contrast 15 --saturation 20
|
|
103
107
|
```
|
|
104
108
|
|
|
109
|
+
ごく薄い色をWhiteとして扱いたい場合は、淡色のWhite化を有効にします。
|
|
110
|
+
|
|
111
|
+
```sh
|
|
112
|
+
lithop image.png --suppress-pale-colors
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Yellowの光透過を抑えるため、その被覆量の20%をCyanへ置き換えます。7層では最寄りのCyan 1層、Yellow 6層へ量子化されます。
|
|
116
|
+
|
|
117
|
+
```sh
|
|
118
|
+
lithop examples/cmy-color-chart.svg --yellow-mix-color cyan --yellow-mix-percent 20
|
|
119
|
+
```
|
|
120
|
+
|
|
105
121
|
別のプロジェクトと入力設定を使います。
|
|
106
122
|
|
|
107
123
|
```sh
|
|
@@ -131,7 +147,7 @@ in /absolute/path/to/build/<job_id>
|
|
|
131
147
|
|
|
132
148
|
## 校正片を生成する
|
|
133
149
|
|
|
134
|
-
標準の7
|
|
150
|
+
標準の7層と選択した積層順について、全120レシピとWhite厚み8段階を持つ140 × 104 mmの校正SVGと、同じ配置の印刷用3MFを生成します。既定はYMCで、画像は指定しません。
|
|
135
151
|
|
|
136
152
|
```text
|
|
137
153
|
Usage: lithop calibrate [options]
|
|
@@ -139,14 +155,14 @@ Usage: lithop calibrate [options]
|
|
|
139
155
|
|
|
140
156
|
| オプション | 型 | 既定値 | 説明 |
|
|
141
157
|
| --- | --- | ---: | --- |
|
|
142
|
-
| `--min-thickness MM` | Float | `
|
|
143
|
-
| `--max-thickness MM` | Float | `
|
|
158
|
+
| `--min-thickness MM` | Float | `0.74` | 要求最小厚さを指定する |
|
|
159
|
+
| `--max-thickness MM` | Float | `1.94` | 要求最大厚さを指定する |
|
|
144
160
|
| `--first-layer-height MM` | Float | `0.1` | 下地Whiteの層高を指定する |
|
|
145
|
-
| `--layer-height MM` | Float | `0.
|
|
161
|
+
| `--layer-height MM` | Float | `0.08` | CMYW色領域の積層ピッチを指定する |
|
|
146
162
|
| `--nozzle-diameter MM` | Float | `0.2` | ノズル径を`0.2`または`0.4`から選ぶ |
|
|
147
163
|
| `--color-model MODEL` | String | `cmy` | 色モデルを指定する |
|
|
148
164
|
| `--color-layer-count COUNT` | Integer | `7` | 色領域の層数を指定する |
|
|
149
|
-
| `--pigment-order LIST` | String | `
|
|
165
|
+
| `--pigment-order LIST` | String | `yellow,magenta,cyan` | バックライト側からの顔料順を指定する |
|
|
150
166
|
| `--config FILE` | Path | `PROJECT/config/settings.json` | 入力設定JSONを明示する |
|
|
151
167
|
| `--project-dir DIR` | Path | 現在のディレクトリ | 設定と出力先のプロジェクトを選ぶ |
|
|
152
168
|
| `-v`, `--version` | — | — | バージョンを表示して終了する |
|
|
@@ -158,6 +174,27 @@ lithop calibrate
|
|
|
158
174
|
|
|
159
175
|
固定レイアウトで入力画像を使わないため、画像用の`width`、`height`、`margin_*`、画像配置、明るさ・コントラスト・彩度、`pixel_size`、`color_pixel_size`、`maximum_input_pixels`は使いません。生成物は[校正ジョブのファイル](artifacts.md#校正ジョブのファイル)、測定方法は[色校正](calibration.md)を参照してください。
|
|
160
176
|
|
|
177
|
+
## ローカルUIを起動する
|
|
178
|
+
|
|
179
|
+
画像選択、主要設定、プレビュー、進捗・中止、成果物表示を行うブラウザUIを`127.0.0.1`で起動します。
|
|
180
|
+
|
|
181
|
+
```text
|
|
182
|
+
Usage: lithop ui [--project-dir DIR] [--port PORT]
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
| オプション | 型 | 既定値 | 説明 |
|
|
186
|
+
| --- | --- | ---: | --- |
|
|
187
|
+
| `--project-dir DIR` | Path | 現在のディレクトリ | 設定を読み、`build/`を作るプロジェクトを選ぶ |
|
|
188
|
+
| `--port PORT` | Integer | `4567` | ローカルUIのポートを1〜65535で指定する |
|
|
189
|
+
| `-v`, `--version` | — | — | バージョンを表示して終了する |
|
|
190
|
+
| `-h`, `--help` | — | — | ヘルプを表示して終了する |
|
|
191
|
+
|
|
192
|
+
```sh
|
|
193
|
+
lithop ui
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
表示された`http://127.0.0.1:4567`をブラウザで開きます。詳細は[ローカルブラウザUI](local-ui.md)を参照してください。
|
|
197
|
+
|
|
161
198
|
## 生成物を削除する
|
|
162
199
|
|
|
163
200
|
### 構文
|
|
@@ -181,13 +218,15 @@ lithop clean --project-dir /path/to/project
|
|
|
181
218
|
|
|
182
219
|
`build/`がなければ正常終了します。ファイルシステムのルート、`build`自体がシンボリックリンク、または`build`がディレクトリではない場合は削除を拒否します。
|
|
183
220
|
|
|
184
|
-
##
|
|
221
|
+
## バージョン、診断、ヘルプを表示する
|
|
185
222
|
|
|
186
223
|
| コマンド | 内容 |
|
|
187
224
|
| --- | --- |
|
|
188
225
|
| `lithop --version` | バージョンを表示する。短縮形は`lithop -v` |
|
|
226
|
+
| `lithop doctor` | Rustバックエンドのロード・有効状態、拡張とLithopのバージョン、Ruby、実行プラットフォームをJSONで表示する |
|
|
189
227
|
| `lithop --help` | 通常生成の構文とオプションを表示する |
|
|
190
228
|
| `lithop calibrate --help` | 校正片生成の構文とオプションを表示する |
|
|
229
|
+
| `lithop ui --help` | ローカルUIの起動オプションを表示する |
|
|
191
230
|
| `lithop clean --help` | 削除コマンドの構文とオプションを表示する |
|
|
192
231
|
|
|
193
232
|
## 終了ステータスとエラー
|
data/docs/config.md
CHANGED
|
@@ -33,8 +33,11 @@
|
|
|
33
33
|
"brightness": 0.0,
|
|
34
34
|
"contrast": 0.0,
|
|
35
35
|
"saturation": 0.0,
|
|
36
|
-
"
|
|
37
|
-
"
|
|
36
|
+
"suppress_pale_colors": false,
|
|
37
|
+
"yellow_mix_color": "cyan",
|
|
38
|
+
"yellow_mix_percent": 0.0,
|
|
39
|
+
"minimum_thickness": 0.74,
|
|
40
|
+
"maximum_thickness": 1.94,
|
|
38
41
|
"pixel_size": 0.5,
|
|
39
42
|
"color_pixel_size": null,
|
|
40
43
|
"grid_columns": null,
|
|
@@ -46,16 +49,16 @@
|
|
|
46
49
|
"separate_z_parts": false,
|
|
47
50
|
"color_region_parts": 3,
|
|
48
51
|
"first_layer_height": 0.1,
|
|
49
|
-
"layer_height": 0.
|
|
50
|
-
"base_white_layers":
|
|
51
|
-
"top_layer_height": 0.
|
|
52
|
-
"top_white_start":
|
|
53
|
-
"minimum_top_white_layers":
|
|
54
|
-
"exact_maximum_thickness":
|
|
52
|
+
"layer_height": 0.08,
|
|
53
|
+
"base_white_layers": 1,
|
|
54
|
+
"top_layer_height": 0.08,
|
|
55
|
+
"top_white_start": null,
|
|
56
|
+
"minimum_top_white_layers": 1,
|
|
57
|
+
"exact_maximum_thickness": false,
|
|
55
58
|
"nozzle_diameter": 0.2,
|
|
56
59
|
"color_model": "cmy",
|
|
57
60
|
"color_layer_count": 7,
|
|
58
|
-
"pigment_order": ["
|
|
61
|
+
"pigment_order": ["yellow", "magenta", "cyan"],
|
|
59
62
|
"bambu_project": true
|
|
60
63
|
}
|
|
61
64
|
```
|
|
@@ -96,8 +99,11 @@ lithop image.png --config presets/fine.json
|
|
|
96
99
|
| `brightness` | `--brightness PERCENT` | `0.0` | sRGB明るさ補正。`-100`〜`100` |
|
|
97
100
|
| `contrast` | `--contrast PERCENT` | `0.0` | sRGBコントラスト補正。`-100`〜`100` |
|
|
98
101
|
| `saturation` | `--saturation PERCENT` | `0.0` | sRGB彩度補正。`-100`〜`100` |
|
|
99
|
-
| `
|
|
100
|
-
| `
|
|
102
|
+
| `suppress_pale_colors` | `--suppress-pale-colors` / `--no-suppress-pale-colors` | `false` | ごく薄い色をWhiteへ落とす |
|
|
103
|
+
| `yellow_mix_color` | `--yellow-mix-color COLOR` | `cyan` | Yellowへ混ぜる`cyan`または`magenta` |
|
|
104
|
+
| `yellow_mix_percent` | `--yellow-mix-percent PERCENT` | `0.0` | Yellow被覆量から選択色へ置き換える割合。`0`〜`100` |
|
|
105
|
+
| `minimum_thickness` | `--min-thickness MM` | `0.74` | 要求最小厚さmm。上部White 1層を含む |
|
|
106
|
+
| `maximum_thickness` | `--max-thickness MM` | `1.94` | 要求最大厚さmm。ローカルUIでは0.01 mm刻み |
|
|
101
107
|
| `pixel_size` | `--pixel-size MM` | `0.22` | XYセル寸法mm |
|
|
102
108
|
| `color_pixel_size` | `--color-pixel-size MM` | `null` | `pixel_size`以上のCMYW色セル寸法。`null`は同じ寸法 |
|
|
103
109
|
| `grid_columns` | なし | `637` | fit格子の列数。寸法または`pixel_size`指定時は未指定扱い |
|
|
@@ -106,19 +112,19 @@ lithop image.png --config presets/fine.json
|
|
|
106
112
|
| `tile_layout` | `--tile-layout MODE` | `auto` | `auto`、`columns`、`rows`、`grid` |
|
|
107
113
|
| `tile_rows` | `--tile-rows COUNT` | `null` | `grid`配置の行数 |
|
|
108
114
|
| `tile_columns` | `--tile-columns COUNT` | `null` | `grid`配置の列数 |
|
|
109
|
-
| `separate_z_parts` | `--separate-z-parts` | `false` |
|
|
110
|
-
| `color_region_parts` | `--color-region-parts COUNT` | `3` | Z
|
|
111
|
-
| `first_layer_height` | `--first-layer-height MM` | `0.1` | 下地White
|
|
112
|
-
| `layer_height` | `--layer-height MM` | `0.
|
|
113
|
-
| `base_white_layers` | なし | `
|
|
114
|
-
| `top_layer_height` | なし | `0.
|
|
115
|
-
| `top_white_start` | なし | `
|
|
116
|
-
| `minimum_top_white_layers` | なし | `
|
|
117
|
-
| `exact_maximum_thickness` | なし | `
|
|
115
|
+
| `separate_z_parts` | `--separate-z-parts` | `false` | CMYWモデルを連続Zプレートへ分割し、強度に応じたBase Whiteを追加する |
|
|
116
|
+
| `color_region_parts` | `--color-region-parts COUNT` | `3` | Zプレート数。3分割時のZプレート3はWhite合計4層、最小0.34 mm |
|
|
117
|
+
| `first_layer_height` | `--first-layer-height MM` | `0.1` | 下地White第1層の層高mm |
|
|
118
|
+
| `layer_height` | `--layer-height MM` | `0.08` | CMYW色領域の積層ピッチmm |
|
|
119
|
+
| `base_white_layers` | なし | `1` | 色領域より下のWhite層数 |
|
|
120
|
+
| `top_layer_height` | なし | `0.08` | 上部Whiteのスライス層高 |
|
|
121
|
+
| `top_white_start` | なし | `null` | 上部Whiteの開始Z。`null`は色領域直後 |
|
|
122
|
+
| `minimum_top_white_layers` | なし | `1` | 上部Whiteに必要な最小層数 |
|
|
123
|
+
| `exact_maximum_thickness` | なし | `false` | 最大厚みを正確に残すか。既定は印刷境界へ切り下げる |
|
|
118
124
|
| `nozzle_diameter` | `--nozzle-diameter MM` | `0.2` | `0.2`または`0.4` |
|
|
119
125
|
| `color_model` | `--color-model MODEL` | `cmy` | 現在はCMYのみ |
|
|
120
|
-
| `color_layer_count` | `--color-layer-count COUNT` | `7` | 色領域の4層、5層、7
|
|
121
|
-
| `pigment_order` | `--pigment-order LIST` | `["
|
|
126
|
+
| `color_layer_count` | `--color-layer-count COUNT` | `7` | 色領域の4層、5層、7層、8層。Z分割時は8層へ固定する |
|
|
127
|
+
| `pigment_order` | `--pigment-order LIST` | `["yellow", "magenta", "cyan"]` | バックライト側からの順序。6通りのCMY順列 |
|
|
122
128
|
| `bambu_project` | なし | `true` | 単一プレートのBambuプロジェクト情報を追加するか |
|
|
123
129
|
| `maximum_input_pixels` | なし | `20000000` | ラスター入力、またはSVGの描画面の総画素数上限 |
|
|
124
130
|
| `maximum_triangles` | なし | `5000000` | 推定STLと実際のCMYW 3MFの三角形数上限 |
|
|
@@ -127,7 +133,7 @@ lithop image.png --config presets/fine.json
|
|
|
127
133
|
|
|
128
134
|
## 標準構造
|
|
129
135
|
|
|
130
|
-
`standard`は、外周なしの構造を使います。幅140 mm、高さ104 mm、637 × 473の均等fit格子、White下地
|
|
136
|
+
`standard`は、外周なしの構造を使います。幅140 mm、高さ104 mm、637 × 473の均等fit格子、White下地1層0.10 mm、0.08 mmの色領域7層、色領域直後から0.08 mmでスライスする連続高のWhite上面、最大Z 1.94 mm、0.2 mmノズル、単一`lithophane`プレートを設定します。最薄部の上部Whiteを1層に抑えた実効厚さは0.74–1.94 mmです。White上面は、材料表示色とチャート配合では指定された明暗値、それ以外の入力色ではRec.601輝度から求めます。Black、写真フレーム、導光板は出力しません。
|
|
131
137
|
|
|
132
138
|
```sh
|
|
133
139
|
lithop path/to/image.jpeg
|
|
@@ -143,6 +149,10 @@ SVGでは、通常の厚さ格子と`color_pixel_size`を指定した色格子
|
|
|
143
149
|
|
|
144
150
|
`brightness`、`contrast`、`saturation`はJPEG、PNG、SVGをsRGBへ正規化した後、格子へサンプリングする前にこの順で適用します。単位は百分率で、`0`は無補正です。明るさはRGB値へ加算し、コントラストは50%グレーを中心に、彩度はRec.601輝度を中心に調整します。`-100`はそれぞれ黒方向、コントラストなし、無彩色となり、`100`は既定量の2倍です。範囲外の値はクリップされます。同じ補正済み画像をWhite厚さとCMYW色選択で共有します。
|
|
145
151
|
|
|
152
|
+
`suppress_pale_colors`は既定で`false`です。`true`または`--suppress-pale-colors`を指定すると、平均CMY濃度が4%以下のごく薄い色差を、色相によらずWhiteとして扱います。無効でも、7層の量子化でWhiteの方が近い色はWhiteレシピになります。特定画像の淡色調整には`brightness`、`contrast`、`saturation`を使用します。
|
|
153
|
+
|
|
154
|
+
`yellow_mix_percent`はYellowの光透過を材料と光源に合わせて補正する任意設定で、既定の`0`では変更しません。`yellow_mix_color`で`cyan`または`magenta`を選び、各セルのYellow被覆量のうち指定割合をその色へ置き換えてから最寄りのCMYWレシピを選びます。たとえばCyan 20%ではY100の目標がC20/Y80になります。色領域が7層なら実際の配分は1層単位(約14.3%刻み)へ量子化されるため、20%はCyan 1層、Yellow 6層になります。White厚さは変更しません。
|
|
155
|
+
|
|
146
156
|
`color_pixel_size`を指定すると、White厚さは`pixel_size`の格子で保ったまま、各色セル内の厚さセルが同じCMYWレシピを使います。色セルはモデル原点から独立して区切り、端には部分セルを残します。未指定時は従来どおり厚さと色が同じ格子です。
|
|
147
157
|
|
|
148
158
|
タイル配置の選択、座標、Z分割のプレート構成、併用時の成果物は[3MFタイル分割とZ分割](tiling.md)を参照してください。
|
|
@@ -173,7 +183,9 @@ lithop images/page.png --project-dir output/book
|
|
|
173
183
|
- `grid_columns`と`grid_rows`が同時に指定されていない、または正の整数ではない
|
|
174
184
|
- `tile_count`が1以上の整数ではない、配置名が不明、`grid`の行数 × 列数が総数と一致しない
|
|
175
185
|
- 行数または列数がXYセル数を超え、幅または高さが0セルになるタイルがある
|
|
176
|
-
- `separate_z_parts`が真偽値ではない、または`color_region_parts`が1
|
|
186
|
+
- `separate_z_parts`が真偽値ではない、または`color_region_parts`が1〜3の整数ではない
|
|
187
|
+
- `suppress_pale_colors`が真偽値ではない
|
|
188
|
+
- `yellow_mix_color`が`cyan`または`magenta`ではない、または`yellow_mix_percent`が0〜100の有限値ではない
|
|
177
189
|
- Z分離時に上部Whiteの最小厚さが0になる
|
|
178
190
|
- `color_pixel_size`が`null`でも`pixel_size`以上の正の有限値でもない
|
|
179
191
|
- `image_fit`が`cover`または`contain`ではない
|
|
@@ -182,7 +194,7 @@ lithop images/page.png --project-dir output/book
|
|
|
182
194
|
- 要求最小厚さが要求最大厚さを超える
|
|
183
195
|
- ノズル径が0.2または0.4ではない
|
|
184
196
|
- 色モデルが`cmy`ではない
|
|
185
|
-
- 色領域が4層、5層、7層のいずれでもない
|
|
197
|
+
- 色領域が4層、5層、7層、8層のいずれでもない
|
|
186
198
|
- 顔料順にCyan、Magenta、Yellowが各1回含まれない
|
|
187
199
|
- 余白が負、非数、または左右・上下の合計が画像領域を残さない
|
|
188
200
|
- 要求厚さ内に印刷可能なレイヤー境界がない
|
|
@@ -195,21 +207,21 @@ lithop images/page.png --project-dir output/book
|
|
|
195
207
|
要求厚さは、第1層と通常レイヤーで構成できるZ境界へ丸めます。実効最小厚さは要求値以上の最初の境界、実効最大厚さは要求値以下の最後の境界です。
|
|
196
208
|
|
|
197
209
|
```text
|
|
198
|
-
requested:
|
|
199
|
-
effective:
|
|
210
|
+
requested: 0.74–1.94 mm
|
|
211
|
+
effective: 0.74–1.94 mm
|
|
200
212
|
```
|
|
201
213
|
|
|
202
|
-
|
|
214
|
+
非分割の標準構造では、0.0〜0.1 mmをWhite下地、0.1〜0.66 mmを7層の色領域、0.66 mm以上を0.08 mm刻みのTop Whiteとして扱います。Z分割では色領域を8層へ固定し、0.1〜0.74 mmを色領域、0.74 mm以上をTop Whiteとして扱います。既定の最大厚み1.94 mmは印刷可能な境界と一致します。
|
|
203
215
|
|
|
204
216
|
## 積層構造の比較
|
|
205
217
|
|
|
206
|
-
`color_layer_count`と`pigment_order
|
|
218
|
+
`color_layer_count`と`pigment_order`は、非分割の標準7層・YMC順と、比較用の4層・5層・8層や別順序を再現する設定です。`pigment_order`はCMY、CYM、MCY、MYC、YCM、YMCから選べます。Z分割時の`color_layer_count`は8層へ固定されます。Whiteは顔料列の後ろに固定されます。
|
|
207
219
|
|
|
208
220
|
## 校正片に使う設定
|
|
209
221
|
|
|
210
222
|
`lithop calibrate`は、厚さ、ノズル、レイヤー高さ、色モデル、色領域の層数、顔料順、三角形数上限を設定から読みます。固定レイアウトで入力画像を使わないため、`width`、`height`、`margin_*`、画像配置、明るさ・コントラスト・彩度、`pixel_size`、`color_pixel_size`、`maximum_input_pixels`は使いません。
|
|
211
223
|
|
|
212
|
-
現在の校正片は7
|
|
224
|
+
現在の校正片は7層と選択した`pigment_order`、White厚みを8段階取れる範囲を要求します。通常生成で使う`--calibration-profile`は入力設定キーではなくCLIオプションです。詳しくは[色校正](calibration.md)を参照してください。
|
|
213
225
|
|
|
214
226
|
## 出力される settings.json
|
|
215
227
|
|
|
@@ -225,4 +237,4 @@ effective: 1.0–2.14689422 mm
|
|
|
225
237
|
|
|
226
238
|
## 情報表示オプション
|
|
227
239
|
|
|
228
|
-
`--help
|
|
240
|
+
`--help`、`--version`、`doctor`の対応は[バージョン、診断、ヘルプを表示する](command.md#バージョン診断ヘルプを表示する)を参照してください。
|
data/docs/getting-started.md
CHANGED
|
@@ -4,24 +4,27 @@ Lithopは、画像からカラーLithophane(リトファン)の3MFとWhite
|
|
|
4
4
|
|
|
5
5
|
## 準備
|
|
6
6
|
|
|
7
|
-
- macOS
|
|
7
|
+
- macOS(CIはmacOS/Ruby 4.0、現在の実測環境はApple silicon)
|
|
8
8
|
- Ruby 4.0以上
|
|
9
|
+
- CMYWレシピ選択用ネイティブ拡張をビルドするRust
|
|
9
10
|
- JPEG、PNG、SVG(librsvg)、ICCプロファイルを扱えるlibvips
|
|
10
11
|
- 印刷する場合はBambu Studio、AMS対応プリンタ、必要なCMYWフィラメント
|
|
11
12
|
|
|
12
|
-
標準構造は0.2 mmノズル、White下地
|
|
13
|
+
標準構造は0.2 mmノズル、White下地1層0.10 mm、0.08 mmのCMYW色領域7層、0.08 mmの連続高White上面を使います。Lithopはスライスや印刷開始を行いません。
|
|
13
14
|
|
|
14
15
|
## インストール
|
|
15
16
|
|
|
16
|
-
|
|
17
|
+
0.4.0を使う場合は、libvips、Rust、バージョンを指定したLithopをインストールします。
|
|
17
18
|
|
|
18
19
|
```sh
|
|
19
|
-
brew install vips
|
|
20
|
-
gem install lithop -v 0.
|
|
20
|
+
brew install vips rust
|
|
21
|
+
gem install lithop -v 0.4.0
|
|
21
22
|
lithop --version
|
|
23
|
+
lithop doctor
|
|
22
24
|
```
|
|
23
25
|
|
|
24
|
-
`lithop --version`が`0.
|
|
26
|
+
`lithop --version`が`0.4.0`を表示することを確認します。
|
|
27
|
+
`lithop doctor`では`backend`が`rust`、`extension_version`がLithopと同じバージョンであることを確認します。
|
|
25
28
|
|
|
26
29
|
ソースチェックアウトから実行する場合は、代わりに次を実行します。
|
|
27
30
|
|
|
@@ -62,6 +65,12 @@ bundle exec lithop path/to/image.jpeg
|
|
|
62
65
|
|
|
63
66
|
CLIで指定した値は`config/settings.json`より優先されます。ノズル径は生成記録に保存されますが、形状やレイヤー高さを自動変更しないため、Bambu Studioにも同じ条件を設定してください。
|
|
64
67
|
|
|
68
|
+
Yellowの透過が強い材料・光源では、Yellow被覆量の一部をCyanまたはMagentaへ置き換えられます。初期値は0%で無効です。まずカラーチャートで少量から比較してください。
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
bundle exec lithop examples/cmy-color-chart.svg --yellow-mix-color cyan --yellow-mix-percent 20
|
|
72
|
+
```
|
|
73
|
+
|
|
65
74
|
## 入力画像の扱い
|
|
66
75
|
|
|
67
76
|
対応形式はJPEG、PNG、非圧縮SVGです。LithopはEXIF Orientationを適用し、透過部分をWhiteへ合成し、埋め込みICCプロファイルを使ってsRGBへ変換します。SVGは96 DPIを基準に、厚さ格子と色格子を満たす解像度へメモリ内で描画します。PNGの中間ファイルは作りません。SVGファイルの上限は15,000,000バイト(15 MB)です。既定では指定した縦横比へ中央クロップします。構図は`--crop-position-x`、`--crop-position-y`、`--crop-scale`で調整でき、`--image-fit contain`では画像全体をWhite領域内へ収められます。
|
|
@@ -72,7 +81,7 @@ SVGは正の`width`・`height`(単位なし、`px`、`mm`、`in`)または`v
|
|
|
72
81
|
|
|
73
82
|
上部Whiteの高さは、材料表示色と同梱カラーチャートの配合色では図中の明暗値を使い、それ以外の入力色ではRec.601輝度を使います。このため、カラーチャートではYellowを含む全色列の同じ明暗行が同じWhite高さになります。
|
|
74
83
|
|
|
75
|
-
|
|
84
|
+
CLIは入力画像をその場で読み取り、変更、アップロード、削除を行わず、完了済みの`build/<job_id>/`へコピーしません。ローカルUIはプレビューと別プロセスでの変換に必要な間だけ`build/.previews/`と`build/.web/`へ一時保存し、処理後に回収します。詳しくは[ローカルブラウザUI](local-ui.md#一時ファイルとローカル性)を参照してください。
|
|
76
85
|
|
|
77
86
|
## 結果を確認する
|
|
78
87
|
|
|
@@ -87,7 +96,7 @@ SVGは正の`width`・`height`(単位なし、`px`、`mm`、`in`)または`v
|
|
|
87
96
|
|
|
88
97
|
確認後、`lithop.3mf`をBambu Studioへモデルとして読み込みます。材料部品を個別に移動、整列、拡大縮小、結合しないでください。
|
|
89
98
|
|
|
90
|
-
タイル分割またはZ分割を使う場合は、[3MFタイル分割とZ分割](tiling.md)に従って各3MF、組み立て位置、Bambu Studioのプレートを確認してください。
|
|
99
|
+
タイル分割またはZ分割を使う場合は、[3MFタイル分割とZ分割](tiling.md)に従って各3MF、組み立て位置、Bambu Studioのプレートを確認してください。Z分割では色領域が8層、各プレートの第1層が0.10 mm、それ以降が0.08 mm積層ピッチとなり、3分割のZプレート3にはCMYを含みません。Zプレート3はBase White 3層とTop White 1層以上で、最薄部をWhite合計4層・0.34 mmにします。
|
|
91
100
|
|
|
92
101
|
## 生成物を削除する
|
|
93
102
|
|
|
Binary file
|