fix cli redundant images

finger-xynova first design completed
This commit is contained in:
ykcheungab
2026-09-28 16:18:17 +08:00
parent 88922f21ef
commit 267334d543
40 changed files with 618899 additions and 263563 deletions
File diff suppressed because one or more lines are too long
@@ -0,0 +1,365 @@
{
"schema": "orisys-sensor-design/print-views-v1",
"mesh": "sensing_surface",
"units": "mm",
"angle_convention": "TWO frames are reported per camera, because they answer different questions. `world` is measured against the scene axes: that is the frame Blender's Transform panel shows for the camera's location and rotation, so check the numbers here against Blender. `object_local` is measured against the mesh object's own axes, which is the physically meaningful frame when the part is a body of revolution. They differ whenever the mesh object carries a rotation. In both: azimuth = atan2(y, x) in the frame's XY plane from +X, wrapped to [0, 360); elevation = signed angle from that plane; polar_from_z_deg = angle from that frame's +Z. The flat azimuth_deg/elevation_deg keys are the WORLD frame.",
"centroid_world_mm": [
0.000793,
-17.867939,
-5.954863
],
"centroid_object_mm": [
0.000793,
0.515454,
18.827053
],
"part_transform": {
"rotation_euler_deg": [
110.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"settings": {
"nx": 80,
"ny": 80,
"raster": [
3700,
3280
],
"page_mm": [
18.5,
16.4
],
"seed": 7
},
"ownership": {
"mode": "authored",
"incidence_limit_deg": 62.0,
"min_footprint_mm2": 0.002,
"min_triangle_coverage": 0.6,
"max_hole_fraction": 0.02,
"triangles": 5007,
"owned_mm2": 616.525186,
"hole_mm2": 0.099824,
"total_mm2": 616.625011,
"hole_fraction": 0.00016189,
"inked_mm2": 616.525186,
"inked_fraction": 0.99983811
},
"seam_margin": {
"enabled": false,
"apply": "post_process",
"treatment": "no_print",
"inset_mm": 0.1,
"total_mm": 0.2,
"alignment_tolerance_mm": 0.1
},
"views": [
{
"name": "cam_uv_1",
"type": "ORTHO",
"world": {
"position_mm": [
20.6625,
-35.865852,
-31.754499
],
"view_direction": [
0.548991024,
-0.478212804,
-0.685508192
],
"distance_to_centroid_mm": 37.635785,
"azimuth_deg": 318.9417,
"elevation_deg": -43.2756,
"polar_from_z_deg": 133.2756
},
"object_local": {
"position_mm": [
20.6625,
-17.572624,
44.563557
],
"view_direction": [
0.548991024,
-0.480608493,
0.683830678
],
"distance_to_centroid_mm": 37.635785,
"azimuth_deg": 318.7998,
"elevation_deg": 43.1437,
"polar_from_z_deg": 46.8563
},
"camera_transform": {
"rotation_euler_deg": [
-0.0,
135.0,
-45.0
],
"scale": [
0.014988,
0.014988,
0.014988
],
"parent": null
},
"part_transform": {
"rotation_euler_deg": [
110.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"ortho_scale_mm": 24.199997,
"lens_mm": null,
"sensor_width_mm": 36.0,
"clip_start_mm": 0.1,
"clip_end_mm": 1000.0,
"position_mm": [
20.6625,
-35.865852,
-31.754499
],
"view_direction": [
0.548991024,
-0.478212804,
-0.685508192
],
"distance_to_centroid_mm": 37.635785,
"azimuth_deg": 318.9417,
"elevation_deg": -43.2756,
"polar_from_z_deg": 133.2756,
"azimuth_deg_frame": "world",
"id": "uv_1",
"uv_map": "uv_1",
"region_camera": "cam_uv_1",
"pattern_camera": "cam_sensor",
"owned_triangles": 2472,
"owned_mm2": 308.26505216601106,
"inked_triangles": 2472,
"inked_mm2": 308.26505216601106,
"emitted_fragments": 15794,
"total_fragments": 32593,
"gap_enabled": false,
"gap_apply": null,
"gap_requested_total_mm": 0.0,
"gap_achieved_total_mm": null,
"gap_removed_fragments": 0,
"gap_clipped_polygons": 0,
"gap_trimmed_polygons": 0,
"base_triangles": 2472,
"seed": 7,
"artifacts": {
"png": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_1.png",
"svg": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_1.svg",
"pdf": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_1.pdf"
}
},
{
"name": "cam_uv_2",
"type": "ORTHO",
"world": {
"position_mm": [
-20.6625,
-35.865852,
-31.754499
],
"view_direction": [
-0.549020469,
-0.478201747,
-0.685492337
],
"distance_to_centroid_mm": 37.636656,
"azimuth_deg": 221.0562,
"elevation_deg": -43.2743,
"polar_from_z_deg": 133.2743
},
"object_local": {
"position_mm": [
-20.6625,
-17.572624,
44.563557
],
"view_direction": [
-0.549020469,
-0.480597347,
0.683814824
],
"distance_to_centroid_mm": 37.636656,
"azimuth_deg": 221.198,
"elevation_deg": 43.1425,
"polar_from_z_deg": 46.8575
},
"camera_transform": {
"rotation_euler_deg": [
-0.0,
-135.0,
45.0
],
"scale": [
0.014988,
0.014988,
0.014988
],
"parent": null
},
"part_transform": {
"rotation_euler_deg": [
110.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"ortho_scale_mm": 24.199997,
"lens_mm": null,
"sensor_width_mm": 36.0,
"clip_start_mm": 0.1,
"clip_end_mm": 1000.0,
"position_mm": [
-20.6625,
-35.865852,
-31.754499
],
"view_direction": [
-0.549020469,
-0.478201747,
-0.685492337
],
"distance_to_centroid_mm": 37.636656,
"azimuth_deg": 221.0562,
"elevation_deg": -43.2743,
"polar_from_z_deg": 133.2743,
"azimuth_deg_frame": "world",
"id": "uv_2",
"uv_map": "uv_2",
"region_camera": "cam_uv_2",
"pattern_camera": "cam_sensor",
"owned_triangles": 2488,
"owned_mm2": 308.26013401700123,
"inked_triangles": 2488,
"inked_mm2": 308.26013401700123,
"emitted_fragments": 16682,
"total_fragments": 32593,
"gap_enabled": false,
"gap_apply": null,
"gap_requested_total_mm": 0.0,
"gap_achieved_total_mm": null,
"gap_removed_fragments": 0,
"gap_clipped_polygons": 0,
"gap_trimmed_polygons": 0,
"base_triangles": 2488,
"seed": 7,
"artifacts": {
"png": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_2.png",
"svg": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_2.svg",
"pdf": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_2.pdf"
}
}
],
"seam": {
"boundary": "use_seam",
"edges": 45,
"components": 2,
"component_owner": {
"0": "uv_2",
"1": "uv_1"
}
},
"pattern_camera": {
"name": "cam_sensor",
"type": "PERSP",
"world": {
"position_mm": [
0.0,
-9.29984,
4.357839
],
"view_direction": [
-5.912e-05,
0.639047205,
0.769167483
],
"distance_to_centroid_mm": 13.407615,
"azimuth_deg": 90.0053,
"elevation_deg": 50.2792,
"polar_from_z_deg": 39.7208
},
"object_local": {
"position_mm": [
0.0,
7.275762,
7.248523
],
"view_direction": [
-5.912e-05,
0.504214048,
-0.863578737
],
"distance_to_centroid_mm": 13.407614,
"azimuth_deg": 90.0067,
"elevation_deg": -59.7208,
"polar_from_z_deg": 149.7208
},
"camera_transform": {
"rotation_euler_deg": [
30.0,
-0.0,
-179.9999
],
"scale": [
4.671241,
4.671243,
4.671243
],
"parent": null
},
"part_transform": {
"rotation_euler_deg": [
110.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"ortho_scale_mm": null,
"lens_mm": 0.396041,
"sensor_width_mm": 1.4,
"clip_start_mm": 0.01,
"clip_end_mm": 100.0,
"position_mm": [
0.0,
-9.29984,
4.357839
],
"view_direction": [
-5.912e-05,
0.639047205,
0.769167483
],
"distance_to_centroid_mm": 13.407615,
"azimuth_deg": 90.0053,
"elevation_deg": 50.2792,
"polar_from_z_deg": 39.7208,
"azimuth_deg_frame": "world"
}
}
@@ -0,0 +1,84 @@
{
"schema": "orisys-sensor-design/texture-job-multiview-v1",
"mode": "patches-multiview",
"revision_dir": "D:\\orisys_ws\\orisys-sensor-design\\sensors\\finger-xynova\\r01",
"source_blend": "D:\\orisys_ws\\orisys-sensor-design\\sensors\\finger-xynova\\r01\\source\\geometry.blend",
"objects": {
"mesh": "sensing_surface"
},
"pattern_camera": "cam_sensor",
"merge": {
"mode": "authored",
"incidence_limit_deg": 62.0,
"min_footprint_mm2": 0.002,
"min_triangle_coverage": 0.6,
"max_hole_fraction": 0.02,
"component_policy": "best_coverage"
},
"seam": {
"boundary": "use_seam",
"gap": {
"enabled": false,
"requested": false,
"apply": "post_process",
"treatment": "no_print",
"alignment_tolerance_mm": 0.1,
"total_mm": 0.2,
"inset_mm": 0.1
},
"pins": []
},
"print": {
"base_fill": "owned"
},
"settings": {
"width": 3700,
"height": 3280,
"nx": 80,
"ny": 80,
"color_r": 0.05,
"edge_sample_grid": 5,
"seed": 7,
"vector": {
"width_mm": 18.5,
"height_mm": 16.4
},
"cross": {
"enabled": true,
"length_px": 40,
"thickness_px": 3,
"color": [
1.0,
0.0,
0.0,
1.0
]
}
},
"pairs": [
{
"id": "uv_1",
"camera": "cam_uv_1",
"pattern_camera": "cam_sensor",
"uv_map": "uv_1",
"seed": 7,
"artifacts": {
"png": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_1.png",
"svg": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_1.svg",
"pdf": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_1.pdf"
}
},
{
"id": "uv_2",
"camera": "cam_uv_2",
"pattern_camera": "cam_sensor",
"uv_map": "uv_2",
"seed": 7,
"artifacts": {
"png": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_2.png",
"svg": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_2.svg",
"pdf": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger-xynova\\r01\\patch_texture_uv_2.pdf"
}
}
]
}
File diff suppressed because it is too large Load Diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 632 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 2.3 MiB

File diff suppressed because it is too large Load Diff
Binary file not shown.

After

Width:  |  Height:  |  Size: 630 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 2.4 MiB

File diff suppressed because one or more lines are too long
+365
View File
@@ -0,0 +1,365 @@
{
"schema": "orisys-sensor-design/print-views-v1",
"mesh": "sensing_surface",
"units": "mm",
"angle_convention": "TWO frames are reported per camera, because they answer different questions. `world` is measured against the scene axes: that is the frame Blender's Transform panel shows for the camera's location and rotation, so check the numbers here against Blender. `object_local` is measured against the mesh object's own axes, which is the physically meaningful frame when the part is a body of revolution. They differ whenever the mesh object carries a rotation. In both: azimuth = atan2(y, x) in the frame's XY plane from +X, wrapped to [0, 360); elevation = signed angle from that plane; polar_from_z_deg = angle from that frame's +Z. The flat azimuth_deg/elevation_deg keys are the WORLD frame.",
"centroid_world_mm": [
-8.127041,
-0.0002,
3.143503
],
"centroid_object_mm": [
-8.127041,
-0.000198,
3.143503
],
"part_transform": {
"rotation_euler_deg": [
0.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"settings": {
"nx": 80,
"ny": 45,
"raster": [
3280,
3200
],
"page_mm": [
16.4,
16.0
],
"seed": 7
},
"ownership": {
"mode": "authored",
"incidence_limit_deg": 62.0,
"min_footprint_mm2": 0.002,
"min_triangle_coverage": 0.6,
"max_hole_fraction": 0.02,
"triangles": 1977,
"owned_mm2": 355.717525,
"hole_mm2": 0.049325,
"total_mm2": 355.76685,
"hole_fraction": 0.00013864,
"inked_mm2": 353.321144,
"inked_fraction": 0.99312554
},
"seam_margin": {
"enabled": true,
"apply": "post_process",
"treatment": "no_print",
"inset_mm": 0.1,
"total_mm": 0.2,
"alignment_tolerance_mm": 0.1
},
"views": [
{
"name": "cam_uv_1",
"type": "ORTHO",
"world": {
"position_mm": [
-60.870361,
53.822308,
-71.511826
],
"view_direction": [
-0.497221529,
0.507395208,
-0.703790307
],
"distance_to_centroid_mm": 106.076095,
"azimuth_deg": 134.4198,
"elevation_deg": -44.7319,
"polar_from_z_deg": 134.7319
},
"object_local": {
"position_mm": [
-60.870354,
53.822319,
-71.511826
],
"view_direction": [
-0.49722147,
0.507395327,
-0.703790307
],
"distance_to_centroid_mm": 106.076096,
"azimuth_deg": 134.4198,
"elevation_deg": -44.7319,
"polar_from_z_deg": 134.7319
},
"camera_transform": {
"rotation_euler_deg": [
-135.0,
-0.0,
45.0
],
"scale": [
1.0,
1.0,
1.0
],
"parent": null
},
"part_transform": {
"rotation_euler_deg": [
0.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"ortho_scale_mm": 31.199999,
"lens_mm": null,
"sensor_width_mm": 36.0,
"clip_start_mm": 0.1,
"clip_end_mm": 1000.0,
"position_mm": [
-60.870361,
53.822308,
-71.511826
],
"view_direction": [
-0.497221529,
0.507395208,
-0.703790307
],
"distance_to_centroid_mm": 106.076095,
"azimuth_deg": 134.4198,
"elevation_deg": -44.7319,
"polar_from_z_deg": 134.7319,
"azimuth_deg_frame": "world",
"id": "uv_1",
"uv_map": "uv_1",
"region_camera": "cam_uv_1",
"pattern_camera": "cam_sensor",
"owned_triangles": 957,
"owned_mm2": 177.85392129180258,
"inked_triangles": 956,
"inked_mm2": 175.457540584298,
"emitted_fragments": 11062,
"total_fragments": 22057,
"gap_enabled": true,
"gap_apply": "post_process",
"gap_requested_total_mm": 0.2,
"gap_achieved_total_mm": 0.2,
"gap_removed_fragments": 0,
"gap_clipped_polygons": 142,
"gap_trimmed_polygons": 92,
"base_triangles": 957,
"seed": 7,
"artifacts": {
"png": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger\\r01\\patch_texture_uv_1.png",
"svg": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger\\r01\\patch_texture_uv_1.svg",
"pdf": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger\\r01\\patch_texture_uv_1.pdf"
}
},
{
"name": "cam_uv_2",
"type": "ORTHO",
"world": {
"position_mm": [
-60.870361,
-53.8223,
-71.511826
],
"view_direction": [
-0.497222513,
-0.507392406,
-0.703791678
],
"distance_to_centroid_mm": 106.07589,
"azimuth_deg": 225.58,
"elevation_deg": -44.732,
"polar_from_z_deg": 134.732
},
"object_local": {
"position_mm": [
-60.870369,
-53.822289,
-71.511826
],
"view_direction": [
-0.497222602,
-0.507392287,
-0.703791678
],
"distance_to_centroid_mm": 106.075888,
"azimuth_deg": 225.58,
"elevation_deg": -44.732,
"polar_from_z_deg": 134.732
},
"camera_transform": {
"rotation_euler_deg": [
-135.0,
0.0,
135.0
],
"scale": [
1.0,
1.0,
1.0
],
"parent": null
},
"part_transform": {
"rotation_euler_deg": [
0.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"ortho_scale_mm": 31.199999,
"lens_mm": null,
"sensor_width_mm": 36.0,
"clip_start_mm": 0.1,
"clip_end_mm": 1000.0,
"position_mm": [
-60.870361,
-53.8223,
-71.511826
],
"view_direction": [
-0.497222513,
-0.507392406,
-0.703791678
],
"distance_to_centroid_mm": 106.07589,
"azimuth_deg": 225.58,
"elevation_deg": -44.732,
"polar_from_z_deg": 134.732,
"azimuth_deg_frame": "world",
"id": "uv_2",
"uv_map": "uv_2",
"region_camera": "cam_uv_2",
"pattern_camera": "cam_sensor",
"owned_triangles": 990,
"owned_mm2": 177.86360352881806,
"inked_triangles": 990,
"inked_mm2": 177.86360352881806,
"emitted_fragments": 10722,
"total_fragments": 22057,
"gap_enabled": true,
"gap_apply": "post_process",
"gap_requested_total_mm": 0.2,
"gap_achieved_total_mm": 0.2,
"gap_removed_fragments": 0,
"gap_clipped_polygons": 10,
"gap_trimmed_polygons": 93,
"base_triangles": 990,
"seed": 7,
"artifacts": {
"png": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger\\r01\\patch_texture_uv_2.png",
"svg": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger\\r01\\patch_texture_uv_2.svg",
"pdf": "D:\\orisys_ws\\orisys-sensor-design\\build\\textures\\finger\\r01\\patch_texture_uv_2.pdf"
}
}
],
"seam": {
"boundary": "use_seam",
"edges": 32,
"components": 2,
"component_owner": {
"0": "uv_2",
"1": "uv_1"
}
},
"pattern_camera": {
"name": "cam_sensor",
"type": "PERSP",
"world": {
"position_mm": [
0.082617,
-0.0,
4.616734
],
"view_direction": [
0.984277427,
2.3926e-05,
0.176629424
],
"distance_to_centroid_mm": 8.340796,
"azimuth_deg": 0.0014,
"elevation_deg": 10.1735,
"polar_from_z_deg": 79.8265
},
"object_local": {
"position_mm": [
0.082617,
-0.0,
4.616734
],
"view_direction": [
0.984277427,
2.3754e-05,
0.176629424
],
"distance_to_centroid_mm": 8.340796,
"azimuth_deg": 0.0014,
"elevation_deg": 10.1735,
"polar_from_z_deg": 79.8265
},
"camera_transform": {
"rotation_euler_deg": [
80.2258,
-0.0,
90.0
],
"scale": [
6.009411,
6.009411,
6.009411
],
"parent": null
},
"part_transform": {
"rotation_euler_deg": [
0.0,
-0.0,
0.0
],
"scale": [
1.0,
1.0,
1.0
]
},
"ortho_scale_mm": null,
"lens_mm": 0.582519,
"sensor_width_mm": 1.794,
"clip_start_mm": 0.01,
"clip_end_mm": 100.0,
"position_mm": [
0.082617,
-0.0,
4.616734
],
"view_direction": [
0.984277427,
2.3926e-05,
0.176629424
],
"distance_to_centroid_mm": 8.340796,
"azimuth_deg": 0.0014,
"elevation_deg": 10.1735,
"polar_from_z_deg": 79.8265,
"azimuth_deg_frame": "world"
}
}
@@ -7,6 +7,30 @@
"mesh": "sensing_surface"
},
"pattern_camera": "cam_sensor",
"merge": {
"mode": "authored",
"incidence_limit_deg": 62.0,
"min_footprint_mm2": 0.002,
"min_triangle_coverage": 0.6,
"max_hole_fraction": 0.02,
"component_policy": "best_coverage"
},
"seam": {
"boundary": "use_seam",
"gap": {
"enabled": true,
"requested": true,
"apply": "post_process",
"treatment": "no_print",
"alignment_tolerance_mm": 0.1,
"total_mm": 0.2,
"inset_mm": 0.1
},
"pins": []
},
"print": {
"base_fill": "owned"
},
"settings": {
"width": 3280,
"height": 3200,
@@ -34,7 +58,8 @@
"pairs": [
{
"id": "uv_1",
"camera": "cam_sensor",
"camera": "cam_uv_1",
"pattern_camera": "cam_sensor",
"uv_map": "uv_1",
"seed": 7,
"artifacts": {
@@ -45,7 +70,8 @@
},
{
"id": "uv_2",
"camera": "cam_sensor",
"camera": "cam_uv_2",
"pattern_camera": "cam_sensor",
"uv_map": "uv_2",
"seed": 7,
"artifacts": {
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 612 KiB

After

Width:  |  Height:  |  Size: 625 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 683 KiB

After

Width:  |  Height:  |  Size: 3.1 MiB

File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 676 KiB

After

Width:  |  Height:  |  Size: 682 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 677 KiB

After

Width:  |  Height:  |  Size: 3.0 MiB

File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 677 KiB

After

Width:  |  Height:  |  Size: 466 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 3.0 MiB

After

Width:  |  Height:  |  Size: 1.5 MiB

File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 690 KiB

After

Width:  |  Height:  |  Size: 491 KiB

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 3.1 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB