164 lines
5.1 KiB
JSON
164 lines
5.1 KiB
JSON
{
|
|
"capability": "blender.scene.author@v1",
|
|
"display_name": "Blender 三维场景创作",
|
|
"default_enrollment": false,
|
|
"output_namespace": "blender",
|
|
"input_policy": {
|
|
"suffixes": [],
|
|
"max_count": 0,
|
|
"max_bytes": 0,
|
|
"max_total_bytes": 0
|
|
},
|
|
"outputs": {
|
|
"project": {
|
|
"filename": "scene.blend",
|
|
"media_type": "application/x-blender",
|
|
"relative_path": "scene.blend",
|
|
"publish": true,
|
|
"required": true
|
|
},
|
|
"preview": {
|
|
"filename": "preview.png",
|
|
"media_type": "image/png",
|
|
"relative_path": "preview.png",
|
|
"publish": true,
|
|
"required": true
|
|
},
|
|
"scene_manifest": {
|
|
"filename": "scene-manifest.json",
|
|
"media_type": "application/json",
|
|
"relative_path": "scene-manifest.json",
|
|
"publish": true,
|
|
"required": true
|
|
},
|
|
"scene_glb": {
|
|
"filename": "scene.glb",
|
|
"media_type": "model/gltf-binary",
|
|
"relative_path": "scene.glb",
|
|
"publish": true,
|
|
"required": false
|
|
},
|
|
"provenance": {
|
|
"filename": "provenance.json",
|
|
"media_type": "application/json",
|
|
"relative_path": ".meta/provenance.json",
|
|
"publish": false,
|
|
"required": true
|
|
}
|
|
},
|
|
"feature_path": ["operation", "scene", "type"],
|
|
"features": {
|
|
"rotary_kiln": "0.1.0"
|
|
},
|
|
"summary": {
|
|
"title_path": ["operation", "scene", "title"]
|
|
},
|
|
"legacy_runtime": null,
|
|
"workspace": {
|
|
"state_output": "project",
|
|
"preview_outputs": ["preview"],
|
|
"required_adapter_version": "0.1.0"
|
|
},
|
|
"request_schema": {
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"type": "object",
|
|
"x-maxBytes": 65536,
|
|
"required": ["schema_version", "inputs", "operation", "outputs"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"schema_version": {"const": 1},
|
|
"inputs": {
|
|
"type": "array",
|
|
"maxItems": 0
|
|
},
|
|
"operation": {
|
|
"type": "object",
|
|
"required": ["scene"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"scene": {"$ref": "#/$defs/rotaryKilnScene"}
|
|
}
|
|
},
|
|
"outputs": {
|
|
"type": "array",
|
|
"maxItems": 1,
|
|
"uniqueItems": true,
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["key", "type", "format"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"key": {"const": "scene_glb"},
|
|
"type": {"const": "model"},
|
|
"format": {"const": "glb"}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"$defs": {
|
|
"color": {
|
|
"type": "string",
|
|
"pattern": "^#[0-9A-Fa-f]{6}$"
|
|
},
|
|
"rotaryKilnScene": {
|
|
"type": "object",
|
|
"required": ["type", "title", "kiln"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"type": {"const": "rotary_kiln"},
|
|
"title": {"type": "string", "minLength": 1, "maxLength": 160},
|
|
"kiln": {
|
|
"type": "object",
|
|
"required": [
|
|
"length_m", "outer_diameter_m", "shell_thickness_m",
|
|
"lining_thickness_m", "slope_percent", "support_stations"
|
|
],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"length_m": {"type": "number", "minimum": 5, "maximum": 200},
|
|
"outer_diameter_m": {"type": "number", "minimum": 0.5, "maximum": 15},
|
|
"shell_thickness_m": {"type": "number", "minimum": 0.005, "maximum": 0.5},
|
|
"lining_thickness_m": {"type": "number", "minimum": 0.01, "maximum": 1.5},
|
|
"slope_percent": {"type": "number", "minimum": 0, "maximum": 10},
|
|
"support_stations": {"type": "integer", "minimum": 2, "maximum": 8},
|
|
"rotational_speed_rpm": {"type": "number", "exclusiveMinimum": 0, "maximum": 10}
|
|
}
|
|
},
|
|
"components": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"drive_system": {"type": "boolean"},
|
|
"burner": {"type": "boolean"},
|
|
"hoods": {"type": "boolean"},
|
|
"inspection_platform": {"type": "boolean"},
|
|
"material_bed": {"type": "boolean"}
|
|
}
|
|
},
|
|
"appearance": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"shell_color": {"$ref": "#/$defs/color"},
|
|
"metal_color": {"$ref": "#/$defs/color"},
|
|
"lining_color": {"$ref": "#/$defs/color"},
|
|
"material_color": {"$ref": "#/$defs/color"},
|
|
"background_color": {"$ref": "#/$defs/color"}
|
|
}
|
|
},
|
|
"render": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"width": {"type": "integer", "minimum": 320, "maximum": 3840},
|
|
"height": {"type": "integer", "minimum": 240, "maximum": 2160},
|
|
"transparent_background": {"type": "boolean"},
|
|
"view": {"enum": ["isometric", "side", "kiln_head", "kiln_tail"]}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|