# スマート UV
> **POST** `/v3/mesh/uv`
3D モデルの UV を再展開し、既存のテクスチャ、リギング、アニメーションを新しいレイアウトに割り当て直します。
1 タスクあたり **20** クレジットです。結果には `model_url` と UV レイアウトのプレビュー `uv_render_url` が含まれます。入力モデルは **等価三角面 80,000** 以下である必要があります(四角面は 2 面として数えます)。超える場合は作成時には受け付けられますが、タスクは失敗しクレジットは返金されます。
## リクエストパラメータ
### リクエストヘッダー
| パラメータ | 種類 | 必須 | デフォルト | 説明 |
| :-: | :-: | :-: | :-: | :-: |
| Content-Type | 文字列 | はい | — | `application/json` |
| Authorization | 文字列 | はい | — | `Bearer {api_key}` |
### リクエストボディ
| パラメータ | 種類 | 必須 | デフォルト | 説明 |
| :-: | :-: | :-: | :-: | :-: |
| input | 文字列 | はい | — | モデルの入力元。task_id、file_token、URL のいずれかを指定 |
| model | 文字列 | いいえ | `default` | スマート UV のモデルバージョン。`default` のみ対応 |
| bake | ブール値 | いいえ | `true` | 既存のテクスチャを新しい UV レイアウトにベイクするか。`false` の場合は UV 付きジオメトリのみを返します |
| export_orientation | 文字列 | いいえ | — | エクスポートするモデルの向き:`+x`、`-x`、`+y`、`-y` |
| compress | 文字列 | いいえ | — | 圧縮方式。`geometry`:meshopt 圧縮 |
## リクエスト例
### curl
```bash
curl -X POST https://openapi.tripo3d.ai/v3/mesh/uv \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"bake": true
}'
```
### Python
```python
import requests
url = "https://openapi.tripo3d.ai/v3/mesh/uv"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
}
payload = {
"input": "task_abc123",
"bake": True
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
```
### JavaScript
```javascript
const url = "https://openapi.tripo3d.ai/v3/mesh/uv";
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
},
body: JSON.stringify({
input: "task_abc123",
bake: true
})
});
const data = await response.json();
console.log(data);
```
## 応答
### 成功した応答
```json
{
"code": 0,
"data": {
"task_id": "task_def456"
}
}
```
### 応答フィールド
| パラメータ | 種類 | 説明 |
| :-: | :-: | :-: |
| code | 整数 | ステータスコード。 `0` は成功を示します |
| data.task_id | 文字列 | 進捗と結果を照会するためのタスク固有 ID |
## エラーコード
| HTTP ステータスコード | エラーコード | 説明 | おすすめ |
| :-: | :-: | :-: | :-: |
| 429 | 2000 | 世代制限を超えました | リクエスト率を下げて後で再試行してください |
| 400 | 1004 | パラメータまたは入力が無効 | パラメータ名、値、入力元を確認してください |
| 403 | 2010 | クレジットが不十分です | クレジットをリチャージして再試行してください |
スマート UV
POST /v3/mesh/uv
3D モデルの UV を再展開し、既存のテクスチャ、リギング、アニメーションを新しいレイアウトに割り当て直します。
1 タスクあたり 20 クレジットです。結果には model_url と UV レイアウトのプレビュー uv_render_url が含まれます。入力モデルは 等価三角面 80,000 以下である必要があります(四角面は 2 面として数えます)。超える場合は作成時には受け付けられますが、タスクは失敗しクレジットは返金されます。
リクエストパラメータ
リクエストヘッダー
| パラメータ |
種類 |
必須 |
デフォルト |
説明 |
| Content-Type |
文字列 |
はい |
— |
application/json |
| Authorization |
文字列 |
はい |
— |
Bearer {api_key} |
リクエストボディ
| パラメータ |
種類 |
必須 |
デフォルト |
説明 |
| input |
文字列 |
はい |
— |
モデルの入力元。task_id、file_token、URL のいずれかを指定 |
| model |
文字列 |
いいえ |
default |
スマート UV のモデルバージョン。default のみ対応 |
| bake |
ブール値 |
いいえ |
true |
既存のテクスチャを新しい UV レイアウトにベイクするか。false の場合は UV 付きジオメトリのみを返します |
| export_orientation |
文字列 |
いいえ |
— |
エクスポートするモデルの向き:+x、-x、+y、-y |
| compress |
文字列 |
いいえ |
— |
圧縮方式。geometry:meshopt 圧縮 |
リクエスト例
curl -X POST https://openapi.tripo3d.ai/v3/mesh/uv \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_key}" \
-d '{
"input": "task_abc123",
"bake": true
}'
import requests
url = "https://openapi.tripo3d.ai/v3/mesh/uv"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
}
payload = {
"input": "task_abc123",
"bake": True
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
const url = "https://openapi.tripo3d.ai/v3/mesh/uv";
const response = await fetch(url, {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer {api_key}"
},
body: JSON.stringify({
input: "task_abc123",
bake: true
})
});
const data = await response.json();
console.log(data);
応答
成功した応答
{
"code": 0,
"data": {
"task_id": "task_def456"
}
}
応答フィールド
| パラメータ |
種類 |
説明 |
| code |
整数 |
ステータスコード。 0 は成功を示します |
| data.task_id |
文字列 |
進捗と結果を照会するためのタスク固有 ID |
エラーコード
| HTTP ステータスコード |
エラーコード |
説明 |
おすすめ |
| 429 |
2000 |
世代制限を超えました |
リクエスト率を下げて後で再試行してください |
| 400 |
1004 |
パラメータまたは入力が無効 |
パラメータ名、値、入力元を確認してください |
| 403 |
2010 |
クレジットが不十分です |
クレジットをリチャージして再試行してください |