From 8f7f7c8033cdbe9863b20ff27967b54128ba19d5 Mon Sep 17 00:00:00 2001 From: Bre Naidu Date: Sun, 26 Apr 2026 12:30:28 -0500 Subject: [PATCH 01/14] Move backend data into boneset-api/data and refactor server to use local files --- .../anterior_frontalbone_colored_regions.json | 495 +++ ...anterior_iliac_spines_colored_regions.json | 269 ++ .../anterior_mandible_colored_regions.json | 1405 +++++++++ .../anterior_maxilla_colored_regions.json | 1237 ++++++++ .../anterior_nasal_colored_regions.json | 338 ++ .../anterior_sphenoid_colored_regions.json | 713 +++++ .../anterior_zygomatic_colored_regions.json | 1137 +++++++ .../annotations/ColoredRegions/atlas.json | 131 + ...tlas_anterior_and_posterior_tubercles.json | 794 +++++ .../ColoredRegions/atlas_arches.json | 863 +++++ .../atlas_articular_facet_for_dens.json | 147 + .../atlas_articular_surfaces.json | 652 ++++ .../atlas_groove_for_vertebral_artery.json | 203 ++ .../ColoredRegions/atlas_lateral_mass.json | 810 +++++ .../atlas_transverse_process.json | 1867 +++++++++++ .../auricular_surface_colored_regions.json | 52 + .../axis_articular_surfaces.json | 796 +++++ .../annotations/ColoredRegions/axis_body.json | 645 ++++ .../ColoredRegions/axis_lamina.json | 668 ++++ .../ColoredRegions/axis_pedicle.json | 445 +++ .../ColoredRegions/axis_spinous_process.json | 467 +++ .../axis_transverse_formaen.json | 334 ++ .../axis_transverse_process.json | 703 +++++ .../bony_pelvis_colored_regions.json | 870 +++++ .../ColoredRegions/cervical_body.json | 752 +++++ .../ColoredRegions/cervical_lamina.json | 579 ++++ .../ColoredRegions/cervical_pedicle.json | 541 ++++ .../cervical_spinous_process.json | 489 +++ .../cervical_transverse_process.json | 1069 +++++++ .../cervical_vertebral_arch.json | 197 ++ .../cervical_vertebral_foramen.json | 210 ++ ...clavicle_acromial_end_colored_regions.json | 252 ++ .../clavicle_shaft_colored_regions.json | 516 +++ .../clavicle_sternal_end_colored_regions.json | 213 ++ .../ColoredRegions/extraction_summary.json | 407 +++ ...or_subclavian_vessels_colored_regions.json | 91 + ...rst_rib_head_and_neck_colored_regions.json | 432 +++ .../first_rib_tubercles_colored_regions.json | 281 ++ .../iliac_crest_colored_regions.json | 278 ++ .../inferior_maxilla_colored_regions.json | 1441 +++++++++ .../inferior_occipital_colored_regions.json | 689 ++++ .../inferior_palatine_colored_regions.json | 612 ++++ .../inferior_sphenoid_colored_regions.json | 969 ++++++ .../inferior_temporal_colored_regions.json | 1460 +++++++++ .../inferior_vomer_colored_regions.json | 340 ++ .../ischial_spine_colored_regions.json | 66 + .../ischial_tuberosity_colored_regions.json | 81 + .../lateral_colored_regions.json | 224 ++ .../laterial_ethmoid_colored_regions.json | 240 ++ .../laterial_lacrimal_colored_regions.json | 459 +++ .../laterial_mandible_colored_regions.json | 964 ++++++ .../laterial_parietal_colored_regions.json | 1090 +++++++ .../laterial_sphenoid_colored_regions.json | 586 ++++ .../laterial_temporal_colored_regions.json | 1031 ++++++ .../lumbar_accessory_process.json | 158 + .../lumbar_articular_surfaces.json | 388 +++ .../ColoredRegions/lumbar_body.json | 505 +++ .../lumbar_mammillary_process.json | 283 ++ .../lumbar_spinous_process.json | 525 +++ .../lumbar_transverse_process.json | 619 ++++ .../pectineal_line_colored_regions.json | 35 + ...osterior_iliac_spines_colored_regions.json | 256 ++ ...inferior_iliac_spines_colored_regions.json | 131 + ...superior_iliac_spines_colored_regions.json | 138 + .../pubic_rami_colored_regions.json | 128 + .../pubic_tubercle_colored_regions.json | 83 + .../ColoredRegions/ramus_colored_regions.json | 82 + ...nd_coccyx_articular_surface_for_ilium.json | 348 ++ ...sacrum_and_coccyx_median_sacral_crest.json | 446 +++ .../sacrum_and_coccyx_sacral_foramina.json | 2810 +++++++++++++++++ .../sacrum_and_coccyx_sacral_hiatus.json | 86 + .../sacrum_and_coccyx_sacral_promontory.json | 260 ++ ...and_coccyx_superior_articular_process.json | 253 ++ ..._and_caracoid_process_colored_regions.json | 462 +++ .../scapula_frossae_colored_regions.json | 451 +++ .../scapula_spine_colored_regions.json | 248 ++ .../sciatic_notches_colored_regions.json | 112 + .../sternum_body_colored_regions.json | 388 +++ .../sternum_manubrium_colored_regions.json | 368 +++ ...ernum_xiphoid_process_colored_regions.json | 153 + .../superior_ethmoid_colored_regions.json | 194 ++ .../superior_frontal_colored_regions.json | 711 +++++ .../superior_occipital_colored_regions.json | 936 ++++++ .../superior_sphenoid_colored_regions.json | 886 ++++++ .../superior_temporal_colored_regions.json | 1387 ++++++++ .../symphyseal_surface_colored_regions.json | 47 + .../thoracic_articular_surfaces.json | 456 +++ .../ColoredRegions/thoracic_body.json | 825 +++++ .../thoracic_costal_facets.json | 776 +++++ .../thoracic_spinous_process.json | 505 +++ .../thoracic_transverse_process.json | 955 ++++++ .../thoracic_vertebral_notch.json | 405 +++ .../typical_rib_body_colored_regions.json | 468 +++ ...cal_rib_head_and_neck_colored_regions.json | 349 ++ .../typical_rib_tubercle_colored_regions.json | 123 + .../annotations/ColoredRegions/vertebrae.json | 436 +++ boneset-api/data/annotations/bony_pelvis.json | 139 + .../bony_pelvis_metadata.json | 179 ++ .../rotations annotations/rotations.json | 18 + .../template_bony_pelvis.json | 29 + ..._posterior_tubercles_text_annotations.json | 213 ++ ...nterior_frontal_bone_text_annotations.json | 274 ++ .../anterior_mandible_text_annotations.json | 250 ++ .../anterior_maxilla_text_annotations.json | 172 + ...terior_sphenoid_bone_text_annotations.json | 142 + .../anterior_view_text_annotations.json | 1078 +++++++ ...erior_zygomatic_bone_text_annotations.json | 166 + .../atlas_arches_text_annotations.json | 45 + ...s_articular_surfaces_text_annotations.json | 45 + ...for_vertebral_artery_text_annotations.json | 45 + .../atlas_lateral_mass_text_annotations.json | 45 + .../atlas_text_annotations.json | 925 ++++++ ...s_transverse_process_text_annotations.json | 45 + ...s_articular_surfaces_text_annotations.json | 63 + .../axis_body_text_annotations.json | 245 ++ .../axis_lamina_text_annotations.json | 63 + .../axis_pedicle_text_annotations.json | 45 + ...axis_spinous_process_text_annotations.json | 63 + .../axis_text_annotations.json | 723 +++++ ...s_transverse_foramen_text_annotations.json | 45 + ...s_transverse_process_text_annotations.json | 63 + .../bony_pelvis_text_annotations.json | 363 +++ .../cervical_body_text_annotations.json | 63 + .../cervical_lamina_text_annotations.json | 63 + .../cervical_pedicle_text_annotations.json | 45 + ...ical_spinous_process_text_annotations.json | 63 + .../cervical_text_annotations.json | 699 ++++ ...l_transverse_process_text_annotations.json | 63 + ...vical_vertebral_arch_text_annotations.json | 27 + ...al_vertebral_foramen_text_annotations.json | 27 + ...lavicle_acromial_end_text_annotations.json | 46 + .../clavicle_shaft_text_annotations.json | 238 ++ ...clavicle_sternal_end_text_annotations.json | 46 + .../clavicle_text_annotations.json | 46 + .../clavicle_view_text_annotations.json | 350 ++ ...r_subclavian_vessels_text_annotations.json | 82 + ...st_rib_head_and_neck_text_annotations.json | 46 + .../first_rib_text_annotations.json | 434 +++ .../first_rib_tubercles_text_annotations.json | 46 + .../first_rib_view_text_annotations.json | 46 + ...lium_anterior_spines_text_annotations.json | 9 + ...um_auricular_surface_text_annotations.json | 9 + .../ilium_crest_text_annotations.json | 106 + .../ilium_image_text_annotations.json | 9 + ...ium_posterior_spines_text_annotations.json | 9 + .../ilium_text_annotations.json | 351 ++ .../inferior_maxilla_text_annotations.json | 298 ++ ...erior_occipital_bone_text_annotations.json | 370 +++ ...ferior_palatine_bone_text_annotations.json | 178 ++ ...ferior_sphenoid_bone_text_annotations.json | 556 ++++ ...ferior_temporal_bone_text_annotations.json | 466 +++ .../inferior_view_text_annotations.json | 1520 +++++++++ .../inferior_vomer_text_annotations.json | 82 + .../ischial_spine_text_annotations.json | 9 + .../ischial_tuberosity_text_annotations.json | 154 + .../ischium_image_text_annotations.json | 9 + .../ischium_ramus_text_annotations.json | 9 + ...hium_sciatic_notches_text_annotations.json | 9 + .../ischium_text_annotations.json | 434 +++ ...ateral_lacrimal_bone_text_annotations.json | 106 + .../lateral_mandible_text_annotations.json | 346 ++ ...ateral_temporal_bone_text_annotations.json | 298 ++ .../lateral_view_text_annotations.json | 1196 +++++++ ...ar_accessory_process_text_annotations.json | 27 + ...r_articular_surfaces_text_annotations.json | 63 + .../lumbar_body_text_annotations.json | 63 + ...r_mammillary_process_text_annotations.json | 27 + ...mbar_spinous_process_text_annotations.json | 63 + .../lumbar_text_annotations.json | 963 ++++++ ...r_transverse_process_text_annotations.json | 63 + .../pectineal_line_text_annotations.json | 58 + .../pubic_rami_text_annotations.json | 86 + .../pubic_tubercle_text_annotations.json | 82 + .../pubis_image_text_annotations.json | 9 + .../pubis_text_annotations.json | 443 +++ .../sacrum_and_coccyx_text_annotations.json | 625 ++++ .../scapula_body_text_annotations.json | 346 ++ .../scapula_fossae_text_annotations.json | 130 + .../scapula_text_annotations.json | 598 ++++ .../skull_text_annotations.json | 98 + .../sternum_manubrium_text_annotations.json | 230 ++ .../sternum_text_annotations.json | 406 +++ ...erior_cranial_cavity_text_annotations.json | 1620 ++++++++++ ...uperior_ethmoid_bone_text_annotations.json | 202 ++ ...uperior_frontal_bone_text_annotations.json | 202 ++ ...erior_occipital_bone_text_annotations.json | 154 + ...perior_sphenoid_bone_text_annotations.json | 490 +++ ...perior_temporal_bone_text_annotations.json | 322 ++ .../symphyseal_surface_text_annotations.json | 9 + ...c_articular_surfaces_text_annotations.json | 63 + .../thoracic_body_text_annotations.json | 63 + ...oracic_costal_facets_text_annotations.json | 63 + ...acic_spinous_process_text_annotations.json | 63 + .../thoracic_text_annotations.json | 1147 +++++++ ...c_transverse_process_text_annotations.json | 63 + ...acic_vertebral_notch_text_annotations.json | 243 ++ .../thorax_text_annotations.json | 120 + .../typical_rib_body_text_annotations.json | 178 ++ .../typical_rib_text_annotations.json | 530 ++++ .../vertebrae_text_annotations.json | 565 ++++ boneset-api/data/bones/anterior.json | 12 + boneset-api/data/bones/atlas.json | 15 + boneset-api/data/bones/axis.json | 15 + boneset-api/data/bones/cervical.json | 15 + boneset-api/data/bones/clavicle.json | 9 + boneset-api/data/bones/first_rib.json | 9 + boneset-api/data/bones/ilium.json | 5 + boneset-api/data/bones/inferior.json | 12 + boneset-api/data/bones/ischium.json | 5 + boneset-api/data/bones/lateral.json | 12 + boneset-api/data/bones/lumbar.json | 14 + boneset-api/data/bones/pubis.json | 5 + boneset-api/data/bones/sacrum_and_coccyx.json | 15 + boneset-api/data/bones/scapula.json | 10 + boneset-api/data/bones/sternum.json | 9 + boneset-api/data/bones/superior.json | 11 + boneset-api/data/bones/thoracic.json | 14 + boneset-api/data/bones/typical_rib.json | 9 + boneset-api/data/boneset/bony_pelvis.json | 5 + boneset-api/data/boneset/skull.json | 12 + boneset-api/data/boneset/thorax.json | 13 + boneset-api/data/boneset/vertebrae.json | 14 + ...es_For_Subclavian_Vessels_description.json | 16 + ...And_Coracoid_Process_Description.json.json | 18 + .../descriptions/Scapula_description.json | 11 + .../anterior_frontal_bone_description.json | 19 + .../anterior_iliac_spines_description.json | 13 + .../anterior_mandible_description.json | 32 + .../anterior_maxilla_description.json | 25 + .../anterior_nasal_bone_description.json | 8 + .../anterior_sphenoid_bone_description.json | 17 + .../anterior_view_description.json | 13 + .../anterior_zygomatic_bone_description.json | 17 + ...r_and_posterior_tubercles_description.json | 15 + .../atlas_arches_description.json | 16 + ..._articular_facet_for_dens_description.json | 9 + .../atlas_articular_surfaces_description.json | 14 + .../data/descriptions/atlas_description.json | 11 + ...oove_for_vertebral_artery_description.json | 11 + .../atlas_lateral_mass_description.json | 10 + .../atlas_transverse_process_description.json | 10 + .../auricular_surface_description.json | 10 + .../axis_articular_surfaces_description.json | 10 + .../axis_body_(dens)_description.json | 13 + .../descriptions/axis_body_description.json | 0 .../data/descriptions/axis_description.json | 10 + .../descriptions/axis_lamina_description.json | 8 + .../axis_pedicle_description.json | 8 + .../axis_spinous_process_description.json | 9 + .../axis_transverse_foramen_description.json | 9 + .../axis_transverse_process_description.json | 9 + .../descriptions/bony_pelvis_description.json | 11 + .../cervical_body_description.json | 11 + .../descriptions/cervical_description.json | 13 + .../cervical_lamina_description.json | 8 + .../cervical_pedicle_description.json | 8 + .../cervical_spinous_process_description.json | 8 + ...rvical_transverse_process_description.json | 9 + .../cervical_vertebral_arch_description.json | 9 + ...ervical_vertebral_foramen_description.json | 9 + .../clavicle_acromial_end_description.json | 11 + .../descriptions/clavicle_description.json | 13 + .../clavicle_shaft_description.json | 21 + .../clavicle_sternal_end_description.json | 11 + .../data/descriptions/coccyx_description.json | 10 + .../descriptions/first_rib_description.json | 10 + .../first_rib_head_and_neck_description.json | 14 + .../first_rib_tubercles_description.json | 15 + .../descriptions/iliac_crest_description.json | 12 + .../data/descriptions/ilium_description.json | 9 + .../inferior_cranial_base_description.json | 8 + .../inferior_maxilla_description.json | 16 + .../inferior_occipital_bone_description.json | 17 + .../inferior_palatine_bone_description.json | 16 + .../inferior_sphenoid_bone_description.json | 14 + .../inferior_temporal_bone_description.json | 18 + .../inferior_vomer_description.json | 12 + .../ischial_spine_description.json | 10 + .../ischial_tuberosity_description.json | 11 + .../descriptions/ischium_description.json | 9 + .../lateral_ethmoid_bone_description.json | 8 + .../lateral_lacrimal_bone_description.json | 11 + .../lateral_mandible_description.json | 18 + .../lateral_parietal_bone_description.json | 12 + .../lateral_sphenoid_bone_description.json | 9 + .../lateral_temporal_description.json | 18 + .../lateral_view_description.json | 21 + .../lumbar_accessory_process_description.json | 9 + ...lumbar_articular_surfaces_description.json | 8 + .../descriptions/lumbar_body_description.json | 10 + .../data/descriptions/lumbar_description.json | 10 + ...lumbar_mammillary_process_description.json | 10 + .../lumbar_spinous_process_description.json | 9 + ...lumbar_transverse_process_description.json | 10 + .../pectineal_line_description.json | 10 + .../posterior_iliac_spines_description.json | 12 + .../descriptions/pubic_rami_description.json | 14 + .../pubic_tubercle_description.json | 9 + .../data/descriptions/pubis_description.json | 9 + .../data/descriptions/ramus_description.json | 11 + ...ticular_surface_for_ilium_description.json | 10 + .../sacrum_and_coccyx_description.json | 14 + ...occyx_median_sacral_crest_description.json | 9 + ...nd_coccyx_sacral_foramina_description.json | 10 + ..._and_coccyx_sacral_hiatus_description.json | 10 + ..._coccyx_sacral_promontory_description.json | 10 + ...uperior_articular_process_description.json | 8 + .../scapula_body_description.json | 33 + .../scapula_fossaw_description.json | 29 + .../scapula_sprine_description.json | 14 + .../sciatic_notches_description.json | 11 + .../sternum_body_description.json | 15 + .../descriptions/sternum_description.json | 22 + .../sternum_manubrium_description.json | 33 + .../sternum_xiphoid_process_description.json | 13 + .../superior_cranial_cavity_description.json | 14 + .../superior_ethmoid_bone_description.json | 16 + .../superior_frontal_bone_description.json | 9 + .../superior_occipital_description.json | 17 + .../superior_sphenoid_bone_description.json | 22 + .../superior_temporal_bone_description.json | 20 + .../symphyseal_surface_description.json | 11 + ...oracic_articular_surfaces_description.json | 8 + .../thoracic_body_description.json | 10 + .../thoracic_costal_facets_description.json | 10 + .../descriptions/thoracic_description.json | 9 + .../thoracic_spinous_process_description.json | 8 + ...oracic_transverse_process_description.json | 9 + .../thoracic_vertebral_notch_description.json | 18 + .../data/descriptions/thorax_description.json | 22 + .../typical_rib_body_description.json | 13 + .../descriptions/typical_rib_description.json | 13 + ...typical_rib_head_and_neck_description.json | 23 + .../typical_rib_tubercle_description.json | 11 + .../descriptions/vertebrae_description.json | 23 + .../data/images/Clavicle_Bottom_Image.jpg | Bin 0 -> 63678 bytes .../data/images/Clavicle_Left_View_Image.jpg | Bin 0 -> 6498 bytes .../data/images/Clavicle_Right_View_Image.jpg | Bin 0 -> 3978 bytes .../data/images/Clavicle_Top_Image.jpg | Bin 0 -> 75493 bytes .../data/images/First_Rib_Bottom_Image.jpg | Bin 0 -> 68969 bytes ...b_Grooves_For_Subclavian_Vessels_Image.jpg | Bin 0 -> 106536 bytes .../data/images/First_Rib_Left_View_Image.jpg | Bin 0 -> 9066 bytes .../images/First_Rib_Right_View_Image.jpg | Bin 0 -> 10247 bytes .../data/images/First_Rib_Top_Image.jpg | Bin 0 -> 74151 bytes .../data/images/Scapula_Extra_image.jpg | Bin 0 -> 27912 bytes .../data/images/Scapula_Left_Image.jpg | Bin 0 -> 111662 bytes .../data/images/Scapula_Left_View_Image.jpg | Bin 0 -> 19683 bytes .../data/images/Scapula_Right_Image.jpg | Bin 0 -> 99768 bytes .../data/images/Scapula_Right_View_Image.jpg | Bin 0 -> 2568 bytes .../data/images/Sternum_Left_Image.jpg | Bin 0 -> 87355 bytes .../data/images/Sternum_Left_View_Image.jpg | Bin 0 -> 15635 bytes .../data/images/Sternum_Right_Image.jpg | Bin 0 -> 87223 bytes .../data/images/Sternum_Right_View_Image.jpg | Bin 0 -> 15868 bytes .../data/images/Typical_Rib_Left_Image.jpg | Bin 0 -> 47219 bytes .../images/Typical_Rib_Left_View_Image.jpg | Bin 0 -> 12971 bytes .../data/images/Typical_Rib_Right_Image.jpg | Bin 0 -> 47521 bytes .../images/Typical_Rib_Right_View_Image.jpg | Bin 0 -> 13657 bytes .../data/images/anterior_frontal_image.jpg | Bin 0 -> 20495 bytes .../images/anterior_iliac_spines_image1.jpg | Bin 0 -> 9337 bytes .../images/anterior_iliac_spines_image2.jpg | Bin 0 -> 9640 bytes boneset-api/data/images/anterior_image.png | Bin 0 -> 278757 bytes .../data/images/anterior_mandible_image.jpg | Bin 0 -> 21574 bytes .../data/images/anterior_maxilla_image.jpg | Bin 0 -> 25355 bytes .../data/images/anterior_nasal_bone_image.jpg | Bin 0 -> 19405 bytes .../images/anterior_sphenoid_bone_image.jpg | Bin 0 -> 22799 bytes .../data/images/anterior_view_image.jpg | Bin 0 -> 6999 bytes .../images/anterior_zygomatic_bone_image.jpg | Bin 0 -> 23021 bytes .../images/atlas_(inferior_aspect)_image.png | Bin 0 -> 64110 bytes .../atlas_(posterosuperior_aspect)_image.png | Bin 0 -> 147369 bytes .../images/atlas_(superior_aspect)_image.png | Bin 0 -> 69476 bytes .../data/images/auricular_surface_image.jpg | Bin 0 -> 13321 bytes .../images/axis_(inferior_aspect)_image.png | Bin 0 -> 72971 bytes .../images/axis_(lateral_aspect)_image.png | Bin 0 -> 53803 bytes .../images/axis_(superior_aspect)_image.png | Bin 0 -> 74565 bytes .../data/images/bony_pelvis_image1.jpg | Bin 0 -> 9337 bytes .../data/images/bony_pelvis_image2.jpg | Bin 0 -> 9640 bytes .../cervical_(inferior_aspect)_image.png | Bin 0 -> 45758 bytes .../cervical_(right_lateral_aspect)_image.png | Bin 0 -> 50933 bytes .../cervical_(superior_aspect)_image.png | Bin 0 -> 45654 bytes .../images/coccyx_(anterior_aspect)_image.png | Bin 0 -> 106756 bytes .../coccyx_(posterior_aspect)_image.png | Bin 0 -> 100386 bytes .../data/images/iliac_crest_image1.jpg | Bin 0 -> 9337 bytes .../data/images/iliac_crest_image2.jpg | Bin 0 -> 9640 bytes boneset-api/data/images/ilium_image1.jpg | Bin 0 -> 9337 bytes boneset-api/data/images/ilium_image2.jpg | Bin 0 -> 9640 bytes boneset-api/data/images/inferior_image.jpg | Bin 0 -> 275299 bytes .../data/images/inferior_maxilla_image.jpg | Bin 0 -> 378255 bytes .../images/inferior_occipital_bone_image.jpg | Bin 0 -> 409851 bytes .../images/inferior_palatine_bone_image.jpg | Bin 0 -> 314275 bytes .../images/inferior_sphenoid_bone_image.jpg | Bin 0 -> 279799 bytes .../images/inferior_temporal_bone_image.jpg | Bin 0 -> 342632 bytes .../data/images/inferior_view_image.png | Bin 0 -> 56381 bytes .../data/images/inferior_vomer_image.jpg.jpg | Bin 0 -> 332078 bytes .../data/images/ischial_spine_image1.jpg | Bin 0 -> 9337 bytes .../data/images/ischial_spine_image2.jpg | Bin 0 -> 9640 bytes .../data/images/ischial_tuberosity_image1.jpg | Bin 0 -> 9337 bytes .../data/images/ischial_tuberosity_image2.jpg | Bin 0 -> 9640 bytes boneset-api/data/images/ischium_image1.jpg | Bin 0 -> 9337 bytes boneset-api/data/images/ischium_image2.jpg | Bin 0 -> 9640 bytes .../images/lateral_ethmoid_bone_image.jpg | Bin 0 -> 414221 bytes boneset-api/data/images/lateral_image.jpg | Bin 0 -> 307678 bytes .../images/lateral_mandible_bone_image.jpg | Bin 0 -> 335918 bytes .../images/lateral_sphenoid_bone_image.jpg | Bin 0 -> 403482 bytes .../images/lateral_temporal_bone_image.jpg | Bin 0 -> 418504 bytes .../data/images/lateral_view_image.jpg | Bin 0 -> 7304 bytes .../images/lumbar_(inferior_aspect)_image.png | Bin 0 -> 51865 bytes .../images/lumbar_(lateral_aspect)_image.png | Bin 0 -> 60091 bytes .../lumbar_(posterior_aspect)_image.png | Bin 0 -> 232144 bytes .../images/lumbar_(superior_aspect)_image.png | Bin 0 -> 54535 bytes .../data/images/pectineal_line_image.png | Bin 0 -> 199796 bytes .../images/posterior_iliac_spines_image1.jpg | Bin 0 -> 9337 bytes .../images/posterior_iliac_spines_image2.jpg | Bin 0 -> 9640 bytes boneset-api/data/images/pubic_rami_image1.jpg | Bin 0 -> 9337 bytes boneset-api/data/images/pubic_rami_image2.jpg | Bin 0 -> 9640 bytes .../data/images/pubic_tubercle_image.jpg | Bin 0 -> 14631 bytes boneset-api/data/images/pubis_image1.jpg | Bin 0 -> 9337 bytes boneset-api/data/images/pubis_image2.jpg | Bin 0 -> 9640 bytes boneset-api/data/images/ramus_image1.jpg | Bin 0 -> 9337 bytes boneset-api/data/images/ramus_image2.jpg | Bin 0 -> 9640 bytes .../images/sacrum_(anterior_aspect)_image.png | Bin 0 -> 302142 bytes .../sacrum_(posterior_aspect)_image.png | Bin 0 -> 361781 bytes ...rum_and_coccyx_(anterior_aspect)_image.png | Bin 0 -> 121672 bytes ...um_and_coccyx_(posterior_aspect)_image.png | Bin 0 -> 119100 bytes .../data/images/sciatic_notches_image1.jpg | Bin 0 -> 9337 bytes .../data/images/sciatic_notches_image2.jpg | Bin 0 -> 9640 bytes .../images/superior_cranial_cavity_image.jpg | Bin 0 -> 325370 bytes .../images/superior_frontal_bone_image.jpg | Bin 0 -> 289467 bytes .../images/superior_occipital_bone_image.jpg | Bin 0 -> 347233 bytes .../images/superior_sphenoid_bone_image.jpg | Bin 0 -> 300176 bytes .../images/superior_temporal_bone_image.jpg | Bin 0 -> 342757 bytes .../data/images/superior_view_image.png | Bin 0 -> 65683 bytes .../data/images/symphyseal_surface_image.png | Bin 0 -> 182504 bytes .../thoracic_(inferior_aspect)_image.png | Bin 0 -> 53005 bytes .../thoracic_(lateral_aspect)_image.png | Bin 0 -> 78769 bytes .../thoracic_(superior_aspect)_image.png | Bin 0 -> 42738 bytes boneset-api/data/images/vertebrae_image.png | Bin 0 -> 75218 bytes .../data/subbones/anterior_frontal_bone.json | 1 + .../data/subbones/anterior_iliac_spines.json | 4 + .../data/subbones/anterior_mandible.json | 1 + .../data/subbones/anterior_maxilla.json | 1 + .../data/subbones/anterior_nasal_bone.json | 1 + .../data/subbones/anterior_sphenoid_bone.json | 1 + .../subbones/anterior_zygomatic_bone.json | 1 + ...tlas_anterior_and_posterior_tubercles.json | 1 + boneset-api/data/subbones/atlas_arches.json | 1 + .../atlas_articular_facet_for_dens.json | 1 + .../subbones/atlas_articular_surfaces.json | 1 + .../atlas_groove_for_vertebral_artery.json | 1 + .../data/subbones/atlas_lateral_mass.json | 1 + .../subbones/atlas_transverse_process.json | 1 + .../data/subbones/auricular_surface.json | 4 + .../subbones/axis_articular_surfaces.json | 1 + .../data/subbones/axis_body_(dens).json | 1 + boneset-api/data/subbones/axis_lamina.json | 1 + boneset-api/data/subbones/axis_pedicle.json | 1 + .../data/subbones/axis_spinous_process.json | 1 + .../subbones/axis_transverse_foramen.json | 1 + .../subbones/axis_transverse_process.json | 1 + boneset-api/data/subbones/cervical_body.json | 1 + .../data/subbones/cervical_lamina.json | 1 + .../data/subbones/cervical_pedicle.json | 1 + .../subbones/cervical_spinous_process.json | 1 + .../subbones/cervical_transverse_process.json | 1 + .../subbones/cervical_vertebral_arch.json | 1 + .../subbones/cervical_vertebral_foramen.json | 1 + .../data/subbones/clavicle_acromial_end.json | 4 + boneset-api/data/subbones/clavicle_shaft.json | 4 + .../data/subbones/clavicle_sternal_end.json | 4 + boneset-api/data/subbones/coccyx.json | 1 + boneset-api/data/subbones/cranial_base.json | 4 + ...st_rib_grooves_for_subclavian_vessels.json | 4 + .../subbones/first_rib_head_and_neck.json | 4 + .../data/subbones/first_rib_tubercles.json | 4 + boneset-api/data/subbones/iliac_crest.json | 4 + .../data/subbones/inferior_maxilla.json | 1 + .../subbones/inferior_occipital_bone.json | 1 + .../data/subbones/inferior_palatine_bone.json | 1 + .../data/subbones/inferior_sphenoid_bone.json | 1 + .../data/subbones/inferior_temporal_bone.json | 1 + boneset-api/data/subbones/inferior_vomer.json | 1 + .../data/subbones/lateral_ethmoid_bone.json | 1 + .../data/subbones/lateral_lacrimal_bone.json | 1 + .../data/subbones/lateral_mandible.json | 1 + .../data/subbones/lateral_parietal_bone.json | 1 + .../data/subbones/lateral_sphenoid_bone.json | 1 + .../data/subbones/lateral_temporal_bone.json | 1 + .../subbones/lumbar_accessory_process.json | 1 + .../subbones/lumbar_articular_surfaces.json | 1 + boneset-api/data/subbones/lumbar_body.json | 1 + .../subbones/lumbar_mammillary_process.json | 1 + .../data/subbones/lumbar_spinous_process.json | 1 + .../subbones/lumbar_transverse_process.json | 1 + .../data/subbones/posterior_iliac_spines.json | 4 + .../sacrum_and_coccyx__sacral_hiatus.json | 1 + ...nterior_and_posterior_sacral_foramina.json | 1 + ...nd_coccyx_articular_surface_for_ilium.json | 1 + ...sacrum_and_coccyx_median_sacral_crest.json | 1 + .../sacrum_and_coccyx_sacral_promontory.json | 1 + ...and_coccyx_superior_articular_process.json | 1 + ...scapula_acromion_and_coracoid_process.json | 4 + boneset-api/data/subbones/scapula_body.json | 4 + boneset-api/data/subbones/scapula_fossae.json | 4 + boneset-api/data/subbones/scapula_spine.json | 4 + boneset-api/data/subbones/sternum_body.json | 4 + .../data/subbones/sternum_manubrium.json | 4 + .../subbones/sternum_xiphoid_process.json | 4 + .../data/subbones/superior_ethmoid_bone.json | 1 + .../data/subbones/superior_frontal_bone.json | 1 + .../subbones/superior_occipital_bone.json | 1 + .../data/subbones/superior_sphenoid_bone.json | 1 + .../data/subbones/superior_temporal_bone.json | 1 + .../subbones/thoracic_articular_surfaces.json | 1 + boneset-api/data/subbones/thoracic_body.json | 1 + .../data/subbones/thoracic_costal_facets.json | 1 + .../subbones/thoracic_spinous_process.json | 1 + .../subbones/thoracic_transverse_process.json | 1 + .../subbones/thoracic_vertebral_notch.json | 1 + .../data/subbones/typical_rib_body.json | 4 + .../subbones/typical_rib_head_and_neck.json | 4 + .../data/subbones/typical_rib_tubercle.json | 4 + boneset-api/server.js | 354 +-- templates/js/description.js | 7 +- 522 files changed, 78698 insertions(+), 217 deletions(-) create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_frontalbone_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_iliac_spines_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_mandible_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_maxilla_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_nasal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_sphenoid_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/anterior_zygomatic_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_anterior_and_posterior_tubercles.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_arches.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_articular_facet_for_dens.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_articular_surfaces.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_groove_for_vertebral_artery.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_lateral_mass.json create mode 100644 boneset-api/data/annotations/ColoredRegions/atlas_transverse_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/auricular_surface_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_articular_surfaces.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_body.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_lamina.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_pedicle.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_spinous_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_transverse_formaen.json create mode 100644 boneset-api/data/annotations/ColoredRegions/axis_transverse_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/bony_pelvis_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_body.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_lamina.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_pedicle.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_spinous_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_transverse_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_vertebral_arch.json create mode 100644 boneset-api/data/annotations/ColoredRegions/cervical_vertebral_foramen.json create mode 100644 boneset-api/data/annotations/ColoredRegions/clavicle_acromial_end_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/clavicle_shaft_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/clavicle_sternal_end_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/extraction_summary.json create mode 100644 boneset-api/data/annotations/ColoredRegions/first_rib_grooves_for_subclavian_vessels_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/first_rib_head_and_neck_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/first_rib_tubercles_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/iliac_crest_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/inferior_maxilla_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/inferior_occipital_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/inferior_palatine_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/inferior_sphenoid_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/inferior_temporal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/inferior_vomer_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/ischial_spine_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/ischial_tuberosity_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lateral_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/laterial_ethmoid_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/laterial_lacrimal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/laterial_mandible_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/laterial_parietal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/laterial_sphenoid_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/laterial_temporal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lumbar_accessory_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lumbar_articular_surfaces.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lumbar_body.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lumbar_mammillary_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lumbar_spinous_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/lumbar_transverse_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/pectineal_line_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/posterior_iliac_spines_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/posterior_inferior_iliac_spines_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/posterior_superior_iliac_spines_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/pubic_rami_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/pubic_tubercle_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/ramus_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_articular_surface_for_ilium.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_median_sacral_crest.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_foramina.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_hiatus.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_promontory.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_superior_articular_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/scapula_acromion_and_caracoid_process_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/scapula_frossae_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/scapula_spine_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sciatic_notches_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sternum_body_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sternum_manubrium_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/sternum_xiphoid_process_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/superior_ethmoid_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/superior_frontal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/superior_occipital_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/superior_sphenoid_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/superior_temporal_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/symphyseal_surface_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/thoracic_articular_surfaces.json create mode 100644 boneset-api/data/annotations/ColoredRegions/thoracic_body.json create mode 100644 boneset-api/data/annotations/ColoredRegions/thoracic_costal_facets.json create mode 100644 boneset-api/data/annotations/ColoredRegions/thoracic_spinous_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/thoracic_transverse_process.json create mode 100644 boneset-api/data/annotations/ColoredRegions/thoracic_vertebral_notch.json create mode 100644 boneset-api/data/annotations/ColoredRegions/typical_rib_body_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/typical_rib_head_and_neck_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/typical_rib_tubercle_colored_regions.json create mode 100644 boneset-api/data/annotations/ColoredRegions/vertebrae.json create mode 100644 boneset-api/data/annotations/bony_pelvis.json create mode 100644 boneset-api/data/annotations/rotations annotations/bony_pelvis_metadata.json create mode 100644 boneset-api/data/annotations/rotations annotations/rotations.json create mode 100644 boneset-api/data/annotations/rotations annotations/template_bony_pelvis.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_and_posterior_tubercles_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_frontal_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_mandible_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_maxilla_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_sphenoid_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_view_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/anterior_zygomatic_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/atlas_arches_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/atlas_articular_surfaces_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/atlas_groove_for_vertebral_artery_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/atlas_lateral_mass_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/atlas_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/atlas_transverse_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_articular_surfaces_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_body_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_lamina_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_pedicle_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_spinous_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_transverse_foramen_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/axis_transverse_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/bony_pelvis_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_body_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_lamina_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_pedicle_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_spinous_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_transverse_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_vertebral_arch_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/cervical_vertebral_foramen_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/clavicle_acromial_end_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/clavicle_shaft_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/clavicle_sternal_end_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/clavicle_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/clavicle_view_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/first_rib_grooves_for_subclavian_vessels_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/first_rib_head_and_neck_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/first_rib_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/first_rib_tubercles_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/first_rib_view_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ilium_anterior_spines_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ilium_auricular_surface_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ilium_crest_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ilium_image_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ilium_posterior_spines_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ilium_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_maxilla_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_occipital_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_palatine_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_sphenoid_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_temporal_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_view_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/inferior_vomer_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ischial_spine_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ischial_tuberosity_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ischium_image_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ischium_ramus_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ischium_sciatic_notches_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/ischium_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lateral_lacrimal_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lateral_mandible_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lateral_temporal_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lateral_view_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_accessory_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_articular_surfaces_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_body_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_mammillary_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_spinous_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/lumbar_transverse_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/pectineal_line_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/pubic_rami_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/pubic_tubercle_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/pubis_image_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/pubis_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/sacrum_and_coccyx_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/scapula_body_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/scapula_fossae_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/scapula_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/skull_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/sternum_manubrium_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/sternum_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/superior_cranial_cavity_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/superior_ethmoid_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/superior_frontal_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/superior_occipital_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/superior_sphenoid_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/superior_temporal_bone_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/symphyseal_surface_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_articular_surfaces_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_body_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_costal_facets_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_spinous_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_transverse_process_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thoracic_vertebral_notch_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/thorax_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/typical_rib_body_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/typical_rib_text_annotations.json create mode 100644 boneset-api/data/annotations/text_label_annotations/vertebrae_text_annotations.json create mode 100644 boneset-api/data/bones/anterior.json create mode 100644 boneset-api/data/bones/atlas.json create mode 100644 boneset-api/data/bones/axis.json create mode 100644 boneset-api/data/bones/cervical.json create mode 100644 boneset-api/data/bones/clavicle.json create mode 100644 boneset-api/data/bones/first_rib.json create mode 100644 boneset-api/data/bones/ilium.json create mode 100644 boneset-api/data/bones/inferior.json create mode 100644 boneset-api/data/bones/ischium.json create mode 100644 boneset-api/data/bones/lateral.json create mode 100644 boneset-api/data/bones/lumbar.json create mode 100644 boneset-api/data/bones/pubis.json create mode 100644 boneset-api/data/bones/sacrum_and_coccyx.json create mode 100644 boneset-api/data/bones/scapula.json create mode 100644 boneset-api/data/bones/sternum.json create mode 100644 boneset-api/data/bones/superior.json create mode 100644 boneset-api/data/bones/thoracic.json create mode 100644 boneset-api/data/bones/typical_rib.json create mode 100644 boneset-api/data/boneset/bony_pelvis.json create mode 100644 boneset-api/data/boneset/skull.json create mode 100644 boneset-api/data/boneset/thorax.json create mode 100644 boneset-api/data/boneset/vertebrae.json create mode 100644 boneset-api/data/descriptions/First_Rib_Grooves_For_Subclavian_Vessels_description.json create mode 100644 boneset-api/data/descriptions/Scapula_Acromion_And_Coracoid_Process_Description.json.json create mode 100644 boneset-api/data/descriptions/Scapula_description.json create mode 100644 boneset-api/data/descriptions/anterior_frontal_bone_description.json create mode 100644 boneset-api/data/descriptions/anterior_iliac_spines_description.json create mode 100644 boneset-api/data/descriptions/anterior_mandible_description.json create mode 100644 boneset-api/data/descriptions/anterior_maxilla_description.json create mode 100644 boneset-api/data/descriptions/anterior_nasal_bone_description.json create mode 100644 boneset-api/data/descriptions/anterior_sphenoid_bone_description.json create mode 100644 boneset-api/data/descriptions/anterior_view_description.json create mode 100644 boneset-api/data/descriptions/anterior_zygomatic_bone_description.json create mode 100644 boneset-api/data/descriptions/atlas_anterior_and_posterior_tubercles_description.json create mode 100644 boneset-api/data/descriptions/atlas_arches_description.json create mode 100644 boneset-api/data/descriptions/atlas_articular_facet_for_dens_description.json create mode 100644 boneset-api/data/descriptions/atlas_articular_surfaces_description.json create mode 100644 boneset-api/data/descriptions/atlas_description.json create mode 100644 boneset-api/data/descriptions/atlas_groove_for_vertebral_artery_description.json create mode 100644 boneset-api/data/descriptions/atlas_lateral_mass_description.json create mode 100644 boneset-api/data/descriptions/atlas_transverse_process_description.json create mode 100644 boneset-api/data/descriptions/auricular_surface_description.json create mode 100644 boneset-api/data/descriptions/axis_articular_surfaces_description.json create mode 100644 boneset-api/data/descriptions/axis_body_(dens)_description.json create mode 100644 boneset-api/data/descriptions/axis_body_description.json create mode 100644 boneset-api/data/descriptions/axis_description.json create mode 100644 boneset-api/data/descriptions/axis_lamina_description.json create mode 100644 boneset-api/data/descriptions/axis_pedicle_description.json create mode 100644 boneset-api/data/descriptions/axis_spinous_process_description.json create mode 100644 boneset-api/data/descriptions/axis_transverse_foramen_description.json create mode 100644 boneset-api/data/descriptions/axis_transverse_process_description.json create mode 100644 boneset-api/data/descriptions/bony_pelvis_description.json create mode 100644 boneset-api/data/descriptions/cervical_body_description.json create mode 100644 boneset-api/data/descriptions/cervical_description.json create mode 100644 boneset-api/data/descriptions/cervical_lamina_description.json create mode 100644 boneset-api/data/descriptions/cervical_pedicle_description.json create mode 100644 boneset-api/data/descriptions/cervical_spinous_process_description.json create mode 100644 boneset-api/data/descriptions/cervical_transverse_process_description.json create mode 100644 boneset-api/data/descriptions/cervical_vertebral_arch_description.json create mode 100644 boneset-api/data/descriptions/cervical_vertebral_foramen_description.json create mode 100644 boneset-api/data/descriptions/clavicle_acromial_end_description.json create mode 100644 boneset-api/data/descriptions/clavicle_description.json create mode 100644 boneset-api/data/descriptions/clavicle_shaft_description.json create mode 100644 boneset-api/data/descriptions/clavicle_sternal_end_description.json create mode 100644 boneset-api/data/descriptions/coccyx_description.json create mode 100644 boneset-api/data/descriptions/first_rib_description.json create mode 100644 boneset-api/data/descriptions/first_rib_head_and_neck_description.json create mode 100644 boneset-api/data/descriptions/first_rib_tubercles_description.json create mode 100644 boneset-api/data/descriptions/iliac_crest_description.json create mode 100644 boneset-api/data/descriptions/ilium_description.json create mode 100644 boneset-api/data/descriptions/inferior_cranial_base_description.json create mode 100644 boneset-api/data/descriptions/inferior_maxilla_description.json create mode 100644 boneset-api/data/descriptions/inferior_occipital_bone_description.json create mode 100644 boneset-api/data/descriptions/inferior_palatine_bone_description.json create mode 100644 boneset-api/data/descriptions/inferior_sphenoid_bone_description.json create mode 100644 boneset-api/data/descriptions/inferior_temporal_bone_description.json create mode 100644 boneset-api/data/descriptions/inferior_vomer_description.json create mode 100644 boneset-api/data/descriptions/ischial_spine_description.json create mode 100644 boneset-api/data/descriptions/ischial_tuberosity_description.json create mode 100644 boneset-api/data/descriptions/ischium_description.json create mode 100644 boneset-api/data/descriptions/lateral_ethmoid_bone_description.json create mode 100644 boneset-api/data/descriptions/lateral_lacrimal_bone_description.json create mode 100644 boneset-api/data/descriptions/lateral_mandible_description.json create mode 100644 boneset-api/data/descriptions/lateral_parietal_bone_description.json create mode 100644 boneset-api/data/descriptions/lateral_sphenoid_bone_description.json create mode 100644 boneset-api/data/descriptions/lateral_temporal_description.json create mode 100644 boneset-api/data/descriptions/lateral_view_description.json create mode 100644 boneset-api/data/descriptions/lumbar_accessory_process_description.json create mode 100644 boneset-api/data/descriptions/lumbar_articular_surfaces_description.json create mode 100644 boneset-api/data/descriptions/lumbar_body_description.json create mode 100644 boneset-api/data/descriptions/lumbar_description.json create mode 100644 boneset-api/data/descriptions/lumbar_mammillary_process_description.json create mode 100644 boneset-api/data/descriptions/lumbar_spinous_process_description.json create mode 100644 boneset-api/data/descriptions/lumbar_transverse_process_description.json create mode 100644 boneset-api/data/descriptions/pectineal_line_description.json create mode 100644 boneset-api/data/descriptions/posterior_iliac_spines_description.json create mode 100644 boneset-api/data/descriptions/pubic_rami_description.json create mode 100644 boneset-api/data/descriptions/pubic_tubercle_description.json create mode 100644 boneset-api/data/descriptions/pubis_description.json create mode 100644 boneset-api/data/descriptions/ramus_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_articular_surface_for_ilium_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_median_sacral_crest_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_sacral_foramina_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_sacral_hiatus_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_sacral_promontory_description.json create mode 100644 boneset-api/data/descriptions/sacrum_and_coccyx_superior_articular_process_description.json create mode 100644 boneset-api/data/descriptions/scapula_body_description.json create mode 100644 boneset-api/data/descriptions/scapula_fossaw_description.json create mode 100644 boneset-api/data/descriptions/scapula_sprine_description.json create mode 100644 boneset-api/data/descriptions/sciatic_notches_description.json create mode 100644 boneset-api/data/descriptions/sternum_body_description.json create mode 100644 boneset-api/data/descriptions/sternum_description.json create mode 100644 boneset-api/data/descriptions/sternum_manubrium_description.json create mode 100644 boneset-api/data/descriptions/sternum_xiphoid_process_description.json create mode 100644 boneset-api/data/descriptions/superior_cranial_cavity_description.json create mode 100644 boneset-api/data/descriptions/superior_ethmoid_bone_description.json create mode 100644 boneset-api/data/descriptions/superior_frontal_bone_description.json create mode 100644 boneset-api/data/descriptions/superior_occipital_description.json create mode 100644 boneset-api/data/descriptions/superior_sphenoid_bone_description.json create mode 100644 boneset-api/data/descriptions/superior_temporal_bone_description.json create mode 100644 boneset-api/data/descriptions/symphyseal_surface_description.json create mode 100644 boneset-api/data/descriptions/thoracic_articular_surfaces_description.json create mode 100644 boneset-api/data/descriptions/thoracic_body_description.json create mode 100644 boneset-api/data/descriptions/thoracic_costal_facets_description.json create mode 100644 boneset-api/data/descriptions/thoracic_description.json create mode 100644 boneset-api/data/descriptions/thoracic_spinous_process_description.json create mode 100644 boneset-api/data/descriptions/thoracic_transverse_process_description.json create mode 100644 boneset-api/data/descriptions/thoracic_vertebral_notch_description.json create mode 100644 boneset-api/data/descriptions/thorax_description.json create mode 100644 boneset-api/data/descriptions/typical_rib_body_description.json create mode 100644 boneset-api/data/descriptions/typical_rib_description.json create mode 100644 boneset-api/data/descriptions/typical_rib_head_and_neck_description.json create mode 100644 boneset-api/data/descriptions/typical_rib_tubercle_description.json create mode 100644 boneset-api/data/descriptions/vertebrae_description.json create mode 100644 boneset-api/data/images/Clavicle_Bottom_Image.jpg create mode 100644 boneset-api/data/images/Clavicle_Left_View_Image.jpg create mode 100644 boneset-api/data/images/Clavicle_Right_View_Image.jpg create mode 100644 boneset-api/data/images/Clavicle_Top_Image.jpg create mode 100644 boneset-api/data/images/First_Rib_Bottom_Image.jpg create mode 100644 boneset-api/data/images/First_Rib_Grooves_For_Subclavian_Vessels_Image.jpg create mode 100644 boneset-api/data/images/First_Rib_Left_View_Image.jpg create mode 100644 boneset-api/data/images/First_Rib_Right_View_Image.jpg create mode 100644 boneset-api/data/images/First_Rib_Top_Image.jpg create mode 100644 boneset-api/data/images/Scapula_Extra_image.jpg create mode 100644 boneset-api/data/images/Scapula_Left_Image.jpg create mode 100644 boneset-api/data/images/Scapula_Left_View_Image.jpg create mode 100644 boneset-api/data/images/Scapula_Right_Image.jpg create mode 100644 boneset-api/data/images/Scapula_Right_View_Image.jpg create mode 100644 boneset-api/data/images/Sternum_Left_Image.jpg create mode 100644 boneset-api/data/images/Sternum_Left_View_Image.jpg create mode 100644 boneset-api/data/images/Sternum_Right_Image.jpg create mode 100644 boneset-api/data/images/Sternum_Right_View_Image.jpg create mode 100644 boneset-api/data/images/Typical_Rib_Left_Image.jpg create mode 100644 boneset-api/data/images/Typical_Rib_Left_View_Image.jpg create mode 100644 boneset-api/data/images/Typical_Rib_Right_Image.jpg create mode 100644 boneset-api/data/images/Typical_Rib_Right_View_Image.jpg create mode 100644 boneset-api/data/images/anterior_frontal_image.jpg create mode 100644 boneset-api/data/images/anterior_iliac_spines_image1.jpg create mode 100644 boneset-api/data/images/anterior_iliac_spines_image2.jpg create mode 100644 boneset-api/data/images/anterior_image.png create mode 100644 boneset-api/data/images/anterior_mandible_image.jpg create mode 100644 boneset-api/data/images/anterior_maxilla_image.jpg create mode 100644 boneset-api/data/images/anterior_nasal_bone_image.jpg create mode 100644 boneset-api/data/images/anterior_sphenoid_bone_image.jpg create mode 100644 boneset-api/data/images/anterior_view_image.jpg create mode 100644 boneset-api/data/images/anterior_zygomatic_bone_image.jpg create mode 100644 boneset-api/data/images/atlas_(inferior_aspect)_image.png create mode 100644 boneset-api/data/images/atlas_(posterosuperior_aspect)_image.png create mode 100644 boneset-api/data/images/atlas_(superior_aspect)_image.png create mode 100644 boneset-api/data/images/auricular_surface_image.jpg create mode 100644 boneset-api/data/images/axis_(inferior_aspect)_image.png create mode 100644 boneset-api/data/images/axis_(lateral_aspect)_image.png create mode 100644 boneset-api/data/images/axis_(superior_aspect)_image.png create mode 100644 boneset-api/data/images/bony_pelvis_image1.jpg create mode 100644 boneset-api/data/images/bony_pelvis_image2.jpg create mode 100644 boneset-api/data/images/cervical_(inferior_aspect)_image.png create mode 100644 boneset-api/data/images/cervical_(right_lateral_aspect)_image.png create mode 100644 boneset-api/data/images/cervical_(superior_aspect)_image.png create mode 100644 boneset-api/data/images/coccyx_(anterior_aspect)_image.png create mode 100644 boneset-api/data/images/coccyx_(posterior_aspect)_image.png create mode 100644 boneset-api/data/images/iliac_crest_image1.jpg create mode 100644 boneset-api/data/images/iliac_crest_image2.jpg create mode 100644 boneset-api/data/images/ilium_image1.jpg create mode 100644 boneset-api/data/images/ilium_image2.jpg create mode 100644 boneset-api/data/images/inferior_image.jpg create mode 100644 boneset-api/data/images/inferior_maxilla_image.jpg create mode 100644 boneset-api/data/images/inferior_occipital_bone_image.jpg create mode 100644 boneset-api/data/images/inferior_palatine_bone_image.jpg create mode 100644 boneset-api/data/images/inferior_sphenoid_bone_image.jpg create mode 100644 boneset-api/data/images/inferior_temporal_bone_image.jpg create mode 100644 boneset-api/data/images/inferior_view_image.png create mode 100644 boneset-api/data/images/inferior_vomer_image.jpg.jpg create mode 100644 boneset-api/data/images/ischial_spine_image1.jpg create mode 100644 boneset-api/data/images/ischial_spine_image2.jpg create mode 100644 boneset-api/data/images/ischial_tuberosity_image1.jpg create mode 100644 boneset-api/data/images/ischial_tuberosity_image2.jpg create mode 100644 boneset-api/data/images/ischium_image1.jpg create mode 100644 boneset-api/data/images/ischium_image2.jpg create mode 100644 boneset-api/data/images/lateral_ethmoid_bone_image.jpg create mode 100644 boneset-api/data/images/lateral_image.jpg create mode 100644 boneset-api/data/images/lateral_mandible_bone_image.jpg create mode 100644 boneset-api/data/images/lateral_sphenoid_bone_image.jpg create mode 100644 boneset-api/data/images/lateral_temporal_bone_image.jpg create mode 100644 boneset-api/data/images/lateral_view_image.jpg create mode 100644 boneset-api/data/images/lumbar_(inferior_aspect)_image.png create mode 100644 boneset-api/data/images/lumbar_(lateral_aspect)_image.png create mode 100644 boneset-api/data/images/lumbar_(posterior_aspect)_image.png create mode 100644 boneset-api/data/images/lumbar_(superior_aspect)_image.png create mode 100644 boneset-api/data/images/pectineal_line_image.png create mode 100644 boneset-api/data/images/posterior_iliac_spines_image1.jpg create mode 100644 boneset-api/data/images/posterior_iliac_spines_image2.jpg create mode 100644 boneset-api/data/images/pubic_rami_image1.jpg create mode 100644 boneset-api/data/images/pubic_rami_image2.jpg create mode 100644 boneset-api/data/images/pubic_tubercle_image.jpg create mode 100644 boneset-api/data/images/pubis_image1.jpg create mode 100644 boneset-api/data/images/pubis_image2.jpg create mode 100644 boneset-api/data/images/ramus_image1.jpg create mode 100644 boneset-api/data/images/ramus_image2.jpg create mode 100644 boneset-api/data/images/sacrum_(anterior_aspect)_image.png create mode 100644 boneset-api/data/images/sacrum_(posterior_aspect)_image.png create mode 100644 boneset-api/data/images/sacrum_and_coccyx_(anterior_aspect)_image.png create mode 100644 boneset-api/data/images/sacrum_and_coccyx_(posterior_aspect)_image.png create mode 100644 boneset-api/data/images/sciatic_notches_image1.jpg create mode 100644 boneset-api/data/images/sciatic_notches_image2.jpg create mode 100644 boneset-api/data/images/superior_cranial_cavity_image.jpg create mode 100644 boneset-api/data/images/superior_frontal_bone_image.jpg create mode 100644 boneset-api/data/images/superior_occipital_bone_image.jpg create mode 100644 boneset-api/data/images/superior_sphenoid_bone_image.jpg create mode 100644 boneset-api/data/images/superior_temporal_bone_image.jpg create mode 100644 boneset-api/data/images/superior_view_image.png create mode 100644 boneset-api/data/images/symphyseal_surface_image.png create mode 100644 boneset-api/data/images/thoracic_(inferior_aspect)_image.png create mode 100644 boneset-api/data/images/thoracic_(lateral_aspect)_image.png create mode 100644 boneset-api/data/images/thoracic_(superior_aspect)_image.png create mode 100644 boneset-api/data/images/vertebrae_image.png create mode 100644 boneset-api/data/subbones/anterior_frontal_bone.json create mode 100644 boneset-api/data/subbones/anterior_iliac_spines.json create mode 100644 boneset-api/data/subbones/anterior_mandible.json create mode 100644 boneset-api/data/subbones/anterior_maxilla.json create mode 100644 boneset-api/data/subbones/anterior_nasal_bone.json create mode 100644 boneset-api/data/subbones/anterior_sphenoid_bone.json create mode 100644 boneset-api/data/subbones/anterior_zygomatic_bone.json create mode 100644 boneset-api/data/subbones/atlas_anterior_and_posterior_tubercles.json create mode 100644 boneset-api/data/subbones/atlas_arches.json create mode 100644 boneset-api/data/subbones/atlas_articular_facet_for_dens.json create mode 100644 boneset-api/data/subbones/atlas_articular_surfaces.json create mode 100644 boneset-api/data/subbones/atlas_groove_for_vertebral_artery.json create mode 100644 boneset-api/data/subbones/atlas_lateral_mass.json create mode 100644 boneset-api/data/subbones/atlas_transverse_process.json create mode 100644 boneset-api/data/subbones/auricular_surface.json create mode 100644 boneset-api/data/subbones/axis_articular_surfaces.json create mode 100644 boneset-api/data/subbones/axis_body_(dens).json create mode 100644 boneset-api/data/subbones/axis_lamina.json create mode 100644 boneset-api/data/subbones/axis_pedicle.json create mode 100644 boneset-api/data/subbones/axis_spinous_process.json create mode 100644 boneset-api/data/subbones/axis_transverse_foramen.json create mode 100644 boneset-api/data/subbones/axis_transverse_process.json create mode 100644 boneset-api/data/subbones/cervical_body.json create mode 100644 boneset-api/data/subbones/cervical_lamina.json create mode 100644 boneset-api/data/subbones/cervical_pedicle.json create mode 100644 boneset-api/data/subbones/cervical_spinous_process.json create mode 100644 boneset-api/data/subbones/cervical_transverse_process.json create mode 100644 boneset-api/data/subbones/cervical_vertebral_arch.json create mode 100644 boneset-api/data/subbones/cervical_vertebral_foramen.json create mode 100644 boneset-api/data/subbones/clavicle_acromial_end.json create mode 100644 boneset-api/data/subbones/clavicle_shaft.json create mode 100644 boneset-api/data/subbones/clavicle_sternal_end.json create mode 100644 boneset-api/data/subbones/coccyx.json create mode 100644 boneset-api/data/subbones/cranial_base.json create mode 100644 boneset-api/data/subbones/first_rib_grooves_for_subclavian_vessels.json create mode 100644 boneset-api/data/subbones/first_rib_head_and_neck.json create mode 100644 boneset-api/data/subbones/first_rib_tubercles.json create mode 100644 boneset-api/data/subbones/iliac_crest.json create mode 100644 boneset-api/data/subbones/inferior_maxilla.json create mode 100644 boneset-api/data/subbones/inferior_occipital_bone.json create mode 100644 boneset-api/data/subbones/inferior_palatine_bone.json create mode 100644 boneset-api/data/subbones/inferior_sphenoid_bone.json create mode 100644 boneset-api/data/subbones/inferior_temporal_bone.json create mode 100644 boneset-api/data/subbones/inferior_vomer.json create mode 100644 boneset-api/data/subbones/lateral_ethmoid_bone.json create mode 100644 boneset-api/data/subbones/lateral_lacrimal_bone.json create mode 100644 boneset-api/data/subbones/lateral_mandible.json create mode 100644 boneset-api/data/subbones/lateral_parietal_bone.json create mode 100644 boneset-api/data/subbones/lateral_sphenoid_bone.json create mode 100644 boneset-api/data/subbones/lateral_temporal_bone.json create mode 100644 boneset-api/data/subbones/lumbar_accessory_process.json create mode 100644 boneset-api/data/subbones/lumbar_articular_surfaces.json create mode 100644 boneset-api/data/subbones/lumbar_body.json create mode 100644 boneset-api/data/subbones/lumbar_mammillary_process.json create mode 100644 boneset-api/data/subbones/lumbar_spinous_process.json create mode 100644 boneset-api/data/subbones/lumbar_transverse_process.json create mode 100644 boneset-api/data/subbones/posterior_iliac_spines.json create mode 100644 boneset-api/data/subbones/sacrum_and_coccyx__sacral_hiatus.json create mode 100644 boneset-api/data/subbones/sacrum_and_coccyx_anterior_and_posterior_sacral_foramina.json create mode 100644 boneset-api/data/subbones/sacrum_and_coccyx_articular_surface_for_ilium.json create mode 100644 boneset-api/data/subbones/sacrum_and_coccyx_median_sacral_crest.json create mode 100644 boneset-api/data/subbones/sacrum_and_coccyx_sacral_promontory.json create mode 100644 boneset-api/data/subbones/sacrum_and_coccyx_superior_articular_process.json create mode 100644 boneset-api/data/subbones/scapula_acromion_and_coracoid_process.json create mode 100644 boneset-api/data/subbones/scapula_body.json create mode 100644 boneset-api/data/subbones/scapula_fossae.json create mode 100644 boneset-api/data/subbones/scapula_spine.json create mode 100644 boneset-api/data/subbones/sternum_body.json create mode 100644 boneset-api/data/subbones/sternum_manubrium.json create mode 100644 boneset-api/data/subbones/sternum_xiphoid_process.json create mode 100644 boneset-api/data/subbones/superior_ethmoid_bone.json create mode 100644 boneset-api/data/subbones/superior_frontal_bone.json create mode 100644 boneset-api/data/subbones/superior_occipital_bone.json create mode 100644 boneset-api/data/subbones/superior_sphenoid_bone.json create mode 100644 boneset-api/data/subbones/superior_temporal_bone.json create mode 100644 boneset-api/data/subbones/thoracic_articular_surfaces.json create mode 100644 boneset-api/data/subbones/thoracic_body.json create mode 100644 boneset-api/data/subbones/thoracic_costal_facets.json create mode 100644 boneset-api/data/subbones/thoracic_spinous_process.json create mode 100644 boneset-api/data/subbones/thoracic_transverse_process.json create mode 100644 boneset-api/data/subbones/thoracic_vertebral_notch.json create mode 100644 boneset-api/data/subbones/typical_rib_body.json create mode 100644 boneset-api/data/subbones/typical_rib_head_and_neck.json create mode 100644 boneset-api/data/subbones/typical_rib_tubercle.json diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_frontalbone_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_frontalbone_colored_regions.json new file mode 100644 index 00000000..976c4e75 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_frontalbone_colored_regions.json @@ -0,0 +1,495 @@ +{ + "slide_number": 5, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "225", + "path_data": [ + { + "path_width": 3603287, + "path_height": 2290649, + "commands": [ + { + "type": "moveTo", + "x": 5773761, + "y": 4249845 + }, + { + "type": "lineTo", + "x": 5711410, + "y": 4266254 + }, + { + "type": "lineTo", + "x": 5681875, + "y": 4266254 + }, + { + "type": "lineTo", + "x": 5622804, + "y": 4249845 + }, + { + "type": "lineTo", + "x": 5612959, + "y": 4299071 + }, + { + "type": "lineTo", + "x": 5593269, + "y": 4351579 + }, + { + "type": "lineTo", + "x": 5580142, + "y": 4358142 + }, + { + "type": "lineTo", + "x": 5530917, + "y": 4351579 + }, + { + "type": "lineTo", + "x": 5481692, + "y": 4348297 + }, + { + "type": "lineTo", + "x": 5452157, + "y": 4364706 + }, + { + "type": "cubicBezTo", + "x1": 5445594, + "y1": 4384396, + "x2": 5425903, + "y2": 4404087, + "x": 5419340, + "y": 4423777 + }, + { + "type": "lineTo", + "x": 5416058, + "y": 4499257 + }, + { + "type": "lineTo", + "x": 5389805, + "y": 4568173 + }, + { + "type": "lineTo", + "x": 5350425, + "y": 4578018 + }, + { + "type": "lineTo", + "x": 5311044, + "y": 4587863 + }, + { + "type": "lineTo", + "x": 5291354, + "y": 4512384 + }, + { + "type": "lineTo", + "x": 5265101, + "y": 4361424 + }, + { + "type": "lineTo", + "x": 5206031, + "y": 4249845 + }, + { + "type": "lineTo", + "x": 5041946, + "y": 4157957 + }, + { + "type": "lineTo", + "x": 4877862, + "y": 4102167 + }, + { + "type": "lineTo", + "x": 4700651, + "y": 4089040 + }, + { + "type": "lineTo", + "x": 4507032, + "y": 4151393 + }, + { + "type": "lineTo", + "x": 4342948, + "y": 4233436 + }, + { + "type": "lineTo", + "x": 4260906, + "y": 4312198 + }, + { + "type": "lineTo", + "x": 4221526, + "y": 4456594 + }, + { + "type": "lineTo", + "x": 4211681, + "y": 4551764 + }, + { + "type": "lineTo", + "x": 4201836, + "y": 4587863 + }, + { + "type": "lineTo", + "x": 4169019, + "y": 4594427 + }, + { + "type": "lineTo", + "x": 4136202, + "y": 4568173 + }, + { + "type": "lineTo", + "x": 4096822, + "y": 4522229 + }, + { + "type": "lineTo", + "x": 4041033, + "y": 4528792 + }, + { + "type": "lineTo", + "x": 4027906, + "y": 4509102 + }, + { + "type": "lineTo", + "x": 4027906, + "y": 4469721 + }, + { + "type": "lineTo", + "x": 4001653, + "y": 4440186 + }, + { + "type": "lineTo", + "x": 3981963, + "y": 4423777 + }, + { + "type": "lineTo", + "x": 3995090, + "y": 4351579 + }, + { + "type": "lineTo", + "x": 3936020, + "y": 4246563 + }, + { + "type": "lineTo", + "x": 3975399, + "y": 4092322 + }, + { + "type": "lineTo", + "x": 3968836, + "y": 3915108 + }, + { + "type": "lineTo", + "x": 3958991, + "y": 3603344 + }, + { + "type": "lineTo", + "x": 3952428, + "y": 3429412 + }, + { + "type": "lineTo", + "x": 3968836, + "y": 3235790 + }, + { + "type": "lineTo", + "x": 4073850, + "y": 3061858 + }, + { + "type": "lineTo", + "x": 4231371, + "y": 2887926 + }, + { + "type": "lineTo", + "x": 4415145, + "y": 2743530 + }, + { + "type": "lineTo", + "x": 4638299, + "y": 2605697 + }, + { + "type": "lineTo", + "x": 4822074, + "y": 2513809 + }, + { + "type": "lineTo", + "x": 5051791, + "y": 2428484 + }, + { + "type": "lineTo", + "x": 5271664, + "y": 2382539 + }, + { + "type": "lineTo", + "x": 5524354, + "y": 2359567 + }, + { + "type": "lineTo", + "x": 5767198, + "y": 2362849 + }, + { + "type": "lineTo", + "x": 6000198, + "y": 2395666 + }, + { + "type": "lineTo", + "x": 6249606, + "y": 2441611 + }, + { + "type": "lineTo", + "x": 6453070, + "y": 2517090 + }, + { + "type": "lineTo", + "x": 6620436, + "y": 2579443 + }, + { + "type": "lineTo", + "x": 6820619, + "y": 2704149 + }, + { + "type": "lineTo", + "x": 7030646, + "y": 2861672 + }, + { + "type": "lineTo", + "x": 7247238, + "y": 3058576 + }, + { + "type": "lineTo", + "x": 7365378, + "y": 3225945 + }, + { + "type": "lineTo", + "x": 7444139, + "y": 3380186 + }, + { + "type": "lineTo", + "x": 7473674, + "y": 3478638 + }, + { + "type": "lineTo", + "x": 7490082, + "y": 3603344 + }, + { + "type": "lineTo", + "x": 7490082, + "y": 3773994 + }, + { + "type": "lineTo", + "x": 7509772, + "y": 4010279 + }, + { + "type": "lineTo", + "x": 7493364, + "y": 4207183 + }, + { + "type": "lineTo", + "x": 7496645, + "y": 4259690 + }, + { + "type": "lineTo", + "x": 7539307, + "y": 4578018 + }, + { + "type": "lineTo", + "x": 7404758, + "y": 4574737 + }, + { + "type": "lineTo", + "x": 7368660, + "y": 4486130 + }, + { + "type": "lineTo", + "x": 7325998, + "y": 4367987 + }, + { + "type": "lineTo", + "x": 7296463, + "y": 4322043 + }, + { + "type": "lineTo", + "x": 7158632, + "y": 4249845 + }, + { + "type": "lineTo", + "x": 7033928, + "y": 4190774 + }, + { + "type": "lineTo", + "x": 6869844, + "y": 4171083 + }, + { + "type": "lineTo", + "x": 6702478, + "y": 4171083 + }, + { + "type": "lineTo", + "x": 6581056, + "y": 4190774 + }, + { + "type": "lineTo", + "x": 6462915, + "y": 4243282 + }, + { + "type": "lineTo", + "x": 6348056, + "y": 4322043 + }, + { + "type": "lineTo", + "x": 6266014, + "y": 4410650 + }, + { + "type": "lineTo", + "x": 6233197, + "y": 4535356 + }, + { + "type": "lineTo", + "x": 6197099, + "y": 4627244 + }, + { + "type": "lineTo", + "x": 6147874, + "y": 4650216 + }, + { + "type": "lineTo", + "x": 6141310, + "y": 4561610 + }, + { + "type": "lineTo", + "x": 6144592, + "y": 4446749 + }, + { + "type": "lineTo", + "x": 6154437, + "y": 4374551 + }, + { + "type": "lineTo", + "x": 6098648, + "y": 4315480 + }, + { + "type": "lineTo", + "x": 6042860, + "y": 4282662 + }, + { + "type": "lineTo", + "x": 5993635, + "y": 4259690 + }, + { + "type": "lineTo", + "x": 5944409, + "y": 4266254 + }, + { + "type": "lineTo", + "x": 5911592, + "y": 4246563 + }, + { + "type": "lineTo", + "x": 5865649, + "y": 4256409 + }, + { + "type": "lineTo", + "x": 5829551, + "y": 4272818 + }, + { + "type": "lineTo", + "x": 5773761, + "y": 4249845 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_iliac_spines_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_iliac_spines_colored_regions.json new file mode 100644 index 00000000..b07403fc --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_iliac_spines_colored_regions.json @@ -0,0 +1,269 @@ +{ + "slide_number": 6, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Anterior Superior Iliac Spine", + "color": "008000", + "offset_x": 1580934, + "offset_y": 639228, + "path_data": [ + { + "path_width": 290636, + "path_height": 524440, + "commands": [ + { + "type": "moveTo", + "x": 145318, + "y": 0 + }, + { + "type": "lineTo", + "x": 56863, + "y": 126371 + }, + { + "type": "lineTo", + "x": 18954, + "y": 278016 + }, + { + "type": "lineTo", + "x": 0, + "y": 417024 + }, + { + "type": "lineTo", + "x": 69500, + "y": 524440 + }, + { + "type": "lineTo", + "x": 202182, + "y": 454936 + }, + { + "type": "lineTo", + "x": 290636, + "y": 398069 + }, + { + "type": "lineTo", + "x": 290636, + "y": 278016 + }, + { + "type": "lineTo", + "x": 271682, + "y": 164282 + }, + { + "type": "lineTo", + "x": 176909, + "y": 82141 + }, + { + "type": "lineTo", + "x": 145318, + "y": 0 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Anterior Inferior Iliac Spine", + "color": "FF00E6", + "offset_x": 1568297, + "offset_y": 1296357, + "path_data": [ + { + "path_width": 113728, + "path_height": 246424, + "commands": [ + { + "type": "moveTo", + "x": 44228, + "y": 0 + }, + { + "type": "lineTo", + "x": 6318, + "y": 88460 + }, + { + "type": "lineTo", + "x": 0, + "y": 164283 + }, + { + "type": "lineTo", + "x": 44228, + "y": 227468 + }, + { + "type": "lineTo", + "x": 101091, + "y": 246424 + }, + { + "type": "lineTo", + "x": 113728, + "y": 151646 + }, + { + "type": "lineTo", + "x": 113728, + "y": 88460 + }, + { + "type": "lineTo", + "x": 44228, + "y": 0 + }, + { + "type": "close" + } + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Anterior Superior Iliac Spine", + "color": "008000", + "offset_x": 576040, + "offset_y": 1071417, + "path_data": [ + { + "path_width": 259045, + "path_height": 417025, + "commands": [ + { + "type": "moveTo", + "x": 69500, + "y": 0 + }, + { + "type": "lineTo", + "x": 18954, + "y": 120053 + }, + { + "type": "lineTo", + "x": 0, + "y": 233787 + }, + { + "type": "lineTo", + "x": 25272, + "y": 322246 + }, + { + "type": "lineTo", + "x": 88454, + "y": 379113 + }, + { + "type": "lineTo", + "x": 189545, + "y": 417025 + }, + { + "type": "lineTo", + "x": 259045, + "y": 341202 + }, + { + "type": "lineTo", + "x": 233773, + "y": 189557 + }, + { + "type": "lineTo", + "x": 164273, + "y": 94778 + }, + { + "type": "lineTo", + "x": 69500, + "y": 0 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Anterior Inferior Iliac Spine", + "color": "FF00E6", + "offset_x": 752949, + "offset_y": 1551626, + "path_data": [ + { + "path_width": 107409, + "path_height": 208512, + "commands": [ + { + "type": "moveTo", + "x": 31591, + "y": 0 + }, + { + "type": "lineTo", + "x": 0, + "y": 94778 + }, + { + "type": "lineTo", + "x": 18954, + "y": 189557 + }, + { + "type": "lineTo", + "x": 56864, + "y": 208512 + }, + { + "type": "lineTo", + "x": 107409, + "y": 176920 + }, + { + "type": "lineTo", + "x": 107409, + "y": 37911 + }, + { + "type": "lineTo", + "x": 31591, + "y": 0 + }, + { + "type": "close" + } + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_mandible_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_mandible_colored_regions.json new file mode 100644 index 00000000..be9558f9 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_mandible_colored_regions.json @@ -0,0 +1,1405 @@ +{ + "slide_number": 10, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "368", + "path_data": [ + { + "path_width": 4333875, + "path_height": 3282950, + "commands": [ + { + "type": "moveTo", + "x": 3825876, + "y": 2416175 + }, + { + "type": "lineTo", + "x": 3746501, + "y": 2409825 + }, + { + "type": "lineTo", + "x": 3702051, + "y": 2419350 + }, + { + "type": "lineTo", + "x": 3673476, + "y": 2422525 + }, + { + "type": "lineTo", + "x": 3625851, + "y": 2422525 + }, + { + "type": "lineTo", + "x": 3587751, + "y": 2432050 + }, + { + "type": "lineTo", + "x": 3546476, + "y": 2441575 + }, + { + "type": "lineTo", + "x": 3486151, + "y": 2416175 + }, + { + "type": "lineTo", + "x": 3444876, + "y": 2397125 + }, + { + "type": "lineTo", + "x": 3476626, + "y": 2489200 + }, + { + "type": "lineTo", + "x": 3495676, + "y": 2622550 + }, + { + "type": "lineTo", + "x": 3524251, + "y": 2809875 + }, + { + "type": "lineTo", + "x": 3552826, + "y": 2974975 + }, + { + "type": "lineTo", + "x": 3571876, + "y": 3111500 + }, + { + "type": "lineTo", + "x": 3590926, + "y": 3276600 + }, + { + "type": "lineTo", + "x": 3606801, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 3609976, + "y": 3470275 + }, + { + "type": "lineTo", + "x": 3616326, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 3597276, + "y": 3587750 + }, + { + "type": "lineTo", + "x": 3590926, + "y": 3622675 + }, + { + "type": "lineTo", + "x": 3587751, + "y": 3689350 + }, + { + "type": "lineTo", + "x": 3562351, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 3533776, + "y": 3803650 + }, + { + "type": "lineTo", + "x": 3530601, + "y": 3848100 + }, + { + "type": "lineTo", + "x": 3524251, + "y": 3889375 + }, + { + "type": "lineTo", + "x": 3527426, + "y": 3933825 + }, + { + "type": "lineTo", + "x": 3540126, + "y": 3962400 + }, + { + "type": "lineTo", + "x": 3540126, + "y": 3984625 + }, + { + "type": "lineTo", + "x": 3530601, + "y": 4006850 + }, + { + "type": "lineTo", + "x": 3527426, + "y": 4060825 + }, + { + "type": "lineTo", + "x": 3527426, + "y": 4156075 + }, + { + "type": "lineTo", + "x": 3536951, + "y": 4191000 + }, + { + "type": "lineTo", + "x": 3571876, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 3613151, + "y": 4238625 + }, + { + "type": "lineTo", + "x": 3651251, + "y": 4254500 + }, + { + "type": "lineTo", + "x": 3689351, + "y": 4292600 + }, + { + "type": "lineTo", + "x": 3717926, + "y": 4327525 + }, + { + "type": "lineTo", + "x": 3752851, + "y": 4349750 + }, + { + "type": "lineTo", + "x": 3784601, + "y": 4413250 + }, + { + "type": "lineTo", + "x": 3806826, + "y": 4425950 + }, + { + "type": "lineTo", + "x": 3832226, + "y": 4495800 + }, + { + "type": "lineTo", + "x": 3838576, + "y": 4552950 + }, + { + "type": "lineTo", + "x": 3879851, + "y": 4670425 + }, + { + "type": "lineTo", + "x": 3879851, + "y": 4670425 + }, + { + "type": "lineTo", + "x": 3927476, + "y": 4768850 + }, + { + "type": "lineTo", + "x": 3975101, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 4060826, + "y": 4965700 + }, + { + "type": "lineTo", + "x": 4127501, + "y": 5019675 + }, + { + "type": "lineTo", + "x": 4206876, + "y": 5095875 + }, + { + "type": "lineTo", + "x": 4270376, + "y": 5133975 + }, + { + "type": "lineTo", + "x": 4359276, + "y": 5213350 + }, + { + "type": "lineTo", + "x": 4413251, + "y": 5251450 + }, + { + "type": "lineTo", + "x": 4505326, + "y": 5302250 + }, + { + "type": "lineTo", + "x": 4603751, + "y": 5368925 + }, + { + "type": "lineTo", + "x": 4676776, + "y": 5413375 + }, + { + "type": "lineTo", + "x": 4765676, + "y": 5461000 + }, + { + "type": "lineTo", + "x": 4848226, + "y": 5489575 + }, + { + "type": "lineTo", + "x": 4937126, + "y": 5514975 + }, + { + "type": "lineTo", + "x": 5022851, + "y": 5553075 + }, + { + "type": "lineTo", + "x": 5080001, + "y": 5572125 + }, + { + "type": "lineTo", + "x": 5140326, + "y": 5588000 + }, + { + "type": "lineTo", + "x": 5191126, + "y": 5603875 + }, + { + "type": "lineTo", + "x": 5270501, + "y": 5610225 + }, + { + "type": "lineTo", + "x": 5340351, + "y": 5619750 + }, + { + "type": "lineTo", + "x": 5403851, + "y": 5645150 + }, + { + "type": "lineTo", + "x": 5483226, + "y": 5664200 + }, + { + "type": "lineTo", + "x": 5565776, + "y": 5676900 + }, + { + "type": "lineTo", + "x": 5635626, + "y": 5676900 + }, + { + "type": "lineTo", + "x": 5686426, + "y": 5676900 + }, + { + "type": "lineTo", + "x": 5819776, + "y": 5680075 + }, + { + "type": "lineTo", + "x": 5959476, + "y": 5680075 + }, + { + "type": "lineTo", + "x": 6061076, + "y": 5673725 + }, + { + "type": "lineTo", + "x": 6169026, + "y": 5657850 + }, + { + "type": "lineTo", + "x": 6289676, + "y": 5632450 + }, + { + "type": "lineTo", + "x": 6340476, + "y": 5626100 + }, + { + "type": "lineTo", + "x": 6419851, + "y": 5616575 + }, + { + "type": "lineTo", + "x": 6492876, + "y": 5597525 + }, + { + "type": "lineTo", + "x": 6581776, + "y": 5559425 + }, + { + "type": "lineTo", + "x": 6670676, + "y": 5524500 + }, + { + "type": "lineTo", + "x": 6775451, + "y": 5467350 + }, + { + "type": "lineTo", + "x": 6867526, + "y": 5403850 + }, + { + "type": "lineTo", + "x": 6918326, + "y": 5346700 + }, + { + "type": "lineTo", + "x": 6959601, + "y": 5308600 + }, + { + "type": "lineTo", + "x": 6969126, + "y": 5292725 + }, + { + "type": "lineTo", + "x": 7023101, + "y": 5248275 + }, + { + "type": "lineTo", + "x": 7118351, + "y": 5156200 + }, + { + "type": "lineTo", + "x": 7159626, + "y": 5099050 + }, + { + "type": "lineTo", + "x": 7213601, + "y": 5048250 + }, + { + "type": "lineTo", + "x": 7280276, + "y": 4984750 + }, + { + "type": "lineTo", + "x": 7327901, + "y": 4908550 + }, + { + "type": "lineTo", + "x": 7346951, + "y": 4851400 + }, + { + "type": "lineTo", + "x": 7394576, + "y": 4787900 + }, + { + "type": "lineTo", + "x": 7432676, + "y": 4708525 + }, + { + "type": "lineTo", + "x": 7448551, + "y": 4664075 + }, + { + "type": "lineTo", + "x": 7448551, + "y": 4530725 + }, + { + "type": "lineTo", + "x": 7451726, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 7473951, + "y": 4378325 + }, + { + "type": "lineTo", + "x": 7499351, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 7505701, + "y": 4286250 + }, + { + "type": "lineTo", + "x": 7527926, + "y": 4264025 + }, + { + "type": "lineTo", + "x": 7543801, + "y": 4222750 + }, + { + "type": "lineTo", + "x": 7556501, + "y": 4194175 + }, + { + "type": "lineTo", + "x": 7572376, + "y": 4143375 + }, + { + "type": "lineTo", + "x": 7610476, + "y": 4114800 + }, + { + "type": "cubicBezTo", + "x1": 7611534, + "y1": 4080933, + "x2": 7612593, + "y2": 4047067, + "x": 7613651, + "y": 4013200 + }, + { + "type": "lineTo", + "x": 7575551, + "y": 3984625 + }, + { + "type": "lineTo", + "x": 7575551, + "y": 3943350 + }, + { + "type": "lineTo", + "x": 7575551, + "y": 3917950 + }, + { + "type": "lineTo", + "x": 7553326, + "y": 3886200 + }, + { + "type": "lineTo", + "x": 7543801, + "y": 3851275 + }, + { + "type": "lineTo", + "x": 7556501, + "y": 3810000 + }, + { + "type": "lineTo", + "x": 7566026, + "y": 3781425 + }, + { + "type": "lineTo", + "x": 7540626, + "y": 3736975 + }, + { + "type": "lineTo", + "x": 7531101, + "y": 3727450 + }, + { + "type": "lineTo", + "x": 7521576, + "y": 3654425 + }, + { + "type": "lineTo", + "x": 7527926, + "y": 3597275 + }, + { + "type": "lineTo", + "x": 7527926, + "y": 3524250 + }, + { + "type": "lineTo", + "x": 7537451, + "y": 3438525 + }, + { + "type": "lineTo", + "x": 7546976, + "y": 3378200 + }, + { + "type": "lineTo", + "x": 7543801, + "y": 3292475 + }, + { + "type": "lineTo", + "x": 7556501, + "y": 3187700 + }, + { + "type": "lineTo", + "x": 7572376, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 7572376, + "y": 3067050 + }, + { + "type": "lineTo", + "x": 7597776, + "y": 2990850 + }, + { + "type": "lineTo", + "x": 7629526, + "y": 2911475 + }, + { + "type": "lineTo", + "x": 7661276, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 7686676, + "y": 2717800 + }, + { + "type": "lineTo", + "x": 7715251, + "y": 2651125 + }, + { + "type": "lineTo", + "x": 7747001, + "y": 2568575 + }, + { + "type": "lineTo", + "x": 7775576, + "y": 2501900 + }, + { + "type": "lineTo", + "x": 7778751, + "y": 2479675 + }, + { + "type": "lineTo", + "x": 7756526, + "y": 2482850 + }, + { + "type": "lineTo", + "x": 7708901, + "y": 2479675 + }, + { + "type": "lineTo", + "x": 7661276, + "y": 2473325 + }, + { + "type": "lineTo", + "x": 7607301, + "y": 2479675 + }, + { + "type": "lineTo", + "x": 7518401, + "y": 2489200 + }, + { + "type": "lineTo", + "x": 7445376, + "y": 2508250 + }, + { + "type": "lineTo", + "x": 7407276, + "y": 2533650 + }, + { + "type": "lineTo", + "x": 7407276, + "y": 2533650 + }, + { + "type": "lineTo", + "x": 7378701, + "y": 2647950 + }, + { + "type": "lineTo", + "x": 7375526, + "y": 2724150 + }, + { + "type": "lineTo", + "x": 7334251, + "y": 2787650 + }, + { + "type": "lineTo", + "x": 7308851, + "y": 2847975 + }, + { + "type": "lineTo", + "x": 7280276, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 7239001, + "y": 2974975 + }, + { + "type": "lineTo", + "x": 7178676, + "y": 3127375 + }, + { + "type": "lineTo", + "x": 7146926, + "y": 3228975 + }, + { + "type": "lineTo", + "x": 7108826, + "y": 3314700 + }, + { + "type": "lineTo", + "x": 7102476, + "y": 3330575 + }, + { + "type": "lineTo", + "x": 7115176, + "y": 3397250 + }, + { + "type": "lineTo", + "x": 7140576, + "y": 3457575 + }, + { + "type": "lineTo", + "x": 7143751, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 7124701, + "y": 3673475 + }, + { + "type": "lineTo", + "x": 7115176, + "y": 3794125 + }, + { + "type": "lineTo", + "x": 7083426, + "y": 3883025 + }, + { + "type": "lineTo", + "x": 7061201, + "y": 3914775 + }, + { + "type": "lineTo", + "x": 7054851, + "y": 3987800 + }, + { + "type": "lineTo", + "x": 7054851, + "y": 4044950 + }, + { + "type": "lineTo", + "x": 7023101, + "y": 4121150 + }, + { + "type": "lineTo", + "x": 6956426, + "y": 4121150 + }, + { + "type": "lineTo", + "x": 6911976, + "y": 4108450 + }, + { + "type": "lineTo", + "x": 6902451, + "y": 4178300 + }, + { + "type": "lineTo", + "x": 6889751, + "y": 4200525 + }, + { + "type": "lineTo", + "x": 6826251, + "y": 4213225 + }, + { + "type": "lineTo", + "x": 6781801, + "y": 4286250 + }, + { + "type": "lineTo", + "x": 6743701, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 6715126, + "y": 4384675 + }, + { + "type": "lineTo", + "x": 6664326, + "y": 4387850 + }, + { + "type": "lineTo", + "x": 6604001, + "y": 4368800 + }, + { + "type": "lineTo", + "x": 6556376, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 6534151, + "y": 4368800 + }, + { + "type": "lineTo", + "x": 6518276, + "y": 4425950 + }, + { + "type": "lineTo", + "x": 6451601, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 6343651, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 6261101, + "y": 4413250 + }, + { + "type": "lineTo", + "x": 6213476, + "y": 4384675 + }, + { + "type": "lineTo", + "x": 6213476, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 6216651, + "y": 4298950 + }, + { + "type": "lineTo", + "x": 6197601, + "y": 4276725 + }, + { + "type": "lineTo", + "x": 6156326, + "y": 4337050 + }, + { + "type": "lineTo", + "x": 6153151, + "y": 4368800 + }, + { + "type": "lineTo", + "x": 6127751, + "y": 4378325 + }, + { + "type": "lineTo", + "x": 6067426, + "y": 4378325 + }, + { + "type": "lineTo", + "x": 6038851, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 6016626, + "y": 4324350 + }, + { + "type": "lineTo", + "x": 6000751, + "y": 4276725 + }, + { + "type": "lineTo", + "x": 6000751, + "y": 4219575 + }, + { + "type": "lineTo", + "x": 5972176, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 5943601, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 5908676, + "y": 4359275 + }, + { + "type": "lineTo", + "x": 5867401, + "y": 4349750 + }, + { + "type": "lineTo", + "x": 5835651, + "y": 4321175 + }, + { + "type": "lineTo", + "x": 5813426, + "y": 4279900 + }, + { + "type": "lineTo", + "x": 5813426, + "y": 4235450 + }, + { + "type": "lineTo", + "x": 5807076, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 5740401, + "y": 4194175 + }, + { + "type": "lineTo", + "x": 5711826, + "y": 4273550 + }, + { + "type": "lineTo", + "x": 5686426, + "y": 4327525 + }, + { + "type": "lineTo", + "x": 5651501, + "y": 4356100 + }, + { + "type": "lineTo", + "x": 5613401, + "y": 4349750 + }, + { + "type": "lineTo", + "x": 5575301, + "y": 4305300 + }, + { + "type": "lineTo", + "x": 5556251, + "y": 4238625 + }, + { + "type": "lineTo", + "x": 5537201, + "y": 4203700 + }, + { + "type": "lineTo", + "x": 5521326, + "y": 4216400 + }, + { + "type": "lineTo", + "x": 5495926, + "y": 4283075 + }, + { + "type": "lineTo", + "x": 5489576, + "y": 4368800 + }, + { + "type": "lineTo", + "x": 5435601, + "y": 4413250 + }, + { + "type": "lineTo", + "x": 5387976, + "y": 4391025 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 4343400 + }, + { + "type": "lineTo", + "x": 5349876, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 5318126, + "y": 4251325 + }, + { + "type": "lineTo", + "x": 5299076, + "y": 4292600 + }, + { + "type": "lineTo", + "x": 5267326, + "y": 4333875 + }, + { + "type": "lineTo", + "x": 5238751, + "y": 4375150 + }, + { + "type": "lineTo", + "x": 5219701, + "y": 4410075 + }, + { + "type": "lineTo", + "x": 5181601, + "y": 4425950 + }, + { + "type": "lineTo", + "x": 5086351, + "y": 4425950 + }, + { + "type": "lineTo", + "x": 5026026, + "y": 4422775 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 4391025 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 4327525 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 4327525 + }, + { + "type": "lineTo", + "x": 4953001, + "y": 4314825 + }, + { + "type": "lineTo", + "x": 4921251, + "y": 4333875 + }, + { + "type": "lineTo", + "x": 4902201, + "y": 4381500 + }, + { + "type": "lineTo", + "x": 4876801, + "y": 4400550 + }, + { + "type": "lineTo", + "x": 4826001, + "y": 4391025 + }, + { + "type": "lineTo", + "x": 4778376, + "y": 4375150 + }, + { + "type": "lineTo", + "x": 4762501, + "y": 4352925 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 4286250 + }, + { + "type": "lineTo", + "x": 4724401, + "y": 4267200 + }, + { + "type": "lineTo", + "x": 4670426, + "y": 4292600 + }, + { + "type": "lineTo", + "x": 4625976, + "y": 4295775 + }, + { + "type": "lineTo", + "x": 4597401, + "y": 4295775 + }, + { + "type": "lineTo", + "x": 4568826, + "y": 4267200 + }, + { + "type": "lineTo", + "x": 4540251, + "y": 4200525 + }, + { + "type": "lineTo", + "x": 4518026, + "y": 4152900 + }, + { + "type": "lineTo", + "x": 4489451, + "y": 4162425 + }, + { + "type": "lineTo", + "x": 4460876, + "y": 4165600 + }, + { + "type": "lineTo", + "x": 4432301, + "y": 4156075 + }, + { + "type": "lineTo", + "x": 4413251, + "y": 4140200 + }, + { + "type": "lineTo", + "x": 4413251, + "y": 4105275 + }, + { + "type": "lineTo", + "x": 4406901, + "y": 4057650 + }, + { + "type": "lineTo", + "x": 4371976, + "y": 4064000 + }, + { + "type": "lineTo", + "x": 4349751, + "y": 4064000 + }, + { + "type": "lineTo", + "x": 4340226, + "y": 4064000 + }, + { + "type": "lineTo", + "x": 4340226, + "y": 4029075 + }, + { + "type": "lineTo", + "x": 4340226, + "y": 3987800 + }, + { + "type": "lineTo", + "x": 4340226, + "y": 3956050 + }, + { + "type": "lineTo", + "x": 4340226, + "y": 3937000 + }, + { + "type": "lineTo", + "x": 4330701, + "y": 3908425 + }, + { + "type": "lineTo", + "x": 4314826, + "y": 3867150 + }, + { + "type": "lineTo", + "x": 4302126, + "y": 3844925 + }, + { + "type": "lineTo", + "x": 4273551, + "y": 3860800 + }, + { + "type": "lineTo", + "x": 4248151, + "y": 3863975 + }, + { + "type": "lineTo", + "x": 4210051, + "y": 3841750 + }, + { + "type": "lineTo", + "x": 4194176, + "y": 3797300 + }, + { + "type": "lineTo", + "x": 4175126, + "y": 3730625 + }, + { + "type": "lineTo", + "x": 4210051, + "y": 3759200 + }, + { + "type": "lineTo", + "x": 4244976, + "y": 3679825 + }, + { + "type": "lineTo", + "x": 4267201, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 4251326, + "y": 3556000 + }, + { + "type": "lineTo", + "x": 4244976, + "y": 3489325 + }, + { + "type": "lineTo", + "x": 4248151, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 4248151, + "y": 3359150 + }, + { + "type": "lineTo", + "x": 4203701, + "y": 3282950 + }, + { + "type": "lineTo", + "x": 4152901, + "y": 3216275 + }, + { + "type": "lineTo", + "x": 4070351, + "y": 3028950 + }, + { + "type": "lineTo", + "x": 4025901, + "y": 2914650 + }, + { + "type": "lineTo", + "x": 3981451, + "y": 2835275 + }, + { + "type": "lineTo", + "x": 3927476, + "y": 2755900 + }, + { + "type": "lineTo", + "x": 3870326, + "y": 2651125 + }, + { + "type": "lineTo", + "x": 3829051, + "y": 2543175 + }, + { + "type": "lineTo", + "x": 3803651, + "y": 2495550 + }, + { + "type": "lineTo", + "x": 3803651, + "y": 2476500 + }, + { + "type": "lineTo", + "x": 3825876, + "y": 2416175 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_maxilla_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_maxilla_colored_regions.json new file mode 100644 index 00000000..7edf60c8 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_maxilla_colored_regions.json @@ -0,0 +1,1237 @@ +{ + "slide_number": 9, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "334", + "path_data": [ + { + "path_width": 2568575, + "path_height": 1828800, + "commands": [ + { + "type": "moveTo", + "x": 4146550, + "y": 4784725 + }, + { + "type": "lineTo", + "x": 4105275, + "y": 4743450 + }, + { + "type": "lineTo", + "x": 4060825, + "y": 4730750 + }, + { + "type": "lineTo", + "x": 4003675, + "y": 4756150 + }, + { + "type": "lineTo", + "x": 3971925, + "y": 4768850 + }, + { + "type": "lineTo", + "x": 3937000, + "y": 4791075 + }, + { + "type": "lineTo", + "x": 3908425, + "y": 4737100 + }, + { + "type": "lineTo", + "x": 3873500, + "y": 4702175 + }, + { + "type": "lineTo", + "x": 3835400, + "y": 4702175 + }, + { + "type": "lineTo", + "x": 3787775, + "y": 4727575 + }, + { + "type": "lineTo", + "x": 3749675, + "y": 4778375 + }, + { + "type": "lineTo", + "x": 3736975, + "y": 4743450 + }, + { + "type": "lineTo", + "x": 3717925, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3679825, + "y": 4635500 + }, + { + "type": "lineTo", + "x": 3625850, + "y": 4651375 + }, + { + "type": "lineTo", + "x": 3606800, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3603625, + "y": 4743450 + }, + { + "type": "lineTo", + "x": 3600450, + "y": 4756150 + }, + { + "type": "lineTo", + "x": 3581400, + "y": 4724400 + }, + { + "type": "lineTo", + "x": 3543300, + "y": 4689475 + }, + { + "type": "lineTo", + "x": 3486150, + "y": 4702175 + }, + { + "type": "lineTo", + "x": 3470275, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 3467100, + "y": 4733925 + }, + { + "type": "lineTo", + "x": 3441700, + "y": 4705350 + }, + { + "type": "lineTo", + "x": 3409950, + "y": 4695825 + }, + { + "type": "lineTo", + "x": 3384550, + "y": 4708525 + }, + { + "type": "lineTo", + "x": 3387725, + "y": 4635500 + }, + { + "type": "lineTo", + "x": 3349625, + "y": 4692650 + }, + { + "type": "lineTo", + "x": 3340100, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3346450, + "y": 4638675 + }, + { + "type": "lineTo", + "x": 3359150, + "y": 4565650 + }, + { + "type": "lineTo", + "x": 3359150, + "y": 4514850 + }, + { + "type": "lineTo", + "x": 3359150, + "y": 4470400 + }, + { + "type": "lineTo", + "x": 3355975, + "y": 4406900 + }, + { + "type": "lineTo", + "x": 3321050, + "y": 4365625 + }, + { + "type": "lineTo", + "x": 3298825, + "y": 4324350 + }, + { + "type": "lineTo", + "x": 3267075, + "y": 4283075 + }, + { + "type": "lineTo", + "x": 3219450, + "y": 4244975 + }, + { + "type": "lineTo", + "x": 3155950, + "y": 4210050 + }, + { + "type": "lineTo", + "x": 3089275, + "y": 4187825 + }, + { + "type": "lineTo", + "x": 3022600, + "y": 4187825 + }, + { + "type": "lineTo", + "x": 2962275, + "y": 4197350 + }, + { + "type": "lineTo", + "x": 2917825, + "y": 4197350 + }, + { + "type": "lineTo", + "x": 2879725, + "y": 4178300 + }, + { + "type": "lineTo", + "x": 2870200, + "y": 4162425 + }, + { + "type": "lineTo", + "x": 2867025, + "y": 4143375 + }, + { + "type": "lineTo", + "x": 2867025, + "y": 4143375 + }, + { + "type": "lineTo", + "x": 2895600, + "y": 4114800 + }, + { + "type": "lineTo", + "x": 2876550, + "y": 4095750 + }, + { + "type": "lineTo", + "x": 2870200, + "y": 4067175 + }, + { + "type": "lineTo", + "x": 2879725, + "y": 4057650 + }, + { + "type": "lineTo", + "x": 2892425, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 2905125, + "y": 4029075 + }, + { + "type": "lineTo", + "x": 2898775, + "y": 4006850 + }, + { + "type": "lineTo", + "x": 2892425, + "y": 3994150 + }, + { + "type": "lineTo", + "x": 2898775, + "y": 3965575 + }, + { + "type": "lineTo", + "x": 2927350, + "y": 3965575 + }, + { + "type": "lineTo", + "x": 2952750, + "y": 3949700 + }, + { + "type": "lineTo", + "x": 2981325, + "y": 3905250 + }, + { + "type": "lineTo", + "x": 2981325, + "y": 3905250 + }, + { + "type": "lineTo", + "x": 3032125, + "y": 3883025 + }, + { + "type": "lineTo", + "x": 3041650, + "y": 3851275 + }, + { + "type": "lineTo", + "x": 3041650, + "y": 3851275 + }, + { + "type": "lineTo", + "x": 3070225, + "y": 3835400 + }, + { + "type": "lineTo", + "x": 3105150, + "y": 3822700 + }, + { + "type": "lineTo", + "x": 3130550, + "y": 3819525 + }, + { + "type": "lineTo", + "x": 3155950, + "y": 3803650 + }, + { + "type": "lineTo", + "x": 3187700, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 3216275, + "y": 3819525 + }, + { + "type": "lineTo", + "x": 3267075, + "y": 3790950 + }, + { + "type": "lineTo", + "x": 3305175, + "y": 3778250 + }, + { + "type": "lineTo", + "x": 3349625, + "y": 3752850 + }, + { + "type": "lineTo", + "x": 3378200, + "y": 3714750 + }, + { + "type": "lineTo", + "x": 3406775, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 3441700, + "y": 3667125 + }, + { + "type": "lineTo", + "x": 3476625, + "y": 3648075 + }, + { + "type": "lineTo", + "x": 3527425, + "y": 3622675 + }, + { + "type": "lineTo", + "x": 3581400, + "y": 3597275 + }, + { + "type": "lineTo", + "x": 3632200, + "y": 3559175 + }, + { + "type": "lineTo", + "x": 3667125, + "y": 3527425 + }, + { + "type": "lineTo", + "x": 3714750, + "y": 3495675 + }, + { + "type": "lineTo", + "x": 3765550, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 3797300, + "y": 3432175 + }, + { + "type": "lineTo", + "x": 3835400, + "y": 3378200 + }, + { + "type": "lineTo", + "x": 3860800, + "y": 3333750 + }, + { + "type": "lineTo", + "x": 3883025, + "y": 3251200 + }, + { + "type": "lineTo", + "x": 3905250, + "y": 3143250 + }, + { + "type": "lineTo", + "x": 3914775, + "y": 3111500 + }, + { + "type": "lineTo", + "x": 3924300, + "y": 3032125 + }, + { + "type": "lineTo", + "x": 3997325, + "y": 3003550 + }, + { + "type": "lineTo", + "x": 4029075, + "y": 3019425 + }, + { + "type": "cubicBezTo", + "x1": 4034367, + "y1": 3040591, + "x2": 4035954, + "y2": 3107796, + "x": 4035425, + "y": 3136900 + }, + { + "type": "cubicBezTo", + "x1": 4034896, + "y1": 3166004, + "x2": 4029604, + "y2": 3170238, + "x": 4025900, + "y": 3194050 + }, + { + "type": "cubicBezTo", + "x1": 4015317, + "y1": 3214158, + "x2": 4017433, + "y2": 3253317, + "x": 4006850, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 3968750, + "y": 3314700 + }, + { + "type": "lineTo", + "x": 3908425, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 3863975, + "y": 3514725 + }, + { + "type": "lineTo", + "x": 3832225, + "y": 3603625 + }, + { + "type": "lineTo", + "x": 3832225, + "y": 3695700 + }, + { + "type": "lineTo", + "x": 3841750, + "y": 3759200 + }, + { + "type": "lineTo", + "x": 3810000, + "y": 3838575 + }, + { + "type": "lineTo", + "x": 3775075, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 3756025, + "y": 4000500 + }, + { + "type": "lineTo", + "x": 3756025, + "y": 4057650 + }, + { + "type": "lineTo", + "x": 3771900, + "y": 4102100 + }, + { + "type": "lineTo", + "x": 3790950, + "y": 4140200 + }, + { + "type": "lineTo", + "x": 3803650, + "y": 4159250 + }, + { + "type": "lineTo", + "x": 3854450, + "y": 4203700 + }, + { + "type": "lineTo", + "x": 3921125, + "y": 4222750 + }, + { + "type": "lineTo", + "x": 3968750, + "y": 4222750 + }, + { + "type": "lineTo", + "x": 4029075, + "y": 4203700 + }, + { + "type": "lineTo", + "x": 4054475, + "y": 4181475 + }, + { + "type": "lineTo", + "x": 4067175, + "y": 4143375 + }, + { + "type": "lineTo", + "x": 4073525, + "y": 4137025 + }, + { + "type": "lineTo", + "x": 4127500, + "y": 4137025 + }, + { + "type": "lineTo", + "x": 4146550, + "y": 4140200 + }, + { + "type": "lineTo", + "x": 4181475, + "y": 4114800 + }, + { + "type": "lineTo", + "x": 4200525, + "y": 4102100 + }, + { + "type": "lineTo", + "x": 4219575, + "y": 4124325 + }, + { + "type": "lineTo", + "x": 4244975, + "y": 4181475 + }, + { + "type": "lineTo", + "x": 4283075, + "y": 4216400 + }, + { + "type": "lineTo", + "x": 4327525, + "y": 4235450 + }, + { + "type": "lineTo", + "x": 4397375, + "y": 4213225 + }, + { + "type": "lineTo", + "x": 4470400, + "y": 4162425 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 4086225 + }, + { + "type": "lineTo", + "x": 4514850, + "y": 4016375 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 3956050 + }, + { + "type": "lineTo", + "x": 4505325, + "y": 3889375 + }, + { + "type": "lineTo", + "x": 4492625, + "y": 3835400 + }, + { + "type": "lineTo", + "x": 4479925, + "y": 3797300 + }, + { + "type": "lineTo", + "x": 4479925, + "y": 3752850 + }, + { + "type": "lineTo", + "x": 4467225, + "y": 3717925 + }, + { + "type": "lineTo", + "x": 4448175, + "y": 3705225 + }, + { + "type": "lineTo", + "x": 4438650, + "y": 3663950 + }, + { + "type": "lineTo", + "x": 4441825, + "y": 3603625 + }, + { + "type": "lineTo", + "x": 4432300, + "y": 3521075 + }, + { + "type": "lineTo", + "x": 4400550, + "y": 3441700 + }, + { + "type": "lineTo", + "x": 4387850, + "y": 3397250 + }, + { + "type": "lineTo", + "x": 4356100, + "y": 3352800 + }, + { + "type": "lineTo", + "x": 4321175, + "y": 3321050 + }, + { + "type": "lineTo", + "x": 4295775, + "y": 3295650 + }, + { + "type": "lineTo", + "x": 4286250, + "y": 3248025 + }, + { + "type": "lineTo", + "x": 4286250, + "y": 3203575 + }, + { + "type": "lineTo", + "x": 4295775, + "y": 3168650 + }, + { + "type": "lineTo", + "x": 4305300, + "y": 3133725 + }, + { + "type": "lineTo", + "x": 4302125, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 4298950, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 4314825, + "y": 3038475 + }, + { + "type": "lineTo", + "x": 4327525, + "y": 2994025 + }, + { + "type": "lineTo", + "x": 4337050, + "y": 2981325 + }, + { + "type": "lineTo", + "x": 4381500, + "y": 2990850 + }, + { + "type": "lineTo", + "x": 4400550, + "y": 3013075 + }, + { + "type": "lineTo", + "x": 4416425, + "y": 3063875 + }, + { + "type": "lineTo", + "x": 4406900, + "y": 3146425 + }, + { + "type": "lineTo", + "x": 4432300, + "y": 3228975 + }, + { + "type": "lineTo", + "x": 4457700, + "y": 3311525 + }, + { + "type": "lineTo", + "x": 4483100, + "y": 3400425 + }, + { + "type": "lineTo", + "x": 4524375, + "y": 3467100 + }, + { + "type": "lineTo", + "x": 4575175, + "y": 3505200 + }, + { + "type": "lineTo", + "x": 4610100, + "y": 3521075 + }, + { + "type": "lineTo", + "x": 4645025, + "y": 3568700 + }, + { + "type": "lineTo", + "x": 4714875, + "y": 3609975 + }, + { + "type": "lineTo", + "x": 4787900, + "y": 3644900 + }, + { + "type": "lineTo", + "x": 4848225, + "y": 3673475 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 3686175 + }, + { + "type": "lineTo", + "x": 4927600, + "y": 3711575 + }, + { + "type": "lineTo", + "x": 4965700, + "y": 3721100 + }, + { + "type": "lineTo", + "x": 5006975, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 4984750, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 5029200, + "y": 3787775 + }, + { + "type": "lineTo", + "x": 5057775, + "y": 3787775 + }, + { + "type": "lineTo", + "x": 5092700, + "y": 3771900 + }, + { + "type": "lineTo", + "x": 5108575, + "y": 3810000 + }, + { + "type": "lineTo", + "x": 5156200, + "y": 3794125 + }, + { + "type": "lineTo", + "x": 5175250, + "y": 3829050 + }, + { + "type": "lineTo", + "x": 5213350, + "y": 3829050 + }, + { + "type": "lineTo", + "x": 5213350, + "y": 3876675 + }, + { + "type": "lineTo", + "x": 5276850, + "y": 3841750 + }, + { + "type": "lineTo", + "x": 5302250, + "y": 3879850 + }, + { + "type": "lineTo", + "x": 5334000, + "y": 3908425 + }, + { + "type": "lineTo", + "x": 5330825, + "y": 3949700 + }, + { + "type": "lineTo", + "x": 5359400, + "y": 3952875 + }, + { + "type": "lineTo", + "x": 5340350, + "y": 3971925 + }, + { + "type": "lineTo", + "x": 5381625, + "y": 3981450 + }, + { + "type": "lineTo", + "x": 5387975, + "y": 4003675 + }, + { + "type": "lineTo", + "x": 5387975, + "y": 4025900 + }, + { + "type": "lineTo", + "x": 5416550, + "y": 4025900 + }, + { + "type": "lineTo", + "x": 5394325, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 5419725, + "y": 4067175 + }, + { + "type": "lineTo", + "x": 5413375, + "y": 4095750 + }, + { + "type": "lineTo", + "x": 5435600, + "y": 4108450 + }, + { + "type": "lineTo", + "x": 5419725, + "y": 4146550 + }, + { + "type": "lineTo", + "x": 5403850, + "y": 4200525 + }, + { + "type": "lineTo", + "x": 5384800, + "y": 4219575 + }, + { + "type": "lineTo", + "x": 5334000, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 5283200, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 5226050, + "y": 4219575 + }, + { + "type": "lineTo", + "x": 5168900, + "y": 4222750 + }, + { + "type": "lineTo", + "x": 5083175, + "y": 4251325 + }, + { + "type": "lineTo", + "x": 5045075, + "y": 4286250 + }, + { + "type": "lineTo", + "x": 4978400, + "y": 4330700 + }, + { + "type": "lineTo", + "x": 4930775, + "y": 4387850 + }, + { + "type": "lineTo", + "x": 4905375, + "y": 4435475 + }, + { + "type": "lineTo", + "x": 4902200, + "y": 4464050 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 4489450 + }, + { + "type": "lineTo", + "x": 4895850, + "y": 4540250 + }, + { + "type": "cubicBezTo", + "x1": 4893733, + "y1": 4548187, + "x2": 4893733, + "y2": 4548717, + "x": 4892675, + "y": 4552950 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 4600575 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 4625975 + }, + { + "type": "lineTo", + "x": 4876800, + "y": 4645025 + }, + { + "type": "lineTo", + "x": 4870450, + "y": 4679950 + }, + { + "type": "lineTo", + "x": 4832350, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 4829175, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 4803775, + "y": 4711700 + }, + { + "type": "lineTo", + "x": 4781550, + "y": 4737100 + }, + { + "type": "lineTo", + "x": 4759325, + "y": 4740275 + }, + { + "type": "lineTo", + "x": 4746625, + "y": 4740275 + }, + { + "type": "lineTo", + "x": 4721225, + "y": 4746625 + }, + { + "type": "lineTo", + "x": 4708525, + "y": 4756150 + }, + { + "type": "lineTo", + "x": 4689475, + "y": 4708525 + }, + { + "type": "lineTo", + "x": 4673600, + "y": 4676775 + }, + { + "type": "lineTo", + "x": 4654550, + "y": 4670425 + }, + { + "type": "lineTo", + "x": 4638675, + "y": 4692650 + }, + { + "type": "lineTo", + "x": 4613275, + "y": 4733925 + }, + { + "type": "lineTo", + "x": 4603750, + "y": 4749800 + }, + { + "type": "lineTo", + "x": 4572000, + "y": 4768850 + }, + { + "type": "lineTo", + "x": 4533900, + "y": 4714875 + }, + { + "type": "lineTo", + "x": 4492625, + "y": 4711700 + }, + { + "type": "lineTo", + "x": 4451350, + "y": 4724400 + }, + { + "type": "lineTo", + "x": 4422775, + "y": 4756150 + }, + { + "type": "lineTo", + "x": 4413250, + "y": 4781550 + }, + { + "type": "lineTo", + "x": 4391025, + "y": 4787900 + }, + { + "type": "lineTo", + "x": 4356100, + "y": 4756150 + }, + { + "type": "lineTo", + "x": 4321175, + "y": 4702175 + }, + { + "type": "lineTo", + "x": 4267200, + "y": 4702175 + }, + { + "type": "lineTo", + "x": 4235450, + "y": 4733925 + }, + { + "type": "lineTo", + "x": 4203700, + "y": 4775200 + }, + { + "type": "lineTo", + "x": 4191000, + "y": 4810125 + }, + { + "type": "lineTo", + "x": 4146550, + "y": 4784725 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_nasal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_nasal_colored_regions.json new file mode 100644 index 00000000..ca823bd0 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_nasal_colored_regions.json @@ -0,0 +1,338 @@ +{ + "slide_number": 7, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "286", + "path_data": [ + { + "path_width": 1168865, + "path_height": 1560683, + "commands": [ + { + "type": "moveTo", + "x": 5466551, + "y": 2420007 + }, + { + "type": "lineTo", + "x": 5523415, + "y": 2451600 + }, + { + "type": "lineTo", + "x": 5561324, + "y": 2451600 + }, + { + "type": "lineTo", + "x": 5624506, + "y": 2432644 + }, + { + "type": "lineTo", + "x": 5675052, + "y": 2407370 + }, + { + "type": "lineTo", + "x": 5725597, + "y": 2407370 + }, + { + "type": "lineTo", + "x": 5776143, + "y": 2438963 + }, + { + "type": "lineTo", + "x": 5820370, + "y": 2420007 + }, + { + "type": "lineTo", + "x": 5870915, + "y": 2407370 + }, + { + "type": "lineTo", + "x": 5902506, + "y": 2388414 + }, + { + "type": "lineTo", + "x": 5965688, + "y": 2375777 + }, + { + "type": "lineTo", + "x": 6022552, + "y": 2432644 + }, + { + "type": "lineTo", + "x": 6054143, + "y": 2483193 + }, + { + "type": "lineTo", + "x": 5978325, + "y": 2609564 + }, + { + "type": "lineTo", + "x": 5965688, + "y": 2754890 + }, + { + "type": "lineTo", + "x": 5934097, + "y": 2862306 + }, + { + "type": "lineTo", + "x": 5934097, + "y": 2963403 + }, + { + "type": "cubicBezTo", + "x1": 5936203, + "y1": 2994996, + "x2": 5950946, + "y2": 3001314, + "x": 5953052, + "y": 3032907 + }, + { + "type": "lineTo", + "x": 5978325, + "y": 3089774 + }, + { + "type": "lineTo", + "x": 5984643, + "y": 3134004 + }, + { + "type": "lineTo", + "x": 6047825, + "y": 3197189 + }, + { + "type": "lineTo", + "x": 6111007, + "y": 3279330 + }, + { + "type": "lineTo", + "x": 6161552, + "y": 3393064 + }, + { + "type": "lineTo", + "x": 6237370, + "y": 3563665 + }, + { + "type": "lineTo", + "x": 6275280, + "y": 3753222 + }, + { + "type": "lineTo", + "x": 6275280, + "y": 3816407 + }, + { + "type": "lineTo", + "x": 6224734, + "y": 3765859 + }, + { + "type": "lineTo", + "x": 6212098, + "y": 3633169 + }, + { + "type": "lineTo", + "x": 6161552, + "y": 3557347 + }, + { + "type": "lineTo", + "x": 6079416, + "y": 3494161 + }, + { + "type": "lineTo", + "x": 5997279, + "y": 3449931 + }, + { + "type": "lineTo", + "x": 5889870, + "y": 3424657 + }, + { + "type": "lineTo", + "x": 5795097, + "y": 3430976 + }, + { + "type": "lineTo", + "x": 5719279, + "y": 3412020 + }, + { + "type": "lineTo", + "x": 5649779, + "y": 3412020 + }, + { + "type": "lineTo", + "x": 5599233, + "y": 3386746 + }, + { + "type": "lineTo", + "x": 5542370, + "y": 3361471 + }, + { + "type": "lineTo", + "x": 5498142, + "y": 3348834 + }, + { + "type": "lineTo", + "x": 5422324, + "y": 3412020 + }, + { + "type": "lineTo", + "x": 5359142, + "y": 3481524 + }, + { + "type": "lineTo", + "x": 5289642, + "y": 3551028 + }, + { + "type": "lineTo", + "x": 5258051, + "y": 3601576 + }, + { + "type": "lineTo", + "x": 5220142, + "y": 3652125 + }, + { + "type": "lineTo", + "x": 5188551, + "y": 3740585 + }, + { + "type": "lineTo", + "x": 5175915, + "y": 3860637 + }, + { + "type": "lineTo", + "x": 5131687, + "y": 3936460 + }, + { + "type": "lineTo", + "x": 5106415, + "y": 3778496 + }, + { + "type": "lineTo", + "x": 5150642, + "y": 3607895 + }, + { + "type": "lineTo", + "x": 5207505, + "y": 3487843 + }, + { + "type": "lineTo", + "x": 5264369, + "y": 3367790 + }, + { + "type": "lineTo", + "x": 5302278, + "y": 3260375 + }, + { + "type": "lineTo", + "x": 5327551, + "y": 3184552 + }, + { + "type": "lineTo", + "x": 5346506, + "y": 3140322 + }, + { + "type": "lineTo", + "x": 5371778, + "y": 3045544 + }, + { + "type": "lineTo", + "x": 5422324, + "y": 2963403 + }, + { + "type": "cubicBezTo", + "x1": 5432854, + "y1": 2923385, + "x2": 5448650, + "y2": 2881261, + "x": 5453915, + "y": 2843350 + }, + { + "type": "cubicBezTo", + "x1": 5459180, + "y1": 2805439, + "x2": 5453915, + "y2": 2771740, + "x": 5453915, + "y": 2735935 + }, + { + "type": "lineTo", + "x": 5453915, + "y": 2685386 + }, + { + "type": "lineTo", + "x": 5422324, + "y": 2622201 + }, + { + "type": "lineTo", + "x": 5466551, + "y": 2420007 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_sphenoid_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_sphenoid_colored_regions.json new file mode 100644 index 00000000..0e033274 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_sphenoid_colored_regions.json @@ -0,0 +1,713 @@ +{ + "slide_number": 6, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "262", + "path_data": [ + { + "path_width": 1123950, + "path_height": 1196975, + "commands": [ + { + "type": "moveTo", + "x": 7283450, + "y": 4248151 + }, + { + "type": "lineTo", + "x": 7299325, + "y": 4194176 + }, + { + "type": "lineTo", + "x": 7299325, + "y": 4156076 + }, + { + "type": "lineTo", + "x": 7264400, + "y": 4117976 + }, + { + "type": "lineTo", + "x": 7248525, + "y": 4086226 + }, + { + "type": "lineTo", + "x": 7248525, + "y": 4041776 + }, + { + "type": "lineTo", + "x": 7273925, + "y": 4010026 + }, + { + "type": "lineTo", + "x": 7312025, + "y": 3968751 + }, + { + "type": "lineTo", + "x": 7343775, + "y": 3902076 + }, + { + "type": "lineTo", + "x": 7375525, + "y": 3825876 + }, + { + "type": "lineTo", + "x": 7419975, + "y": 3768726 + }, + { + "type": "lineTo", + "x": 7435850, + "y": 3730626 + }, + { + "type": "lineTo", + "x": 7464425, + "y": 3660776 + }, + { + "type": "lineTo", + "x": 7502525, + "y": 3613151 + }, + { + "type": "lineTo", + "x": 7439025, + "y": 3559176 + }, + { + "type": "lineTo", + "x": 7416800, + "y": 3508376 + }, + { + "type": "lineTo", + "x": 7426325, + "y": 3425826 + }, + { + "type": "lineTo", + "x": 7435850, + "y": 3346451 + }, + { + "type": "lineTo", + "x": 7442200, + "y": 3289301 + }, + { + "type": "lineTo", + "x": 7391400, + "y": 3216276 + }, + { + "type": "lineTo", + "x": 7318375, + "y": 3187701 + }, + { + "type": "lineTo", + "x": 7280275, + "y": 3121026 + }, + { + "type": "lineTo", + "x": 7207250, + "y": 3152776 + }, + { + "type": "lineTo", + "x": 7073900, + "y": 3257551 + }, + { + "type": "lineTo", + "x": 6975475, + "y": 3314701 + }, + { + "type": "lineTo", + "x": 6975475, + "y": 3375026 + }, + { + "type": "lineTo", + "x": 6908800, + "y": 3384551 + }, + { + "type": "lineTo", + "x": 6845300, + "y": 3403601 + }, + { + "type": "lineTo", + "x": 6756400, + "y": 3460751 + }, + { + "type": "lineTo", + "x": 6696075, + "y": 3508376 + }, + { + "type": "lineTo", + "x": 6613525, + "y": 3571876 + }, + { + "type": "lineTo", + "x": 6534150, + "y": 3629026 + }, + { + "type": "lineTo", + "x": 6483350, + "y": 3663951 + }, + { + "type": "lineTo", + "x": 6407150, + "y": 3705226 + }, + { + "type": "lineTo", + "x": 6378575, + "y": 3714751 + }, + { + "type": "lineTo", + "x": 6403975, + "y": 3794126 + }, + { + "type": "lineTo", + "x": 6416675, + "y": 3829051 + }, + { + "type": "lineTo", + "x": 6467475, + "y": 3841751 + }, + { + "type": "lineTo", + "x": 6540500, + "y": 3822701 + }, + { + "type": "lineTo", + "x": 6591300, + "y": 3775076 + }, + { + "type": "lineTo", + "x": 6632575, + "y": 3711576 + }, + { + "type": "lineTo", + "x": 6670675, + "y": 3673476 + }, + { + "type": "lineTo", + "x": 6692900, + "y": 3648076 + }, + { + "type": "lineTo", + "x": 6692900, + "y": 3616326 + }, + { + "type": "lineTo", + "x": 6769100, + "y": 3571876 + }, + { + "type": "lineTo", + "x": 6794500, + "y": 3552826 + }, + { + "type": "lineTo", + "x": 6813550, + "y": 3600451 + }, + { + "type": "lineTo", + "x": 6807200, + "y": 3673476 + }, + { + "type": "lineTo", + "x": 6765925, + "y": 3698876 + }, + { + "type": "lineTo", + "x": 6731000, + "y": 3724276 + }, + { + "type": "lineTo", + "x": 6673850, + "y": 3781426 + }, + { + "type": "lineTo", + "x": 6635750, + "y": 3829051 + }, + { + "type": "lineTo", + "x": 6591300, + "y": 3863976 + }, + { + "type": "lineTo", + "x": 6562725, + "y": 3911601 + }, + { + "type": "lineTo", + "x": 6546850, + "y": 3952876 + }, + { + "type": "lineTo", + "x": 6550025, + "y": 3987801 + }, + { + "type": "lineTo", + "x": 6584950, + "y": 4003676 + }, + { + "type": "lineTo", + "x": 6632575, + "y": 4051301 + }, + { + "type": "lineTo", + "x": 6727825, + "y": 4124326 + }, + { + "type": "lineTo", + "x": 6800850, + "y": 4175126 + }, + { + "type": "lineTo", + "x": 6845300, + "y": 4213226 + }, + { + "type": "lineTo", + "x": 6946900, + "y": 4254501 + }, + { + "type": "lineTo", + "x": 7051675, + "y": 4289426 + }, + { + "type": "lineTo", + "x": 7150100, + "y": 4314826 + }, + { + "type": "lineTo", + "x": 7200900, + "y": 4318001 + }, + { + "type": "lineTo", + "x": 7213600, + "y": 4292601 + }, + { + "type": "lineTo", + "x": 7283450, + "y": 4248151 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "263", + "path_data": [ + { + "path_width": 1311275, + "path_height": 1079500, + "commands": [ + { + "type": "moveTo", + "x": 4238626, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 4257676, + "y": 4165600 + }, + { + "type": "lineTo", + "x": 4235451, + "y": 4114800 + }, + { + "type": "lineTo", + "x": 4197351, + "y": 4076700 + }, + { + "type": "lineTo", + "x": 4254501, + "y": 4041775 + }, + { + "type": "lineTo", + "x": 4254501, + "y": 3984625 + }, + { + "type": "lineTo", + "x": 4197351, + "y": 3902075 + }, + { + "type": "lineTo", + "x": 4098926, + "y": 3721100 + }, + { + "type": "lineTo", + "x": 4064001, + "y": 3695700 + }, + { + "type": "lineTo", + "x": 4029076, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 4016376, + "y": 3673475 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 3625850 + }, + { + "type": "lineTo", + "x": 3949701, + "y": 3559175 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 3476625 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 3476625 + }, + { + "type": "lineTo", + "x": 3984626, + "y": 3489325 + }, + { + "type": "lineTo", + "x": 4083051, + "y": 3508375 + }, + { + "type": "lineTo", + "x": 4140201, + "y": 3454400 + }, + { + "type": "lineTo", + "x": 4222751, + "y": 3457575 + }, + { + "type": "lineTo", + "x": 4222751, + "y": 3387725 + }, + { + "type": "lineTo", + "x": 4244976, + "y": 3336925 + }, + { + "type": "lineTo", + "x": 4273551, + "y": 3330575 + }, + { + "type": "lineTo", + "x": 4346576, + "y": 3333750 + }, + { + "type": "lineTo", + "x": 4422776, + "y": 3263900 + }, + { + "type": "lineTo", + "x": 4508501, + "y": 3222625 + }, + { + "type": "lineTo", + "x": 4645026, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 3314700 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 3381375 + }, + { + "type": "lineTo", + "x": 4800601, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 4892676, + "y": 3479800 + }, + { + "type": "lineTo", + "x": 4978401, + "y": 3546475 + }, + { + "type": "lineTo", + "x": 5080001, + "y": 3546475 + }, + { + "type": "lineTo", + "x": 5172076, + "y": 3556000 + }, + { + "type": "lineTo", + "x": 5219701, + "y": 3559175 + }, + { + "type": "lineTo", + "x": 5200651, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 5200651, + "y": 3746500 + }, + { + "type": "lineTo", + "x": 5178426, + "y": 3695700 + }, + { + "type": "lineTo", + "x": 5121276, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 5099051, + "y": 3730625 + }, + { + "type": "lineTo", + "x": 5133976, + "y": 3790950 + }, + { + "type": "lineTo", + "x": 5181601, + "y": 3822700 + }, + { + "type": "lineTo", + "x": 5162551, + "y": 3876675 + }, + { + "type": "lineTo", + "x": 5086351, + "y": 3857625 + }, + { + "type": "lineTo", + "x": 5010151, + "y": 3825875 + }, + { + "type": "lineTo", + "x": 4902201, + "y": 3711575 + }, + { + "type": "lineTo", + "x": 4800601, + "y": 3594100 + }, + { + "type": "lineTo", + "x": 4746626, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 3502025 + }, + { + "type": "lineTo", + "x": 4679951, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 4730751, + "y": 3613150 + }, + { + "type": "lineTo", + "x": 4784726, + "y": 3663950 + }, + { + "type": "lineTo", + "x": 4810126, + "y": 3733800 + }, + { + "type": "lineTo", + "x": 4838701, + "y": 3781425 + }, + { + "type": "lineTo", + "x": 4892676, + "y": 3848100 + }, + { + "type": "lineTo", + "x": 4921251, + "y": 3889375 + }, + { + "type": "lineTo", + "x": 4956176, + "y": 4000500 + }, + { + "type": "lineTo", + "x": 4905376, + "y": 4060825 + }, + { + "type": "lineTo", + "x": 4845051, + "y": 4105275 + }, + { + "type": "lineTo", + "x": 4711701, + "y": 4159250 + }, + { + "type": "lineTo", + "x": 4648201, + "y": 4187825 + }, + { + "type": "lineTo", + "x": 4606926, + "y": 4244975 + }, + { + "type": "lineTo", + "x": 4559301, + "y": 4260850 + }, + { + "type": "lineTo", + "x": 4502151, + "y": 4289425 + }, + { + "type": "lineTo", + "x": 4394201, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 4298951, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 4260851, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 4238626, + "y": 4229100 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/anterior_zygomatic_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/anterior_zygomatic_colored_regions.json new file mode 100644 index 00000000..7ac40953 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/anterior_zygomatic_colored_regions.json @@ -0,0 +1,1137 @@ +{ + "slide_number": 8, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "312", + "path_data": [ + { + "path_width": 1082109, + "path_height": 1604027, + "commands": [ + { + "type": "moveTo", + "x": 7637398, + "y": 2804439 + }, + { + "type": "lineTo", + "x": 7581727, + "y": 2769645 + }, + { + "type": "lineTo", + "x": 7515617, + "y": 2762686 + }, + { + "type": "lineTo", + "x": 7473864, + "y": 2762686 + }, + { + "type": "lineTo", + "x": 7432111, + "y": 2790522 + }, + { + "type": "lineTo", + "x": 7432111, + "y": 2884467 + }, + { + "type": "lineTo", + "x": 7425152, + "y": 2926220 + }, + { + "type": "lineTo", + "x": 7386878, + "y": 2856631 + }, + { + "type": "lineTo", + "x": 7369480, + "y": 2961015 + }, + { + "type": "lineTo", + "x": 7348604, + "y": 2797480 + }, + { + "type": "lineTo", + "x": 7310330, + "y": 2828796 + }, + { + "type": "lineTo", + "x": 7272056, + "y": 2804439 + }, + { + "type": "lineTo", + "x": 7174631, + "y": 2887946 + }, + { + "type": "lineTo", + "x": 7167672, + "y": 2929700 + }, + { + "type": "lineTo", + "x": 7129398, + "y": 2954056 + }, + { + "type": "lineTo", + "x": 7105042, + "y": 3030604 + }, + { + "type": "lineTo", + "x": 7066768, + "y": 3103672 + }, + { + "type": "lineTo", + "x": 7018056, + "y": 3187179 + }, + { + "type": "lineTo", + "x": 6986741, + "y": 3246330 + }, + { + "type": "lineTo", + "x": 6976302, + "y": 3263727 + }, + { + "type": "lineTo", + "x": 6948467, + "y": 3274165 + }, + { + "type": "lineTo", + "x": 6927590, + "y": 3295042 + }, + { + "type": "lineTo", + "x": 6924111, + "y": 3333316 + }, + { + "type": "lineTo", + "x": 6924111, + "y": 3364631 + }, + { + "type": "lineTo", + "x": 6924111, + "y": 3392467 + }, + { + "type": "lineTo", + "x": 6938028, + "y": 3402905 + }, + { + "type": "lineTo", + "x": 6962385, + "y": 3416823 + }, + { + "type": "lineTo", + "x": 6962385, + "y": 3434220 + }, + { + "type": "lineTo", + "x": 6955426, + "y": 3469015 + }, + { + "type": "lineTo", + "x": 6951946, + "y": 3503809 + }, + { + "type": "lineTo", + "x": 6917152, + "y": 3542083 + }, + { + "type": "cubicBezTo", + "x1": 6890476, + "y1": 3545563, + "x2": 6881198, + "y2": 3569918, + "x": 6854522, + "y": 3573398 + }, + { + "type": "lineTo", + "x": 6777974, + "y": 3559480 + }, + { + "type": "lineTo", + "x": 6833645, + "y": 3615152 + }, + { + "type": "lineTo", + "x": 6878878, + "y": 3653426 + }, + { + "type": "lineTo", + "x": 6903234, + "y": 3691700 + }, + { + "type": "lineTo", + "x": 6906713, + "y": 3709097 + }, + { + "type": "lineTo", + "x": 6910193, + "y": 3740412 + }, + { + "type": "lineTo", + "x": 6948467, + "y": 3740412 + }, + { + "type": "lineTo", + "x": 6965864, + "y": 3771727 + }, + { + "type": "lineTo", + "x": 7007617, + "y": 3768248 + }, + { + "type": "lineTo", + "x": 7011097, + "y": 3785645 + }, + { + "type": "lineTo", + "x": 7059809, + "y": 3764768 + }, + { + "type": "lineTo", + "x": 7108522, + "y": 3736933 + }, + { + "type": "lineTo", + "x": 7129398, + "y": 3754330 + }, + { + "type": "lineTo", + "x": 7129398, + "y": 3796083 + }, + { + "type": "lineTo", + "x": 7160713, + "y": 3768248 + }, + { + "type": "lineTo", + "x": 7195508, + "y": 3754330 + }, + { + "type": "lineTo", + "x": 7216385, + "y": 3757809 + }, + { + "type": "lineTo", + "x": 7226823, + "y": 3785645 + }, + { + "type": "lineTo", + "x": 7265097, + "y": 3816960 + }, + { + "type": "lineTo", + "x": 7289453, + "y": 3827398 + }, + { + "type": "lineTo", + "x": 7324248, + "y": 3841316 + }, + { + "type": "lineTo", + "x": 7359042, + "y": 3837837 + }, + { + "type": "lineTo", + "x": 7404275, + "y": 3837837 + }, + { + "type": "lineTo", + "x": 7432111, + "y": 3890028 + }, + { + "type": "lineTo", + "x": 7446028, + "y": 3890028 + }, + { + "type": "lineTo", + "x": 7452987, + "y": 3917864 + }, + { + "type": "lineTo", + "x": 7480823, + "y": 3949179 + }, + { + "type": "lineTo", + "x": 7480823, + "y": 3966576 + }, + { + "type": "lineTo", + "x": 7522576, + "y": 3987453 + }, + { + "type": "lineTo", + "x": 7560850, + "y": 4046604 + }, + { + "type": "lineTo", + "x": 7588686, + "y": 4091837 + }, + { + "type": "lineTo", + "x": 7599124, + "y": 4123152 + }, + { + "type": "lineTo", + "x": 7616522, + "y": 4178823 + }, + { + "type": "lineTo", + "x": 7616522, + "y": 4241453 + }, + { + "type": "lineTo", + "x": 7616522, + "y": 4297124 + }, + { + "type": "lineTo", + "x": 7623480, + "y": 4366713 + }, + { + "type": "lineTo", + "x": 7647837, + "y": 4324960 + }, + { + "type": "lineTo", + "x": 7658275, + "y": 4300604 + }, + { + "type": "lineTo", + "x": 7665234, + "y": 4269289 + }, + { + "type": "lineTo", + "x": 7717426, + "y": 4258850 + }, + { + "type": "lineTo", + "x": 7766138, + "y": 4227535 + }, + { + "type": "lineTo", + "x": 7793974, + "y": 4147508 + }, + { + "type": "lineTo", + "x": 7828768, + "y": 4070960 + }, + { + "type": "lineTo", + "x": 7853124, + "y": 3977015 + }, + { + "type": "lineTo", + "x": 7860083, + "y": 3914385 + }, + { + "type": "lineTo", + "x": 7853124, + "y": 3872631 + }, + { + "type": "lineTo", + "x": 7853124, + "y": 3782165 + }, + { + "type": "lineTo", + "x": 7849645, + "y": 3709097 + }, + { + "type": "lineTo", + "x": 7839206, + "y": 3660385 + }, + { + "type": "lineTo", + "x": 7811371, + "y": 3629069 + }, + { + "type": "lineTo", + "x": 7773097, + "y": 3594275 + }, + { + "type": "lineTo", + "x": 7752220, + "y": 3576878 + }, + { + "type": "lineTo", + "x": 7727864, + "y": 3430741 + }, + { + "type": "lineTo", + "x": 7713946, + "y": 3340275 + }, + { + "type": "lineTo", + "x": 7700028, + "y": 3208056 + }, + { + "type": "lineTo", + "x": 7696549, + "y": 3124549 + }, + { + "type": "lineTo", + "x": 7675672, + "y": 3030604 + }, + { + "type": "lineTo", + "x": 7644357, + "y": 2954056 + }, + { + "type": "lineTo", + "x": 7637398, + "y": 2919261 + }, + { + "type": "lineTo", + "x": 7630439, + "y": 2877508 + }, + { + "type": "lineTo", + "x": 7637398, + "y": 2804439 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "313", + "path_data": [ + { + "path_width": 1179535, + "path_height": 1767562, + "commands": [ + { + "type": "moveTo", + "x": 4307563, + "y": 3291562 + }, + { + "type": "lineTo", + "x": 4258850, + "y": 3183699 + }, + { + "type": "lineTo", + "x": 4178823, + "y": 3048000 + }, + { + "type": "lineTo", + "x": 4150987, + "y": 3027123 + }, + { + "type": "lineTo", + "x": 4119672, + "y": 3027123 + }, + { + "type": "lineTo", + "x": 4102275, + "y": 3006247 + }, + { + "type": "lineTo", + "x": 4077919, + "y": 2961014 + }, + { + "type": "lineTo", + "x": 4064001, + "y": 2915781 + }, + { + "type": "lineTo", + "x": 4081398, + "y": 2887945 + }, + { + "type": "lineTo", + "x": 4091837, + "y": 2842712 + }, + { + "type": "lineTo", + "x": 4043124, + "y": 2842712 + }, + { + "type": "lineTo", + "x": 4025727, + "y": 2846192 + }, + { + "type": "lineTo", + "x": 4001371, + "y": 2825315 + }, + { + "type": "lineTo", + "x": 3952659, + "y": 2766164 + }, + { + "type": "lineTo", + "x": 3952659, + "y": 2727890 + }, + { + "type": "lineTo", + "x": 3872631, + "y": 2776603 + }, + { + "type": "lineTo", + "x": 3841316, + "y": 2773123 + }, + { + "type": "lineTo", + "x": 3872631, + "y": 2626986 + }, + { + "type": "lineTo", + "x": 3803042, + "y": 2710493 + }, + { + "type": "lineTo", + "x": 3771727, + "y": 2717452 + }, + { + "type": "lineTo", + "x": 3754330, + "y": 2707014 + }, + { + "type": "lineTo", + "x": 3764768, + "y": 2672219 + }, + { + "type": "lineTo", + "x": 3789124, + "y": 2620027 + }, + { + "type": "lineTo", + "x": 3761289, + "y": 2578274 + }, + { + "type": "lineTo", + "x": 3733453, + "y": 2620027 + }, + { + "type": "lineTo", + "x": 3716056, + "y": 2658301 + }, + { + "type": "lineTo", + "x": 3695179, + "y": 2661781 + }, + { + "type": "lineTo", + "x": 3629069, + "y": 2776603 + }, + { + "type": "lineTo", + "x": 3566439, + "y": 2971452 + }, + { + "type": "lineTo", + "x": 3545563, + "y": 3075836 + }, + { + "type": "lineTo", + "x": 3538604, + "y": 3228932 + }, + { + "type": "lineTo", + "x": 3528165, + "y": 3291562 + }, + { + "type": "lineTo", + "x": 3535124, + "y": 3399425 + }, + { + "type": "lineTo", + "x": 3517727, + "y": 3475973 + }, + { + "type": "lineTo", + "x": 3489891, + "y": 3493370 + }, + { + "type": "lineTo", + "x": 3475974, + "y": 3538603 + }, + { + "type": "lineTo", + "x": 3441179, + "y": 3549041 + }, + { + "type": "lineTo", + "x": 3402905, + "y": 3559479 + }, + { + "type": "lineTo", + "x": 3371590, + "y": 3569918 + }, + { + "type": "lineTo", + "x": 3347234, + "y": 3601233 + }, + { + "type": "lineTo", + "x": 3322878, + "y": 3642986 + }, + { + "type": "lineTo", + "x": 3319398, + "y": 3726493 + }, + { + "type": "lineTo", + "x": 3336796, + "y": 3799562 + }, + { + "type": "lineTo", + "x": 3336796, + "y": 3813479 + }, + { + "type": "lineTo", + "x": 3336796, + "y": 3848274 + }, + { + "type": "lineTo", + "x": 3333316, + "y": 3900466 + }, + { + "type": "lineTo", + "x": 3347234, + "y": 3970055 + }, + { + "type": "lineTo", + "x": 3371590, + "y": 4018767 + }, + { + "type": "lineTo", + "x": 3416823, + "y": 4067479 + }, + { + "type": "lineTo", + "x": 3448138, + "y": 4119671 + }, + { + "type": "lineTo", + "x": 3458576, + "y": 4157945 + }, + { + "type": "lineTo", + "x": 3479453, + "y": 4231014 + }, + { + "type": "lineTo", + "x": 3594275, + "y": 4255370 + }, + { + "type": "lineTo", + "x": 3656905, + "y": 4328438 + }, + { + "type": "lineTo", + "x": 3698659, + "y": 4345836 + }, + { + "type": "lineTo", + "x": 3681261, + "y": 4311041 + }, + { + "type": "lineTo", + "x": 3695179, + "y": 4272767 + }, + { + "type": "lineTo", + "x": 3716056, + "y": 4262329 + }, + { + "type": "lineTo", + "x": 3712576, + "y": 4224055 + }, + { + "type": "lineTo", + "x": 3691700, + "y": 4192740 + }, + { + "type": "lineTo", + "x": 3677782, + "y": 4185781 + }, + { + "type": "lineTo", + "x": 3670823, + "y": 4175342 + }, + { + "type": "lineTo", + "x": 3698659, + "y": 4154466 + }, + { + "type": "lineTo", + "x": 3705617, + "y": 4140548 + }, + { + "type": "lineTo", + "x": 3712576, + "y": 4133589 + }, + { + "type": "lineTo", + "x": 3712576, + "y": 4112712 + }, + { + "type": "lineTo", + "x": 3705617, + "y": 4088356 + }, + { + "type": "lineTo", + "x": 3726494, + "y": 4077918 + }, + { + "type": "lineTo", + "x": 3719535, + "y": 4057041 + }, + { + "type": "lineTo", + "x": 3709097, + "y": 4043123 + }, + { + "type": "lineTo", + "x": 3712576, + "y": 4001370 + }, + { + "type": "lineTo", + "x": 3733453, + "y": 4018767 + }, + { + "type": "lineTo", + "x": 3764768, + "y": 4011808 + }, + { + "type": "lineTo", + "x": 3771727, + "y": 3987452 + }, + { + "type": "lineTo", + "x": 3778686, + "y": 3959616 + }, + { + "type": "lineTo", + "x": 3803042, + "y": 3966575 + }, + { + "type": "lineTo", + "x": 3844796, + "y": 3942219 + }, + { + "type": "lineTo", + "x": 3876111, + "y": 3924822 + }, + { + "type": "lineTo", + "x": 3893508, + "y": 3907425 + }, + { + "type": "lineTo", + "x": 3893508, + "y": 3883068 + }, + { + "type": "lineTo", + "x": 3917864, + "y": 3883068 + }, + { + "type": "lineTo", + "x": 3921343, + "y": 3858712 + }, + { + "type": "lineTo", + "x": 3924823, + "y": 3830877 + }, + { + "type": "lineTo", + "x": 3945700, + "y": 3792603 + }, + { + "type": "lineTo", + "x": 3956138, + "y": 3792603 + }, + { + "type": "lineTo", + "x": 3994412, + "y": 3782164 + }, + { + "type": "lineTo", + "x": 4011809, + "y": 3789123 + }, + { + "type": "lineTo", + "x": 4032686, + "y": 3771726 + }, + { + "type": "lineTo", + "x": 4046604, + "y": 3764767 + }, + { + "type": "lineTo", + "x": 4060522, + "y": 3768247 + }, + { + "type": "lineTo", + "x": 4102275, + "y": 3782164 + }, + { + "type": "lineTo", + "x": 4119672, + "y": 3782164 + }, + { + "type": "lineTo", + "x": 4154467, + "y": 3782164 + }, + { + "type": "lineTo", + "x": 4182302, + "y": 3782164 + }, + { + "type": "lineTo", + "x": 4196220, + "y": 3771726 + }, + { + "type": "lineTo", + "x": 4196220, + "y": 3754329 + }, + { + "type": "lineTo", + "x": 4237974, + "y": 3757808 + }, + { + "type": "lineTo", + "x": 4258850, + "y": 3775205 + }, + { + "type": "lineTo", + "x": 4276248, + "y": 3750849 + }, + { + "type": "lineTo", + "x": 4307563, + "y": 3761288 + }, + { + "type": "lineTo", + "x": 4328439, + "y": 3743890 + }, + { + "type": "lineTo", + "x": 4373672, + "y": 3743890 + }, + { + "type": "lineTo", + "x": 4373672, + "y": 3716055 + }, + { + "type": "lineTo", + "x": 4418905, + "y": 3709096 + }, + { + "type": "lineTo", + "x": 4411946, + "y": 3691699 + }, + { + "type": "lineTo", + "x": 4453700, + "y": 3677781 + }, + { + "type": "lineTo", + "x": 4498933, + "y": 3660384 + }, + { + "type": "lineTo", + "x": 4439782, + "y": 3642986 + }, + { + "type": "lineTo", + "x": 4474576, + "y": 3608192 + }, + { + "type": "lineTo", + "x": 4478056, + "y": 3587315 + }, + { + "type": "lineTo", + "x": 4474576, + "y": 3566438 + }, + { + "type": "lineTo", + "x": 4398028, + "y": 3562959 + }, + { + "type": "lineTo", + "x": 4314522, + "y": 3562959 + }, + { + "type": "lineTo", + "x": 4262330, + "y": 3559479 + }, + { + "type": "lineTo", + "x": 4255371, + "y": 3542082 + }, + { + "type": "lineTo", + "x": 4269289, + "y": 3521205 + }, + { + "type": "lineTo", + "x": 4297124, + "y": 3486411 + }, + { + "type": "lineTo", + "x": 4307563, + "y": 3472493 + }, + { + "type": "lineTo", + "x": 4311042, + "y": 3430740 + }, + { + "type": "lineTo", + "x": 4311042, + "y": 3430740 + }, + { + "type": "lineTo", + "x": 4300604, + "y": 3388986 + }, + { + "type": "lineTo", + "x": 4272768, + "y": 3378548 + }, + { + "type": "lineTo", + "x": 4241453, + "y": 3350712 + }, + { + "type": "lineTo", + "x": 4269289, + "y": 3340274 + }, + { + "type": "lineTo", + "x": 4307563, + "y": 3291562 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas.json b/boneset-api/data/annotations/ColoredRegions/atlas.json new file mode 100644 index 00000000..2dd650a2 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas.json @@ -0,0 +1,131 @@ +{ + "slide_number": 3, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "162", + "path_data": [ + { + "path_width": 803120, + "path_height": 182291, + "commands": [ + { + "type": "moveTo", + "x": 6127596, + "y": 2879417 + }, + { + "type": "cubicBezTo", + "x1": 6075764, + "y1": 2858560, + "x2": 6030888, + "y2": 2807567, + "x": 5981624, + "y": 2781922 + }, + { + "type": "cubicBezTo", + "x1": 5932360, + "y1": 2756277, + "x2": 5869182, + "y2": 2735871, + "x": 5832011, + "y": 2725546 + }, + { + "type": "lineTo", + "x": 5706018, + "y": 2713311 + }, + { + "type": "lineTo", + "x": 5557025, + "y": 2744441 + }, + { + "type": "lineTo", + "x": 5433588, + "y": 2813826 + }, + { + "type": "cubicBezTo", + "x1": 5394830, + "y1": 2839020, + "x2": 5354484, + "y2": 2875258, + "x": 5324476, + "y": 2895602 + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "164", + "path_data": [ + { + "path_width": 774545, + "path_height": 188331, + "commands": [ + { + "type": "moveTo", + "x": 6127597, + "y": 5059092 + }, + { + "type": "cubicBezTo", + "x1": 6091640, + "y1": 5003310, + "x2": 6065814, + "y2": 4994121, + "x": 6016550, + "y": 4964772 + }, + { + "type": "cubicBezTo", + "x1": 5967286, + "y1": 4935423, + "x2": 5869183, + "y2": 4893321, + "x": 5832012, + "y": 4882996 + }, + { + "type": "lineTo", + "x": 5706019, + "y": 4870761 + }, + { + "type": "lineTo", + "x": 5557026, + "y": 4901891 + }, + { + "type": "lineTo", + "x": 5455814, + "y": 4971276 + }, + { + "type": "cubicBezTo", + "x1": 5417056, + "y1": 4996470, + "x2": 5383060, + "y2": 5016833, + "x": 5353052, + "y": 5037177 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_anterior_and_posterior_tubercles.json b/boneset-api/data/annotations/ColoredRegions/atlas_anterior_and_posterior_tubercles.json new file mode 100644 index 00000000..2bcd982f --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_anterior_and_posterior_tubercles.json @@ -0,0 +1,794 @@ +{ + "slide_number": 5, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "258", + "path_data": [ + { + "path_width": 377825, + "path_height": 149225, + "commands": [ + { + "type": "moveTo", + "x": 5543551, + "y": 3416301 + }, + { + "type": "lineTo", + "x": 5654676, + "y": 3397251 + }, + { + "type": "lineTo", + "x": 5743576, + "y": 3390901 + }, + { + "type": "lineTo", + "x": 5835651, + "y": 3403601 + }, + { + "type": "lineTo", + "x": 5915026, + "y": 3432176 + }, + { + "type": "lineTo", + "x": 5921376, + "y": 3441701 + }, + { + "type": "lineTo", + "x": 5880101, + "y": 3486151 + }, + { + "type": "lineTo", + "x": 5822951, + "y": 3498851 + }, + { + "type": "lineTo", + "x": 5743576, + "y": 3527426 + }, + { + "type": "lineTo", + "x": 5692776, + "y": 3540126 + }, + { + "type": "lineTo", + "x": 5645151, + "y": 3505201 + }, + { + "type": "lineTo", + "x": 5588001, + "y": 3467101 + }, + { + "type": "lineTo", + "x": 5543551, + "y": 3416301 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "259", + "path_data": [ + { + "path_width": 149245, + "path_height": 69850, + "commands": [ + { + "type": "moveTo", + "x": 5610226, + "y": 1689100 + }, + { + "type": "cubicBezTo", + "x1": 5610755, + "y1": 1693333, + "x2": 5621003, + "y2": 1692901, + "x": 5626101, + "y": 1695450 + }, + { + "type": "cubicBezTo", + "x1": 5629514, + "y1": 1697157, + "x2": 5632213, + "y2": 1700093, + "x": 5635626, + "y": 1701800 + }, + { + "type": "cubicBezTo", + "x1": 5644007, + "y1": 1705991, + "x2": 5651969, + "y2": 1705433, + "x": 5661026, + "y": 1708150 + }, + { + "type": "cubicBezTo", + "x1": 5666485, + "y1": 1709788, + "x2": 5671609, + "y2": 1712383, + "x": 5676901, + "y": 1714500 + }, + { + "type": "cubicBezTo", + "x1": 5697009, + "y1": 1713442, + "x2": 5717173, + "y2": 1713148, + "x": 5737226, + "y": 1711325 + }, + { + "type": "cubicBezTo", + "x1": 5740559, + "y1": 1711022, + "x2": 5744384, + "y2": 1710517, + "x": 5746751, + "y": 1708150 + }, + { + "type": "cubicBezTo", + "x1": 5749118, + "y1": 1705783, + "x2": 5748429, + "y2": 1701618, + "x": 5749926, + "y": 1698625 + }, + { + "type": "cubicBezTo", + "x1": 5762236, + "y1": 1674006, + "x2": 5751471, + "y2": 1703516, + "x": 5759451, + "y": 1679575 + }, + { + "type": "cubicBezTo", + "x1": 5758373, + "y1": 1673109, + "x2": 5758232, + "y2": 1656191, + "x": 5749926, + "y": 1651000 + }, + { + "type": "cubicBezTo", + "x1": 5744250, + "y1": 1647452, + "x2": 5737226, + "y2": 1646767, + "x": 5730876, + "y": 1644650 + }, + { + "type": "cubicBezTo", + "x1": 5673434, + "y1": 1651830, + "x2": 5696265, + "y2": 1645604, + "x": 5661026, + "y": 1657350 + }, + { + "type": "lineTo", + "x": 5632451, + "y": 1666875 + }, + { + "type": "lineTo", + "x": 5622926, + "y": 1670050 + }, + { + "type": "cubicBezTo", + "x1": 5619494, + "y1": 1683777, + "x2": 5609697, + "y2": 1684867, + "x": 5610226, + "y": 1689100 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "260", + "path_data": [ + { + "path_width": 517616, + "path_height": 203200, + "commands": [ + { + "type": "moveTo", + "x": 5486400, + "y": 4400550 + }, + { + "type": "cubicBezTo", + "x1": 5485342, + "y1": 4403725, + "x2": 5499052, + "y2": 4403014, + "x": 5505450, + "y": 4403725 + }, + { + "type": "cubicBezTo", + "x1": 5554040, + "y1": 4409124, + "x2": 5528921, + "y2": 4403952, + "x": 5562600, + "y": 4410075 + }, + { + "type": "cubicBezTo", + "x1": 5567909, + "y1": 4411040, + "x2": 5573161, + "y2": 4412312, + "x": 5578475, + "y": 4413250 + }, + { + "type": "cubicBezTo", + "x1": 5581450, + "y1": 4413775, + "x2": 5620903, + "y2": 4419888, + "x": 5632450, + "y": 4422775 + }, + { + "type": "cubicBezTo", + "x1": 5650585, + "y1": 4427309, + "x2": 5632899, + "y2": 4425166, + "x": 5654675, + "y": 4429125 + }, + { + "type": "cubicBezTo", + "x1": 5662038, + "y1": 4430464, + "x2": 5669537, + "y2": 4430961, + "x": 5676900, + "y": 4432300 + }, + { + "type": "cubicBezTo", + "x1": 5681193, + "y1": 4433081, + "x2": 5685296, + "y2": 4434758, + "x": 5689600, + "y": 4435475 + }, + { + "type": "cubicBezTo", + "x1": 5711406, + "y1": 4439109, + "x2": 5779915, + "y2": 4444565, + "x": 5784850, + "y": 4445000 + }, + { + "type": "cubicBezTo", + "x1": 5797545, + "y1": 4446120, + "x2": 5810334, + "y2": 4446373, + "x": 5822950, + "y": 4448175 + }, + { + "type": "lineTo", + "x": 5845175, + "y": 4451350 + }, + { + "type": "cubicBezTo", + "x1": 5885392, + "y1": 4450292, + "x2": 5925794, + "y2": 4452178, + "x": 5965825, + "y": 4448175 + }, + { + "type": "cubicBezTo", + "x1": 5969622, + "y1": 4447795, + "x2": 5969477, + "y2": 4441348, + "x": 5972175, + "y": 4438650 + }, + { + "type": "cubicBezTo", + "x1": 5974873, + "y1": 4435952, + "x2": 5978525, + "y2": 4434417, + "x": 5981700, + "y": 4432300 + }, + { + "type": "cubicBezTo", + "x1": 5987881, + "y1": 4413757, + "x2": 5980039, + "y2": 4430786, + "x": 5994400, + "y": 4416425 + }, + { + "type": "cubicBezTo", + "x1": 6000555, + "y1": 4410270, + "x2": 6001343, + "y2": 4405122, + "x": 6003925, + "y": 4397375 + }, + { + "type": "cubicBezTo", + "x1": 6002867, + "y1": 4382558, + "x2": 6006134, + "y2": 4366769, + "x": 6000750, + "y": 4352925 + }, + { + "type": "cubicBezTo", + "x1": 5997984, + "y1": 4345812, + "x2": 5988050, + "y2": 4344458, + "x": 5981700, + "y": 4340225 + }, + { + "type": "cubicBezTo", + "x1": 5978525, + "y1": 4338108, + "x2": 5974873, + "y2": 4336573, + "x": 5972175, + "y": 4333875 + }, + { + "type": "cubicBezTo", + "x1": 5969000, + "y1": 4330700, + "x2": 5966666, + "y2": 4326358, + "x": 5962650, + "y": 4324350 + }, + { + "type": "cubicBezTo", + "x1": 5957823, + "y1": 4321937, + "x2": 5951981, + "y2": 4322595, + "x": 5946775, + "y": 4321175 + }, + { + "type": "cubicBezTo", + "x1": 5927593, + "y1": 4315943, + "x2": 5931306, + "y2": 4317212, + "x": 5918200, + "y": 4308475 + }, + { + "type": "cubicBezTo", + "x1": 5900208, + "y1": 4281488, + "x2": 5929842, + "y2": 4323292, + "x": 5892800, + "y": 4286250 + }, + { + "type": "cubicBezTo", + "x1": 5889625, + "y1": 4283075, + "x2": 5886819, + "y2": 4279482, + "x": 5883275, + "y": 4276725 + }, + { + "type": "cubicBezTo", + "x1": 5870070, + "y1": 4266455, + "x2": 5867681, + "y2": 4264559, + "x": 5854700, + "y": 4260850 + }, + { + "type": "cubicBezTo", + "x1": 5821111, + "y1": 4251253, + "x2": 5868221, + "y2": 4266415, + "x": 5822950, + "y": 4251325 + }, + { + "type": "lineTo", + "x": 5813425, + "y": 4248150 + }, + { + "type": "cubicBezTo", + "x1": 5795433, + "y1": 4250267, + "x2": 5777365, + "y2": 4251813, + "x": 5759450, + "y": 4254500 + }, + { + "type": "cubicBezTo", + "x1": 5756140, + "y1": 4254996, + "x2": 5753143, + "y2": 4256756, + "x": 5749925, + "y": 4257675 + }, + { + "type": "cubicBezTo", + "x1": 5745729, + "y1": 4258874, + "x2": 5741458, + "y2": 4259792, + "x": 5737225, + "y": 4260850 + }, + { + "type": "cubicBezTo", + "x1": 5715920, + "y1": 4275053, + "x2": 5735431, + "y2": 4264264, + "x": 5689600, + "y": 4270375 + }, + { + "type": "cubicBezTo", + "x1": 5677194, + "y1": 4272029, + "x2": 5682017, + "y2": 4274803, + "x": 5670550, + "y": 4279900 + }, + { + "type": "cubicBezTo", + "x1": 5664433, + "y1": 4282618, + "x2": 5657069, + "y2": 4282537, + "x": 5651500, + "y": 4286250 + }, + { + "type": "cubicBezTo", + "x1": 5634444, + "y1": 4297621, + "x2": 5637594, + "y2": 4297934, + "x": 5622925, + "y": 4302125 + }, + { + "type": "cubicBezTo", + "x1": 5618729, + "y1": 4303324, + "x2": 5614458, + "y2": 4304242, + "x": 5610225, + "y": 4305300 + }, + { + "type": "cubicBezTo", + "x1": 5608108, + "y1": 4308475, + "x2": 5606573, + "y2": 4312127, + "x": 5603875, + "y": 4314825 + }, + { + "type": "cubicBezTo", + "x1": 5597131, + "y1": 4321569, + "x2": 5593088, + "y2": 4321251, + "x": 5584825, + "y": 4324350 + }, + { + "type": "cubicBezTo", + "x1": 5579489, + "y1": 4326351, + "x2": 5574048, + "y2": 4328151, + "x": 5568950, + "y": 4330700 + }, + { + "type": "cubicBezTo", + "x1": 5552153, + "y1": 4339099, + "x2": 5566284, + "y2": 4334872, + "x": 5549900, + "y": 4346575 + }, + { + "type": "cubicBezTo", + "x1": 5546049, + "y1": 4349326, + "x2": 5541433, + "y2": 4350808, + "x": 5537200, + "y": 4352925 + }, + { + "type": "cubicBezTo", + "x1": 5535083, + "y1": 4359275, + "x2": 5536419, + "y2": 4368262, + "x": 5530850, + "y": 4371975 + }, + { + "type": "lineTo", + "x": 5511800, + "y": 4384675 + }, + { + "type": "cubicBezTo", + "x1": 5504620, + "y1": 4395445, + "x2": 5487458, + "y2": 4397375, + "x": 5486400, + "y": 4400550 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "261", + "path_data": [ + { + "path_width": 238218, + "path_height": 63500, + "commands": [ + { + "type": "moveTo", + "x": 5908675, + "y": 6029325 + }, + { + "type": "cubicBezTo", + "x1": 5907617, + "y1": 6025092, + "x2": 5897485, + "y2": 6028827, + "x": 5892800, + "y": 6026150 + }, + { + "type": "cubicBezTo", + "x1": 5865807, + "y1": 6010725, + "x2": 5912211, + "y2": 6020764, + "x": 5873750, + "y": 6010275 + }, + { + "type": "cubicBezTo", + "x1": 5866530, + "y1": 6008306, + "x2": 5858933, + "y2": 6008158, + "x": 5851525, + "y": 6007100 + }, + { + "type": "cubicBezTo", + "x1": 5845175, + "y1": 6004983, + "x2": 5838997, + "y2": 6002255, + "x": 5832475, + "y": 6000750 + }, + { + "type": "cubicBezTo", + "x1": 5825183, + "y1": 5999067, + "x2": 5817613, + "y2": 5998914, + "x": 5810250, + "y": 5997575 + }, + { + "type": "cubicBezTo", + "x1": 5805957, + "y1": 5996794, + "x2": 5801783, + "y2": 5995458, + "x": 5797550, + "y": 5994400 + }, + { + "type": "cubicBezTo", + "x1": 5768975, + "y1": 5996517, + "x2": 5740227, + "y2": 5996963, + "x": 5711825, + "y": 6000750 + }, + { + "type": "cubicBezTo", + "x1": 5708043, + "y1": 6001254, + "x2": 5705713, + "y2": 6005393, + "x": 5702300, + "y": 6007100 + }, + { + "type": "cubicBezTo", + "x1": 5699307, + "y1": 6008597, + "x2": 5695950, + "y2": 6009217, + "x": 5692775, + "y": 6010275 + }, + { + "type": "cubicBezTo", + "x1": 5690658, + "y1": 6014508, + "x2": 5689455, + "y2": 6019339, + "x": 5686425, + "y": 6022975 + }, + { + "type": "cubicBezTo", + "x1": 5683982, + "y1": 6025906, + "x2": 5678922, + "y2": 6026089, + "x": 5676900, + "y": 6029325 + }, + { + "type": "cubicBezTo", + "x1": 5673352, + "y1": 6035001, + "x2": 5670550, + "y2": 6048375, + "x": 5670550, + "y": 6048375 + }, + { + "type": "cubicBezTo", + "x1": 5673725, + "y1": 6049433, + "x2": 5676808, + "y2": 6050824, + "x": 5680075, + "y": 6051550 + }, + { + "type": "cubicBezTo", + "x1": 5710624, + "y1": 6058339, + "x2": 5746310, + "y2": 6056691, + "x": 5775325, + "y": 6057900 + }, + { + "type": "cubicBezTo", + "x1": 5813425, + "y1": 6056842, + "x2": 5851560, + "y2": 6056677, + "x": 5889625, + "y": 6054725 + }, + { + "type": "cubicBezTo", + "x1": 5892967, + "y1": 6054554, + "x2": 5897653, + "y2": 6054543, + "x": 5899150, + "y": 6051550 + }, + { + "type": "cubicBezTo", + "x1": 5901517, + "y1": 6046817, + "x2": 5909733, + "y2": 6033558, + "x": 5908675, + "y": 6029325 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_arches.json b/boneset-api/data/annotations/ColoredRegions/atlas_arches.json new file mode 100644 index 00000000..e84ecccf --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_arches.json @@ -0,0 +1,863 @@ +{ + "slide_number": 7, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "310", + "path_data": [ + { + "path_width": 2032000, + "path_height": 695325, + "commands": [ + { + "type": "moveTo", + "x": 5029200, + "y": 2346326 + }, + { + "type": "lineTo", + "x": 4962525, + "y": 2308226 + }, + { + "type": "lineTo", + "x": 4848225, + "y": 2225676 + }, + { + "type": "lineTo", + "x": 4762500, + "y": 2149476 + }, + { + "type": "lineTo", + "x": 4838700, + "y": 2070101 + }, + { + "type": "lineTo", + "x": 4933950, + "y": 1990726 + }, + { + "type": "lineTo", + "x": 5064125, + "y": 1901826 + }, + { + "type": "lineTo", + "x": 5194300, + "y": 1828801 + }, + { + "type": "lineTo", + "x": 5311775, + "y": 1774826 + }, + { + "type": "lineTo", + "x": 5432425, + "y": 1724026 + }, + { + "type": "lineTo", + "x": 5562600, + "y": 1698626 + }, + { + "type": "lineTo", + "x": 5616575, + "y": 1676401 + }, + { + "type": "lineTo", + "x": 5692775, + "y": 1651001 + }, + { + "type": "lineTo", + "x": 5756275, + "y": 1676401 + }, + { + "type": "lineTo", + "x": 5889625, + "y": 1701801 + }, + { + "type": "lineTo", + "x": 6007100, + "y": 1714501 + }, + { + "type": "lineTo", + "x": 6115050, + "y": 1749426 + }, + { + "type": "lineTo", + "x": 6153150, + "y": 1790701 + }, + { + "type": "lineTo", + "x": 6270625, + "y": 1831976 + }, + { + "type": "lineTo", + "x": 6413500, + "y": 1882776 + }, + { + "type": "lineTo", + "x": 6550025, + "y": 1965326 + }, + { + "type": "lineTo", + "x": 6686550, + "y": 2044701 + }, + { + "type": "lineTo", + "x": 6724650, + "y": 2076451 + }, + { + "type": "lineTo", + "x": 6794500, + "y": 2181226 + }, + { + "type": "lineTo", + "x": 6759575, + "y": 2209801 + }, + { + "type": "lineTo", + "x": 6683375, + "y": 2238376 + }, + { + "type": "lineTo", + "x": 6565900, + "y": 2273301 + }, + { + "type": "lineTo", + "x": 6391275, + "y": 2314576 + }, + { + "type": "lineTo", + "x": 6315075, + "y": 2295526 + }, + { + "type": "lineTo", + "x": 6283325, + "y": 2225676 + }, + { + "type": "lineTo", + "x": 6232525, + "y": 2146301 + }, + { + "type": "lineTo", + "x": 6143625, + "y": 2070101 + }, + { + "type": "lineTo", + "x": 6045200, + "y": 2019301 + }, + { + "type": "lineTo", + "x": 5962650, + "y": 2000251 + }, + { + "type": "lineTo", + "x": 5851525, + "y": 1987551 + }, + { + "type": "lineTo", + "x": 5851525, + "y": 1987551 + }, + { + "type": "lineTo", + "x": 5695950, + "y": 1997076 + }, + { + "type": "lineTo", + "x": 5578475, + "y": 2009776 + }, + { + "type": "lineTo", + "x": 5486400, + "y": 2012951 + }, + { + "type": "lineTo", + "x": 5403850, + "y": 2016126 + }, + { + "type": "lineTo", + "x": 5302250, + "y": 2041526 + }, + { + "type": "lineTo", + "x": 5222875, + "y": 2066926 + }, + { + "type": "lineTo", + "x": 5172075, + "y": 2108201 + }, + { + "type": "lineTo", + "x": 5114925, + "y": 2187576 + }, + { + "type": "lineTo", + "x": 5067300, + "y": 2279651 + }, + { + "type": "lineTo", + "x": 5029200, + "y": 2346326 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "311", + "path_data": [ + { + "path_width": 1006475, + "path_height": 447675, + "commands": [ + { + "type": "moveTo", + "x": 5362576, + "y": 3098801 + }, + { + "type": "lineTo", + "x": 5292726, + "y": 3190876 + }, + { + "type": "lineTo", + "x": 5248276, + "y": 3286126 + }, + { + "type": "lineTo", + "x": 5248276, + "y": 3327401 + }, + { + "type": "lineTo", + "x": 5324476, + "y": 3327401 + }, + { + "type": "lineTo", + "x": 5397501, + "y": 3355976 + }, + { + "type": "lineTo", + "x": 5441951, + "y": 3387726 + }, + { + "type": "lineTo", + "x": 5521326, + "y": 3409951 + }, + { + "type": "lineTo", + "x": 5594351, + "y": 3473451 + }, + { + "type": "lineTo", + "x": 5654676, + "y": 3530601 + }, + { + "type": "lineTo", + "x": 5711826, + "y": 3536951 + }, + { + "type": "lineTo", + "x": 5816601, + "y": 3508376 + }, + { + "type": "lineTo", + "x": 5861051, + "y": 3505201 + }, + { + "type": "lineTo", + "x": 5908676, + "y": 3457576 + }, + { + "type": "lineTo", + "x": 6000751, + "y": 3400426 + }, + { + "type": "lineTo", + "x": 6073776, + "y": 3352801 + }, + { + "type": "lineTo", + "x": 6159501, + "y": 3311526 + }, + { + "type": "lineTo", + "x": 6210301, + "y": 3286126 + }, + { + "type": "lineTo", + "x": 6254751, + "y": 3282951 + }, + { + "type": "lineTo", + "x": 6159501, + "y": 3171826 + }, + { + "type": "lineTo", + "x": 6118226, + "y": 3089276 + }, + { + "type": "lineTo", + "x": 6067426, + "y": 3121026 + }, + { + "type": "lineTo", + "x": 6000751, + "y": 3143251 + }, + { + "type": "lineTo", + "x": 5927726, + "y": 3127376 + }, + { + "type": "lineTo", + "x": 5829301, + "y": 3121026 + }, + { + "type": "lineTo", + "x": 5768976, + "y": 3111501 + }, + { + "type": "lineTo", + "x": 5695951, + "y": 3124201 + }, + { + "type": "lineTo", + "x": 5603876, + "y": 3133726 + }, + { + "type": "lineTo", + "x": 5530851, + "y": 3140076 + }, + { + "type": "lineTo", + "x": 5495926, + "y": 3140076 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 3098801 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "312", + "path_data": [ + { + "path_width": 1292225, + "path_height": 485775, + "commands": [ + { + "type": "moveTo", + "x": 6337301, + "y": 4394201 + }, + { + "type": "lineTo", + "x": 6245226, + "y": 4438651 + }, + { + "type": "lineTo", + "x": 6172201, + "y": 4518026 + }, + { + "type": "lineTo", + "x": 6115051, + "y": 4556126 + }, + { + "type": "lineTo", + "x": 6096001, + "y": 4651376 + }, + { + "type": "lineTo", + "x": 6096001, + "y": 4702176 + }, + { + "type": "lineTo", + "x": 6029326, + "y": 4657726 + }, + { + "type": "lineTo", + "x": 5949951, + "y": 4632326 + }, + { + "type": "lineTo", + "x": 5864226, + "y": 4632326 + }, + { + "type": "lineTo", + "x": 5753101, + "y": 4625976 + }, + { + "type": "lineTo", + "x": 5670551, + "y": 4625976 + }, + { + "type": "lineTo", + "x": 5600701, + "y": 4625976 + }, + { + "type": "lineTo", + "x": 5543551, + "y": 4629151 + }, + { + "type": "lineTo", + "x": 5480051, + "y": 4645026 + }, + { + "type": "lineTo", + "x": 5426076, + "y": 4660901 + }, + { + "type": "lineTo", + "x": 5384801, + "y": 4705351 + }, + { + "type": "lineTo", + "x": 5378451, + "y": 4721226 + }, + { + "type": "lineTo", + "x": 5283201, + "y": 4645026 + }, + { + "type": "lineTo", + "x": 5178426, + "y": 4575176 + }, + { + "type": "lineTo", + "x": 5045076, + "y": 4451351 + }, + { + "type": "lineTo", + "x": 5130801, + "y": 4438651 + }, + { + "type": "lineTo", + "x": 5210176, + "y": 4454526 + }, + { + "type": "lineTo", + "x": 5321301, + "y": 4441826 + }, + { + "type": "lineTo", + "x": 5384801, + "y": 4438651 + }, + { + "type": "lineTo", + "x": 5445126, + "y": 4416426 + }, + { + "type": "lineTo", + "x": 5530851, + "y": 4375151 + }, + { + "type": "lineTo", + "x": 5588001, + "y": 4346576 + }, + { + "type": "lineTo", + "x": 5619751, + "y": 4318001 + }, + { + "type": "lineTo", + "x": 5641976, + "y": 4283076 + }, + { + "type": "lineTo", + "x": 5737226, + "y": 4267201 + }, + { + "type": "lineTo", + "x": 5807076, + "y": 4235451 + }, + { + "type": "lineTo", + "x": 5876926, + "y": 4267201 + }, + { + "type": "lineTo", + "x": 5959476, + "y": 4305301 + }, + { + "type": "lineTo", + "x": 6026151, + "y": 4359276 + }, + { + "type": "lineTo", + "x": 6115051, + "y": 4381501 + }, + { + "type": "lineTo", + "x": 6184901, + "y": 4391026 + }, + { + "type": "lineTo", + "x": 6337301, + "y": 4394201 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "313", + "path_data": [ + { + "path_width": 1981200, + "path_height": 666749, + "commands": [ + { + "type": "moveTo", + "x": 6381750, + "y": 5511799 + }, + { + "type": "lineTo", + "x": 6423025, + "y": 5403849 + }, + { + "type": "cubicBezTo", + "x1": 6457421, + "y1": 5403320, + "x2": 6517745, + "y2": 5402791, + "x": 6569074, + "y": 5432424 + }, + { + "type": "cubicBezTo", + "x1": 6620403, + "y1": 5462057, + "x2": 6746875, + "y2": 5572653, + "x": 6756400, + "y": 5607049 + }, + { + "type": "lineTo", + "x": 6645275, + "y": 5714999 + }, + { + "type": "lineTo", + "x": 6553200, + "y": 5772149 + }, + { + "type": "lineTo", + "x": 6448425, + "y": 5819774 + }, + { + "type": "lineTo", + "x": 6369050, + "y": 5838824 + }, + { + "type": "lineTo", + "x": 6292850, + "y": 5870574 + }, + { + "type": "lineTo", + "x": 6184900, + "y": 5911849 + }, + { + "type": "lineTo", + "x": 6061075, + "y": 5962649 + }, + { + "type": "lineTo", + "x": 5946775, + "y": 6013449 + }, + { + "type": "lineTo", + "x": 5883275, + "y": 6035674 + }, + { + "type": "lineTo", + "x": 5765800, + "y": 6026149 + }, + { + "type": "lineTo", + "x": 5695950, + "y": 6051549 + }, + { + "type": "lineTo", + "x": 5575300, + "y": 6019799 + }, + { + "type": "lineTo", + "x": 5457825, + "y": 5975349 + }, + { + "type": "lineTo", + "x": 5289550, + "y": 5905499 + }, + { + "type": "lineTo", + "x": 5133975, + "y": 5826124 + }, + { + "type": "lineTo", + "x": 5016500, + "y": 5768974 + }, + { + "type": "lineTo", + "x": 4775200, + "y": 5622924 + }, + { + "type": "lineTo", + "x": 4848225, + "y": 5568949 + }, + { + "type": "lineTo", + "x": 4924425, + "y": 5527674 + }, + { + "type": "cubicBezTo", + "x1": 4949825, + "y1": 5501745, + "x2": 4991628, + "y2": 5495926, + "x": 5003799, + "y": 5461001 + }, + { + "type": "cubicBezTo", + "x1": 5015970, + "y1": 5426076, + "x2": 5127624, + "y2": 5385859, + "x": 5140324, + "y": 5384800 + }, + { + "type": "lineTo", + "x": 5181600, + "y": 5476874 + }, + { + "type": "lineTo", + "x": 5229225, + "y": 5549899 + }, + { + "type": "lineTo", + "x": 5273675, + "y": 5629274 + }, + { + "type": "lineTo", + "x": 5308600, + "y": 5686424 + }, + { + "type": "lineTo", + "x": 5381625, + "y": 5724524 + }, + { + "type": "lineTo", + "x": 5502275, + "y": 5778499 + }, + { + "type": "lineTo", + "x": 5594350, + "y": 5816599 + }, + { + "type": "lineTo", + "x": 5670550, + "y": 5835649 + }, + { + "type": "lineTo", + "x": 5810250, + "y": 5848349 + }, + { + "type": "lineTo", + "x": 5949950, + "y": 5829299 + }, + { + "type": "lineTo", + "x": 6064250, + "y": 5794374 + }, + { + "type": "lineTo", + "x": 6188075, + "y": 5740399 + }, + { + "type": "lineTo", + "x": 6257925, + "y": 5705474 + }, + { + "type": "lineTo", + "x": 6321425, + "y": 5622924 + }, + { + "type": "lineTo", + "x": 6381750, + "y": 5511799 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_articular_facet_for_dens.json b/boneset-api/data/annotations/ColoredRegions/atlas_articular_facet_for_dens.json new file mode 100644 index 00000000..a1f8066b --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_articular_facet_for_dens.json @@ -0,0 +1,147 @@ +{ + "slide_number": 9, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "357", + "path_data": [ + { + "path_width": 730250, + "path_height": 581681, + "commands": [ + { + "type": "moveTo", + "x": 5813425, + "y": 3390899 + }, + { + "type": "lineTo", + "x": 5899150, + "y": 3355974 + }, + { + "type": "lineTo", + "x": 5962650, + "y": 3286124 + }, + { + "type": "lineTo", + "x": 6026150, + "y": 3187699 + }, + { + "type": "lineTo", + "x": 6022975, + "y": 3111499 + }, + { + "type": "lineTo", + "x": 5972175, + "y": 3009899 + }, + { + "type": "lineTo", + "x": 5880100, + "y": 2927349 + }, + { + "type": "cubicBezTo", + "x1": 5842529, + "y1": 2900891, + "x2": 5792787, + "y2": 2865436, + "x": 5746750, + "y": 2851149 + }, + { + "type": "cubicBezTo", + "x1": 5700713, + "y1": 2836862, + "x2": 5650442, + "y2": 2841624, + "x": 5603875, + "y": 2841624 + }, + { + "type": "cubicBezTo", + "x1": 5558367, + "y1": 2844799, + "x2": 5566833, + "y2": 2835275, + "x": 5521325, + "y": 2838450 + }, + { + "type": "lineTo", + "x": 5464175, + "y": 2854324 + }, + { + "type": "lineTo", + "x": 5353050, + "y": 2949574 + }, + { + "type": "cubicBezTo", + "x1": 5334000, + "y1": 2989791, + "x2": 5314950, + "y2": 3014132, + "x": 5295900, + "y": 3070224 + }, + { + "type": "lineTo", + "x": 5295900, + "y": 3219449 + }, + { + "type": "lineTo", + "x": 5349875, + "y": 3308349 + }, + { + "type": "lineTo", + "x": 5451475, + "y": 3371849 + }, + { + "type": "lineTo", + "x": 5486400, + "y": 3384549 + }, + { + "type": "lineTo", + "x": 5530850, + "y": 3416299 + }, + { + "type": "lineTo", + "x": 5632450, + "y": 3413124 + }, + { + "type": "lineTo", + "x": 5724525, + "y": 3419474 + }, + { + "type": "lineTo", + "x": 5813425, + "y": 3390899 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_articular_surfaces.json b/boneset-api/data/annotations/ColoredRegions/atlas_articular_surfaces.json new file mode 100644 index 00000000..a718c169 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_articular_surfaces.json @@ -0,0 +1,652 @@ +{ + "slide_number": 11, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "407", + "path_data": [ + { + "path_width": 790575, + "path_height": 857250, + "commands": [ + { + "type": "moveTo", + "x": 5054601, + "y": 2867025 + }, + { + "type": "lineTo", + "x": 5143501, + "y": 2813050 + }, + { + "type": "lineTo", + "x": 5172076, + "y": 2705100 + }, + { + "type": "lineTo", + "x": 5140326, + "y": 2600325 + }, + { + "type": "lineTo", + "x": 5102226, + "y": 2492375 + }, + { + "type": "lineTo", + "x": 5029201, + "y": 2425700 + }, + { + "type": "lineTo", + "x": 4918076, + "y": 2362200 + }, + { + "type": "lineTo", + "x": 4838701, + "y": 2336800 + }, + { + "type": "lineTo", + "x": 4724401, + "y": 2320925 + }, + { + "type": "lineTo", + "x": 4651376, + "y": 2346325 + }, + { + "type": "lineTo", + "x": 4594226, + "y": 2406650 + }, + { + "type": "lineTo", + "x": 4549776, + "y": 2501900 + }, + { + "type": "lineTo", + "x": 4518026, + "y": 2616200 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 2740025 + }, + { + "type": "lineTo", + "x": 4603751, + "y": 2822575 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 4752976, + "y": 2892425 + }, + { + "type": "lineTo", + "x": 4724401, + "y": 2946400 + }, + { + "type": "lineTo", + "x": 4743451, + "y": 3025775 + }, + { + "type": "lineTo", + "x": 4791076, + "y": 3082925 + }, + { + "type": "lineTo", + "x": 4879976, + "y": 3130550 + }, + { + "type": "lineTo", + "x": 5003801, + "y": 3165475 + }, + { + "type": "lineTo", + "x": 5114926, + "y": 3178175 + }, + { + "type": "lineTo", + "x": 5226051, + "y": 3178175 + }, + { + "type": "lineTo", + "x": 5286376, + "y": 3178175 + }, + { + "type": "lineTo", + "x": 5308601, + "y": 3168650 + }, + { + "type": "lineTo", + "x": 5248276, + "y": 3108325 + }, + { + "type": "lineTo", + "x": 5210176, + "y": 3089275 + }, + { + "type": "lineTo", + "x": 5207001, + "y": 3054350 + }, + { + "type": "lineTo", + "x": 5165726, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 5118101, + "y": 2965450 + }, + { + "type": "lineTo", + "x": 5080001, + "y": 2946400 + }, + { + "type": "lineTo", + "x": 5038726, + "y": 2917825 + }, + { + "type": "lineTo", + "x": 5026026, + "y": 2908300 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 2867025 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "408", + "path_data": [ + { + "path_width": 806450, + "path_height": 828675, + "commands": [ + { + "type": "moveTo", + "x": 6826250, + "y": 2390776 + }, + { + "type": "lineTo", + "x": 6743700, + "y": 2362201 + }, + { + "type": "lineTo", + "x": 6645275, + "y": 2346326 + }, + { + "type": "lineTo", + "x": 6578600, + "y": 2346326 + }, + { + "type": "lineTo", + "x": 6483350, + "y": 2365376 + }, + { + "type": "lineTo", + "x": 6426200, + "y": 2397126 + }, + { + "type": "lineTo", + "x": 6372225, + "y": 2441576 + }, + { + "type": "lineTo", + "x": 6350000, + "y": 2466976 + }, + { + "type": "lineTo", + "x": 6327775, + "y": 2540001 + }, + { + "type": "lineTo", + "x": 6311900, + "y": 2597151 + }, + { + "type": "lineTo", + "x": 6311900, + "y": 2628901 + }, + { + "type": "lineTo", + "x": 6308725, + "y": 2714626 + }, + { + "type": "lineTo", + "x": 6305550, + "y": 2765426 + }, + { + "type": "lineTo", + "x": 6232525, + "y": 2800351 + }, + { + "type": "lineTo", + "x": 6181725, + "y": 2832101 + }, + { + "type": "lineTo", + "x": 6130925, + "y": 2889251 + }, + { + "type": "lineTo", + "x": 6108700, + "y": 2959101 + }, + { + "type": "lineTo", + "x": 6124575, + "y": 3048001 + }, + { + "type": "lineTo", + "x": 6156325, + "y": 3108326 + }, + { + "type": "lineTo", + "x": 6254750, + "y": 3155951 + }, + { + "type": "lineTo", + "x": 6391275, + "y": 3175001 + }, + { + "type": "lineTo", + "x": 6521450, + "y": 3136901 + }, + { + "type": "lineTo", + "x": 6616700, + "y": 3111501 + }, + { + "type": "lineTo", + "x": 6708775, + "y": 3063876 + }, + { + "type": "lineTo", + "x": 6759575, + "y": 3019426 + }, + { + "type": "lineTo", + "x": 6797675, + "y": 2962276 + }, + { + "type": "lineTo", + "x": 6835775, + "y": 2898776 + }, + { + "type": "lineTo", + "x": 6864350, + "y": 2819401 + }, + { + "type": "lineTo", + "x": 6883400, + "y": 2730501 + }, + { + "type": "lineTo", + "x": 6908800, + "y": 2647951 + }, + { + "type": "lineTo", + "x": 6915150, + "y": 2568576 + }, + { + "type": "lineTo", + "x": 6892925, + "y": 2457451 + }, + { + "type": "lineTo", + "x": 6826250, + "y": 2390776 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "409", + "path_data": [ + { + "path_width": 695325, + "path_height": 673100, + "commands": [ + { + "type": "moveTo", + "x": 5368926, + "y": 4870450 + }, + { + "type": "lineTo", + "x": 5327651, + "y": 4800600 + }, + { + "type": "lineTo", + "x": 5299076, + "y": 4746625 + }, + { + "type": "lineTo", + "x": 5267326, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 5168901, + "y": 4679950 + }, + { + "type": "lineTo", + "x": 5019676, + "y": 4683125 + }, + { + "type": "lineTo", + "x": 4886326, + "y": 4730750 + }, + { + "type": "lineTo", + "x": 4775201, + "y": 4816475 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 4933950 + }, + { + "type": "lineTo", + "x": 4679951, + "y": 5003800 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 5121275 + }, + { + "type": "lineTo", + "x": 4708526, + "y": 5241925 + }, + { + "type": "lineTo", + "x": 4778376, + "y": 5318125 + }, + { + "type": "lineTo", + "x": 4870451, + "y": 5353050 + }, + { + "type": "lineTo", + "x": 4981576, + "y": 5346700 + }, + { + "type": "lineTo", + "x": 5130801, + "y": 5324475 + }, + { + "type": "lineTo", + "x": 5229226, + "y": 5260975 + }, + { + "type": "lineTo", + "x": 5283201, + "y": 5194300 + }, + { + "type": "lineTo", + "x": 5340351, + "y": 5105400 + }, + { + "type": "lineTo", + "x": 5359401, + "y": 5035550 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 5000625 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 4870450 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "410", + "path_data": [ + { + "path_width": 746125, + "path_height": 669925, + "commands": [ + { + "type": "moveTo", + "x": 6800851, + "y": 4902201 + }, + { + "type": "lineTo", + "x": 6727826, + "y": 4835526 + }, + { + "type": "lineTo", + "x": 6664326, + "y": 4778376 + }, + { + "type": "lineTo", + "x": 6604001, + "y": 4714876 + }, + { + "type": "lineTo", + "x": 6540501, + "y": 4689476 + }, + { + "type": "lineTo", + "x": 6467476, + "y": 4683126 + }, + { + "type": "lineTo", + "x": 6365876, + "y": 4695826 + }, + { + "type": "lineTo", + "x": 6242051, + "y": 4708526 + }, + { + "type": "lineTo", + "x": 6156326, + "y": 4768851 + }, + { + "type": "lineTo", + "x": 6105526, + "y": 4822826 + }, + { + "type": "lineTo", + "x": 6140451, + "y": 4927601 + }, + { + "type": "lineTo", + "x": 6172201, + "y": 5013326 + }, + { + "type": "lineTo", + "x": 6175376, + "y": 5092701 + }, + { + "type": "lineTo", + "x": 6213476, + "y": 5156201 + }, + { + "type": "lineTo", + "x": 6276976, + "y": 5235576 + }, + { + "type": "lineTo", + "x": 6334126, + "y": 5299076 + }, + { + "type": "lineTo", + "x": 6413501, + "y": 5353051 + }, + { + "type": "lineTo", + "x": 6527801, + "y": 5353051 + }, + { + "type": "lineTo", + "x": 6677026, + "y": 5327651 + }, + { + "type": "lineTo", + "x": 6750051, + "y": 5270501 + }, + { + "type": "lineTo", + "x": 6835776, + "y": 5172076 + }, + { + "type": "lineTo", + "x": 6851651, + "y": 5102226 + }, + { + "type": "lineTo", + "x": 6851651, + "y": 5032376 + }, + { + "type": "lineTo", + "x": 6832601, + "y": 4972051 + }, + { + "type": "lineTo", + "x": 6800851, + "y": 4902201 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_groove_for_vertebral_artery.json b/boneset-api/data/annotations/ColoredRegions/atlas_groove_for_vertebral_artery.json new file mode 100644 index 00000000..f6e5eaf0 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_groove_for_vertebral_artery.json @@ -0,0 +1,203 @@ +{ + "slide_number": 8, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "336", + "path_data": [ + { + "path_width": 1047750, + "path_height": 460375, + "commands": [ + { + "type": "moveTo", + "x": 7483475, + "y": 3184526 + }, + { + "type": "lineTo", + "x": 7385050, + "y": 3155951 + }, + { + "type": "lineTo", + "x": 7242175, + "y": 3079751 + }, + { + "type": "lineTo", + "x": 7086600, + "y": 2974976 + }, + { + "type": "lineTo", + "x": 6950075, + "y": 2914651 + }, + { + "type": "lineTo", + "x": 6845300, + "y": 2860676 + }, + { + "type": "lineTo", + "x": 6737350, + "y": 2847976 + }, + { + "type": "lineTo", + "x": 6588125, + "y": 2857501 + }, + { + "type": "lineTo", + "x": 6511925, + "y": 2876551 + }, + { + "type": "lineTo", + "x": 6454775, + "y": 2813051 + }, + { + "type": "lineTo", + "x": 6435725, + "y": 2784476 + }, + { + "type": "lineTo", + "x": 6518275, + "y": 2746376 + }, + { + "type": "lineTo", + "x": 6661150, + "y": 2724151 + }, + { + "type": "lineTo", + "x": 6832600, + "y": 2736851 + }, + { + "type": "lineTo", + "x": 7010400, + "y": 2797176 + }, + { + "type": "lineTo", + "x": 7156450, + "y": 2873376 + }, + { + "type": "lineTo", + "x": 7286625, + "y": 2978151 + }, + { + "type": "lineTo", + "x": 7429500, + "y": 3022601 + }, + { + "type": "lineTo", + "x": 7483475, + "y": 3184526 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "337", + "path_data": [ + { + "path_width": 708025, + "path_height": 104775, + "commands": [ + { + "type": "moveTo", + "x": 4721226, + "y": 3009901 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 3089276 + }, + { + "type": "lineTo", + "x": 4524376, + "y": 3076576 + }, + { + "type": "lineTo", + "x": 4356101, + "y": 3070226 + }, + { + "type": "lineTo", + "x": 4219576, + "y": 3070226 + }, + { + "type": "lineTo", + "x": 4013201, + "y": 3082926 + }, + { + "type": "lineTo", + "x": 4048126, + "y": 3032126 + }, + { + "type": "lineTo", + "x": 4060826, + "y": 3006726 + }, + { + "type": "lineTo", + "x": 4079876, + "y": 2990851 + }, + { + "type": "lineTo", + "x": 4248151, + "y": 2984501 + }, + { + "type": "lineTo", + "x": 4416426, + "y": 2984501 + }, + { + "type": "lineTo", + "x": 4591051, + "y": 2984501 + }, + { + "type": "lineTo", + "x": 4721226, + "y": 3009901 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_lateral_mass.json b/boneset-api/data/annotations/ColoredRegions/atlas_lateral_mass.json new file mode 100644 index 00000000..44eae06b --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_lateral_mass.json @@ -0,0 +1,810 @@ +{ + "slide_number": 10, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "381", + "path_data": [ + { + "path_width": 873125, + "path_height": 1092200, + "commands": [ + { + "type": "moveTo", + "x": 5029201, + "y": 2390775 + }, + { + "type": "lineTo", + "x": 4949826, + "y": 2320925 + }, + { + "type": "lineTo", + "x": 4768851, + "y": 2238375 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 2219325 + }, + { + "type": "lineTo", + "x": 4619626, + "y": 2260600 + }, + { + "type": "lineTo", + "x": 4552951, + "y": 2371725 + }, + { + "type": "lineTo", + "x": 4505326, + "y": 2466975 + }, + { + "type": "lineTo", + "x": 4546601, + "y": 2565400 + }, + { + "type": "lineTo", + "x": 4521201, + "y": 2647950 + }, + { + "type": "lineTo", + "x": 4511676, + "y": 2733675 + }, + { + "type": "lineTo", + "x": 4498976, + "y": 2794000 + }, + { + "type": "lineTo", + "x": 4498976, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 4489451, + "y": 2921000 + }, + { + "type": "lineTo", + "x": 4489451, + "y": 2959100 + }, + { + "type": "lineTo", + "x": 4524376, + "y": 3016250 + }, + { + "type": "lineTo", + "x": 4572001, + "y": 3082925 + }, + { + "type": "lineTo", + "x": 4625976, + "y": 3130550 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 3162300 + }, + { + "type": "lineTo", + "x": 4756151, + "y": 3200400 + }, + { + "type": "lineTo", + "x": 4813301, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 4860926, + "y": 3257550 + }, + { + "type": "lineTo", + "x": 4899026, + "y": 3282950 + }, + { + "type": "lineTo", + "x": 4975226, + "y": 3305175 + }, + { + "type": "lineTo", + "x": 5032376, + "y": 3311525 + }, + { + "type": "lineTo", + "x": 5111751, + "y": 3311525 + }, + { + "type": "lineTo", + "x": 5207001, + "y": 3289300 + }, + { + "type": "lineTo", + "x": 5292726, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 5340351, + "y": 3165475 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 3095625 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 5330826, + "y": 2905125 + }, + { + "type": "lineTo", + "x": 5299076, + "y": 2816225 + }, + { + "type": "lineTo", + "x": 5295901, + "y": 2768600 + }, + { + "type": "lineTo", + "x": 5251451, + "y": 2676525 + }, + { + "type": "lineTo", + "x": 5187951, + "y": 2613025 + }, + { + "type": "lineTo", + "x": 5133976, + "y": 2574925 + }, + { + "type": "lineTo", + "x": 5092701, + "y": 2501900 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 2435225 + }, + { + "type": "lineTo", + "x": 5029201, + "y": 2390775 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "382", + "path_data": [ + { + "path_width": 885825, + "path_height": 990600, + "commands": [ + { + "type": "moveTo", + "x": 6842126, + "y": 2286000 + }, + { + "type": "lineTo", + "x": 6743701, + "y": 2289175 + }, + { + "type": "lineTo", + "x": 6619876, + "y": 2292350 + }, + { + "type": "lineTo", + "x": 6502401, + "y": 2330450 + }, + { + "type": "lineTo", + "x": 6350001, + "y": 2403475 + }, + { + "type": "lineTo", + "x": 6346826, + "y": 2463800 + }, + { + "type": "lineTo", + "x": 6327776, + "y": 2536825 + }, + { + "type": "lineTo", + "x": 6308726, + "y": 2555875 + }, + { + "type": "lineTo", + "x": 6248401, + "y": 2590800 + }, + { + "type": "lineTo", + "x": 6207126, + "y": 2622550 + }, + { + "type": "lineTo", + "x": 6169026, + "y": 2670175 + }, + { + "type": "lineTo", + "x": 6140451, + "y": 2746375 + }, + { + "type": "lineTo", + "x": 6124576, + "y": 2806700 + }, + { + "type": "lineTo", + "x": 6115051, + "y": 2898775 + }, + { + "type": "lineTo", + "x": 6115051, + "y": 2987675 + }, + { + "type": "lineTo", + "x": 6118226, + "y": 3079750 + }, + { + "type": "lineTo", + "x": 6118226, + "y": 3114675 + }, + { + "type": "lineTo", + "x": 6159501, + "y": 3197225 + }, + { + "type": "lineTo", + "x": 6216651, + "y": 3267075 + }, + { + "type": "lineTo", + "x": 6257926, + "y": 3276600 + }, + { + "type": "lineTo", + "x": 6388101, + "y": 3257550 + }, + { + "type": "lineTo", + "x": 6467476, + "y": 3254375 + }, + { + "type": "lineTo", + "x": 6540501, + "y": 3241675 + }, + { + "type": "lineTo", + "x": 6604001, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 6680201, + "y": 3200400 + }, + { + "type": "lineTo", + "x": 6746876, + "y": 3171825 + }, + { + "type": "lineTo", + "x": 6826251, + "y": 3130550 + }, + { + "type": "lineTo", + "x": 6883401, + "y": 3082925 + }, + { + "type": "lineTo", + "x": 6934201, + "y": 3051175 + }, + { + "type": "lineTo", + "x": 6978651, + "y": 3003550 + }, + { + "type": "lineTo", + "x": 7000876, + "y": 2943225 + }, + { + "type": "lineTo", + "x": 6946901, + "y": 2784475 + }, + { + "type": "lineTo", + "x": 6899276, + "y": 2705100 + }, + { + "type": "lineTo", + "x": 6892926, + "y": 2609850 + }, + { + "type": "cubicBezTo", + "x1": 6893984, + "y1": 2572808, + "x2": 6895043, + "y2": 2535767, + "x": 6896101, + "y": 2498725 + }, + { + "type": "lineTo", + "x": 6877051, + "y": 2422525 + }, + { + "type": "lineTo", + "x": 6845301, + "y": 2355850 + }, + { + "type": "lineTo", + "x": 6842126, + "y": 2286000 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "383", + "path_data": [ + { + "path_width": 733425, + "path_height": 1028700, + "commands": [ + { + "type": "moveTo", + "x": 5394326, + "y": 4651375 + }, + { + "type": "lineTo", + "x": 5302251, + "y": 4559300 + }, + { + "type": "lineTo", + "x": 5219701, + "y": 4451350 + }, + { + "type": "lineTo", + "x": 5137151, + "y": 4438650 + }, + { + "type": "lineTo", + "x": 5048251, + "y": 4445000 + }, + { + "type": "lineTo", + "x": 4918076, + "y": 4483100 + }, + { + "type": "lineTo", + "x": 4838701, + "y": 4511675 + }, + { + "type": "lineTo", + "x": 4727576, + "y": 4556125 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 4613275 + }, + { + "type": "lineTo", + "x": 4667251, + "y": 4730750 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 4816475 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 4867275 + }, + { + "type": "lineTo", + "x": 4702176, + "y": 4949825 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 5016500 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 5111750 + }, + { + "type": "lineTo", + "x": 4689476, + "y": 5156200 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 5264150 + }, + { + "type": "lineTo", + "x": 4660901, + "y": 5372100 + }, + { + "type": "lineTo", + "x": 4660901, + "y": 5416550 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 5451475 + }, + { + "type": "lineTo", + "x": 4908551, + "y": 5467350 + }, + { + "type": "lineTo", + "x": 5019676, + "y": 5451475 + }, + { + "type": "lineTo", + "x": 5162551, + "y": 5422900 + }, + { + "type": "lineTo", + "x": 5156201, + "y": 5302250 + }, + { + "type": "lineTo", + "x": 5248276, + "y": 5241925 + }, + { + "type": "lineTo", + "x": 5321301, + "y": 5153025 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 5029200 + }, + { + "type": "cubicBezTo", + "x1": 5369984, + "y1": 4992158, + "x2": 5371043, + "y2": 4955117, + "x": 5372101, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 5375276, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 5375276, + "y": 4810125 + }, + { + "type": "lineTo", + "x": 5365751, + "y": 4749800 + }, + { + "type": "lineTo", + "x": 5394326, + "y": 4651375 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "384", + "path_data": [ + { + "path_width": 854075, + "path_height": 1190625, + "commands": [ + { + "type": "moveTo", + "x": 6670676, + "y": 4505326 + }, + { + "type": "lineTo", + "x": 6543676, + "y": 4441826 + }, + { + "type": "lineTo", + "x": 6477001, + "y": 4435476 + }, + { + "type": "lineTo", + "x": 6359526, + "y": 4397376 + }, + { + "type": "lineTo", + "x": 6276976, + "y": 4397376 + }, + { + "type": "lineTo", + "x": 6210301, + "y": 4397376 + }, + { + "type": "lineTo", + "x": 6134101, + "y": 4432301 + }, + { + "type": "lineTo", + "x": 6067426, + "y": 4600576 + }, + { + "type": "lineTo", + "x": 6067426, + "y": 4670426 + }, + { + "type": "lineTo", + "x": 6111876, + "y": 4699001 + }, + { + "type": "lineTo", + "x": 6118226, + "y": 4832351 + }, + { + "type": "lineTo", + "x": 6111876, + "y": 4873626 + }, + { + "type": "lineTo", + "x": 6149976, + "y": 4965701 + }, + { + "type": "lineTo", + "x": 6178551, + "y": 5026026 + }, + { + "type": "lineTo", + "x": 6175376, + "y": 5083176 + }, + { + "type": "lineTo", + "x": 6219826, + "y": 5172076 + }, + { + "type": "lineTo", + "x": 6267451, + "y": 5238751 + }, + { + "type": "lineTo", + "x": 6343651, + "y": 5305426 + }, + { + "type": "lineTo", + "x": 6388101, + "y": 5340351 + }, + { + "type": "lineTo", + "x": 6413501, + "y": 5362576 + }, + { + "type": "lineTo", + "x": 6454776, + "y": 5432426 + }, + { + "type": "lineTo", + "x": 6565901, + "y": 5502276 + }, + { + "type": "lineTo", + "x": 6705601, + "y": 5546726 + }, + { + "type": "lineTo", + "x": 6804026, + "y": 5588001 + }, + { + "type": "lineTo", + "x": 6873876, + "y": 5502276 + }, + { + "type": "lineTo", + "x": 6921501, + "y": 5403851 + }, + { + "type": "lineTo", + "x": 6905626, + "y": 5280026 + }, + { + "type": "lineTo", + "x": 6854826, + "y": 5143501 + }, + { + "type": "lineTo", + "x": 6864351, + "y": 5089526 + }, + { + "type": "lineTo", + "x": 6880226, + "y": 5000626 + }, + { + "type": "lineTo", + "x": 6896101, + "y": 4908551 + }, + { + "type": "lineTo", + "x": 6896101, + "y": 4838701 + }, + { + "type": "lineTo", + "x": 6826251, + "y": 4794251 + }, + { + "type": "lineTo", + "x": 6765926, + "y": 4645026 + }, + { + "type": "lineTo", + "x": 6734176, + "y": 4524376 + }, + { + "type": "lineTo", + "x": 6670676, + "y": 4505326 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/atlas_transverse_process.json b/boneset-api/data/annotations/ColoredRegions/atlas_transverse_process.json new file mode 100644 index 00000000..9f5ee144 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/atlas_transverse_process.json @@ -0,0 +1,1867 @@ +{ + "slide_number": 6, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "284", + "path_data": [ + { + "path_width": 906167, + "path_height": 931132, + "commands": [ + { + "type": "moveTo", + "x": 6845300, + "y": 2320925 + }, + { + "type": "cubicBezTo", + "x1": 6845829, + "y1": 2317750, + "x2": 6858954, + "y2": 2328229, + "x": 6864350, + "y": 2333625 + }, + { + "type": "cubicBezTo", + "x1": 6866717, + "y1": 2335992, + "x2": 6864802, + "y2": 2341205, + "x": 6867525, + "y": 2343150 + }, + { + "type": "cubicBezTo", + "x1": 6872972, + "y1": 2347041, + "x2": 6886575, + "y2": 2349500, + "x": 6886575, + "y": 2349500 + }, + { + "type": "cubicBezTo", + "x1": 6896638, + "y1": 2364594, + "x2": 6889305, + "y2": 2357818, + "x": 6911975, + "y": 2365375 + }, + { + "type": "cubicBezTo", + "x1": 6915150, + "y1": 2366433, + "x2": 6919383, + "y2": 2361671, + "x": 6921500, + "y": 2368550 + }, + { + "type": "cubicBezTo", + "x1": 6923617, + "y1": 2375429, + "x2": 6919912, + "y2": 2398183, + "x": 6924675, + "y": 2406650 + }, + { + "type": "cubicBezTo", + "x1": 6929438, + "y1": 2415117, + "x2": 6941079, + "y2": 2413529, + "x": 6950075, + "y": 2419350 + }, + { + "type": "cubicBezTo", + "x1": 6959071, + "y1": 2425171, + "x2": 6973358, + "y2": 2436283, + "x": 6978650, + "y": 2441575 + }, + { + "type": "cubicBezTo", + "x1": 6983942, + "y1": 2446867, + "x2": 6979708, + "y2": 2442104, + "x": 6981825, + "y": 2451100 + }, + { + "type": "cubicBezTo", + "x1": 6983942, + "y1": 2460096, + "x2": 6981825, + "y2": 2486025, + "x": 6991350, + "y": 2495550 + }, + { + "type": "cubicBezTo", + "x1": 7000875, + "y1": 2505075, + "x2": 7015692, + "y2": 2512483, + "x": 7032625, + "y": 2524125 + }, + { + "type": "lineTo", + "x": 7092950, + "y": 2565400 + }, + { + "type": "cubicBezTo", + "x1": 7104592, + "y1": 2573338, + "x2": 7099544, + "y2": 2569307, + "x": 7102475, + "y": 2571750 + }, + { + "type": "cubicBezTo", + "x1": 7105924, + "y1": 2574625, + "x2": 7108551, + "y2": 2578400, + "x": 7112000, + "y": 2581275 + }, + { + "type": "cubicBezTo", + "x1": 7120206, + "y1": 2588114, + "x2": 7121504, + "y2": 2587618, + "x": 7131050, + "y": 2590800 + }, + { + "type": "cubicBezTo", + "x1": 7133167, + "y1": 2593975, + "x2": 7134702, + "y2": 2597627, + "x": 7137400, + "y": 2600325 + }, + { + "type": "cubicBezTo", + "x1": 7141142, + "y1": 2604067, + "x2": 7146712, + "y2": 2605785, + "x": 7150100, + "y": 2609850 + }, + { + "type": "cubicBezTo", + "x1": 7152243, + "y1": 2612421, + "x2": 7151778, + "y2": 2616382, + "x": 7153275, + "y": 2619375 + }, + { + "type": "cubicBezTo", + "x1": 7154982, + "y1": 2622788, + "x2": 7156927, + "y2": 2626202, + "x": 7159625, + "y": 2628900 + }, + { + "type": "cubicBezTo", + "x1": 7171354, + "y1": 2640629, + "x2": 7171433, + "y2": 2631121, + "x": 7188200, + "y": 2641600 + }, + { + "type": "cubicBezTo", + "x1": 7196667, + "y1": 2646892, + "x2": 7204128, + "y2": 2654318, + "x": 7213600, + "y": 2657475 + }, + { + "type": "lineTo", + "x": 7251700, + "y": 2670175 + }, + { + "type": "lineTo", + "x": 7280275, + "y": 2679700 + }, + { + "type": "cubicBezTo", + "x1": 7283450, + "y1": 2680758, + "x2": 7287015, + "y2": 2681019, + "x": 7289800, + "y": 2682875 + }, + { + "type": "cubicBezTo", + "x1": 7302110, + "y1": 2691081, + "x2": 7295705, + "y2": 2688018, + "x": 7308850, + "y": 2692400 + }, + { + "type": "cubicBezTo", + "x1": 7316258, + "y1": 2691342, + "x2": 7323907, + "y2": 2691375, + "x": 7331075, + "y": 2689225 + }, + { + "type": "cubicBezTo", + "x1": 7334730, + "y1": 2688129, + "x2": 7336945, + "y2": 2683971, + "x": 7340600, + "y": 2682875 + }, + { + "type": "cubicBezTo", + "x1": 7347768, + "y1": 2680725, + "x2": 7355417, + "y2": 2680758, + "x": 7362825, + "y": 2679700 + }, + { + "type": "cubicBezTo", + "x1": 7393517, + "y1": 2680758, + "x2": 7412038, + "y2": 2690283, + "x": 7429500, + "y": 2695575 + }, + { + "type": "cubicBezTo", + "x1": 7446962, + "y1": 2700867, + "x2": 7457546, + "y2": 2708275, + "x": 7467600, + "y": 2711450 + }, + { + "type": "cubicBezTo", + "x1": 7477654, + "y1": 2714625, + "x2": 7480459, + "y2": 2708381, + "x": 7489825, + "y": 2714625 + }, + { + "type": "cubicBezTo", + "x1": 7496069, + "y1": 2723991, + "x2": 7503054, + "y2": 2710921, + "x": 7505700, + "y": 2733675 + }, + { + "type": "cubicBezTo", + "x1": 7508346, + "y1": 2756429, + "x2": 7507817, + "y2": 2824163, + "x": 7505700, + "y": 2851150 + }, + { + "type": "cubicBezTo", + "x1": 7503583, + "y1": 2878138, + "x2": 7498821, + "y2": 2881313, + "x": 7493000, + "y": 2895600 + }, + { + "type": "cubicBezTo", + "x1": 7487179, + "y1": 2909887, + "x2": 7478713, + "y2": 2923117, + "x": 7470775, + "y": 2936875 + }, + { + "type": "cubicBezTo", + "x1": 7462838, + "y1": 2950633, + "x2": 7457017, + "y2": 2963334, + "x": 7445375, + "y": 2978150 + }, + { + "type": "cubicBezTo", + "x1": 7433733, + "y1": 2992966, + "x2": 7411508, + "y2": 3012546, + "x": 7400925, + "y": 3025775 + }, + { + "type": "cubicBezTo", + "x1": 7399867, + "y1": 3030008, + "x2": 7380287, + "y2": 3048000, + "x": 7369175, + "y": 3054350 + }, + { + "type": "cubicBezTo", + "x1": 7358063, + "y1": 3060700, + "x2": 7349067, + "y2": 3064933, + "x": 7334250, + "y": 3063875 + }, + { + "type": "cubicBezTo", + "x1": 7319433, + "y1": 3062817, + "x2": 7297208, + "y2": 3052233, + "x": 7280275, + "y": 3048000 + }, + { + "type": "cubicBezTo", + "x1": 7263342, + "y1": 3043767, + "x2": 7246937, + "y2": 3041121, + "x": 7232650, + "y": 3038475 + }, + { + "type": "cubicBezTo", + "x1": 7218363, + "y1": 3035829, + "x2": 7207779, + "y2": 3033712, + "x": 7194550, + "y": 3032125 + }, + { + "type": "cubicBezTo", + "x1": 7181321, + "y1": 3030538, + "x2": 7164387, + "y2": 3028950, + "x": 7153275, + "y": 3028950 + }, + { + "type": "cubicBezTo", + "x1": 7142163, + "y1": 3028950, + "x2": 7138987, + "y2": 3028421, + "x": 7127875, + "y": 3032125 + }, + { + "type": "cubicBezTo", + "x1": 7116763, + "y1": 3035829, + "x2": 7098242, + "y2": 3044825, + "x": 7086600, + "y": 3051175 + }, + { + "type": "cubicBezTo", + "x1": 7074958, + "y1": 3057525, + "x2": 7068079, + "y2": 3064404, + "x": 7058025, + "y": 3070225 + }, + { + "type": "cubicBezTo", + "x1": 7047971, + "y1": 3076046, + "x2": 7043208, + "y2": 3085042, + "x": 7026275, + "y": 3086100 + }, + { + "type": "cubicBezTo", + "x1": 7011458, + "y1": 3090863, + "x2": 6997171, + "y2": 3106738, + "x": 6988175, + "y": 3111500 + }, + { + "type": "cubicBezTo", + "x1": 6979179, + "y1": 3116262, + "x2": 6977592, + "y2": 3113617, + "x": 6972300, + "y": 3114675 + }, + { + "type": "cubicBezTo", + "x1": 6945003, + "y1": 3132873, + "x2": 6979540, + "y2": 3111055, + "x": 6953250, + "y": 3124200 + }, + { + "type": "cubicBezTo", + "x1": 6949837, + "y1": 3125907, + "x2": 6947212, + "y2": 3129000, + "x": 6943725, + "y": 3130550 + }, + { + "type": "cubicBezTo", + "x1": 6937608, + "y1": 3133268, + "x2": 6930244, + "y2": 3133187, + "x": 6924675, + "y": 3136900 + }, + { + "type": "cubicBezTo", + "x1": 6911522, + "y1": 3145668, + "x2": 6917029, + "y2": 3142942, + "x": 6899275, + "y": 3149600 + }, + { + "type": "cubicBezTo", + "x1": 6890501, + "y1": 3152890, + "x2": 6882371, + "y2": 3154405, + "x": 6873875, + "y": 3159125 + }, + { + "type": "cubicBezTo", + "x1": 6869249, + "y1": 3161695, + "x2": 6865662, + "y2": 3165845, + "x": 6861175, + "y": 3168650 + }, + { + "type": "cubicBezTo", + "x1": 6826309, + "y1": 3190441, + "x2": 6871752, + "y2": 3157542, + "x": 6835775, + "y": 3184525 + }, + { + "type": "cubicBezTo", + "x1": 6830563, + "y1": 3200162, + "x2": 6836332, + "y2": 3189353, + "x": 6823075, + "y": 3200400 + }, + { + "type": "cubicBezTo", + "x1": 6813466, + "y1": 3208407, + "x2": 6808256, + "y2": 3219186, + "x": 6794500, + "y": 3222625 + }, + { + "type": "cubicBezTo", + "x1": 6790615, + "y1": 3223596, + "x2": 6767884, + "y2": 3228589, + "x": 6759575, + "y": 3232150 + }, + { + "type": "cubicBezTo", + "x1": 6755225, + "y1": 3234014, + "x2": 6751365, + "y2": 3237003, + "x": 6746875, + "y": 3238500 + }, + { + "type": "cubicBezTo", + "x1": 6738596, + "y1": 3241260, + "x2": 6729281, + "y2": 3240947, + "x": 6721475, + "y": 3244850 + }, + { + "type": "cubicBezTo", + "x1": 6717242, + "y1": 3246967, + "x2": 6718300, + "y2": 3252788, + "x": 6708775, + "y": 3251200 + }, + { + "type": "cubicBezTo", + "x1": 6699250, + "y1": 3249613, + "x2": 6678083, + "y2": 3234267, + "x": 6664325, + "y": 3235325 + }, + { + "type": "cubicBezTo", + "x1": 6646862, + "y1": 3232679, + "x2": 6612467, + "y2": 3236912, + "x": 6604000, + "y": 3235325 + }, + { + "type": "cubicBezTo", + "x1": 6595533, + "y1": 3233738, + "x2": 6609509, + "y2": 3227808, + "x": 6613525, + "y": 3225800 + }, + { + "type": "cubicBezTo", + "x1": 6618352, + "y1": 3223387, + "x2": 6624108, + "y2": 3223683, + "x": 6629400, + "y": 3222625 + }, + { + "type": "cubicBezTo", + "x1": 6638781, + "y1": 3217934, + "x2": 6647840, + "y2": 3212965, + "x": 6657975, + "y": 3209925 + }, + { + "type": "cubicBezTo", + "x1": 6668033, + "y1": 3206908, + "x2": 6676778, + "y2": 3207239, + "x": 6686550, + "y": 3203575 + }, + { + "type": "cubicBezTo", + "x1": 6690982, + "y1": 3201913, + "x2": 6694900, + "y2": 3199089, + "x": 6699250, + "y": 3197225 + }, + { + "type": "cubicBezTo", + "x1": 6711042, + "y1": 3192171, + "x2": 6707533, + "y2": 3196673, + "x": 6718300, + "y": 3187700 + }, + { + "type": "cubicBezTo", + "x1": 6721749, + "y1": 3184825, + "x2": 6724089, + "y2": 3180666, + "x": 6727825, + "y": 3178175 + }, + { + "type": "cubicBezTo", + "x1": 6730680, + "y1": 3176272, + "x2": 6748198, + "y2": 3172354, + "x": 6750050, + "y": 3171825 + }, + { + "type": "cubicBezTo", + "x1": 6776807, + "y1": 3164180, + "x2": 6741270, + "y2": 3174227, + "x": 6769100, + "y": 3162300 + }, + { + "type": "cubicBezTo", + "x1": 6773111, + "y1": 3160581, + "x2": 6777714, + "y2": 3160657, + "x": 6781800, + "y": 3159125 + }, + { + "type": "cubicBezTo", + "x1": 6794363, + "y1": 3154414, + "x2": 6796159, + "y2": 3151136, + "x": 6807200, + "y": 3143250 + }, + { + "type": "cubicBezTo", + "x1": 6810305, + "y1": 3141032, + "x2": 6813794, + "y2": 3139343, + "x": 6816725, + "y": 3136900 + }, + { + "type": "cubicBezTo", + "x1": 6832580, + "y1": 3123687, + "x2": 6819036, + "y2": 3129780, + "x": 6835775, + "y": 3124200 + }, + { + "type": "cubicBezTo", + "x1": 6840008, + "y1": 3121025, + "x2": 6843881, + "y2": 3117300, + "x": 6848475, + "y": 3114675 + }, + { + "type": "cubicBezTo", + "x1": 6851381, + "y1": 3113015, + "x2": 6855215, + "y2": 3113356, + "x": 6858000, + "y": 3111500 + }, + { + "type": "cubicBezTo", + "x1": 6861736, + "y1": 3109009, + "x2": 6864076, + "y2": 3104850, + "x": 6867525, + "y": 3101975 + }, + { + "type": "cubicBezTo", + "x1": 6870456, + "y1": 3099532, + "x2": 6873875, + "y2": 3097742, + "x": 6877050, + "y": 3095625 + }, + { + "type": "cubicBezTo", + "x1": 6888692, + "y1": 3078163, + "x2": 6877050, + "y2": 3092979, + "x": 6892925, + "y": 3079750 + }, + { + "type": "cubicBezTo", + "x1": 6896374, + "y1": 3076875, + "x2": 6898906, + "y2": 3072982, + "x": 6902450, + "y": 3070225 + }, + { + "type": "cubicBezTo", + "x1": 6908474, + "y1": 3065540, + "x2": 6915150, + "y2": 3061758, + "x": 6921500, + "y": 3057525 + }, + { + "type": "cubicBezTo", + "x1": 6924675, + "y1": 3055408, + "x2": 6928327, + "y2": 3053873, + "x": 6931025, + "y": 3051175 + }, + { + "type": "cubicBezTo", + "x1": 6955790, + "y1": 3026410, + "x2": 6923997, + "y2": 3056195, + "x": 6953250, + "y": 3035300 + }, + { + "type": "cubicBezTo", + "x1": 6956904, + "y1": 3032690, + "x2": 6959121, + "y2": 3028385, + "x": 6962775, + "y": 3025775 + }, + { + "type": "cubicBezTo", + "x1": 6966626, + "y1": 3023024, + "x2": 6971366, + "y2": 3021773, + "x": 6975475, + "y": 3019425 + }, + { + "type": "cubicBezTo", + "x1": 6978788, + "y1": 3017532, + "x2": 6981825, + "y2": 3015192, + "x": 6985000, + "y": 3013075 + }, + { + "type": "cubicBezTo", + "x1": 6987117, + "y1": 3009900, + "x2": 6988419, + "y2": 3005993, + "x": 6991350, + "y": 3003550 + }, + { + "type": "cubicBezTo", + "x1": 6994986, + "y1": 3000520, + "x2": 7001020, + "y2": 3000836, + "x": 7004050, + "y": 2997200 + }, + { + "type": "cubicBezTo", + "x1": 7006844, + "y1": 2993848, + "x2": 7006167, + "y2": 2988733, + "x": 7007225, + "y": 2984500 + }, + { + "type": "cubicBezTo", + "x1": 7006167, + "y1": 2976033, + "x2": 7006295, + "y2": 2967332, + "x": 7004050, + "y": 2959100 + }, + { + "type": "cubicBezTo", + "x1": 7003046, + "y1": 2955419, + "x2": 6999203, + "y2": 2953082, + "x": 6997700, + "y": 2949575 + }, + { + "type": "cubicBezTo", + "x1": 6995981, + "y1": 2945564, + "x2": 6995724, + "y2": 2941071, + "x": 6994525, + "y": 2936875 + }, + { + "type": "cubicBezTo", + "x1": 6993606, + "y1": 2933657, + "x2": 6992408, + "y2": 2930525, + "x": 6991350, + "y": 2927350 + }, + { + "type": "cubicBezTo", + "x1": 7021672, + "y1": 2907135, + "x2": 6964222, + "y2": 2943170, + "x": 7045325, + "y": 2917825 + }, + { + "type": "cubicBezTo", + "x1": 7049843, + "y1": 2916413, + "x2": 7048645, + "y2": 2908761, + "x": 7051675, + "y": 2905125 + }, + { + "type": "cubicBezTo", + "x1": 7054118, + "y1": 2902194, + "x2": 7058025, + "y2": 2900892, + "x": 7061200, + "y": 2898775 + }, + { + "type": "lineTo", + "x": 7067550, + "y": 2879725 + }, + { + "type": "lineTo", + "x": 7070725, + "y": 2870200 + }, + { + "type": "cubicBezTo", + "x1": 7069667, + "y1": 2859617, + "x2": 7069167, + "y2": 2848962, + "x": 7067550, + "y": 2838450 + }, + { + "type": "cubicBezTo", + "x1": 7066737, + "y1": 2833166, + "x2": 7060414, + "y2": 2819570, + "x": 7058025, + "y": 2816225 + }, + { + "type": "cubicBezTo", + "x1": 7055415, + "y1": 2812571, + "x2": 7051375, + "y2": 2810149, + "x": 7048500, + "y": 2806700 + }, + { + "type": "cubicBezTo", + "x1": 7033416, + "y1": 2788599, + "x2": 7049389, + "y2": 2805875, + "x": 7038975, + "y": 2787650 + }, + { + "type": "cubicBezTo", + "x1": 7036350, + "y1": 2783056, + "x2": 7032625, + "y2": 2779183, + "x": 7029450, + "y": 2774950 + }, + { + "type": "cubicBezTo", + "x1": 7022576, + "y1": 2747454, + "x2": 7032945, + "y2": 2775270, + "x": 7013575, + "y": 2755900 + }, + { + "type": "lineTo", + "x": 6994525, + "y": 2727325 + }, + { + "type": "cubicBezTo", + "x1": 6992408, + "y1": 2724150, + "x2": 6991350, + "y2": 2719917, + "x": 6988175, + "y": 2717800 + }, + { + "type": "lineTo", + "x": 6978650, + "y": 2711450 + }, + { + "type": "cubicBezTo", + "x1": 6977592, + "y1": 2707217, + "x2": 6978269, + "y2": 2702102, + "x": 6975475, + "y": 2698750 + }, + { + "type": "cubicBezTo", + "x1": 6972445, + "y1": 2695114, + "x2": 6966626, + "y2": 2695151, + "x": 6962775, + "y": 2692400 + }, + { + "type": "cubicBezTo", + "x1": 6939673, + "y1": 2675899, + "x2": 6972040, + "y2": 2685224, + "x": 6927850, + "y": 2679700 + }, + { + "type": "cubicBezTo", + "x1": 6923617, + "y1": 2677583, + "x2": 6918786, + "y2": 2676380, + "x": 6915150, + "y": 2673350 + }, + { + "type": "cubicBezTo", + "x1": 6909469, + "y1": 2668616, + "x2": 6907792, + "y2": 2660801, + "x": 6905625, + "y": 2654300 + }, + { + "type": "cubicBezTo", + "x1": 6910004, + "y1": 2575485, + "x2": 6912004, + "y2": 2566919, + "x": 6905625, + "y": 2466975 + }, + { + "type": "cubicBezTo", + "x1": 6904450, + "y1": 2448559, + "x2": 6901206, + "y2": 2449213, + "x": 6889750, + "y": 2441575 + }, + { + "type": "cubicBezTo", + "x1": 6887633, + "y1": 2435225, + "x2": 6884139, + "y2": 2429178, + "x": 6883400, + "y": 2422525 + }, + { + "type": "cubicBezTo", + "x1": 6879804, + "y1": 2390157, + "x2": 6885541, + "y2": 2401924, + "x": 6873875, + "y": 2384425 + }, + { + "type": "cubicBezTo", + "x1": 6867267, + "y1": 2357994, + "x2": 6875313, + "y2": 2384126, + "x": 6864350, + "y": 2362200 + }, + { + "type": "cubicBezTo", + "x1": 6862853, + "y1": 2359207, + "x2": 6862672, + "y2": 2355668, + "x": 6861175, + "y": 2352675 + }, + { + "type": "cubicBezTo", + "x1": 6853651, + "y1": 2337627, + "x2": 6844771, + "y2": 2324100, + "x": 6845300, + "y": 2320925 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "285", + "path_data": [ + { + "path_width": 939800, + "path_height": 1123950, + "commands": [ + { + "type": "moveTo", + "x": 4873625, + "y": 3279775 + }, + { + "type": "lineTo", + "x": 4743450, + "y": 3187700 + }, + { + "type": "lineTo", + "x": 4638675, + "y": 3130550 + }, + { + "type": "lineTo", + "x": 4505325, + "y": 2987675 + }, + { + "type": "lineTo", + "x": 4486275, + "y": 2946400 + }, + { + "type": "lineTo", + "x": 4445000, + "y": 2968625 + }, + { + "type": "lineTo", + "x": 4391025, + "y": 2981325 + }, + { + "type": "lineTo", + "x": 4330700, + "y": 2965450 + }, + { + "type": "lineTo", + "x": 4308475, + "y": 2936875 + }, + { + "type": "lineTo", + "x": 4330700, + "y": 2870200 + }, + { + "type": "lineTo", + "x": 4365625, + "y": 2813050 + }, + { + "type": "lineTo", + "x": 4416425, + "y": 2765425 + }, + { + "type": "lineTo", + "x": 4479925, + "y": 2711450 + }, + { + "type": "lineTo", + "x": 4527550, + "y": 2698750 + }, + { + "type": "lineTo", + "x": 4537075, + "y": 2578100 + }, + { + "type": "lineTo", + "x": 4578350, + "y": 2451100 + }, + { + "type": "lineTo", + "x": 4632325, + "y": 2371725 + }, + { + "type": "lineTo", + "x": 4660900, + "y": 2343150 + }, + { + "type": "lineTo", + "x": 4679950, + "y": 2276475 + }, + { + "type": "lineTo", + "x": 4749800, + "y": 2168525 + }, + { + "type": "lineTo", + "x": 4635500, + "y": 2251075 + }, + { + "type": "lineTo", + "x": 4581525, + "y": 2311400 + }, + { + "type": "lineTo", + "x": 4521200, + "y": 2406650 + }, + { + "type": "lineTo", + "x": 4470400, + "y": 2479675 + }, + { + "type": "lineTo", + "x": 4438650, + "y": 2517775 + }, + { + "type": "lineTo", + "x": 4387850, + "y": 2555875 + }, + { + "type": "lineTo", + "x": 4311650, + "y": 2619375 + }, + { + "type": "lineTo", + "x": 4222750, + "y": 2692400 + }, + { + "type": "lineTo", + "x": 4143375, + "y": 2740025 + }, + { + "type": "lineTo", + "x": 4114800, + "y": 2765425 + }, + { + "type": "lineTo", + "x": 4064000, + "y": 2790825 + }, + { + "type": "lineTo", + "x": 3990975, + "y": 2762250 + }, + { + "type": "lineTo", + "x": 3949700, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 3933825, + "y": 2924175 + }, + { + "type": "lineTo", + "x": 3962400, + "y": 3006725 + }, + { + "type": "lineTo", + "x": 4025900, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 4092575, + "y": 3108325 + }, + { + "type": "lineTo", + "x": 4152900, + "y": 3143250 + }, + { + "type": "lineTo", + "x": 4219575, + "y": 3124200 + }, + { + "type": "lineTo", + "x": 4305300, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 4422775, + "y": 3114675 + }, + { + "type": "lineTo", + "x": 4540250, + "y": 3184525 + }, + { + "type": "lineTo", + "x": 4587875, + "y": 3222625 + }, + { + "type": "lineTo", + "x": 4699000, + "y": 3270250 + }, + { + "type": "lineTo", + "x": 4781550, + "y": 3292475 + }, + { + "type": "lineTo", + "x": 4873625, + "y": 3279775 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "286", + "path_data": [ + { + "path_width": 781050, + "path_height": 847725, + "commands": [ + { + "type": "moveTo", + "x": 6918325, + "y": 5387976 + }, + { + "type": "lineTo", + "x": 6962775, + "y": 5311776 + }, + { + "type": "lineTo", + "x": 7026275, + "y": 5238751 + }, + { + "type": "lineTo", + "x": 7089775, + "y": 5191126 + }, + { + "type": "lineTo", + "x": 7134225, + "y": 5156201 + }, + { + "type": "lineTo", + "x": 7162800, + "y": 5127626 + }, + { + "type": "lineTo", + "x": 7232650, + "y": 5092701 + }, + { + "type": "lineTo", + "x": 7258050, + "y": 5092701 + }, + { + "type": "lineTo", + "x": 7302500, + "y": 5045076 + }, + { + "type": "lineTo", + "x": 7350125, + "y": 5016501 + }, + { + "type": "lineTo", + "x": 7413625, + "y": 4987926 + }, + { + "type": "lineTo", + "x": 7477125, + "y": 5000626 + }, + { + "type": "lineTo", + "x": 7518400, + "y": 4965701 + }, + { + "type": "lineTo", + "x": 7524750, + "y": 4908551 + }, + { + "type": "lineTo", + "x": 7493000, + "y": 4841876 + }, + { + "type": "lineTo", + "x": 7432675, + "y": 4794251 + }, + { + "type": "lineTo", + "x": 7372350, + "y": 4762501 + }, + { + "type": "lineTo", + "x": 7327900, + "y": 4746626 + }, + { + "type": "lineTo", + "x": 7286625, + "y": 4733926 + }, + { + "type": "lineTo", + "x": 7219950, + "y": 4740276 + }, + { + "type": "lineTo", + "x": 7127875, + "y": 4749801 + }, + { + "type": "lineTo", + "x": 7013575, + "y": 4705351 + }, + { + "type": "lineTo", + "x": 6946900, + "y": 4654551 + }, + { + "type": "lineTo", + "x": 6873875, + "y": 4594226 + }, + { + "type": "lineTo", + "x": 6788150, + "y": 4565651 + }, + { + "type": "lineTo", + "x": 6743700, + "y": 4540251 + }, + { + "type": "lineTo", + "x": 6753225, + "y": 4648201 + }, + { + "type": "lineTo", + "x": 6800850, + "y": 4778376 + }, + { + "type": "lineTo", + "x": 6829425, + "y": 4876801 + }, + { + "type": "lineTo", + "x": 6832600, + "y": 4876801 + }, + { + "type": "lineTo", + "x": 6899275, + "y": 4835526 + }, + { + "type": "lineTo", + "x": 6959600, + "y": 4810126 + }, + { + "type": "lineTo", + "x": 7010400, + "y": 4800601 + }, + { + "type": "lineTo", + "x": 7080250, + "y": 4822826 + }, + { + "type": "lineTo", + "x": 7124700, + "y": 4841876 + }, + { + "type": "lineTo", + "x": 7156450, + "y": 4908551 + }, + { + "type": "lineTo", + "x": 7150100, + "y": 4962526 + }, + { + "type": "lineTo", + "x": 7121525, + "y": 4997451 + }, + { + "type": "lineTo", + "x": 7080250, + "y": 5048251 + }, + { + "type": "lineTo", + "x": 7045325, + "y": 5076826 + }, + { + "type": "lineTo", + "x": 7000875, + "y": 5121276 + }, + { + "type": "lineTo", + "x": 6931025, + "y": 5124451 + }, + { + "type": "lineTo", + "x": 6864350, + "y": 5095876 + }, + { + "type": "lineTo", + "x": 6835775, + "y": 5146676 + }, + { + "type": "lineTo", + "x": 6807200, + "y": 5210176 + }, + { + "type": "lineTo", + "x": 6845300, + "y": 5270501 + }, + { + "type": "lineTo", + "x": 6918325, + "y": 5387976 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "287", + "path_data": [ + { + "path_width": 869950, + "path_height": 920750, + "commands": [ + { + "type": "moveTo", + "x": 4860925, + "y": 4498975 + }, + { + "type": "lineTo", + "x": 4794250, + "y": 4530725 + }, + { + "type": "lineTo", + "x": 4711700, + "y": 4572000 + }, + { + "type": "lineTo", + "x": 4651375, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 4591050, + "y": 4648200 + }, + { + "type": "lineTo", + "x": 4549775, + "y": 4679950 + }, + { + "type": "lineTo", + "x": 4508500, + "y": 4695825 + }, + { + "type": "lineTo", + "x": 4464050, + "y": 4705350 + }, + { + "type": "lineTo", + "x": 4400550, + "y": 4752975 + }, + { + "type": "lineTo", + "x": 4349750, + "y": 4781550 + }, + { + "type": "lineTo", + "x": 4305300, + "y": 4800600 + }, + { + "type": "lineTo", + "x": 4241800, + "y": 4800600 + }, + { + "type": "lineTo", + "x": 4162425, + "y": 4806950 + }, + { + "type": "lineTo", + "x": 4092575, + "y": 4826000 + }, + { + "type": "lineTo", + "x": 4041775, + "y": 4860925 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 4883150 + }, + { + "type": "lineTo", + "x": 3997325, + "y": 4924425 + }, + { + "type": "lineTo", + "x": 3990975, + "y": 4975225 + }, + { + "type": "lineTo", + "x": 4000500, + "y": 5022850 + }, + { + "type": "lineTo", + "x": 4025900, + "y": 5051425 + }, + { + "type": "lineTo", + "x": 4083050, + "y": 5060950 + }, + { + "type": "lineTo", + "x": 4140200, + "y": 5045075 + }, + { + "type": "lineTo", + "x": 4213225, + "y": 5054600 + }, + { + "type": "lineTo", + "x": 4279900, + "y": 5095875 + }, + { + "type": "lineTo", + "x": 4349750, + "y": 5149850 + }, + { + "type": "lineTo", + "x": 4457700, + "y": 5191125 + }, + { + "type": "lineTo", + "x": 4518025, + "y": 5245100 + }, + { + "type": "lineTo", + "x": 4600575, + "y": 5324475 + }, + { + "type": "lineTo", + "x": 4645025, + "y": 5397500 + }, + { + "type": "lineTo", + "x": 4676775, + "y": 5419725 + }, + { + "type": "lineTo", + "x": 4711700, + "y": 5356225 + }, + { + "type": "lineTo", + "x": 4733925, + "y": 5283200 + }, + { + "type": "lineTo", + "x": 4718050, + "y": 5251450 + }, + { + "type": "lineTo", + "x": 4679950, + "y": 5168900 + }, + { + "type": "lineTo", + "x": 4679950, + "y": 5102225 + }, + { + "type": "lineTo", + "x": 4638675, + "y": 5118100 + }, + { + "type": "lineTo", + "x": 4572000, + "y": 5114925 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 5089525 + }, + { + "type": "lineTo", + "x": 4460875, + "y": 5022850 + }, + { + "type": "lineTo", + "x": 4448175, + "y": 4968875 + }, + { + "type": "lineTo", + "x": 4467225, + "y": 4905375 + }, + { + "type": "lineTo", + "x": 4492625, + "y": 4864100 + }, + { + "type": "lineTo", + "x": 4537075, + "y": 4829175 + }, + { + "type": "lineTo", + "x": 4603750, + "y": 4819650 + }, + { + "type": "lineTo", + "x": 4651375, + "y": 4819650 + }, + { + "type": "lineTo", + "x": 4730750, + "y": 4857750 + }, + { + "type": "lineTo", + "x": 4759325, + "y": 4791075 + }, + { + "type": "lineTo", + "x": 4791075, + "y": 4679950 + }, + { + "type": "lineTo", + "x": 4832350, + "y": 4600575 + }, + { + "type": "lineTo", + "x": 4860925, + "y": 4498975 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/auricular_surface_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/auricular_surface_colored_regions.json new file mode 100644 index 00000000..5d163248 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/auricular_surface_colored_regions.json @@ -0,0 +1,52 @@ +{ + "slide_number": 8, + "images": [ + { + "index": 0, + "name": "pelvis_med_blk.psd", + "width": 3510118, + "height": 3828411, + "colored_regions": [ + { + "anatomical_name": "Auricular Surface", + "color": "008000", + "stroke": false, + "fill": true, + "path_data": [ + { + "path_width": 1604821, + "path_height": 1175251, + "commands": [ + {"type": "moveTo", "x": 1541639, "y": 657129}, + {"type": "lineTo", "x": 1421593, "y": 492847}, + {"type": "lineTo", "x": 1219411, "y": 353839}, + {"type": "lineTo", "x": 1143593, "y": 404387}, + {"type": "lineTo", "x": 827683, "y": 385431}, + {"type": "lineTo", "x": 751865, "y": 189556}, + {"type": "lineTo", "x": 562319, "y": 0}, + {"type": "lineTo", "x": 379092, "y": 0}, + {"type": "lineTo", "x": 170591, "y": 94778}, + {"type": "lineTo", "x": 37909, "y": 334883}, + {"type": "lineTo", "x": 0, "y": 600262}, + {"type": "lineTo", "x": 6319, "y": 840367}, + {"type": "lineTo", "x": 164273, "y": 992013}, + {"type": "lineTo", "x": 385410, "y": 1080472}, + {"type": "lineTo", "x": 625501, "y": 1143658}, + {"type": "lineTo", "x": 878229, "y": 1149976}, + {"type": "lineTo", "x": 1061456, "y": 1175251}, + {"type": "lineTo", "x": 1282593, "y": 1143658}, + {"type": "lineTo", "x": 1396320, "y": 1048880}, + {"type": "lineTo", "x": 1446866, "y": 922509}, + {"type": "lineTo", "x": 1535320, "y": 979376}, + {"type": "lineTo", "x": 1598502, "y": 871960}, + {"type": "lineTo", "x": 1604821, "y": 758226}, + {"type": "lineTo", "x": 1541639, "y": 657129}, + {"type": "close"} + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/axis_articular_surfaces.json b/boneset-api/data/annotations/ColoredRegions/axis_articular_surfaces.json new file mode 100644 index 00000000..ab45fec1 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_articular_surfaces.json @@ -0,0 +1,796 @@ +{ + "slide_number": 20, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "680", + "path_data": [ + { + "path_width": 695325, + "path_height": 727075, + "commands": [ + { + "type": "moveTo", + "x": 5168901, + "y": 2997201 + }, + { + "type": "lineTo", + "x": 5083176, + "y": 2978151 + }, + { + "type": "lineTo", + "x": 5013326, + "y": 3009901 + }, + { + "type": "lineTo", + "x": 4908551, + "y": 3101976 + }, + { + "type": "lineTo", + "x": 4835526, + "y": 3209926 + }, + { + "type": "lineTo", + "x": 4743451, + "y": 3333751 + }, + { + "type": "lineTo", + "x": 4705351, + "y": 3438526 + }, + { + "type": "lineTo", + "x": 4679951, + "y": 3511551 + }, + { + "type": "lineTo", + "x": 4670426, + "y": 3565526 + }, + { + "type": "lineTo", + "x": 4689476, + "y": 3629026 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 3660776 + }, + { + "type": "lineTo", + "x": 4857751, + "y": 3692526 + }, + { + "type": "lineTo", + "x": 4940301, + "y": 3705226 + }, + { + "type": "lineTo", + "x": 5051426, + "y": 3686176 + }, + { + "type": "lineTo", + "x": 5159376, + "y": 3663951 + }, + { + "type": "lineTo", + "x": 5197476, + "y": 3648076 + }, + { + "type": "lineTo", + "x": 5273676, + "y": 3578226 + }, + { + "type": "lineTo", + "x": 5340351, + "y": 3467101 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 3355976 + }, + { + "type": "lineTo", + "x": 5365751, + "y": 3270251 + }, + { + "type": "lineTo", + "x": 5353051, + "y": 3175001 + }, + { + "type": "lineTo", + "x": 5311776, + "y": 3092451 + }, + { + "type": "lineTo", + "x": 5267326, + "y": 3048001 + }, + { + "type": "lineTo", + "x": 5168901, + "y": 2997201 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "681", + "path_data": [ + { + "path_width": 688975, + "path_height": 771525, + "commands": [ + { + "type": "moveTo", + "x": 4086226, + "y": 3286126 + }, + { + "type": "lineTo", + "x": 4013201, + "y": 3187701 + }, + { + "type": "lineTo", + "x": 3965576, + "y": 3070226 + }, + { + "type": "lineTo", + "x": 3937001, + "y": 2997201 + }, + { + "type": "lineTo", + "x": 3883026, + "y": 2908301 + }, + { + "type": "lineTo", + "x": 3810001, + "y": 2895601 + }, + { + "type": "lineTo", + "x": 3714751, + "y": 2908301 + }, + { + "type": "lineTo", + "x": 3635376, + "y": 2936876 + }, + { + "type": "lineTo", + "x": 3562351, + "y": 2968626 + }, + { + "type": "lineTo", + "x": 3498851, + "y": 3044826 + }, + { + "type": "lineTo", + "x": 3489326, + "y": 3124201 + }, + { + "type": "lineTo", + "x": 3473451, + "y": 3216276 + }, + { + "type": "lineTo", + "x": 3457576, + "y": 3314701 + }, + { + "type": "lineTo", + "x": 3473451, + "y": 3397251 + }, + { + "type": "lineTo", + "x": 3492501, + "y": 3470276 + }, + { + "type": "lineTo", + "x": 3549651, + "y": 3559176 + }, + { + "type": "lineTo", + "x": 3622676, + "y": 3609976 + }, + { + "type": "lineTo", + "x": 3702051, + "y": 3648076 + }, + { + "type": "lineTo", + "x": 3832226, + "y": 3667126 + }, + { + "type": "lineTo", + "x": 3883026, + "y": 3651251 + }, + { + "type": "lineTo", + "x": 3965576, + "y": 3648076 + }, + { + "type": "lineTo", + "x": 4064001, + "y": 3629026 + }, + { + "type": "lineTo", + "x": 4127501, + "y": 3571876 + }, + { + "type": "lineTo", + "x": 4146551, + "y": 3492501 + }, + { + "type": "lineTo", + "x": 4130676, + "y": 3394076 + }, + { + "type": "lineTo", + "x": 4086226, + "y": 3286126 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "682", + "path_data": [ + { + "path_width": 650875, + "path_height": 434975, + "commands": [ + { + "type": "moveTo", + "x": 5095876, + "y": 5156201 + }, + { + "type": "lineTo", + "x": 5210176, + "y": 5153026 + }, + { + "type": "lineTo", + "x": 5276851, + "y": 5111751 + }, + { + "type": "lineTo", + "x": 5359401, + "y": 5080001 + }, + { + "type": "lineTo", + "x": 5397501, + "y": 5051426 + }, + { + "type": "lineTo", + "x": 5422901, + "y": 5000626 + }, + { + "type": "lineTo", + "x": 5403851, + "y": 4914901 + }, + { + "type": "lineTo", + "x": 5372101, + "y": 4848226 + }, + { + "type": "lineTo", + "x": 5349876, + "y": 4810126 + }, + { + "type": "lineTo", + "x": 5292726, + "y": 4775201 + }, + { + "type": "lineTo", + "x": 5222876, + "y": 4730751 + }, + { + "type": "lineTo", + "x": 5175251, + "y": 4724401 + }, + { + "type": "lineTo", + "x": 5111751, + "y": 4737101 + }, + { + "type": "lineTo", + "x": 5067301, + "y": 4727576 + }, + { + "type": "lineTo", + "x": 5026026, + "y": 4737101 + }, + { + "type": "lineTo", + "x": 4968876, + "y": 4746626 + }, + { + "type": "lineTo", + "x": 4921251, + "y": 4775201 + }, + { + "type": "lineTo", + "x": 4860926, + "y": 4810126 + }, + { + "type": "lineTo", + "x": 4803776, + "y": 4857751 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 4933951 + }, + { + "type": "lineTo", + "x": 4791076, + "y": 5010151 + }, + { + "type": "lineTo", + "x": 4835526, + "y": 5095876 + }, + { + "type": "lineTo", + "x": 4889501, + "y": 5133976 + }, + { + "type": "lineTo", + "x": 4946651, + "y": 5156201 + }, + { + "type": "lineTo", + "x": 5019676, + "y": 5159376 + }, + { + "type": "lineTo", + "x": 5095876, + "y": 5156201 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "683", + "path_data": [ + { + "path_width": 701675, + "path_height": 584200, + "commands": [ + { + "type": "moveTo", + "x": 3965576, + "y": 5118100 + }, + { + "type": "lineTo", + "x": 3971926, + "y": 4991100 + }, + { + "type": "lineTo", + "x": 3971926, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 3978276, + "y": 4838700 + }, + { + "type": "lineTo", + "x": 3946526, + "y": 4765675 + }, + { + "type": "lineTo", + "x": 3895726, + "y": 4733925 + }, + { + "type": "lineTo", + "x": 3800476, + "y": 4683125 + }, + { + "type": "lineTo", + "x": 3635376, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 3505201, + "y": 4784725 + }, + { + "type": "lineTo", + "x": 3422651, + "y": 4835525 + }, + { + "type": "lineTo", + "x": 3352801, + "y": 4848225 + }, + { + "type": "lineTo", + "x": 3298826, + "y": 4902200 + }, + { + "type": "lineTo", + "x": 3279776, + "y": 4956175 + }, + { + "type": "cubicBezTo", + "x1": 3278718, + "y1": 4992158, + "x2": 3277659, + "y2": 5028142, + "x": 3276601, + "y": 5064125 + }, + { + "type": "lineTo", + "x": 3308351, + "y": 5178425 + }, + { + "type": "lineTo", + "x": 3352801, + "y": 5219700 + }, + { + "type": "lineTo", + "x": 3419476, + "y": 5264150 + }, + { + "type": "lineTo", + "x": 3508376, + "y": 5267325 + }, + { + "type": "lineTo", + "x": 3648076, + "y": 5257800 + }, + { + "type": "lineTo", + "x": 3800476, + "y": 5203825 + }, + { + "type": "lineTo", + "x": 3965576, + "y": 5118100 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "684", + "path_data": [ + { + "path_width": 352425, + "path_height": 320675, + "commands": [ + { + "type": "moveTo", + "x": 7597776, + "y": 4273551 + }, + { + "type": "lineTo", + "x": 7594601, + "y": 4222751 + }, + { + "type": "lineTo", + "x": 7575551, + "y": 4191001 + }, + { + "type": "lineTo", + "x": 7537451, + "y": 4191001 + }, + { + "type": "lineTo", + "x": 7473951, + "y": 4241801 + }, + { + "type": "lineTo", + "x": 7381876, + "y": 4324351 + }, + { + "type": "lineTo", + "x": 7321551, + "y": 4371976 + }, + { + "type": "lineTo", + "x": 7280276, + "y": 4419601 + }, + { + "type": "lineTo", + "x": 7248526, + "y": 4451351 + }, + { + "type": "lineTo", + "x": 7245351, + "y": 4483101 + }, + { + "type": "lineTo", + "x": 7264401, + "y": 4511676 + }, + { + "type": "lineTo", + "x": 7337426, + "y": 4479926 + }, + { + "type": "lineTo", + "x": 7419976, + "y": 4454526 + }, + { + "type": "lineTo", + "x": 7448551, + "y": 4445001 + }, + { + "type": "lineTo", + "x": 7515226, + "y": 4387851 + }, + { + "type": "lineTo", + "x": 7566026, + "y": 4343401 + }, + { + "type": "lineTo", + "x": 7597776, + "y": 4273551 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "685", + "path_data": [ + { + "path_width": 915390, + "path_height": 307975, + "commands": [ + { + "type": "moveTo", + "x": 8509000, + "y": 3746501 + }, + { + "type": "cubicBezTo", + "x1": 8506883, + "y1": 3758143, + "x2": 8530167, + "y2": 3798359, + "x": 8528050, + "y": 3810001 + }, + { + "type": "lineTo", + "x": 8499475, + "y": 3819526 + }, + { + "type": "lineTo", + "x": 8362950, + "y": 3819526 + }, + { + "type": "lineTo", + "x": 8118475, + "y": 3787776 + }, + { + "type": "lineTo", + "x": 7924800, + "y": 3746501 + }, + { + "type": "lineTo", + "x": 7759700, + "y": 3708401 + }, + { + "type": "lineTo", + "x": 7664450, + "y": 3660776 + }, + { + "type": "lineTo", + "x": 7642225, + "y": 3632201 + }, + { + "type": "cubicBezTo", + "x1": 7649633, + "y1": 3623734, + "x2": 7606242, + "y2": 3631143, + "x": 7613650, + "y": 3622676 + }, + { + "type": "lineTo", + "x": 7727950, + "y": 3571876 + }, + { + "type": "lineTo", + "x": 7867650, + "y": 3536951 + }, + { + "type": "cubicBezTo", + "x1": 7900458, + "y1": 3536951, + "x2": 7953375, + "y2": 3531130, + "x": 7988300, + "y": 3527426 + }, + { + "type": "cubicBezTo", + "x1": 8023225, + "y1": 3523722, + "x2": 8023225, + "y2": 3522134, + "x": 8077200, + "y": 3514726 + }, + { + "type": "lineTo", + "x": 8166100, + "y": 3511551 + }, + { + "type": "lineTo", + "x": 8267700, + "y": 3562351 + }, + { + "type": "lineTo", + "x": 8353425, + "y": 3606801 + }, + { + "type": "lineTo", + "x": 8413750, + "y": 3657601 + }, + { + "type": "lineTo", + "x": 8509000, + "y": 3746501 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/axis_body.json b/boneset-api/data/annotations/ColoredRegions/axis_body.json new file mode 100644 index 00000000..bfba5588 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_body.json @@ -0,0 +1,645 @@ +{ + "slide_number": 14, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "512", + "path_data": [ + { + "path_width": 812800, + "path_height": 1038225, + "commands": [ + { + "type": "moveTo", + "x": 4254500, + "y": 2482851 + }, + { + "type": "lineTo", + "x": 4194175, + "y": 2476501 + }, + { + "type": "lineTo", + "x": 4143375, + "y": 2486026 + }, + { + "type": "lineTo", + "x": 4089400, + "y": 2511426 + }, + { + "type": "lineTo", + "x": 4064000, + "y": 2530476 + }, + { + "type": "lineTo", + "x": 4038600, + "y": 2562226 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 2616201 + }, + { + "type": "lineTo", + "x": 4003675, + "y": 2657476 + }, + { + "type": "lineTo", + "x": 4003675, + "y": 2657476 + }, + { + "type": "lineTo", + "x": 3997325, + "y": 2708276 + }, + { + "type": "lineTo", + "x": 3997325, + "y": 2733676 + }, + { + "type": "lineTo", + "x": 3978275, + "y": 2794001 + }, + { + "type": "lineTo", + "x": 3933825, + "y": 2863851 + }, + { + "type": "lineTo", + "x": 3879850, + "y": 2987676 + }, + { + "type": "lineTo", + "x": 3854450, + "y": 3133726 + }, + { + "type": "lineTo", + "x": 3873500, + "y": 3216276 + }, + { + "type": "lineTo", + "x": 3879850, + "y": 3273426 + }, + { + "type": "lineTo", + "x": 3908425, + "y": 3349626 + }, + { + "type": "lineTo", + "x": 3952875, + "y": 3409951 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 3438526 + }, + { + "type": "lineTo", + "x": 4064000, + "y": 3438526 + }, + { + "type": "lineTo", + "x": 4105275, + "y": 3429001 + }, + { + "type": "lineTo", + "x": 4121150, + "y": 3406776 + }, + { + "type": "lineTo", + "x": 4168775, + "y": 3406776 + }, + { + "type": "lineTo", + "x": 4206875, + "y": 3441701 + }, + { + "type": "lineTo", + "x": 4251325, + "y": 3460751 + }, + { + "type": "lineTo", + "x": 4311650, + "y": 3454401 + }, + { + "type": "lineTo", + "x": 4352925, + "y": 3476626 + }, + { + "type": "lineTo", + "x": 4432300, + "y": 3514726 + }, + { + "type": "lineTo", + "x": 4483100, + "y": 3495676 + }, + { + "type": "lineTo", + "x": 4543425, + "y": 3476626 + }, + { + "type": "lineTo", + "x": 4594225, + "y": 3451226 + }, + { + "type": "lineTo", + "x": 4619625, + "y": 3435351 + }, + { + "type": "lineTo", + "x": 4657725, + "y": 3394076 + }, + { + "type": "lineTo", + "x": 4667250, + "y": 3375026 + }, + { + "type": "lineTo", + "x": 4629150, + "y": 3314701 + }, + { + "type": "lineTo", + "x": 4600575, + "y": 3267076 + }, + { + "type": "lineTo", + "x": 4565650, + "y": 3108326 + }, + { + "type": "lineTo", + "x": 4559300, + "y": 3003551 + }, + { + "type": "lineTo", + "x": 4530725, + "y": 2908301 + }, + { + "type": "lineTo", + "x": 4498975, + "y": 2809876 + }, + { + "type": "lineTo", + "x": 4460875, + "y": 2765426 + }, + { + "type": "lineTo", + "x": 4432300, + "y": 2701926 + }, + { + "type": "lineTo", + "x": 4429125, + "y": 2616201 + }, + { + "type": "lineTo", + "x": 4410075, + "y": 2555876 + }, + { + "type": "lineTo", + "x": 4362450, + "y": 2517776 + }, + { + "type": "lineTo", + "x": 4254500, + "y": 2482851 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "514", + "path_data": [ + { + "path_width": 590550, + "path_height": 835025, + "commands": [ + { + "type": "moveTo", + "x": 7769225, + "y": 3482976 + }, + { + "type": "lineTo", + "x": 7896225, + "y": 3476626 + }, + { + "type": "lineTo", + "x": 7997825, + "y": 3460751 + }, + { + "type": "lineTo", + "x": 8026400, + "y": 3460751 + }, + { + "type": "lineTo", + "x": 8070850, + "y": 3448051 + }, + { + "type": "lineTo", + "x": 8131175, + "y": 3460751 + }, + { + "type": "lineTo", + "x": 8223250, + "y": 3508376 + }, + { + "type": "lineTo", + "x": 8245475, + "y": 3527426 + }, + { + "type": "lineTo", + "x": 8280400, + "y": 3536951 + }, + { + "type": "lineTo", + "x": 8321675, + "y": 3536951 + }, + { + "type": "lineTo", + "x": 8334375, + "y": 3476626 + }, + { + "type": "lineTo", + "x": 8324850, + "y": 3438526 + }, + { + "type": "lineTo", + "x": 8331200, + "y": 3397251 + }, + { + "type": "lineTo", + "x": 8321675, + "y": 3333751 + }, + { + "type": "lineTo", + "x": 8334375, + "y": 3263901 + }, + { + "type": "lineTo", + "x": 8353425, + "y": 3133726 + }, + { + "type": "lineTo", + "x": 8359775, + "y": 3063876 + }, + { + "type": "lineTo", + "x": 8343900, + "y": 2997201 + }, + { + "type": "lineTo", + "x": 8315325, + "y": 2924176 + }, + { + "type": "lineTo", + "x": 8289925, + "y": 2879726 + }, + { + "type": "lineTo", + "x": 8280400, + "y": 2803526 + }, + { + "type": "lineTo", + "x": 8242300, + "y": 2755901 + }, + { + "type": "lineTo", + "x": 8201025, + "y": 2711451 + }, + { + "type": "lineTo", + "x": 8172450, + "y": 2701926 + }, + { + "type": "lineTo", + "x": 8112125, + "y": 2717801 + }, + { + "type": "lineTo", + "x": 8086725, + "y": 2736851 + }, + { + "type": "lineTo", + "x": 8086725, + "y": 2746376 + }, + { + "type": "lineTo", + "x": 8058150, + "y": 2759076 + }, + { + "type": "lineTo", + "x": 8029575, + "y": 2809876 + }, + { + "type": "lineTo", + "x": 8010525, + "y": 2844801 + }, + { + "type": "lineTo", + "x": 7985125, + "y": 2876551 + }, + { + "type": "lineTo", + "x": 7937500, + "y": 2905126 + }, + { + "type": "lineTo", + "x": 7886700, + "y": 2936876 + }, + { + "type": "lineTo", + "x": 7854950, + "y": 2990851 + }, + { + "type": "lineTo", + "x": 7832725, + "y": 3057526 + }, + { + "type": "lineTo", + "x": 7816850, + "y": 3108326 + }, + { + "type": "lineTo", + "x": 7826375, + "y": 3175001 + }, + { + "type": "lineTo", + "x": 7842250, + "y": 3222626 + }, + { + "type": "lineTo", + "x": 7848600, + "y": 3263901 + }, + { + "type": "lineTo", + "x": 7848600, + "y": 3302001 + }, + { + "type": "lineTo", + "x": 7848600, + "y": 3324226 + }, + { + "type": "lineTo", + "x": 7835900, + "y": 3352801 + }, + { + "type": "lineTo", + "x": 7804150, + "y": 3397251 + }, + { + "type": "lineTo", + "x": 7788275, + "y": 3409951 + }, + { + "type": "lineTo", + "x": 7769225, + "y": 3482976 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "515", + "path_data": [ + { + "path_width": 571500, + "path_height": 558800, + "commands": [ + { + "type": "moveTo", + "x": 8305800, + "y": 4086225 + }, + { + "type": "lineTo", + "x": 8245475, + "y": 4105275 + }, + { + "type": "lineTo", + "x": 8178800, + "y": 4130675 + }, + { + "type": "lineTo", + "x": 8124825, + "y": 4162425 + }, + { + "type": "lineTo", + "x": 8080375, + "y": 4187825 + }, + { + "type": "lineTo", + "x": 8032750, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 7969250, + "y": 4286250 + }, + { + "type": "lineTo", + "x": 7953375, + "y": 4289425 + }, + { + "type": "lineTo", + "x": 7883525, + "y": 4298950 + }, + { + "type": "lineTo", + "x": 7816850, + "y": 4298950 + }, + { + "type": "lineTo", + "x": 7762875, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 7842250, + "y": 4371975 + }, + { + "type": "lineTo", + "x": 7867650, + "y": 4371975 + }, + { + "type": "lineTo", + "x": 7924800, + "y": 4422775 + }, + { + "type": "lineTo", + "x": 7981950, + "y": 4467225 + }, + { + "type": "lineTo", + "x": 8032750, + "y": 4511675 + }, + { + "type": "lineTo", + "x": 8096250, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 8210550, + "y": 4645025 + }, + { + "type": "lineTo", + "x": 8286750, + "y": 4594225 + }, + { + "type": "lineTo", + "x": 8312150, + "y": 4479925 + }, + { + "type": "lineTo", + "x": 8334375, + "y": 4352925 + }, + { + "type": "lineTo", + "x": 8334375, + "y": 4324350 + }, + { + "type": "lineTo", + "x": 8321675, + "y": 4251325 + }, + { + "type": "lineTo", + "x": 8331200, + "y": 4194175 + }, + { + "type": "lineTo", + "x": 8305800, + "y": 4086225 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/axis_lamina.json b/boneset-api/data/annotations/ColoredRegions/axis_lamina.json new file mode 100644 index 00000000..1f2e4672 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_lamina.json @@ -0,0 +1,668 @@ +{ + "slide_number": 18, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "624", + "path_data": [ + { + "path_width": 679450, + "path_height": 730250, + "commands": [ + { + "type": "moveTo", + "x": 6778625, + "y": 4283075 + }, + { + "type": "lineTo", + "x": 6807200, + "y": 4105275 + }, + { + "type": "lineTo", + "x": 6835775, + "y": 4010025 + }, + { + "type": "lineTo", + "x": 6864350, + "y": 3902075 + }, + { + "type": "lineTo", + "x": 6896100, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 6937375, + "y": 3705225 + }, + { + "type": "lineTo", + "x": 6943725, + "y": 3689350 + }, + { + "type": "lineTo", + "x": 7086600, + "y": 3708400 + }, + { + "type": "lineTo", + "x": 7197725, + "y": 3708400 + }, + { + "type": "lineTo", + "x": 7308850, + "y": 3711575 + }, + { + "type": "lineTo", + "x": 7391400, + "y": 3708400 + }, + { + "type": "lineTo", + "x": 7458075, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 7378700, + "y": 3778250 + }, + { + "type": "lineTo", + "x": 7289800, + "y": 3886200 + }, + { + "type": "lineTo", + "x": 7216775, + "y": 4029075 + }, + { + "type": "lineTo", + "x": 7165975, + "y": 4181475 + }, + { + "type": "lineTo", + "x": 7153275, + "y": 4254500 + }, + { + "type": "lineTo", + "x": 7153275, + "y": 4308475 + }, + { + "type": "lineTo", + "x": 7137400, + "y": 4352925 + }, + { + "type": "lineTo", + "x": 7118350, + "y": 4381500 + }, + { + "type": "lineTo", + "x": 7099300, + "y": 4419600 + }, + { + "type": "lineTo", + "x": 7019925, + "y": 4381500 + }, + { + "type": "lineTo", + "x": 6946900, + "y": 4349750 + }, + { + "type": "lineTo", + "x": 6880225, + "y": 4318000 + }, + { + "type": "lineTo", + "x": 6778625, + "y": 4283075 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "625", + "path_data": [ + { + "path_width": 638175, + "path_height": 692150, + "commands": [ + { + "type": "moveTo", + "x": 4756151, + "y": 1943100 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 1997075 + }, + { + "type": "lineTo", + "x": 4670426, + "y": 2070100 + }, + { + "type": "lineTo", + "x": 4629151, + "y": 2155825 + }, + { + "type": "lineTo", + "x": 4584701, + "y": 2197100 + }, + { + "type": "lineTo", + "x": 4498976, + "y": 2308225 + }, + { + "type": "lineTo", + "x": 4540251, + "y": 2320925 + }, + { + "type": "lineTo", + "x": 4591051, + "y": 2339975 + }, + { + "type": "lineTo", + "x": 4641851, + "y": 2362200 + }, + { + "type": "lineTo", + "x": 4702176, + "y": 2403475 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 2432050 + }, + { + "type": "lineTo", + "x": 4775201, + "y": 2460625 + }, + { + "type": "lineTo", + "x": 4832351, + "y": 2524125 + }, + { + "type": "lineTo", + "x": 4860926, + "y": 2590800 + }, + { + "type": "lineTo", + "x": 4870451, + "y": 2635250 + }, + { + "type": "lineTo", + "x": 4930776, + "y": 2628900 + }, + { + "type": "lineTo", + "x": 5006976, + "y": 2578100 + }, + { + "type": "lineTo", + "x": 5092701, + "y": 2495550 + }, + { + "type": "lineTo", + "x": 5137151, + "y": 2422525 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 2368550 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 2301875 + }, + { + "type": "lineTo", + "x": 4937126, + "y": 2222500 + }, + { + "type": "lineTo", + "x": 4899026, + "y": 2171700 + }, + { + "type": "lineTo", + "x": 4860926, + "y": 2127250 + }, + { + "type": "lineTo", + "x": 4845051, + "y": 2051050 + }, + { + "type": "lineTo", + "x": 4816476, + "y": 2019300 + }, + { + "type": "lineTo", + "x": 4791076, + "y": 1997075 + }, + { + "type": "lineTo", + "x": 4756151, + "y": 1943100 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "626", + "path_data": [ + { + "path_width": 638175, + "path_height": 587375, + "commands": [ + { + "type": "moveTo", + "x": 4076701, + "y": 2003426 + }, + { + "type": "lineTo", + "x": 4117976, + "y": 2079626 + }, + { + "type": "lineTo", + "x": 4213226, + "y": 2228851 + }, + { + "type": "lineTo", + "x": 4241801, + "y": 2289176 + }, + { + "type": "lineTo", + "x": 4311651, + "y": 2359026 + }, + { + "type": "lineTo", + "x": 4238626, + "y": 2400301 + }, + { + "type": "lineTo", + "x": 4156076, + "y": 2457451 + }, + { + "type": "lineTo", + "x": 4102101, + "y": 2492376 + }, + { + "type": "lineTo", + "x": 4057651, + "y": 2549526 + }, + { + "type": "lineTo", + "x": 4032251, + "y": 2590801 + }, + { + "type": "lineTo", + "x": 3924301, + "y": 2565401 + }, + { + "type": "lineTo", + "x": 3822701, + "y": 2520951 + }, + { + "type": "lineTo", + "x": 3686176, + "y": 2438401 + }, + { + "type": "lineTo", + "x": 3673476, + "y": 2435226 + }, + { + "type": "lineTo", + "x": 3749676, + "y": 2406651 + }, + { + "type": "lineTo", + "x": 3835401, + "y": 2343151 + }, + { + "type": "lineTo", + "x": 3892551, + "y": 2301876 + }, + { + "type": "lineTo", + "x": 3949701, + "y": 2235201 + }, + { + "type": "lineTo", + "x": 3975101, + "y": 2181226 + }, + { + "type": "lineTo", + "x": 4003676, + "y": 2139951 + }, + { + "type": "lineTo", + "x": 4038601, + "y": 2085976 + }, + { + "type": "lineTo", + "x": 4076701, + "y": 2003426 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "627", + "path_data": [ + { + "path_width": 438150, + "path_height": 561975, + "commands": [ + { + "type": "moveTo", + "x": 4730750, + "y": 5019676 + }, + { + "type": "lineTo", + "x": 4683125, + "y": 4981576 + }, + { + "type": "lineTo", + "x": 4619625, + "y": 4927601 + }, + { + "type": "lineTo", + "x": 4521200, + "y": 4892676 + }, + { + "type": "lineTo", + "x": 4498975, + "y": 4867276 + }, + { + "type": "lineTo", + "x": 4594225, + "y": 4641851 + }, + { + "type": "lineTo", + "x": 4670425, + "y": 4537076 + }, + { + "type": "lineTo", + "x": 4727575, + "y": 4457701 + }, + { + "type": "lineTo", + "x": 4787900, + "y": 4565651 + }, + { + "type": "lineTo", + "x": 4832350, + "y": 4635501 + }, + { + "type": "lineTo", + "x": 4851400, + "y": 4689476 + }, + { + "type": "lineTo", + "x": 4911725, + "y": 4737101 + }, + { + "type": "lineTo", + "x": 4937125, + "y": 4749801 + }, + { + "type": "lineTo", + "x": 4902200, + "y": 4781551 + }, + { + "type": "lineTo", + "x": 4838700, + "y": 4810126 + }, + { + "type": "lineTo", + "x": 4791075, + "y": 4864101 + }, + { + "type": "lineTo", + "x": 4794250, + "y": 4943476 + }, + { + "type": "lineTo", + "x": 4730750, + "y": 5019676 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "628", + "path_data": [ + { + "path_width": 450850, + "path_height": 609600, + "commands": [ + { + "type": "moveTo", + "x": 4029075, + "y": 5051425 + }, + { + "type": "lineTo", + "x": 3978275, + "y": 5029200 + }, + { + "type": "cubicBezTo", + "x1": 3979333, + "y1": 4994275, + "x2": 3980392, + "y2": 4959350, + "x": 3981450, + "y": 4924425 + }, + { + "type": "lineTo", + "x": 3981450, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 3940175, + "y": 4784725 + }, + { + "type": "lineTo", + "x": 3867150, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 3924300, + "y": 4654550 + }, + { + "type": "lineTo", + "x": 3994150, + "y": 4568825 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 4518025 + }, + { + "type": "lineTo", + "x": 4038600, + "y": 4476750 + }, + { + "type": "lineTo", + "x": 4083050, + "y": 4460875 + }, + { + "type": "lineTo", + "x": 4108450, + "y": 4441825 + }, + { + "type": "lineTo", + "x": 4159250, + "y": 4546600 + }, + { + "type": "lineTo", + "x": 4203700, + "y": 4651375 + }, + { + "type": "lineTo", + "x": 4235450, + "y": 4733925 + }, + { + "type": "lineTo", + "x": 4264025, + "y": 4794250 + }, + { + "type": "lineTo", + "x": 4318000, + "y": 4870450 + }, + { + "type": "lineTo", + "x": 4232275, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 4165600, + "y": 4953000 + }, + { + "type": "lineTo", + "x": 4117975, + "y": 4975225 + }, + { + "type": "lineTo", + "x": 4029075, + "y": 5051425 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/axis_pedicle.json b/boneset-api/data/annotations/ColoredRegions/axis_pedicle.json new file mode 100644 index 00000000..260478ea --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_pedicle.json @@ -0,0 +1,445 @@ +{ + "slide_number": 17, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "596", + "path_data": [ + { + "path_width": 174625, + "path_height": 698500, + "commands": [ + { + "type": "moveTo", + "x": 3775076, + "y": 4413250 + }, + { + "type": "lineTo", + "x": 3771901, + "y": 4505325 + }, + { + "type": "lineTo", + "x": 3787776, + "y": 4584700 + }, + { + "type": "lineTo", + "x": 3794126, + "y": 4667250 + }, + { + "type": "lineTo", + "x": 3816351, + "y": 4740275 + }, + { + "type": "lineTo", + "x": 3822701, + "y": 4813300 + }, + { + "type": "lineTo", + "x": 3835401, + "y": 4889500 + }, + { + "type": "lineTo", + "x": 3851276, + "y": 4972050 + }, + { + "type": "lineTo", + "x": 3822701, + "y": 5064125 + }, + { + "type": "lineTo", + "x": 3819526, + "y": 5089525 + }, + { + "type": "lineTo", + "x": 3848101, + "y": 5076825 + }, + { + "type": "lineTo", + "x": 3870326, + "y": 5067300 + }, + { + "type": "lineTo", + "x": 3895726, + "y": 5051425 + }, + { + "type": "lineTo", + "x": 3946526, + "y": 5051425 + }, + { + "type": "lineTo", + "x": 3933826, + "y": 4968875 + }, + { + "type": "lineTo", + "x": 3902076, + "y": 4873625 + }, + { + "type": "lineTo", + "x": 3886201, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 3870326, + "y": 4594225 + }, + { + "type": "lineTo", + "x": 3863976, + "y": 4489450 + }, + { + "type": "lineTo", + "x": 3851276, + "y": 4391025 + }, + { + "type": "lineTo", + "x": 3775076, + "y": 4413250 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "597", + "path_data": [ + { + "path_width": 149225, + "path_height": 612775, + "commands": [ + { + "type": "moveTo", + "x": 4578351, + "y": 4445001 + }, + { + "type": "lineTo", + "x": 4556126, + "y": 4508501 + }, + { + "type": "lineTo", + "x": 4524376, + "y": 4610101 + }, + { + "type": "lineTo", + "x": 4514851, + "y": 4695826 + }, + { + "type": "lineTo", + "x": 4514851, + "y": 4762501 + }, + { + "type": "lineTo", + "x": 4502151, + "y": 4845051 + }, + { + "type": "lineTo", + "x": 4486276, + "y": 4911726 + }, + { + "type": "lineTo", + "x": 4486276, + "y": 4953001 + }, + { + "type": "lineTo", + "x": 4467226, + "y": 5003801 + }, + { + "type": "lineTo", + "x": 4467226, + "y": 5057776 + }, + { + "type": "lineTo", + "x": 4454526, + "y": 5016501 + }, + { + "type": "lineTo", + "x": 4445001, + "y": 4987926 + }, + { + "type": "lineTo", + "x": 4429126, + "y": 4908551 + }, + { + "type": "lineTo", + "x": 4451351, + "y": 4784726 + }, + { + "type": "lineTo", + "x": 4473576, + "y": 4638676 + }, + { + "type": "lineTo", + "x": 4479926, + "y": 4565651 + }, + { + "type": "lineTo", + "x": 4514851, + "y": 4473576 + }, + { + "type": "lineTo", + "x": 4578351, + "y": 4445001 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "598", + "path_data": [ + { + "path_width": 368300, + "path_height": 660400, + "commands": [ + { + "type": "moveTo", + "x": 7073900, + "y": 5089525 + }, + { + "type": "lineTo", + "x": 7058025, + "y": 4978400 + }, + { + "type": "lineTo", + "x": 7058025, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 6953250, + "y": 4860925 + }, + { + "type": "lineTo", + "x": 6880225, + "y": 4816475 + }, + { + "type": "lineTo", + "x": 6861175, + "y": 4775200 + }, + { + "type": "lineTo", + "x": 6851650, + "y": 4711700 + }, + { + "type": "lineTo", + "x": 6835775, + "y": 4594225 + }, + { + "type": "lineTo", + "x": 6813550, + "y": 4473575 + }, + { + "type": "lineTo", + "x": 6804025, + "y": 4432300 + }, + { + "type": "lineTo", + "x": 6759575, + "y": 4498975 + }, + { + "type": "lineTo", + "x": 6727825, + "y": 4562475 + }, + { + "type": "lineTo", + "x": 6721475, + "y": 4645025 + }, + { + "type": "lineTo", + "x": 6705600, + "y": 4737100 + }, + { + "type": "lineTo", + "x": 6746875, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 6858000, + "y": 4978400 + }, + { + "type": "lineTo", + "x": 6921500, + "y": 5032375 + }, + { + "type": "lineTo", + "x": 6959600, + "y": 5073650 + }, + { + "type": "lineTo", + "x": 6991350, + "y": 5092700 + }, + { + "type": "lineTo", + "x": 7073900, + "y": 5089525 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "599", + "path_data": [ + { + "path_width": 219075, + "path_height": 381000, + "commands": [ + { + "type": "moveTo", + "x": 7515225, + "y": 5041900 + }, + { + "type": "lineTo", + "x": 7527925, + "y": 4933950 + }, + { + "type": "cubicBezTo", + "x1": 7530042, + "y1": 4917017, + "x2": 7538508, + "y2": 4893733, + "x": 7540625, + "y": 4876800 + }, + { + "type": "lineTo", + "x": 7578725, + "y": 4819650 + }, + { + "type": "lineTo", + "x": 7661275, + "y": 4784725 + }, + { + "type": "lineTo", + "x": 7734300, + "y": 4752975 + }, + { + "type": "lineTo", + "x": 7696200, + "y": 4857750 + }, + { + "type": "cubicBezTo", + "x1": 7687734, + "y1": 4896908, + "x2": 7669742, + "y2": 4910667, + "x": 7661276, + "y": 4949825 + }, + { + "type": "lineTo", + "x": 7639050, + "y": 5032375 + }, + { + "type": "lineTo", + "x": 7629525, + "y": 5095875 + }, + { + "type": "lineTo", + "x": 7607300, + "y": 5133975 + }, + { + "type": "lineTo", + "x": 7569200, + "y": 5121275 + }, + { + "type": "lineTo", + "x": 7515225, + "y": 5041900 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/axis_spinous_process.json b/boneset-api/data/annotations/ColoredRegions/axis_spinous_process.json new file mode 100644 index 00000000..60e3d5b0 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_spinous_process.json @@ -0,0 +1,467 @@ +{ + "slide_number": 19, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "653", + "path_data": [ + { + "path_width": 933794, + "path_height": 628536, + "commands": [ + { + "type": "moveTo", + "x": 6921309, + "y": 3680495 + }, + { + "type": "lineTo", + "x": 6778633, + "y": 3654576 + }, + { + "type": "lineTo", + "x": 6699250, + "y": 3651250 + }, + { + "type": "lineTo", + "x": 6636217, + "y": 3648096 + }, + { + "type": "lineTo", + "x": 6519588, + "y": 3680495 + }, + { + "type": "lineTo", + "x": 6452008, + "y": 3670581 + }, + { + "type": "lineTo", + "x": 6383522, + "y": 3712894 + }, + { + "type": "lineTo", + "x": 6312249, + "y": 3758252 + }, + { + "type": "lineTo", + "x": 6266893, + "y": 3784171 + }, + { + "type": "lineTo", + "x": 6195879, + "y": 3786957 + }, + { + "type": "lineTo", + "x": 6130568, + "y": 3835879 + }, + { + "type": "lineTo", + "x": 6082037, + "y": 3881367 + }, + { + "type": "lineTo", + "x": 6049123, + "y": 3972473 + }, + { + "type": "cubicBezTo", + "x1": 6041465, + "y1": 3982874, + "x2": 6043333, + "y2": 4002799, + "x": 6035675, + "y": 4013200 + }, + { + "type": "lineTo", + "x": 5988410, + "y": 4052886 + }, + { + "type": "cubicBezTo", + "x1": 5981406, + "y1": 4078724, + "x2": 6017597, + "y2": 4100544, + "x": 6022975, + "y": 4124325 + }, + { + "type": "cubicBezTo", + "x1": 6028353, + "y1": 4148106, + "x2": 6002216, + "y2": 4170715, + "x": 6020677, + "y": 4195570 + }, + { + "type": "lineTo", + "x": 6117868, + "y": 4276632 + }, + { + "type": "lineTo", + "x": 6202100, + "y": 4257452 + }, + { + "type": "lineTo", + "x": 6292811, + "y": 4257192 + }, + { + "type": "lineTo", + "x": 6390001, + "y": 4192395 + }, + { + "type": "lineTo", + "x": 6448315, + "y": 4192395 + }, + { + "type": "lineTo", + "x": 6551985, + "y": 4211834 + }, + { + "type": "lineTo", + "x": 6655655, + "y": 4231273 + }, + { + "type": "lineTo", + "x": 6681572, + "y": 4211834 + }, + { + "type": "lineTo", + "x": 6707490, + "y": 4121118 + }, + { + "type": "lineTo", + "x": 6772283, + "y": 4023922 + }, + { + "type": "lineTo", + "x": 6843556, + "y": 3887847 + }, + { + "type": "lineTo", + "x": 6921309, + "y": 3680495 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "654", + "path_data": [ + { + "path_width": 685800, + "path_height": 857250, + "commands": [ + { + "type": "moveTo", + "x": 4752975, + "y": 1930400 + }, + { + "type": "lineTo", + "x": 4638675, + "y": 2089150 + }, + { + "type": "lineTo", + "x": 4486275, + "y": 2295525 + }, + { + "type": "lineTo", + "x": 4425950, + "y": 2308225 + }, + { + "type": "lineTo", + "x": 4324350, + "y": 2216150 + }, + { + "type": "lineTo", + "x": 4210050, + "y": 2136775 + }, + { + "type": "lineTo", + "x": 4067175, + "y": 2028825 + }, + { + "type": "lineTo", + "x": 4073525, + "y": 1924050 + }, + { + "type": "lineTo", + "x": 4098925, + "y": 1860550 + }, + { + "type": "lineTo", + "x": 4108450, + "y": 1822450 + }, + { + "type": "lineTo", + "x": 4102100, + "y": 1778000 + }, + { + "type": "lineTo", + "x": 4130675, + "y": 1720850 + }, + { + "type": "lineTo", + "x": 4149725, + "y": 1704975 + }, + { + "type": "lineTo", + "x": 4197350, + "y": 1625600 + }, + { + "type": "lineTo", + "x": 4216400, + "y": 1581150 + }, + { + "type": "lineTo", + "x": 4229100, + "y": 1543050 + }, + { + "type": "lineTo", + "x": 4270375, + "y": 1498600 + }, + { + "type": "lineTo", + "x": 4343400, + "y": 1450975 + }, + { + "type": "lineTo", + "x": 4429125, + "y": 1470025 + }, + { + "type": "lineTo", + "x": 4448175, + "y": 1485900 + }, + { + "type": "lineTo", + "x": 4502150, + "y": 1501775 + }, + { + "type": "lineTo", + "x": 4581525, + "y": 1527175 + }, + { + "type": "lineTo", + "x": 4654550, + "y": 1584325 + }, + { + "type": "lineTo", + "x": 4692650, + "y": 1647825 + }, + { + "type": "lineTo", + "x": 4730750, + "y": 1752600 + }, + { + "type": "lineTo", + "x": 4746625, + "y": 1809750 + }, + { + "type": "lineTo", + "x": 4752975, + "y": 1930400 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "655", + "path_data": [ + { + "path_width": 669925, + "path_height": 847725, + "commands": [ + { + "type": "moveTo", + "x": 4740276, + "y": 4502151 + }, + { + "type": "lineTo", + "x": 4572001, + "y": 4679951 + }, + { + "type": "lineTo", + "x": 4502151, + "y": 4765676 + }, + { + "type": "lineTo", + "x": 4460876, + "y": 4860926 + }, + { + "type": "lineTo", + "x": 4394201, + "y": 4838701 + }, + { + "type": "lineTo", + "x": 4321176, + "y": 4860926 + }, + { + "type": "lineTo", + "x": 4241801, + "y": 4778376 + }, + { + "type": "lineTo", + "x": 4152901, + "y": 4667251 + }, + { + "type": "lineTo", + "x": 4070351, + "y": 4483101 + }, + { + "type": "lineTo", + "x": 4114801, + "y": 4425951 + }, + { + "type": "lineTo", + "x": 4111626, + "y": 4365626 + }, + { + "type": "lineTo", + "x": 4143376, + "y": 4273551 + }, + { + "type": "lineTo", + "x": 4162426, + "y": 4194176 + }, + { + "type": "lineTo", + "x": 4229101, + "y": 4111626 + }, + { + "type": "lineTo", + "x": 4257676, + "y": 4108451 + }, + { + "type": "lineTo", + "x": 4340226, + "y": 4060826 + }, + { + "type": "lineTo", + "x": 4400551, + "y": 4102101 + }, + { + "type": "lineTo", + "x": 4460876, + "y": 4013201 + }, + { + "type": "lineTo", + "x": 4584701, + "y": 4070351 + }, + { + "type": "lineTo", + "x": 4676776, + "y": 4229101 + }, + { + "type": "lineTo", + "x": 4705351, + "y": 4292601 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 4391026 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 4502151 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/axis_transverse_formaen.json b/boneset-api/data/annotations/ColoredRegions/axis_transverse_formaen.json new file mode 100644 index 00000000..cfa3fed3 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_transverse_formaen.json @@ -0,0 +1,334 @@ +{ + "slide_number": 16, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "571", + "path_data": [ + { + "path_width": 306331, + "path_height": 338121, + "commands": [ + { + "type": "moveTo", + "x": 5144325, + "y": 4277662 + }, + { + "type": "lineTo", + "x": 5068506, + "y": 4271343 + }, + { + "type": "lineTo", + "x": 4980052, + "y": 4296617 + }, + { + "type": "lineTo", + "x": 4916870, + "y": 4334529 + }, + { + "type": "lineTo", + "x": 4878961, + "y": 4410351 + }, + { + "type": "lineTo", + "x": 4860006, + "y": 4473537 + }, + { + "type": "lineTo", + "x": 4860006, + "y": 4524085 + }, + { + "type": "lineTo", + "x": 4891597, + "y": 4549360 + }, + { + "type": "lineTo", + "x": 4964272, + "y": 4609464 + }, + { + "type": "lineTo", + "x": 5024279, + "y": 4580952 + }, + { + "type": "lineTo", + "x": 5093875, + "y": 4543135 + }, + { + "type": "lineTo", + "x": 5125370, + "y": 4473537 + }, + { + "type": "lineTo", + "x": 5160200, + "y": 4394539 + }, + { + "type": "cubicBezTo", + "x1": 5156750, + "y1": 4372201, + "x2": 5169176, + "y2": 4318114, + "x": 5165726, + "y": 4295776 + }, + { + "type": "lineTo", + "x": 5144325, + "y": 4277662 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "572", + "path_data": [ + { + "path_width": 349250, + "path_height": 323850, + "commands": [ + { + "type": "moveTo", + "x": 3759200, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 3746500, + "y": 4530725 + }, + { + "type": "lineTo", + "x": 3733800, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 3714750, + "y": 4645025 + }, + { + "type": "lineTo", + "x": 3698875, + "y": 4670425 + }, + { + "type": "lineTo", + "x": 3667125, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3638550, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3600450, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3536950, + "y": 4660900 + }, + { + "type": "lineTo", + "x": 3482975, + "y": 4625975 + }, + { + "type": "lineTo", + "x": 3448050, + "y": 4594225 + }, + { + "type": "lineTo", + "x": 3416300, + "y": 4549775 + }, + { + "type": "lineTo", + "x": 3409950, + "y": 4498975 + }, + { + "type": "lineTo", + "x": 3422650, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 3479800, + "y": 4413250 + }, + { + "type": "lineTo", + "x": 3540125, + "y": 4378325 + }, + { + "type": "lineTo", + "x": 3597275, + "y": 4362450 + }, + { + "type": "lineTo", + "x": 3660775, + "y": 4384675 + }, + { + "type": "lineTo", + "x": 3686175, + "y": 4416425 + }, + { + "type": "lineTo", + "x": 3759200, + "y": 4457700 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "573", + "path_data": [ + { + "path_width": 317500, + "path_height": 358775, + "commands": [ + { + "type": "moveTo", + "x": 7835899, + "y": 4232276 + }, + { + "type": "lineTo", + "x": 7937499, + "y": 4181476 + }, + { + "type": "lineTo", + "x": 8000999, + "y": 4146551 + }, + { + "type": "lineTo", + "x": 8016874, + "y": 4073526 + }, + { + "type": "lineTo", + "x": 8016874, + "y": 4016376 + }, + { + "type": "lineTo", + "x": 8004174, + "y": 3971926 + }, + { + "type": "lineTo", + "x": 7969249, + "y": 3937001 + }, + { + "type": "lineTo", + "x": 7940674, + "y": 3908426 + }, + { + "type": "lineTo", + "x": 7905749, + "y": 3889376 + }, + { + "type": "lineTo", + "x": 7867649, + "y": 3883026 + }, + { + "type": "lineTo", + "x": 7832724, + "y": 3873501 + }, + { + "type": "lineTo", + "x": 7807324, + "y": 3873501 + }, + { + "type": "lineTo", + "x": 7759699, + "y": 3886201 + }, + { + "type": "lineTo", + "x": 7705724, + "y": 3908426 + }, + { + "type": "lineTo", + "x": 7699374, + "y": 3968751 + }, + { + "type": "lineTo", + "x": 7705724, + "y": 4051301 + }, + { + "type": "lineTo", + "x": 7724774, + "y": 4137026 + }, + { + "type": "lineTo", + "x": 7778749, + "y": 4197351 + }, + { + "type": "lineTo", + "x": 7835899, + "y": 4232276 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/axis_transverse_process.json b/boneset-api/data/annotations/ColoredRegions/axis_transverse_process.json new file mode 100644 index 00000000..0a5bac33 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/axis_transverse_process.json @@ -0,0 +1,703 @@ +{ + "slide_number": 15, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "544", + "path_data": [ + { + "path_width": 732910, + "path_height": 922509, + "commands": [ + { + "type": "moveTo", + "x": 5024277, + "y": 2306273 + }, + { + "type": "lineTo", + "x": 4815777, + "y": 2489511 + }, + { + "type": "lineTo", + "x": 4866322, + "y": 2546378 + }, + { + "type": "lineTo", + "x": 4891595, + "y": 2704342 + }, + { + "type": "lineTo", + "x": 4878959, + "y": 2862306 + }, + { + "type": "lineTo", + "x": 4847368, + "y": 2963403 + }, + { + "type": "lineTo", + "x": 4942141, + "y": 3026588 + }, + { + "type": "lineTo", + "x": 5043232, + "y": 2931810 + }, + { + "type": "lineTo", + "x": 5169595, + "y": 2938128 + }, + { + "type": "lineTo", + "x": 5264368, + "y": 3020270 + }, + { + "type": "lineTo", + "x": 5314914, + "y": 3077137 + }, + { + "type": "lineTo", + "x": 5359141, + "y": 3228782 + }, + { + "type": "lineTo", + "x": 5479187, + "y": 3140322 + }, + { + "type": "lineTo", + "x": 5498141, + "y": 3045544 + }, + { + "type": "lineTo", + "x": 5441278, + "y": 2969721 + }, + { + "type": "lineTo", + "x": 5384414, + "y": 2957084 + }, + { + "type": "lineTo", + "x": 5441278, + "y": 2862306 + }, + { + "type": "lineTo", + "x": 5504459, + "y": 2805439 + }, + { + "type": "lineTo", + "x": 5548687, + "y": 2723298 + }, + { + "type": "lineTo", + "x": 5536050, + "y": 2546378 + }, + { + "type": "lineTo", + "x": 5479187, + "y": 2394733 + }, + { + "type": "lineTo", + "x": 5403368, + "y": 2306273 + }, + { + "type": "lineTo", + "x": 5321232, + "y": 2344184 + }, + { + "type": "lineTo", + "x": 5024277, + "y": 2306273 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "545", + "path_data": [ + { + "path_width": 669728, + "path_height": 732952, + "commands": [ + { + "type": "moveTo", + "x": 3760639, + "y": 2394732 + }, + { + "type": "lineTo", + "x": 4038639, + "y": 2584288 + }, + { + "type": "lineTo", + "x": 4000730, + "y": 2773845 + }, + { + "type": "lineTo", + "x": 4007049, + "y": 2919172 + }, + { + "type": "lineTo", + "x": 3962821, + "y": 2969720 + }, + { + "type": "lineTo", + "x": 3880685, + "y": 2900216 + }, + { + "type": "lineTo", + "x": 3697457, + "y": 2900216 + }, + { + "type": "lineTo", + "x": 3577412, + "y": 2969720 + }, + { + "type": "lineTo", + "x": 3476321, + "y": 3108728 + }, + { + "type": "lineTo", + "x": 3387866, + "y": 2906535 + }, + { + "type": "lineTo", + "x": 3400502, + "y": 2805438 + }, + { + "type": "lineTo", + "x": 3583730, + "y": 2843349 + }, + { + "type": "lineTo", + "x": 3596366, + "y": 2843349 + }, + { + "type": "lineTo", + "x": 3451048, + "y": 2742252 + }, + { + "type": "lineTo", + "x": 3381548, + "y": 2653792 + }, + { + "type": "lineTo", + "x": 3368911, + "y": 2577970 + }, + { + "type": "lineTo", + "x": 3514230, + "y": 2394732 + }, + { + "type": "lineTo", + "x": 3627957, + "y": 2375776 + }, + { + "type": "lineTo", + "x": 3760639, + "y": 2394732 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "546", + "path_data": [ + { + "path_width": 968699, + "path_height": 815785, + "commands": [ + { + "type": "moveTo", + "x": 7658961, + "y": 4107059 + }, + { + "type": "cubicBezTo", + "x1": 7657616, + "y1": 4066248, + "x2": 7675321, + "y2": 4031786, + "x": 7673976, + "y": 3990975 + }, + { + "type": "lineTo", + "x": 7665279, + "y": 3873272 + }, + { + "type": "lineTo", + "x": 7614734, + "y": 3759538 + }, + { + "type": "cubicBezTo", + "x1": 7604012, + "y1": 3732588, + "x2": 7555093, + "y2": 3694169, + "x": 7550150, + "y": 3673475 + }, + { + "type": "cubicBezTo", + "x1": 7545207, + "y1": 3652781, + "x2": 7571316, + "y2": 3643842, + "x": 7585074, + "y": 3635375 + }, + { + "type": "cubicBezTo", + "x1": 7600949, + "y1": 3631142, + "x2": 7616825, + "y2": 3611033, + "x": 7632700, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 7712618, + "y": 3594501 + }, + { + "type": "cubicBezTo", + "x1": 7726906, + "y1": 3600322, + "x2": 7694175, + "y2": 3624331, + "x": 7696201, + "y": 3641726 + }, + { + "type": "cubicBezTo", + "x1": 7698227, + "y1": 3659121, + "x2": 7704666, + "y2": 3690408, + "x": 7715249, + "y": 3705224 + }, + { + "type": "cubicBezTo", + "x1": 7725832, + "y1": 3720040, + "x2": 7775574, + "y2": 3747028, + "x": 7797799, + "y": 3759199 + }, + { + "type": "cubicBezTo", + "x1": 7829549, + "y1": 3767666, + "x2": 7845424, + "y2": 3760257, + "x": 7877174, + "y": 3768724 + }, + { + "type": "lineTo", + "x": 7981189, + "y": 3778494 + }, + { + "type": "lineTo", + "x": 8120189, + "y": 3791131 + }, + { + "type": "lineTo", + "x": 8385553, + "y": 3841680 + }, + { + "type": "lineTo", + "x": 8518235, + "y": 3860635 + }, + { + "type": "cubicBezTo", + "x1": 8507749, + "y1": 3883974, + "x2": 8522662, + "y2": 3907312, + "x": 8512176, + "y": 3930651 + }, + { + "type": "lineTo", + "x": 8464514, + "y": 4018599 + }, + { + "type": "lineTo", + "x": 8316053, + "y": 4126014 + }, + { + "type": "lineTo", + "x": 8202325, + "y": 4176563 + }, + { + "type": "lineTo", + "x": 8057007, + "y": 4265023 + }, + { + "type": "lineTo", + "x": 8000143, + "y": 4309252 + }, + { + "type": "lineTo", + "x": 7918007, + "y": 4302934 + }, + { + "type": "cubicBezTo", + "x1": 7886416, + "y1": 4326102, + "x2": 7849554, + "y2": 4357721, + "x": 7823234, + "y": 4375613 + }, + { + "type": "cubicBezTo", + "x1": 7796914, + "y1": 4393505, + "x2": 7781134, + "y2": 4397670, + "x": 7760084, + "y": 4410286 + }, + { + "type": "lineTo", + "x": 7677916, + "y": 4391394 + }, + { + "type": "lineTo", + "x": 7602097, + "y": 4309252 + }, + { + "type": "lineTo", + "x": 7627370, + "y": 4189200 + }, + { + "type": "lineTo", + "x": 7658961, + "y": 4107059 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "547", + "path_data": [ + { + "path_width": 657092, + "path_height": 928827, + "commands": [ + { + "type": "moveTo", + "x": 5194868, + "y": 5212808 + }, + { + "type": "lineTo", + "x": 5005323, + "y": 5181215 + }, + { + "type": "lineTo", + "x": 4897913, + "y": 5143304 + }, + { + "type": "lineTo", + "x": 4828413, + "y": 5174896 + }, + { + "type": "lineTo", + "x": 4803140, + "y": 5250719 + }, + { + "type": "lineTo", + "x": 4790504, + "y": 5389727 + }, + { + "type": "lineTo", + "x": 4866322, + "y": 5547691 + }, + { + "type": "lineTo", + "x": 4815777, + "y": 5667743 + }, + { + "type": "lineTo", + "x": 4809459, + "y": 5756203 + }, + { + "type": "lineTo", + "x": 4904231, + "y": 6027901 + }, + { + "type": "lineTo", + "x": 4961095, + "y": 6072131 + }, + { + "type": "lineTo", + "x": 5213823, + "y": 5971034 + }, + { + "type": "lineTo", + "x": 5314914, + "y": 5819389 + }, + { + "type": "lineTo", + "x": 5314914, + "y": 5610877 + }, + { + "type": "lineTo", + "x": 5295959, + "y": 5566647 + }, + { + "type": "lineTo", + "x": 5333868, + "y": 5440276 + }, + { + "type": "lineTo", + "x": 5397050, + "y": 5313904 + }, + { + "type": "lineTo", + "x": 5447596, + "y": 5200171 + }, + { + "type": "lineTo", + "x": 5359141, + "y": 5143304 + }, + { + "type": "lineTo", + "x": 5194868, + "y": 5212808 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "548", + "path_data": [ + { + "path_width": 726592, + "path_height": 890916, + "commands": [ + { + "type": "moveTo", + "x": 3988094, + "y": 5174895 + }, + { + "type": "lineTo", + "x": 3785912, + "y": 5206488 + }, + { + "type": "lineTo", + "x": 3507912, + "y": 5231762 + }, + { + "type": "lineTo", + "x": 3375230, + "y": 5238081 + }, + { + "type": "lineTo", + "x": 3438411, + "y": 5326541 + }, + { + "type": "lineTo", + "x": 3331002, + "y": 5320222 + }, + { + "type": "lineTo", + "x": 3305729, + "y": 5396045 + }, + { + "type": "lineTo", + "x": 3305729, + "y": 5516097 + }, + { + "type": "lineTo", + "x": 3432093, + "y": 5604557 + }, + { + "type": "lineTo", + "x": 3488957, + "y": 5693017 + }, + { + "type": "lineTo", + "x": 3520548, + "y": 5787795 + }, + { + "type": "lineTo", + "x": 3526866, + "y": 5907848 + }, + { + "type": "lineTo", + "x": 3596366, + "y": 5971033 + }, + { + "type": "lineTo", + "x": 3684821, + "y": 6034219 + }, + { + "type": "lineTo", + "x": 3823821, + "y": 6059493 + }, + { + "type": "lineTo", + "x": 3931230, + "y": 6065811 + }, + { + "type": "lineTo", + "x": 3988094, + "y": 5819388 + }, + { + "type": "lineTo", + "x": 3981776, + "y": 5674061 + }, + { + "type": "lineTo", + "x": 3969139, + "y": 5541371 + }, + { + "type": "lineTo", + "x": 4032321, + "y": 5427637 + }, + { + "type": "lineTo", + "x": 3988094, + "y": 5174895 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/bony_pelvis_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/bony_pelvis_colored_regions.json new file mode 100644 index 00000000..a8f9975e --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/bony_pelvis_colored_regions.json @@ -0,0 +1,870 @@ +{ + "slide_number": 2, + "images": [ + { + "index": 0, + "name": "Google Shape;106;p2", + "width": 2236557, + "height": 3535363, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "C133AD", + "image_name": "Google Shape;106;p2", + "path_data": [ + { + "path_width": 1134543, + "path_height": 1310358, + "commands": [ + { + "type": "moveTo", + "x": 713614, + "y": 2222561 + }, + { + "type": "lineTo", + "x": 868896, + "y": 2241225 + }, + { + "type": "lineTo", + "x": 1300351, + "y": 2249366 + }, + { + "type": "lineTo", + "x": 1520149, + "y": 2542452 + }, + { + "type": "lineTo", + "x": 1416660, + "y": 2597270 + }, + { + "type": "lineTo", + "x": 1365477, + "y": 2660194 + }, + { + "type": "lineTo", + "x": 1295215, + "y": 2730620 + }, + { + "type": "lineTo", + "x": 1251507, + "y": 2802972 + }, + { + "type": "lineTo", + "x": 1211872, + "y": 2902070 + }, + { + "type": "lineTo", + "x": 1202663, + "y": 2973939 + }, + { + "type": "lineTo", + "x": 1219015, + "y": 3042563 + }, + { + "type": "lineTo", + "x": 1251507, + "y": 3096058 + }, + { + "type": "lineTo", + "x": 1285691, + "y": 3114001 + }, + { + "type": "lineTo", + "x": 1324773, + "y": 3104199 + }, + { + "type": "lineTo", + "x": 1397609, + "y": 3078283 + }, + { + "type": "lineTo", + "x": 1471693, + "y": 3046213 + }, + { + "type": "lineTo", + "x": 1585275, + "y": 2998363 + }, + { + "type": "lineTo", + "x": 1748088, + "y": 3104199 + }, + { + "type": "lineTo", + "x": 1723666, + "y": 3234459 + }, + { + "type": "lineTo", + "x": 1537427, + "y": 3356192 + }, + { + "type": "lineTo", + "x": 1440472, + "y": 3418801 + }, + { + "type": "lineTo", + "x": 1302732, + "y": 3499356 + }, + { + "type": "lineTo", + "x": 1209491, + "y": 3525958 + }, + { + "type": "lineTo", + "x": 1135157, + "y": 3532919 + }, + { + "type": "lineTo", + "x": 1061853, + "y": 3511670 + }, + { + "type": "lineTo", + "x": 990415, + "y": 3475952 + }, + { + "type": "lineTo", + "x": 881799, + "y": 3414566 + }, + { + "type": "lineTo", + "x": 845159, + "y": 3364032 + }, + { + "type": "lineTo", + "x": 771208, + "y": 3283307 + }, + { + "type": "lineTo", + "x": 680277, + "y": 3144905 + }, + { + "type": "lineTo", + "x": 657239, + "y": 2998363 + }, + { + "type": "lineTo", + "x": 687996, + "y": 2880639 + }, + { + "type": "lineTo", + "x": 689802, + "y": 2811114 + }, + { + "type": "cubicBezTo", + "x1": 690263, + "y1": 2766310, + "x2": 690725, + "y2": 2721506, + "x": 691186, + "y": 2676702 + }, + { + "type": "lineTo", + "x": 616536, + "y": 2599441 + }, + { + "type": "lineTo", + "x": 613545, + "y": 2541454 + }, + { + "type": "lineTo", + "x": 681661, + "y": 2461039 + }, + { + "type": "lineTo", + "x": 709429, + "y": 2354382 + }, + { + "type": "lineTo", + "x": 713614, + "y": 2222561 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis", + "color": "2F8E29", + "image_name": "Google Shape;106;p2", + "path_data": [ + { + "path_width": 1014265, + "path_height": 1060450, + "commands": [ + { + "type": "moveTo", + "x": 1302358, + "y": 2248020 + }, + { + "type": "lineTo", + "x": 1721458, + "y": 2035295 + }, + { + "type": "lineTo", + "x": 1754002, + "y": 2076570 + }, + { + "type": "lineTo", + "x": 1783370, + "y": 2154357 + }, + { + "type": "lineTo", + "x": 1837345, + "y": 2253576 + }, + { + "type": "lineTo", + "x": 1900052, + "y": 2309932 + }, + { + "type": "lineTo", + "x": 1954820, + "y": 2361527 + }, + { + "type": "lineTo", + "x": 2010383, + "y": 2389308 + }, + { + "type": "lineTo", + "x": 2061977, + "y": 2435345 + }, + { + "type": "lineTo", + "x": 2121508, + "y": 2457570 + }, + { + "type": "lineTo", + "x": 2219933, + "y": 2492495 + }, + { + "type": "lineTo", + "x": 2281845, + "y": 2499639 + }, + { + "type": "cubicBezTo", + "x1": 2296000, + "y1": 2511148, + "x2": 2308171, + "y2": 2540119, + "x": 2314389, + "y": 2556788 + }, + { + "type": "cubicBezTo", + "x1": 2320607, + "y1": 2573457, + "x2": 2312140, + "y2": 2589067, + "x": 2309627, + "y": 2602032 + }, + { + "type": "lineTo", + "x": 2289783, + "y": 2639339 + }, + { + "type": "lineTo", + "x": 2245333, + "y": 2671089 + }, + { + "type": "lineTo", + "x": 2232633, + "y": 2726652 + }, + { + "type": "lineTo", + "x": 2174689, + "y": 2811583 + }, + { + "type": "lineTo", + "x": 2113571, + "y": 2871114 + }, + { + "type": "lineTo", + "x": 2033402, + "y": 2938582 + }, + { + "type": "lineTo", + "x": 1931008, + "y": 2987795 + }, + { + "type": "lineTo", + "x": 1865920, + "y": 3011608 + }, + { + "type": "lineTo", + "x": 1790514, + "y": 3040183 + }, + { + "type": "lineTo", + "x": 1743683, + "y": 3095745 + }, + { + "type": "lineTo", + "x": 1588108, + "y": 2990970 + }, + { + "type": "lineTo", + "x": 1635733, + "y": 2959220 + }, + { + "type": "lineTo", + "x": 1645258, + "y": 2914770 + }, + { + "type": "lineTo", + "x": 1699233, + "y": 2873495 + }, + { + "type": "lineTo", + "x": 1743683, + "y": 2781420 + }, + { + "type": "lineTo", + "x": 1740508, + "y": 2733795 + }, + { + "type": "lineTo", + "x": 1753208, + "y": 2660770 + }, + { + "type": "lineTo", + "x": 1727808, + "y": 2527420 + }, + { + "type": "lineTo", + "x": 1708758, + "y": 2495670 + }, + { + "type": "lineTo", + "x": 1629383, + "y": 2536945 + }, + { + "type": "lineTo", + "x": 1537308, + "y": 2543295 + }, + { + "type": "lineTo", + "x": 1302358, + "y": 2248020 + }, + { + "type": "close" + } + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "Google Shape;112;p2", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "C133AD", + "image_name": "Google Shape;112;p2", + "path_data": [ + { + "path_width": 975518, + "path_height": 1520031, + "commands": [ + { + "type": "moveTo", + "x": 1144222, + "y": 2616175 + }, + { + "type": "lineTo", + "x": 1191847, + "y": 2406625 + }, + { + "type": "lineTo", + "x": 1175972, + "y": 2279625 + }, + { + "type": "lineTo", + "x": 1150572, + "y": 2187550 + }, + { + "type": "lineTo", + "x": 1128347, + "y": 2098650 + }, + { + "type": "lineTo", + "x": 1623647, + "y": 1847825 + }, + { + "type": "lineTo", + "x": 1645873, + "y": 1942281 + }, + { + "type": "lineTo", + "x": 1692703, + "y": 2043882 + }, + { + "type": "lineTo", + "x": 1754616, + "y": 2223268 + }, + { + "type": "lineTo", + "x": 1815734, + "y": 2329632 + }, + { + "type": "lineTo", + "x": 1896697, + "y": 2387575 + }, + { + "type": "lineTo", + "x": 1925272, + "y": 2441550 + }, + { + "type": "lineTo", + "x": 1894316, + "y": 2488382 + }, + { + "type": "lineTo", + "x": 1849865, + "y": 2506638 + }, + { + "type": "lineTo", + "x": 1841928, + "y": 2556644 + }, + { + "type": "lineTo", + "x": 1864947, + "y": 2616175 + }, + { + "type": "lineTo", + "x": 1906222, + "y": 2670150 + }, + { + "type": "lineTo", + "x": 1928447, + "y": 2787625 + }, + { + "type": "cubicBezTo", + "x1": 1927389, + "y1": 2821492, + "x2": 1921568, + "y2": 2855358, + "x": 1920510, + "y": 2889225 + }, + { + "type": "lineTo", + "x": 1883997, + "y": 3003525 + }, + { + "type": "lineTo", + "x": 1786366, + "y": 3154338 + }, + { + "type": "lineTo", + "x": 1687147, + "y": 3254350 + }, + { + "type": "lineTo", + "x": 1547447, + "y": 3317056 + }, + { + "type": "lineTo", + "x": 1381554, + "y": 3346425 + }, + { + "type": "lineTo", + "x": 1226772, + "y": 3367856 + }, + { + "type": "lineTo", + "x": 1107710, + "y": 3358331 + }, + { + "type": "lineTo", + "x": 1025953, + "y": 3357538 + }, + { + "type": "lineTo", + "x": 1000553, + "y": 3326582 + }, + { + "type": "lineTo", + "x": 952929, + "y": 3294832 + }, + { + "type": "lineTo", + "x": 969597, + "y": 3092425 + }, + { + "type": "lineTo", + "x": 1033097, + "y": 3108300 + }, + { + "type": "lineTo", + "x": 1160097, + "y": 3082900 + }, + { + "type": "lineTo", + "x": 1293447, + "y": 3051150 + }, + { + "type": "lineTo", + "x": 1353772, + "y": 3044800 + }, + { + "type": "lineTo", + "x": 1391872, + "y": 3032100 + }, + { + "type": "lineTo", + "x": 1436322, + "y": 2959075 + }, + { + "type": "lineTo", + "x": 1452197, + "y": 2882875 + }, + { + "type": "lineTo", + "x": 1414097, + "y": 2819375 + }, + { + "type": "lineTo", + "x": 1347422, + "y": 2740000 + }, + { + "type": "lineTo", + "x": 1272810, + "y": 2678088 + }, + { + "type": "lineTo", + "x": 1198197, + "y": 2647925 + }, + { + "type": "lineTo", + "x": 1144222, + "y": 2616175 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis", + "color": "2F8E29", + "image_name": "Google Shape;112;p2", + "path_data": [ + { + "path_width": 1123950, + "path_height": 1288256, + "commands": [ + { + "type": "moveTo", + "x": 1115646, + "y": 2098651 + }, + { + "type": "lineTo", + "x": 1147396, + "y": 2222476 + }, + { + "type": "lineTo", + "x": 1185496, + "y": 2381226 + }, + { + "type": "lineTo", + "x": 1147396, + "y": 2613001 + }, + { + "type": "lineTo", + "x": 1064846, + "y": 2590776 + }, + { + "type": "lineTo", + "x": 848946, + "y": 2571726 + }, + { + "type": "lineTo", + "x": 807671, + "y": 2670151 + }, + { + "type": "lineTo", + "x": 794971, + "y": 2803501 + }, + { + "type": "lineTo", + "x": 782271, + "y": 2851126 + }, + { + "type": "lineTo", + "x": 814021, + "y": 2920976 + }, + { + "type": "lineTo", + "x": 823546, + "y": 2987651 + }, + { + "type": "lineTo", + "x": 893396, + "y": 3060676 + }, + { + "type": "lineTo", + "x": 963246, + "y": 3079726 + }, + { + "type": "lineTo", + "x": 941021, + "y": 3305151 + }, + { + "type": "lineTo", + "x": 900540, + "y": 3297213 + }, + { + "type": "lineTo", + "x": 849739, + "y": 3316265 + }, + { + "type": "lineTo", + "x": 758459, + "y": 3348807 + }, + { + "type": "lineTo", + "x": 640190, + "y": 3376588 + }, + { + "type": "lineTo", + "x": 514777, + "y": 3383732 + }, + { + "type": "lineTo", + "x": 410796, + "y": 3355951 + }, + { + "type": "lineTo", + "x": 299671, + "y": 3289276 + }, + { + "type": "lineTo", + "x": 194896, + "y": 3203551 + }, + { + "type": "lineTo", + "x": 104408, + "y": 3111476 + }, + { + "type": "lineTo", + "x": 68690, + "y": 3032894 + }, + { + "type": "lineTo", + "x": 61546, + "y": 2959076 + }, + { + "type": "lineTo", + "x": 83771, + "y": 2924151 + }, + { + "type": "cubicBezTo", + "x1": 117373, + "y1": 2913303, + "x2": 143831, + "y2": 2897693, + "x": 184577, + "y": 2891607 + }, + { + "type": "lineTo", + "x": 356821, + "y": 2755876 + }, + { + "type": "lineTo", + "x": 493346, + "y": 2632051 + }, + { + "type": "lineTo", + "x": 633839, + "y": 2471713 + }, + { + "type": "lineTo", + "x": 733059, + "y": 2302645 + }, + { + "type": "lineTo", + "x": 772746, + "y": 2152626 + }, + { + "type": "lineTo", + "x": 804496, + "y": 2124051 + }, + { + "type": "lineTo", + "x": 918796, + "y": 2101826 + }, + { + "type": "lineTo", + "x": 1010871, + "y": 2095476 + }, + { + "type": "lineTo", + "x": 1115646, + "y": 2098651 + }, + { + "type": "close" + } + ] + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_body.json b/boneset-api/data/annotations/ColoredRegions/cervical_body.json new file mode 100644 index 00000000..789b8a61 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_body.json @@ -0,0 +1,752 @@ +{ + "slide_number": 23, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "785", + "path_data": [ + { + "path_width": 1109803, + "path_height": 694331, + "commands": [ + { + "type": "moveTo", + "x": 4396431, + "y": 2771390 + }, + { + "type": "lineTo", + "x": 4265866, + "y": 2789193 + }, + { + "type": "lineTo", + "x": 4194648, + "y": 2783259 + }, + { + "type": "lineTo", + "x": 4129366, + "y": 2771390 + }, + { + "type": "lineTo", + "x": 4087823, + "y": 2771390 + }, + { + "type": "lineTo", + "x": 3980997, + "y": 2747652 + }, + { + "type": "lineTo", + "x": 3921649, + "y": 2759521 + }, + { + "type": "lineTo", + "x": 3844497, + "y": 2789193 + }, + { + "type": "lineTo", + "x": 3791084, + "y": 2848538 + }, + { + "type": "lineTo", + "x": 3749541, + "y": 2901948 + }, + { + "type": "lineTo", + "x": 3725801, + "y": 3020637 + }, + { + "type": "lineTo", + "x": 3743606, + "y": 3127457 + }, + { + "type": "lineTo", + "x": 3791084, + "y": 3127457 + }, + { + "type": "lineTo", + "x": 3802953, + "y": 3210539 + }, + { + "type": "lineTo", + "x": 3844497, + "y": 3287687 + }, + { + "type": "lineTo", + "x": 3927584, + "y": 3358900 + }, + { + "type": "lineTo", + "x": 4046279, + "y": 3441983 + }, + { + "type": "lineTo", + "x": 4194648, + "y": 3441983 + }, + { + "type": "lineTo", + "x": 4331148, + "y": 3441983 + }, + { + "type": "lineTo", + "x": 4414235, + "y": 3418245 + }, + { + "type": "lineTo", + "x": 4503257, + "y": 3388573 + }, + { + "type": "lineTo", + "x": 4592278, + "y": 3329228 + }, + { + "type": "lineTo", + "x": 4669430, + "y": 3252080 + }, + { + "type": "lineTo", + "x": 4740647, + "y": 3163063 + }, + { + "type": "lineTo", + "x": 4799995, + "y": 3091850 + }, + { + "type": "lineTo", + "x": 4835604, + "y": 3026571 + }, + { + "type": "lineTo", + "x": 4835604, + "y": 2961292 + }, + { + "type": "lineTo", + "x": 4776256, + "y": 2872275 + }, + { + "type": "lineTo", + "x": 4716908, + "y": 2795127 + }, + { + "type": "lineTo", + "x": 4616017, + "y": 2771390 + }, + { + "type": "lineTo", + "x": 4503257, + "y": 2771390 + }, + { + "type": "lineTo", + "x": 4396431, + "y": 2771390 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "786", + "path_data": [ + { + "path_width": 974725, + "path_height": 669925, + "commands": [ + { + "type": "moveTo", + "x": 4562476, + "y": 5197476 + }, + { + "type": "lineTo", + "x": 4451351, + "y": 5219701 + }, + { + "type": "lineTo", + "x": 4378326, + "y": 5238751 + }, + { + "type": "lineTo", + "x": 4298951, + "y": 5248276 + }, + { + "type": "lineTo", + "x": 4213226, + "y": 5232401 + }, + { + "type": "lineTo", + "x": 4140201, + "y": 5219701 + }, + { + "type": "lineTo", + "x": 4051301, + "y": 5213351 + }, + { + "type": "lineTo", + "x": 3959226, + "y": 5219701 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 5251451 + }, + { + "type": "lineTo", + "x": 3841751, + "y": 5289551 + }, + { + "type": "lineTo", + "x": 3800476, + "y": 5334001 + }, + { + "type": "lineTo", + "x": 3781426, + "y": 5407026 + }, + { + "type": "lineTo", + "x": 3765551, + "y": 5502276 + }, + { + "type": "lineTo", + "x": 3797301, + "y": 5575301 + }, + { + "type": "lineTo", + "x": 3822701, + "y": 5645151 + }, + { + "type": "lineTo", + "x": 3863976, + "y": 5689601 + }, + { + "type": "lineTo", + "x": 3892551, + "y": 5718176 + }, + { + "type": "lineTo", + "x": 3933826, + "y": 5762626 + }, + { + "type": "lineTo", + "x": 3997326, + "y": 5800726 + }, + { + "type": "lineTo", + "x": 4079876, + "y": 5832476 + }, + { + "type": "lineTo", + "x": 4137026, + "y": 5842001 + }, + { + "type": "lineTo", + "x": 4210051, + "y": 5857876 + }, + { + "type": "lineTo", + "x": 4311651, + "y": 5861051 + }, + { + "type": "lineTo", + "x": 4394201, + "y": 5867401 + }, + { + "type": "lineTo", + "x": 4448176, + "y": 5854701 + }, + { + "type": "lineTo", + "x": 4527551, + "y": 5813426 + }, + { + "type": "lineTo", + "x": 4578351, + "y": 5778501 + }, + { + "type": "lineTo", + "x": 4629151, + "y": 5727701 + }, + { + "type": "lineTo", + "x": 4679951, + "y": 5670551 + }, + { + "type": "lineTo", + "x": 4705351, + "y": 5619751 + }, + { + "type": "lineTo", + "x": 4730751, + "y": 5578476 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 5530851 + }, + { + "type": "lineTo", + "x": 4721226, + "y": 5445126 + }, + { + "type": "lineTo", + "x": 4692651, + "y": 5349876 + }, + { + "type": "lineTo", + "x": 4670426, + "y": 5292726 + }, + { + "type": "lineTo", + "x": 4625976, + "y": 5245101 + }, + { + "type": "lineTo", + "x": 4562476, + "y": 5197476 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "787", + "path_data": [ + { + "path_width": 895350, + "path_height": 571500, + "commands": [ + { + "type": "moveTo", + "x": 7515225, + "y": 3749676 + }, + { + "type": "lineTo", + "x": 7527925, + "y": 3838576 + }, + { + "type": "lineTo", + "x": 7512050, + "y": 3911601 + }, + { + "type": "lineTo", + "x": 7473950, + "y": 3981451 + }, + { + "type": "lineTo", + "x": 7454900, + "y": 4029076 + }, + { + "type": "lineTo", + "x": 7445375, + "y": 4067176 + }, + { + "type": "lineTo", + "x": 7429500, + "y": 4098926 + }, + { + "type": "lineTo", + "x": 7439025, + "y": 4140201 + }, + { + "type": "lineTo", + "x": 7505700, + "y": 4149726 + }, + { + "type": "lineTo", + "x": 7537450, + "y": 4156076 + }, + { + "type": "lineTo", + "x": 7620000, + "y": 4127501 + }, + { + "type": "lineTo", + "x": 7721600, + "y": 4162426 + }, + { + "type": "lineTo", + "x": 7820025, + "y": 4225926 + }, + { + "type": "lineTo", + "x": 7877175, + "y": 4248151 + }, + { + "type": "lineTo", + "x": 7981950, + "y": 4276726 + }, + { + "type": "lineTo", + "x": 8083550, + "y": 4289426 + }, + { + "type": "lineTo", + "x": 8140700, + "y": 4292601 + }, + { + "type": "lineTo", + "x": 8194675, + "y": 4311651 + }, + { + "type": "lineTo", + "x": 8232775, + "y": 4321176 + }, + { + "type": "lineTo", + "x": 8280400, + "y": 4308476 + }, + { + "type": "lineTo", + "x": 8299450, + "y": 4276726 + }, + { + "type": "lineTo", + "x": 8305800, + "y": 4251326 + }, + { + "type": "lineTo", + "x": 8324850, + "y": 4203701 + }, + { + "type": "lineTo", + "x": 8308975, + "y": 4137026 + }, + { + "type": "lineTo", + "x": 8286750, + "y": 4054476 + }, + { + "type": "lineTo", + "x": 8277225, + "y": 3971926 + }, + { + "type": "lineTo", + "x": 8270875, + "y": 3902076 + }, + { + "type": "lineTo", + "x": 8280400, + "y": 3825876 + }, + { + "type": "lineTo", + "x": 8293100, + "y": 3762376 + }, + { + "type": "lineTo", + "x": 8226425, + "y": 3813176 + }, + { + "type": "lineTo", + "x": 8156575, + "y": 3841751 + }, + { + "type": "lineTo", + "x": 8086725, + "y": 3851276 + }, + { + "type": "lineTo", + "x": 8026400, + "y": 3854451 + }, + { + "type": "lineTo", + "x": 7912100, + "y": 3844926 + }, + { + "type": "lineTo", + "x": 7820025, + "y": 3813176 + }, + { + "type": "lineTo", + "x": 7769225, + "y": 3784601 + }, + { + "type": "lineTo", + "x": 7724775, + "y": 3787776 + }, + { + "type": "lineTo", + "x": 7661275, + "y": 3800476 + }, + { + "type": "lineTo", + "x": 7585075, + "y": 3784601 + }, + { + "type": "lineTo", + "x": 7515225, + "y": 3749676 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "788", + "path_data": [ + { + "path_width": 428625, + "path_height": 406400, + "commands": [ + { + "type": "moveTo", + "x": 8131176, + "y": 3435350 + }, + { + "type": "lineTo", + "x": 8102601, + "y": 3390900 + }, + { + "type": "lineTo", + "x": 8089901, + "y": 3324225 + }, + { + "type": "lineTo", + "x": 8093076, + "y": 3263900 + }, + { + "type": "lineTo", + "x": 8067676, + "y": 3206750 + }, + { + "type": "lineTo", + "x": 8054976, + "y": 3178175 + }, + { + "type": "lineTo", + "x": 8039101, + "y": 3130550 + }, + { + "type": "lineTo", + "x": 8010526, + "y": 3089275 + }, + { + "type": "lineTo", + "x": 7978776, + "y": 3060700 + }, + { + "type": "lineTo", + "x": 7940676, + "y": 3044825 + }, + { + "type": "lineTo", + "x": 7893051, + "y": 3041650 + }, + { + "type": "lineTo", + "x": 7832726, + "y": 3038475 + }, + { + "type": "lineTo", + "x": 7791451, + "y": 3044825 + }, + { + "type": "lineTo", + "x": 7759701, + "y": 3044825 + }, + { + "type": "lineTo", + "x": 7724776, + "y": 3070225 + }, + { + "type": "lineTo", + "x": 7702551, + "y": 3114675 + }, + { + "type": "lineTo", + "x": 7705726, + "y": 3181350 + }, + { + "type": "lineTo", + "x": 7734301, + "y": 3228975 + }, + { + "type": "lineTo", + "x": 7759701, + "y": 3260725 + }, + { + "type": "lineTo", + "x": 7826376, + "y": 3292475 + }, + { + "type": "lineTo", + "x": 7864476, + "y": 3305175 + }, + { + "type": "lineTo", + "x": 7905751, + "y": 3375025 + }, + { + "type": "lineTo", + "x": 7947026, + "y": 3422650 + }, + { + "type": "lineTo", + "x": 8001001, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 8074026, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 8131176, + "y": 3435350 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_lamina.json b/boneset-api/data/annotations/ColoredRegions/cervical_lamina.json new file mode 100644 index 00000000..390b7bbd --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_lamina.json @@ -0,0 +1,579 @@ +{ + "slide_number": 26, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "868", + "path_data": [ + { + "path_width": 546100, + "path_height": 549275, + "commands": [ + { + "type": "moveTo", + "x": 4419600, + "y": 2085976 + }, + { + "type": "lineTo", + "x": 4337050, + "y": 2225676 + }, + { + "type": "lineTo", + "x": 4410075, + "y": 2257426 + }, + { + "type": "lineTo", + "x": 4479925, + "y": 2289176 + }, + { + "type": "lineTo", + "x": 4533900, + "y": 2320926 + }, + { + "type": "lineTo", + "x": 4594225, + "y": 2381251 + }, + { + "type": "lineTo", + "x": 4641850, + "y": 2428876 + }, + { + "type": "lineTo", + "x": 4664075, + "y": 2482851 + }, + { + "type": "lineTo", + "x": 4692650, + "y": 2527301 + }, + { + "type": "lineTo", + "x": 4724400, + "y": 2581276 + }, + { + "type": "lineTo", + "x": 4768850, + "y": 2635251 + }, + { + "type": "lineTo", + "x": 4803775, + "y": 2546351 + }, + { + "type": "lineTo", + "x": 4883150, + "y": 2444751 + }, + { + "type": "lineTo", + "x": 4819650, + "y": 2425701 + }, + { + "type": "lineTo", + "x": 4784725, + "y": 2413001 + }, + { + "type": "lineTo", + "x": 4718050, + "y": 2368551 + }, + { + "type": "lineTo", + "x": 4641850, + "y": 2314576 + }, + { + "type": "lineTo", + "x": 4572000, + "y": 2247901 + }, + { + "type": "lineTo", + "x": 4527550, + "y": 2187576 + }, + { + "type": "lineTo", + "x": 4489450, + "y": 2143126 + }, + { + "type": "lineTo", + "x": 4419600, + "y": 2085976 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "869", + "path_data": [ + { + "path_width": 476250, + "path_height": 441325, + "commands": [ + { + "type": "moveTo", + "x": 4130675, + "y": 2073276 + }, + { + "type": "lineTo", + "x": 4197350, + "y": 2216151 + }, + { + "type": "lineTo", + "x": 4140200, + "y": 2251076 + }, + { + "type": "lineTo", + "x": 4032250, + "y": 2324101 + }, + { + "type": "lineTo", + "x": 3959225, + "y": 2406651 + }, + { + "type": "lineTo", + "x": 3911600, + "y": 2438401 + }, + { + "type": "lineTo", + "x": 3854450, + "y": 2489201 + }, + { + "type": "lineTo", + "x": 3838575, + "y": 2514601 + }, + { + "type": "lineTo", + "x": 3721100, + "y": 2397126 + }, + { + "type": "lineTo", + "x": 3806825, + "y": 2352676 + }, + { + "type": "lineTo", + "x": 3876675, + "y": 2311401 + }, + { + "type": "lineTo", + "x": 3924300, + "y": 2263776 + }, + { + "type": "lineTo", + "x": 3990975, + "y": 2209801 + }, + { + "type": "lineTo", + "x": 4041775, + "y": 2174876 + }, + { + "type": "lineTo", + "x": 4076700, + "y": 2149476 + }, + { + "type": "lineTo", + "x": 4130675, + "y": 2073276 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "870", + "path_data": [ + { + "path_width": 482600, + "path_height": 520700, + "commands": [ + { + "type": "moveTo", + "x": 4060825, + "y": 4508500 + }, + { + "type": "lineTo", + "x": 4105275, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 4140200, + "y": 4737100 + }, + { + "type": "lineTo", + "x": 4089400, + "y": 4759325 + }, + { + "type": "lineTo", + "x": 4022725, + "y": 4794250 + }, + { + "type": "lineTo", + "x": 3971925, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 3943350, + "y": 4911725 + }, + { + "type": "lineTo", + "x": 3914775, + "y": 4965700 + }, + { + "type": "lineTo", + "x": 3870325, + "y": 5003800 + }, + { + "type": "lineTo", + "x": 3841750, + "y": 5029200 + }, + { + "type": "lineTo", + "x": 3749675, + "y": 4911725 + }, + { + "type": "lineTo", + "x": 3657600, + "y": 4829175 + }, + { + "type": "lineTo", + "x": 3778250, + "y": 4778375 + }, + { + "type": "lineTo", + "x": 3895725, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 3965575, + "y": 4616450 + }, + { + "type": "lineTo", + "x": 3978275, + "y": 4578350 + }, + { + "type": "lineTo", + "x": 4060825, + "y": 4508500 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "871", + "path_data": [ + { + "path_width": 454025, + "path_height": 571500, + "commands": [ + { + "type": "moveTo", + "x": 4425951, + "y": 4467225 + }, + { + "type": "lineTo", + "x": 4352926, + "y": 4705350 + }, + { + "type": "lineTo", + "x": 4476751, + "y": 4778375 + }, + { + "type": "lineTo", + "x": 4581526, + "y": 4883150 + }, + { + "type": "lineTo", + "x": 4651376, + "y": 4984750 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 5035550 + }, + { + "type": "lineTo", + "x": 4705351, + "y": 5038725 + }, + { + "type": "lineTo", + "x": 4705351, + "y": 4965700 + }, + { + "type": "lineTo", + "x": 4708526, + "y": 4879975 + }, + { + "type": "lineTo", + "x": 4806951, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 4743451, + "y": 4803775 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 4749800 + }, + { + "type": "lineTo", + "x": 4648201, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 4591051, + "y": 4673600 + }, + { + "type": "lineTo", + "x": 4511676, + "y": 4587875 + }, + { + "type": "lineTo", + "x": 4425951, + "y": 4467225 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "872", + "path_data": [ + { + "path_width": 949325, + "path_height": 889000, + "commands": [ + { + "type": "moveTo", + "x": 7165976, + "y": 3203575 + }, + { + "type": "lineTo", + "x": 7226301, + "y": 3336925 + }, + { + "type": "lineTo", + "x": 7327901, + "y": 3498850 + }, + { + "type": "lineTo", + "x": 7385051, + "y": 3711575 + }, + { + "type": "lineTo", + "x": 7267576, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 7169151, + "y": 3851275 + }, + { + "type": "lineTo", + "x": 7086601, + "y": 3975100 + }, + { + "type": "lineTo", + "x": 7045326, + "y": 4003675 + }, + { + "type": "lineTo", + "x": 6997701, + "y": 4070350 + }, + { + "type": "lineTo", + "x": 6969126, + "y": 4092575 + }, + { + "type": "lineTo", + "x": 6931026, + "y": 4089400 + }, + { + "type": "lineTo", + "x": 6870701, + "y": 4041775 + }, + { + "type": "lineTo", + "x": 6781801, + "y": 4013200 + }, + { + "type": "lineTo", + "x": 6629401, + "y": 4016375 + }, + { + "type": "lineTo", + "x": 6597651, + "y": 3968750 + }, + { + "type": "lineTo", + "x": 6435726, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 6534151, + "y": 3654425 + }, + { + "type": "lineTo", + "x": 6591301, + "y": 3603625 + }, + { + "type": "lineTo", + "x": 6607176, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 6661151, + "y": 3530600 + }, + { + "type": "lineTo", + "x": 6696076, + "y": 3492500 + }, + { + "type": "lineTo", + "x": 6788151, + "y": 3467100 + }, + { + "type": "lineTo", + "x": 6899276, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 6985001, + "y": 3365500 + }, + { + "type": "lineTo", + "x": 7048501, + "y": 3308350 + }, + { + "type": "lineTo", + "x": 7083426, + "y": 3270250 + }, + { + "type": "lineTo", + "x": 7165976, + "y": 3203575 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_pedicle.json b/boneset-api/data/annotations/ColoredRegions/cervical_pedicle.json new file mode 100644 index 00000000..525e3807 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_pedicle.json @@ -0,0 +1,541 @@ +{ + "slide_number": 24, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "810", + "path_data": [ + { + "path_width": 309851, + "path_height": 474176, + "commands": [ + { + "type": "moveTo", + "x": 3747808, + "y": 4109462 + }, + { + "type": "lineTo", + "x": 3687567, + "y": 4181388 + }, + { + "type": "lineTo", + "x": 3668742, + "y": 4226815 + }, + { + "type": "lineTo", + "x": 3638622, + "y": 4317669 + }, + { + "type": "lineTo", + "x": 3638622, + "y": 4408523 + }, + { + "type": "lineTo", + "x": 3672507, + "y": 4510734 + }, + { + "type": "lineTo", + "x": 3623196, + "y": 4495591 + }, + { + "type": "lineTo", + "x": 3577201, + "y": 4461887 + }, + { + "type": "lineTo", + "x": 3567086, + "y": 4397166 + }, + { + "type": "lineTo", + "x": 3578381, + "y": 4329026 + }, + { + "type": "lineTo", + "x": 3548992, + "y": 4267480 + }, + { + "type": "cubicBezTo", + "x1": 3566144, + "y1": 4236695, + "x2": 3500747, + "y2": 4250358, + "x": 3517899, + "y": 4219573 + }, + { + "type": "cubicBezTo", + "x1": 3540124, + "y1": 4199465, + "x2": 3413125, + "y2": 4223807, + "x": 3435350, + "y": 4203699 + }, + { + "type": "cubicBezTo", + "x1": 3471333, + "y1": 4188882, + "x2": 3383492, + "y2": 4174065, + "x": 3419475, + "y": 4159248 + }, + { + "type": "cubicBezTo", + "x1": 3464982, + "y1": 4148665, + "x2": 3345392, + "y2": 4131731, + "x": 3390900, + "y": 4121148 + }, + { + "type": "cubicBezTo", + "x1": 3394604, + "y1": 4103685, + "x2": 3392486, + "y2": 4072995, + "x": 3409949, + "y": 4054474 + }, + { + "type": "cubicBezTo", + "x1": 3427412, + "y1": 4035954, + "x2": 3461808, + "y2": 4020077, + "x": 3486150, + "y": 4006848 + }, + { + "type": "cubicBezTo", + "x1": 3510491, + "y1": 3993620, + "x2": 3521074, + "y2": 3972453, + "x": 3540124, + "y": 3962399 + }, + { + "type": "cubicBezTo", + "x1": 3559174, + "y1": 3952346, + "x2": 3594949, + "y2": 3938112, + "x": 3609974, + "y": 3949699 + }, + { + "type": "lineTo", + "x": 3646152, + "y": 4044620 + }, + { + "type": "lineTo", + "x": 3691332, + "y": 4079177 + }, + { + "type": "lineTo", + "x": 3747808, + "y": 4109462 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "812", + "path_data": [ + { + "path_width": 282574, + "path_height": 390287, + "commands": [ + { + "type": "moveTo", + "x": 6747668, + "y": 4097497 + }, + { + "type": "lineTo", + "x": 6684961, + "y": 4142132 + }, + { + "type": "lineTo", + "x": 6649242, + "y": 4184178 + }, + { + "type": "lineTo", + "x": 6637336, + "y": 4260624 + }, + { + "type": "lineTo", + "x": 6597648, + "y": 4287381 + }, + { + "type": "lineTo", + "x": 6589711, + "y": 4447919 + }, + { + "type": "cubicBezTo", + "x1": 6571189, + "y1": 4447919, + "x2": 6546583, + "y2": 4462693, + "x": 6534148, + "y": 4447919 + }, + { + "type": "cubicBezTo", + "x1": 6521713, + "y1": 4433144, + "x2": 6508748, + "y2": 4407873, + "x": 6515098, + "y": 4359274 + }, + { + "type": "lineTo", + "x": 6530179, + "y": 4242808 + }, + { + "type": "lineTo", + "x": 6484935, + "y": 4196167 + }, + { + "type": "cubicBezTo", + "x1": 6443131, + "y1": 4164811, + "x2": 6426727, + "y2": 4174731, + "x": 6394449, + "y": 4133849 + }, + { + "type": "cubicBezTo", + "x1": 6419849, + "y1": 4090459, + "x2": 6416675, + "y2": 4091516, + "x": 6454775, + "y": 4044950 + }, + { + "type": "cubicBezTo", + "x1": 6518275, + "y1": 4012143, + "x2": 6527799, + "y2": 3988857, + "x": 6565899, + "y": 3984625 + }, + { + "type": "lineTo", + "x": 6627017, + "y": 4001476 + }, + { + "type": "lineTo", + "x": 6688930, + "y": 4077153 + }, + { + "type": "lineTo", + "x": 6747668, + "y": 4097497 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "813", + "path_data": [ + { + "path_width": 282694, + "path_height": 414341, + "commands": [ + { + "type": "moveTo", + "x": 7683503, + "y": 4128074 + }, + { + "type": "cubicBezTo", + "x1": 7697261, + "y1": 4124707, + "x2": 7730069, + "y2": 4130866, + "x": 7743828, + "y": 4127499 + }, + { + "type": "lineTo", + "x": 7797803, + "y": 4083625 + }, + { + "type": "lineTo", + "x": 7850985, + "y": 4003202 + }, + { + "type": "cubicBezTo", + "x1": 7864214, + "y1": 3995168, + "x2": 7887629, + "y2": 3996716, + "x": 7918453, + "y": 4019549 + }, + { + "type": "cubicBezTo", + "x1": 7961977, + "y1": 4042382, + "x2": 7958142, + "y2": 4062412, + "x": 7981955, + "y": 4095750 + }, + { + "type": "cubicBezTo", + "x1": 8034870, + "y1": 4139143, + "x2": 8017937, + "y2": 4134908, + "x": 8029579, + "y": 4171950 + }, + { + "type": "cubicBezTo", + "x1": 8045453, + "y1": 4213224, + "x2": 8032752, + "y2": 4216400, + "x": 8016876, + "y": 4219574 + }, + { + "type": "cubicBezTo", + "x1": 8004176, + "y1": 4218516, + "x2": 8020050, + "y2": 4252383, + "x": 8007350, + "y": 4251324 + }, + { + "type": "cubicBezTo", + "x1": 7968191, + "y1": 4249208, + "x2": 7944908, + "y2": 4266141, + "x": 7905749, + "y": 4264024 + }, + { + "type": "lineTo", + "x": 7878765, + "y": 4279612 + }, + { + "type": "lineTo", + "x": 7872415, + "y": 4327483 + }, + { + "type": "lineTo", + "x": 7890673, + "y": 4381057 + }, + { + "type": "cubicBezTo", + "x1": 7889349, + "y1": 4385438, + "x2": 7910248, + "y2": 4396168, + "x": 7908924, + "y": 4400549 + }, + { + "type": "lineTo", + "x": 7887498, + "y": 4446098 + }, + { + "type": "lineTo", + "x": 7863685, + "y": 4476615 + }, + { + "type": "lineTo", + "x": 7788278, + "y": 4497608 + }, + { + "type": "lineTo", + "x": 7780341, + "y": 4428806 + }, + { + "type": "lineTo", + "x": 7764466, + "y": 4348537 + }, + { + "type": "lineTo", + "x": 7736684, + "y": 4252979 + }, + { + "type": "lineTo", + "x": 7728747, + "y": 4180354 + }, + { + "type": "lineTo", + "x": 7683503, + "y": 4128074 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "814", + "path_data": [ + { + "path_width": 336550, + "path_height": 371475, + "commands": [ + { + "type": "moveTo", + "x": 4857750, + "y": 3943351 + }, + { + "type": "lineTo", + "x": 4911725, + "y": 4038601 + }, + { + "type": "lineTo", + "x": 4949825, + "y": 4086226 + }, + { + "type": "lineTo", + "x": 5006975, + "y": 4162426 + }, + { + "type": "lineTo", + "x": 5095875, + "y": 4206876 + }, + { + "type": "lineTo", + "x": 5032375, + "y": 4222751 + }, + { + "type": "lineTo", + "x": 4991100, + "y": 4238626 + }, + { + "type": "lineTo", + "x": 4940300, + "y": 4276726 + }, + { + "type": "lineTo", + "x": 4924425, + "y": 4314826 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 4270376 + }, + { + "type": "lineTo", + "x": 4857750, + "y": 4203701 + }, + { + "type": "lineTo", + "x": 4806950, + "y": 4156076 + }, + { + "type": "lineTo", + "x": 4759325, + "y": 4117976 + }, + { + "type": "lineTo", + "x": 4787900, + "y": 4083051 + }, + { + "type": "lineTo", + "x": 4826000, + "y": 4044951 + }, + { + "type": "lineTo", + "x": 4857750, + "y": 3943351 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_spinous_process.json b/boneset-api/data/annotations/ColoredRegions/cervical_spinous_process.json new file mode 100644 index 00000000..7a71b838 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_spinous_process.json @@ -0,0 +1,489 @@ +{ + "slide_number": 27, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "897", + "path_data": [ + { + "path_width": 714375, + "path_height": 447675, + "commands": [ + { + "type": "moveTo", + "x": 6397626, + "y": 4133851 + }, + { + "type": "lineTo", + "x": 6353176, + "y": 3994151 + }, + { + "type": "lineTo", + "x": 6276976, + "y": 3829051 + }, + { + "type": "lineTo", + "x": 6184901, + "y": 3889376 + }, + { + "type": "lineTo", + "x": 6086476, + "y": 3924301 + }, + { + "type": "lineTo", + "x": 6026151, + "y": 3921126 + }, + { + "type": "lineTo", + "x": 5969001, + "y": 3898901 + }, + { + "type": "lineTo", + "x": 5921376, + "y": 3873501 + }, + { + "type": "lineTo", + "x": 5895976, + "y": 3857626 + }, + { + "type": "lineTo", + "x": 5810251, + "y": 3879851 + }, + { + "type": "lineTo", + "x": 5743576, + "y": 3898901 + }, + { + "type": "lineTo", + "x": 5708651, + "y": 3927476 + }, + { + "type": "lineTo", + "x": 5683251, + "y": 3956051 + }, + { + "type": "lineTo", + "x": 5683251, + "y": 4019551 + }, + { + "type": "lineTo", + "x": 5695951, + "y": 4083051 + }, + { + "type": "lineTo", + "x": 5711826, + "y": 4121151 + }, + { + "type": "lineTo", + "x": 5772151, + "y": 4133851 + }, + { + "type": "lineTo", + "x": 5756276, + "y": 4216401 + }, + { + "type": "lineTo", + "x": 5765801, + "y": 4257676 + }, + { + "type": "lineTo", + "x": 5822951, + "y": 4276726 + }, + { + "type": "lineTo", + "x": 5886451, + "y": 4270376 + }, + { + "type": "lineTo", + "x": 5908676, + "y": 4235451 + }, + { + "type": "lineTo", + "x": 6029326, + "y": 4222751 + }, + { + "type": "lineTo", + "x": 6089651, + "y": 4229101 + }, + { + "type": "lineTo", + "x": 6159501, + "y": 4248151 + }, + { + "type": "lineTo", + "x": 6219826, + "y": 4254501 + }, + { + "type": "lineTo", + "x": 6267451, + "y": 4232276 + }, + { + "type": "lineTo", + "x": 6324601, + "y": 4194176 + }, + { + "type": "lineTo", + "x": 6397626, + "y": 4133851 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "898", + "path_data": [ + { + "path_width": 333375, + "path_height": 654050, + "commands": [ + { + "type": "moveTo", + "x": 4406901, + "y": 2076450 + }, + { + "type": "lineTo", + "x": 4337051, + "y": 2203450 + }, + { + "type": "lineTo", + "x": 4235451, + "y": 2216150 + }, + { + "type": "lineTo", + "x": 4114801, + "y": 2114550 + }, + { + "type": "lineTo", + "x": 4149726, + "y": 2028825 + }, + { + "type": "lineTo", + "x": 4191001, + "y": 1933575 + }, + { + "type": "lineTo", + "x": 4213226, + "y": 1876425 + }, + { + "type": "lineTo", + "x": 4184651, + "y": 1844675 + }, + { + "type": "lineTo", + "x": 4175126, + "y": 1771650 + }, + { + "type": "lineTo", + "x": 4194176, + "y": 1670050 + }, + { + "type": "lineTo", + "x": 4194176, + "y": 1593850 + }, + { + "type": "lineTo", + "x": 4257676, + "y": 1562100 + }, + { + "type": "lineTo", + "x": 4305301, + "y": 1581150 + }, + { + "type": "lineTo", + "x": 4308476, + "y": 1660525 + }, + { + "type": "lineTo", + "x": 4295776, + "y": 1711325 + }, + { + "type": "lineTo", + "x": 4324351, + "y": 1736725 + }, + { + "type": "lineTo", + "x": 4356101, + "y": 1733550 + }, + { + "type": "lineTo", + "x": 4397376, + "y": 1701800 + }, + { + "type": "lineTo", + "x": 4429126, + "y": 1727200 + }, + { + "type": "lineTo", + "x": 4448176, + "y": 1812925 + }, + { + "type": "lineTo", + "x": 4432301, + "y": 1828800 + }, + { + "type": "lineTo", + "x": 4391026, + "y": 1828800 + }, + { + "type": "lineTo", + "x": 4378326, + "y": 1879600 + }, + { + "type": "lineTo", + "x": 4381501, + "y": 1920875 + }, + { + "type": "lineTo", + "x": 4403726, + "y": 1971675 + }, + { + "type": "cubicBezTo", + "x1": 4404784, + "y1": 2006600, + "x2": 4405843, + "y2": 2041525, + "x": 4406901, + "y": 2076450 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "899", + "path_data": [ + { + "path_width": 495300, + "path_height": 809625, + "commands": [ + { + "type": "moveTo", + "x": 3990975, + "y": 4549776 + }, + { + "type": "lineTo", + "x": 4146550, + "y": 4724401 + }, + { + "type": "lineTo", + "x": 4267200, + "y": 4699001 + }, + { + "type": "lineTo", + "x": 4359275, + "y": 4714876 + }, + { + "type": "lineTo", + "x": 4486275, + "y": 4527551 + }, + { + "type": "lineTo", + "x": 4403725, + "y": 4448176 + }, + { + "type": "lineTo", + "x": 4384675, + "y": 4340226 + }, + { + "type": "lineTo", + "x": 4352925, + "y": 4241801 + }, + { + "type": "lineTo", + "x": 4346575, + "y": 4203701 + }, + { + "type": "lineTo", + "x": 4375150, + "y": 4165601 + }, + { + "type": "lineTo", + "x": 4375150, + "y": 4035426 + }, + { + "type": "lineTo", + "x": 4365625, + "y": 3921126 + }, + { + "type": "lineTo", + "x": 4314825, + "y": 3914776 + }, + { + "type": "lineTo", + "x": 4257675, + "y": 3933826 + }, + { + "type": "lineTo", + "x": 4257675, + "y": 4044951 + }, + { + "type": "lineTo", + "x": 4238625, + "y": 4044951 + }, + { + "type": "lineTo", + "x": 4197350, + "y": 4032251 + }, + { + "type": "lineTo", + "x": 4159250, + "y": 3997326 + }, + { + "type": "lineTo", + "x": 4121150, + "y": 3975101 + }, + { + "type": "lineTo", + "x": 4092575, + "y": 4041776 + }, + { + "type": "lineTo", + "x": 4086225, + "y": 4076701 + }, + { + "type": "lineTo", + "x": 4127500, + "y": 4102101 + }, + { + "type": "lineTo", + "x": 4168775, + "y": 4143376 + }, + { + "type": "lineTo", + "x": 4165600, + "y": 4210051 + }, + { + "type": "lineTo", + "x": 4133850, + "y": 4251326 + }, + { + "type": "lineTo", + "x": 4111625, + "y": 4318001 + }, + { + "type": "lineTo", + "x": 4108450, + "y": 4375151 + }, + { + "type": "lineTo", + "x": 4098925, + "y": 4441826 + }, + { + "type": "lineTo", + "x": 4067175, + "y": 4518026 + }, + { + "type": "lineTo", + "x": 3990975, + "y": 4549776 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_transverse_process.json b/boneset-api/data/annotations/ColoredRegions/cervical_transverse_process.json new file mode 100644 index 00000000..b33e9e0c --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_transverse_process.json @@ -0,0 +1,1069 @@ +{ + "slide_number": 25, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "839", + "path_data": [ + { + "path_width": 587375, + "path_height": 615950, + "commands": [ + { + "type": "moveTo", + "x": 3438524, + "y": 2816226 + }, + { + "type": "cubicBezTo", + "x1": 3451224, + "y1": 2781301, + "x2": 3479799, + "y2": 2816226, + "x": 3492499, + "y": 2781301 + }, + { + "type": "lineTo", + "x": 3543299, + "y": 2749551 + }, + { + "type": "lineTo", + "x": 3536949, + "y": 2794001 + }, + { + "type": "lineTo", + "x": 3562349, + "y": 2844801 + }, + { + "type": "lineTo", + "x": 3498849, + "y": 2873376 + }, + { + "type": "lineTo", + "x": 3489324, + "y": 2911476 + }, + { + "type": "lineTo", + "x": 3524249, + "y": 2933701 + }, + { + "type": "cubicBezTo", + "x1": 3518957, + "y1": 2943226, + "x2": 3485091, + "y2": 2959101, + "x": 3479799, + "y": 2968626 + }, + { + "type": "cubicBezTo", + "x1": 3481916, + "y1": 2980267, + "x2": 3453872, + "y2": 3039533, + "x": 3486151, + "y": 3048000 + }, + { + "type": "cubicBezTo", + "x1": 3502555, + "y1": 3058583, + "x2": 3499381, + "y2": 3100387, + "x": 3530601, + "y": 3095625 + }, + { + "type": "cubicBezTo", + "x1": 3561821, + "y1": 3090863, + "x2": 3649662, + "y2": 3008843, + "x": 3673474, + "y": 3019426 + }, + { + "type": "lineTo", + "x": 3721099, + "y": 3095626 + }, + { + "type": "lineTo", + "x": 3641724, + "y": 3127376 + }, + { + "type": "lineTo", + "x": 3578224, + "y": 3171826 + }, + { + "type": "lineTo", + "x": 3540124, + "y": 3200401 + }, + { + "type": "lineTo", + "x": 3498849, + "y": 3235326 + }, + { + "type": "lineTo", + "x": 3432174, + "y": 3267076 + }, + { + "type": "lineTo", + "x": 3378199, + "y": 3298826 + }, + { + "type": "lineTo", + "x": 3343274, + "y": 3333751 + }, + { + "type": "lineTo", + "x": 3324224, + "y": 3365501 + }, + { + "type": "lineTo", + "x": 3260724, + "y": 3333751 + }, + { + "type": "lineTo", + "x": 3254374, + "y": 3276601 + }, + { + "type": "lineTo", + "x": 3254374, + "y": 3232151 + }, + { + "type": "lineTo", + "x": 3295649, + "y": 3162301 + }, + { + "type": "lineTo", + "x": 3317874, + "y": 3098801 + }, + { + "type": "lineTo", + "x": 3314699, + "y": 3035301 + }, + { + "type": "lineTo", + "x": 3286124, + "y": 2965451 + }, + { + "type": "lineTo", + "x": 3225799, + "y": 2940051 + }, + { + "type": "lineTo", + "x": 3184524, + "y": 2940051 + }, + { + "type": "lineTo", + "x": 3155949, + "y": 2940051 + }, + { + "type": "lineTo", + "x": 3133724, + "y": 2886076 + }, + { + "type": "lineTo", + "x": 3184524, + "y": 2867026 + }, + { + "type": "lineTo", + "x": 3238499, + "y": 2828926 + }, + { + "type": "lineTo", + "x": 3257549, + "y": 2790826 + }, + { + "type": "cubicBezTo", + "x1": 3268662, + "y1": 2785534, + "x2": 3267709, + "y2": 2747540, + "x": 3282949, + "y": 2752726 + }, + { + "type": "cubicBezTo", + "x1": 3298189, + "y1": 2757912, + "x2": 3341687, + "y2": 2817814, + "x": 3348989, + "y": 2821941 + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "840", + "path_data": [ + { + "path_width": 600075, + "path_height": 625475, + "commands": [ + { + "type": "moveTo", + "x": 5295901, + "y": 2889252 + }, + { + "type": "lineTo", + "x": 5251451, + "y": 2898777 + }, + { + "type": "lineTo", + "x": 5197476, + "y": 2886077 + }, + { + "type": "cubicBezTo", + "x1": 5155142, + "y1": 2893485, + "x2": 5166784, + "y2": 2837394, + "x": 5124450, + "y": 2844802 + }, + { + "type": "lineTo", + "x": 4962526, + "y": 2768602 + }, + { + "type": "lineTo", + "x": 5029201, + "y": 2794002 + }, + { + "type": "lineTo", + "x": 5006976, + "y": 2838452 + }, + { + "type": "cubicBezTo", + "x1": 5001684, + "y1": 2856443, + "x2": 5037668, + "y2": 2893485, + "x": 5032376, + "y": 2911476 + }, + { + "type": "lineTo", + "x": 5076826, + "y": 2971802 + }, + { + "type": "cubicBezTo", + "x1": 5073122, + "y1": 2996144, + "x2": 5067301, + "y2": 3028422, + "x": 5076826, + "y": 3057526 + }, + { + "type": "cubicBezTo", + "x1": 5086351, + "y1": 3086630, + "x2": 5042430, + "y2": 3129493, + "x": 5035551, + "y": 3140076 + }, + { + "type": "lineTo", + "x": 4968876, + "y": 3121027 + }, + { + "type": "lineTo", + "x": 4886326, + "y": 3057527 + }, + { + "type": "lineTo", + "x": 4835526, + "y": 2978152 + }, + { + "type": "lineTo", + "x": 4822826, + "y": 3054352 + }, + { + "type": "lineTo", + "x": 4762501, + "y": 3143252 + }, + { + "type": "lineTo", + "x": 4835526, + "y": 3146427 + }, + { + "type": "lineTo", + "x": 4883151, + "y": 3168652 + }, + { + "type": "lineTo", + "x": 4962526, + "y": 3206752 + }, + { + "type": "lineTo", + "x": 5029201, + "y": 3232152 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 3254377 + }, + { + "type": "lineTo", + "x": 5092701, + "y": 3298827 + }, + { + "type": "lineTo", + "x": 5127626, + "y": 3340102 + }, + { + "type": "lineTo", + "x": 5165726, + "y": 3387727 + }, + { + "type": "lineTo", + "x": 5191126, + "y": 3394077 + }, + { + "type": "lineTo", + "x": 5219701, + "y": 3384552 + }, + { + "type": "lineTo", + "x": 5241926, + "y": 3346452 + }, + { + "type": "lineTo", + "x": 5216526, + "y": 3286127 + }, + { + "type": "lineTo", + "x": 5210176, + "y": 3244852 + }, + { + "type": "lineTo", + "x": 5178426, + "y": 3190877 + }, + { + "type": "lineTo", + "x": 5168901, + "y": 3124202 + }, + { + "type": "lineTo", + "x": 5175251, + "y": 3076577 + }, + { + "type": "lineTo", + "x": 5200651, + "y": 3025777 + }, + { + "type": "lineTo", + "x": 5232401, + "y": 2990852 + }, + { + "type": "lineTo", + "x": 5289551, + "y": 3000377 + }, + { + "type": "lineTo", + "x": 5327651, + "y": 3032127 + }, + { + "type": "lineTo", + "x": 5349876, + "y": 3038477 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 2968627 + }, + { + "type": "lineTo", + "x": 5330826, + "y": 2955927 + }, + { + "type": "lineTo", + "x": 5311776, + "y": 2921002 + }, + { + "type": "lineTo", + "x": 5295901, + "y": 2889252 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "841", + "path_data": [ + { + "path_width": 857250, + "path_height": 663575, + "commands": [ + { + "type": "moveTo", + "x": 7629526, + "y": 3609978 + }, + { + "type": "lineTo", + "x": 7581901, + "y": 3587753 + }, + { + "type": "lineTo", + "x": 7562851, + "y": 3543303 + }, + { + "type": "lineTo", + "x": 7597776, + "y": 3444878 + }, + { + "type": "lineTo", + "x": 7632701, + "y": 3359153 + }, + { + "type": "lineTo", + "x": 7673976, + "y": 3276603 + }, + { + "type": "lineTo", + "x": 7708901, + "y": 3194053 + }, + { + "type": "lineTo", + "x": 7737476, + "y": 3235328 + }, + { + "type": "lineTo", + "x": 7759701, + "y": 3270253 + }, + { + "type": "lineTo", + "x": 7823201, + "y": 3295653 + }, + { + "type": "lineTo", + "x": 7870826, + "y": 3317878 + }, + { + "type": "lineTo", + "x": 7902576, + "y": 3359153 + }, + { + "type": "lineTo", + "x": 7934326, + "y": 3413128 + }, + { + "type": "lineTo", + "x": 7972426, + "y": 3435353 + }, + { + "type": "lineTo", + "x": 8086726, + "y": 3438528 + }, + { + "type": "lineTo", + "x": 8166101, + "y": 3438528 + }, + { + "type": "lineTo", + "x": 8248651, + "y": 3438528 + }, + { + "type": "lineTo", + "x": 8302626, + "y": 3419478 + }, + { + "type": "lineTo", + "x": 8362951, + "y": 3444878 + }, + { + "type": "lineTo", + "x": 8385176, + "y": 3495678 + }, + { + "type": "lineTo", + "x": 8416926, + "y": 3559178 + }, + { + "type": "lineTo", + "x": 8420101, + "y": 3606803 + }, + { + "type": "lineTo", + "x": 8401051, + "y": 3702053 + }, + { + "type": "lineTo", + "x": 8324851, + "y": 3756028 + }, + { + "type": "lineTo", + "x": 8235951, + "y": 3800478 + }, + { + "type": "lineTo", + "x": 8137526, + "y": 3854453 + }, + { + "type": "lineTo", + "x": 8080376, + "y": 3857628 + }, + { + "type": "lineTo", + "x": 7981951, + "y": 3851278 + }, + { + "type": "lineTo", + "x": 7899401, + "y": 3841753 + }, + { + "type": "lineTo", + "x": 7813676, + "y": 3825878 + }, + { + "type": "lineTo", + "x": 7743826, + "y": 3746503 + }, + { + "type": "lineTo", + "x": 7718426, + "y": 3698878 + }, + { + "type": "lineTo", + "x": 7670801, + "y": 3632203 + }, + { + "type": "lineTo", + "x": 7629526, + "y": 3609978 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "842", + "path_data": [ + { + "path_width": 542925, + "path_height": 688975, + "commands": [ + { + "type": "moveTo", + "x": 3295651, + "y": 5089526 + }, + { + "type": "lineTo", + "x": 3311526, + "y": 5146676 + }, + { + "type": "lineTo", + "x": 3384551, + "y": 5187951 + }, + { + "type": "lineTo", + "x": 3448051, + "y": 5213351 + }, + { + "type": "lineTo", + "x": 3527426, + "y": 5222876 + }, + { + "type": "lineTo", + "x": 3597276, + "y": 5207001 + }, + { + "type": "lineTo", + "x": 3686176, + "y": 5153026 + }, + { + "type": "lineTo", + "x": 3714751, + "y": 5121276 + }, + { + "type": "lineTo", + "x": 3740151, + "y": 5105401 + }, + { + "type": "lineTo", + "x": 3781426, + "y": 5130801 + }, + { + "type": "lineTo", + "x": 3743326, + "y": 5172076 + }, + { + "type": "lineTo", + "x": 3670301, + "y": 5264151 + }, + { + "type": "lineTo", + "x": 3670301, + "y": 5308601 + }, + { + "type": "lineTo", + "x": 3603626, + "y": 5289551 + }, + { + "type": "lineTo", + "x": 3536951, + "y": 5343526 + }, + { + "type": "cubicBezTo", + "x1": 3524251, + "y1": 5351993, + "x2": 3492501, + "y2": 5344584, + "x": 3479801, + "y": 5353051 + }, + { + "type": "lineTo", + "x": 3457576, + "y": 5400676 + }, + { + "type": "lineTo", + "x": 3470276, + "y": 5480051 + }, + { + "type": "lineTo", + "x": 3521076, + "y": 5527676 + }, + { + "type": "lineTo", + "x": 3575051, + "y": 5543551 + }, + { + "type": "lineTo", + "x": 3663951, + "y": 5508626 + }, + { + "type": "lineTo", + "x": 3689351, + "y": 5495926 + }, + { + "type": "lineTo", + "x": 3695701, + "y": 5543551 + }, + { + "type": "lineTo", + "x": 3625851, + "y": 5572126 + }, + { + "type": "lineTo", + "x": 3578226, + "y": 5581651 + }, + { + "type": "lineTo", + "x": 3514726, + "y": 5641976 + }, + { + "type": "lineTo", + "x": 3441701, + "y": 5715001 + }, + { + "type": "lineTo", + "x": 3406776, + "y": 5765801 + }, + { + "type": "lineTo", + "x": 3362326, + "y": 5778501 + }, + { + "type": "lineTo", + "x": 3324226, + "y": 5746751 + }, + { + "type": "lineTo", + "x": 3336926, + "y": 5632451 + }, + { + "type": "lineTo", + "x": 3359151, + "y": 5534026 + }, + { + "type": "lineTo", + "x": 3349626, + "y": 5470526 + }, + { + "type": "lineTo", + "x": 3324226, + "y": 5384801 + }, + { + "type": "lineTo", + "x": 3270251, + "y": 5429251 + }, + { + "type": "lineTo", + "x": 3238501, + "y": 5381626 + }, + { + "type": "lineTo", + "x": 3336926, + "y": 5302251 + }, + { + "type": "lineTo", + "x": 3295651, + "y": 5222876 + }, + { + "type": "lineTo", + "x": 3295651, + "y": 5089526 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "843", + "path_data": [ + { + "path_width": 527050, + "path_height": 685800, + "commands": [ + { + "type": "moveTo", + "x": 5213350, + "y": 5270500 + }, + { + "type": "lineTo", + "x": 5137150, + "y": 5286375 + }, + { + "type": "lineTo", + "x": 5019675, + "y": 5270500 + }, + { + "type": "lineTo", + "x": 4927600, + "y": 5187950 + }, + { + "type": "lineTo", + "x": 4864100, + "y": 5137150 + }, + { + "type": "lineTo", + "x": 4794250, + "y": 5159375 + }, + { + "type": "lineTo", + "x": 4816475, + "y": 5203825 + }, + { + "type": "lineTo", + "x": 4918075, + "y": 5295900 + }, + { + "type": "lineTo", + "x": 4953000, + "y": 5324475 + }, + { + "type": "lineTo", + "x": 5019675, + "y": 5353050 + }, + { + "type": "lineTo", + "x": 5029200, + "y": 5400675 + }, + { + "type": "lineTo", + "x": 4978400, + "y": 5400675 + }, + { + "type": "lineTo", + "x": 5022850, + "y": 5435600 + }, + { + "type": "lineTo", + "x": 5029200, + "y": 5492750 + }, + { + "type": "lineTo", + "x": 4994275, + "y": 5534025 + }, + { + "type": "lineTo", + "x": 4921250, + "y": 5549900 + }, + { + "type": "lineTo", + "x": 4857750, + "y": 5521325 + }, + { + "type": "lineTo", + "x": 4806950, + "y": 5568950 + }, + { + "type": "lineTo", + "x": 4889500, + "y": 5607050 + }, + { + "type": "lineTo", + "x": 4946650, + "y": 5645150 + }, + { + "type": "lineTo", + "x": 4984750, + "y": 5680075 + }, + { + "type": "lineTo", + "x": 5035550, + "y": 5724525 + }, + { + "type": "lineTo", + "x": 5102225, + "y": 5759450 + }, + { + "type": "lineTo", + "x": 5140325, + "y": 5822950 + }, + { + "type": "lineTo", + "x": 5216525, + "y": 5797550 + }, + { + "type": "lineTo", + "x": 5222875, + "y": 5686425 + }, + { + "type": "lineTo", + "x": 5172075, + "y": 5600700 + }, + { + "type": "lineTo", + "x": 5181600, + "y": 5508625 + }, + { + "type": "lineTo", + "x": 5219700, + "y": 5441950 + }, + { + "type": "lineTo", + "x": 5241925, + "y": 5422900 + }, + { + "type": "lineTo", + "x": 5289550, + "y": 5454650 + }, + { + "type": "lineTo", + "x": 5321300, + "y": 5397500 + }, + { + "type": "lineTo", + "x": 5270500, + "y": 5378450 + }, + { + "type": "lineTo", + "x": 5222875, + "y": 5349875 + }, + { + "type": "lineTo", + "x": 5213350, + "y": 5270500 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_vertebral_arch.json b/boneset-api/data/annotations/ColoredRegions/cervical_vertebral_arch.json new file mode 100644 index 00000000..904ea2e9 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_vertebral_arch.json @@ -0,0 +1,197 @@ +{ + "slide_number": 28, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "920", + "path_data": [ + { + "path_width": 2284900, + "path_height": 1404135, + "commands": [ + { + "type": "moveTo", + "x": 6597154, + "y": 4432529 + }, + { + "type": "lineTo", + "x": 6695407, + "y": 4362002 + }, + { + "type": "lineTo", + "x": 6810983, + "y": 4243979 + }, + { + "type": "lineTo", + "x": 6848891, + "y": 4121060 + }, + { + "type": "lineTo", + "x": 6744320, + "y": 3965128 + }, + { + "type": "lineTo", + "x": 6620793, + "y": 3806621 + }, + { + "type": "lineTo", + "x": 6496452, + "y": 3641021 + }, + { + "type": "lineTo", + "x": 6359265, + "y": 3494191 + }, + { + "type": "lineTo", + "x": 6224304, + "y": 3372968 + }, + { + "type": "cubicBezTo", + "x1": 6175947, + "y1": 3351408, + "x2": 6152990, + "y2": 3307684, + "x": 6091997, + "y": 3254531 + }, + { + "type": "cubicBezTo", + "x1": 6020768, + "y1": 3181164, + "x2": 5974812, + "y2": 3158344, + "x": 5916219, + "y": 3110251 + }, + { + "type": "cubicBezTo", + "x1": 5873054, + "y1": 3082791, + "x2": 5834485, + "y2": 3069471, + "x": 5795096, + "y": 3064498 + }, + { + "type": "cubicBezTo", + "x1": 5755707, + "y1": 3059525, + "x2": 5713580, + "y2": 3041446, + "x": 5667247, + "y": 3042499 + }, + { + "type": "cubicBezTo", + "x1": 5627727, + "y1": 3056151, + "x2": 5556616, + "y2": 3082439, + "x": 5517096, + "y": 3096091 + }, + { + "type": "lineTo", + "x": 5423929, + "y": 3164791 + }, + { + "type": "lineTo", + "x": 5329961, + "y": 3239461 + }, + { + "type": "cubicBezTo", + "x1": 5296393, + "y1": 3266846, + "x2": 5266064, + "y2": 3303630, + "x": 5232496, + "y": 3331015 + }, + { + "type": "cubicBezTo", + "x1": 5188641, + "y1": 3375510, + "x2": 5157342, + "y2": 3390412, + "x": 5113566, + "y": 3426590 + }, + { + "type": "cubicBezTo", + "x1": 5069790, + "y1": 3462768, + "x2": 5038810, + "y2": 3488630, + "x": 4969841, + "y": 3548084 + }, + { + "type": "lineTo", + "x": 4842447, + "y": 3667738 + }, + { + "type": "cubicBezTo", + "x1": 4800992, + "y1": 3702742, + "x2": 4756521, + "y2": 3750352, + "x": 4715066, + "y": 3785356 + }, + { + "type": "cubicBezTo", + "x1": 4683882, + "y1": 3844502, + "x2": 4633742, + "y2": 3834144, + "x": 4634149, + "y": 3893290 + }, + { + "type": "lineTo", + "x": 4568486, + "y": 4087166 + }, + { + "type": "cubicBezTo", + "x1": 4577235, + "y1": 4113279, + "x2": 4557538, + "y2": 4215310, + "x": 4566287, + "y": 4241423 + }, + { + "type": "lineTo", + "x": 4618493, + "y": 4349223 + }, + { + "type": "lineTo", + "x": 4739723, + "y": 4446590 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/cervical_vertebral_foramen.json b/boneset-api/data/annotations/ColoredRegions/cervical_vertebral_foramen.json new file mode 100644 index 00000000..4539f1f2 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/cervical_vertebral_foramen.json @@ -0,0 +1,210 @@ +{ + "slide_number": 29, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "941", + "path_data": [ + { + "path_width": 1964409, + "path_height": 1186891, + "commands": [ + { + "type": "moveTo", + "x": 6633840, + "y": 4106640 + }, + { + "type": "lineTo", + "x": 6521079, + "y": 4011689 + }, + { + "type": "lineTo", + "x": 6461731, + "y": 3881131 + }, + { + "type": "lineTo", + "x": 6343036, + "y": 3679360 + }, + { + "type": "lineTo", + "x": 6271819, + "y": 3572540 + }, + { + "type": "lineTo", + "x": 6147188, + "y": 3459785 + }, + { + "type": "lineTo", + "x": 6004754, + "y": 3370768 + }, + { + "type": "lineTo", + "x": 5886059, + "y": 3281752 + }, + { + "type": "lineTo", + "x": 5719885, + "y": 3258014 + }, + { + "type": "cubicBezTo", + "x1": 5700102, + "y1": 3256036, + "x2": 5662516, + "y2": 3230319, + "x": 5642733, + "y": 3228341 + }, + { + "type": "lineTo", + "x": 5529972, + "y": 3263948 + }, + { + "type": "lineTo", + "x": 5381603, + "y": 3347030 + }, + { + "type": "lineTo", + "x": 5179821, + "y": 3525064 + }, + { + "type": "lineTo", + "x": 5084864, + "y": 3631884 + }, + { + "type": "lineTo", + "x": 5001777, + "y": 3703097 + }, + { + "type": "lineTo", + "x": 4889017, + "y": 3803983 + }, + { + "type": "lineTo", + "x": 4871212, + "y": 3863328 + }, + { + "type": "lineTo", + "x": 4805930, + "y": 3958279 + }, + { + "type": "lineTo", + "x": 4687234, + "y": 4023558 + }, + { + "type": "lineTo", + "x": 4675365, + "y": 4118509 + }, + { + "type": "lineTo", + "x": 4687234, + "y": 4225329 + }, + { + "type": "lineTo", + "x": 4770321, + "y": 4349953 + }, + { + "type": "lineTo", + "x": 4871212, + "y": 4403363 + }, + { + "type": "lineTo", + "x": 4954299, + "y": 4361822 + }, + { + "type": "lineTo", + "x": 5078929, + "y": 4344018 + }, + { + "type": "lineTo", + "x": 5239168, + "y": 4367756 + }, + { + "type": "lineTo", + "x": 5435016, + "y": 4397428 + }, + { + "type": "lineTo", + "x": 5636798, + "y": 4415232 + }, + { + "type": "lineTo", + "x": 5897928, + "y": 4385559 + }, + { + "type": "lineTo", + "x": 6164993, + "y": 4373690 + }, + { + "type": "lineTo", + "x": 6295558, + "y": 4385559 + }, + { + "type": "lineTo", + "x": 6443927, + "y": 4409297 + }, + { + "type": "lineTo", + "x": 6509210, + "y": 4385559 + }, + { + "type": "lineTo", + "x": 6604166, + "y": 4290608 + }, + { + "type": "lineTo", + "x": 6639774, + "y": 4183788 + }, + { + "type": "lineTo", + "x": 6633840, + "y": 4106640 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/clavicle_acromial_end_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/clavicle_acromial_end_colored_regions.json new file mode 100644 index 00000000..cc8347fc --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/clavicle_acromial_end_colored_regions.json @@ -0,0 +1,252 @@ +{ + "slide_number": 11, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "375", + "path_data": [ + { + "path_width": 652825, + "path_height": 955447, + "commands": [ + { + "type": "moveTo", + "x": 3791084, + "y": 2082993 + }, + { + "type": "lineTo", + "x": 3749541, + "y": 2195748 + }, + { + "type": "lineTo", + "x": 3731736, + "y": 2350044 + }, + { + "type": "lineTo", + "x": 3731736, + "y": 2486536 + }, + { + "type": "lineTo", + "x": 3743606, + "y": 2628963 + }, + { + "type": "lineTo", + "x": 3791084, + "y": 2712045 + }, + { + "type": "lineTo", + "x": 3791084, + "y": 2795127 + }, + { + "type": "lineTo", + "x": 3707997, + "y": 2955358 + }, + { + "type": "lineTo", + "x": 3524019, + "y": 3008768 + }, + { + "type": "lineTo", + "x": 3340041, + "y": 2996899 + }, + { + "type": "lineTo", + "x": 3144194, + "y": 2830734 + }, + { + "type": "cubicBezTo", + "x1": 3142216, + "y1": 2714023, + "x2": 3140237, + "y2": 2597313, + "x": 3138259, + "y": 2480602 + }, + { + "type": "lineTo", + "x": 3138259, + "y": 2409388 + }, + { + "type": "lineTo", + "x": 3322237, + "y": 2219486 + }, + { + "type": "lineTo", + "x": 3458737, + "y": 2100797 + }, + { + "type": "lineTo", + "x": 3589302, + "y": 2077059 + }, + { + "type": "lineTo", + "x": 3719867, + "y": 2053321 + }, + { + "type": "lineTo", + "x": 3791084, + "y": 2082993 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "378", + "path_data": [ + { + "path_width": 801194, + "path_height": 1014791, + "commands": [ + { + "type": "moveTo", + "x": 2219605, + "y": 4634806 + }, + { + "type": "lineTo", + "x": 2195866, + "y": 4765364 + }, + { + "type": "lineTo", + "x": 2195866, + "y": 4931529 + }, + { + "type": "lineTo", + "x": 2189931, + "y": 5038349 + }, + { + "type": "lineTo", + "x": 2243344, + "y": 5216382 + }, + { + "type": "lineTo", + "x": 2278952, + "y": 5335071 + }, + { + "type": "lineTo", + "x": 2231474, + "y": 5483433 + }, + { + "type": "lineTo", + "x": 2100909, + "y": 5578384 + }, + { + "type": "lineTo", + "x": 1922866, + "y": 5596187 + }, + { + "type": "lineTo", + "x": 1833845, + "y": 5584318 + }, + { + "type": "lineTo", + "x": 1780432, + "y": 5507171 + }, + { + "type": "lineTo", + "x": 1673606, + "y": 5441892 + }, + { + "type": "lineTo", + "x": 1608323, + "y": 5281661 + }, + { + "type": "lineTo", + "x": 1554910, + "y": 5157038 + }, + { + "type": "lineTo", + "x": 1489628, + "y": 5085825 + }, + { + "type": "lineTo", + "x": 1477758, + "y": 4996808 + }, + { + "type": "lineTo", + "x": 1519302, + "y": 4973070 + }, + { + "type": "lineTo", + "x": 1531171, + "y": 4907791 + }, + { + "type": "lineTo", + "x": 1637997, + "y": 4795036 + }, + { + "type": "lineTo", + "x": 1845714, + "y": 4676347 + }, + { + "type": "lineTo", + "x": 2011888, + "y": 4605134 + }, + { + "type": "lineTo", + "x": 2100909, + "y": 4581396 + }, + { + "type": "lineTo", + "x": 2219605, + "y": 4634806 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/clavicle_shaft_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/clavicle_shaft_colored_regions.json new file mode 100644 index 00000000..85b8803d --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/clavicle_shaft_colored_regions.json @@ -0,0 +1,516 @@ +{ + "slide_number": 10, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "337", + "path_data": [ + { + "path_width": 4195884, + "path_height": 747740, + "commands": [ + { + "type": "moveTo", + "x": 3844496, + "y": 2088927 + }, + { + "type": "lineTo", + "x": 3802952, + "y": 2261026 + }, + { + "type": "lineTo", + "x": 3743605, + "y": 2344108 + }, + { + "type": "lineTo", + "x": 3731735, + "y": 2486535 + }, + { + "type": "lineTo", + "x": 3761409, + "y": 2593355 + }, + { + "type": "lineTo", + "x": 3820757, + "y": 2729847 + }, + { + "type": "lineTo", + "x": 4022539, + "y": 2652700 + }, + { + "type": "lineTo", + "x": 4253995, + "y": 2599290 + }, + { + "type": "lineTo", + "x": 4568538, + "y": 2545880 + }, + { + "type": "lineTo", + "x": 4883081, + "y": 2563683 + }, + { + "type": "lineTo", + "x": 5256972, + "y": 2640831 + }, + { + "type": "lineTo", + "x": 5832644, + "y": 2682372 + }, + { + "type": "lineTo", + "x": 6277752, + "y": 2712044 + }, + { + "type": "lineTo", + "x": 6580426, + "y": 2694241 + }, + { + "type": "lineTo", + "x": 6740665, + "y": 2717979 + }, + { + "type": "lineTo", + "x": 7037403, + "y": 2688306 + }, + { + "type": "lineTo", + "x": 7340077, + "y": 2599290 + }, + { + "type": "lineTo", + "x": 7619011, + "y": 2486535 + }, + { + "type": "lineTo", + "x": 7844532, + "y": 2433125 + }, + { + "type": "lineTo", + "x": 7927619, + "y": 2427190 + }, + { + "type": "lineTo", + "x": 7779250, + "y": 2255091 + }, + { + "type": "lineTo", + "x": 7678359, + "y": 2112665 + }, + { + "type": "lineTo", + "x": 7660554, + "y": 1982107 + }, + { + "type": "lineTo", + "x": 7405359, + "y": 2118599 + }, + { + "type": "lineTo", + "x": 7156099, + "y": 2201681 + }, + { + "type": "lineTo", + "x": 6900903, + "y": 2266960 + }, + { + "type": "lineTo", + "x": 6651643, + "y": 2302567 + }, + { + "type": "lineTo", + "x": 6337100, + "y": 2314436 + }, + { + "type": "lineTo", + "x": 6010688, + "y": 2296633 + }, + { + "type": "lineTo", + "x": 5423145, + "y": 2219485 + }, + { + "type": "lineTo", + "x": 5001776, + "y": 2118599 + }, + { + "type": "lineTo", + "x": 4687233, + "y": 2059255 + }, + { + "type": "lineTo", + "x": 4408299, + "y": 2053320 + }, + { + "type": "lineTo", + "x": 4176843, + "y": 2082992 + }, + { + "type": "lineTo", + "x": 3844496, + "y": 2088927 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "340", + "path_data": [ + { + "path_width": 1744823, + "path_height": 326394, + "commands": [ + { + "type": "moveTo", + "x": 4433275, + "y": 4984939 + }, + { + "type": "lineTo", + "x": 4148406, + "y": 4919660 + }, + { + "type": "lineTo", + "x": 3875406, + "y": 4889988 + }, + { + "type": "lineTo", + "x": 3638015, + "y": 4848447 + }, + { + "type": "lineTo", + "x": 3323472, + "y": 4783168 + }, + { + "type": "lineTo", + "x": 3080147, + "y": 4789102 + }, + { + "type": "lineTo", + "x": 2836821, + "y": 4789102 + }, + { + "type": "lineTo", + "x": 2688452, + "y": 4854381 + }, + { + "type": "lineTo", + "x": 2777473, + "y": 4907791 + }, + { + "type": "lineTo", + "x": 2967386, + "y": 4996808 + }, + { + "type": "lineTo", + "x": 3175103, + "y": 5014611 + }, + { + "type": "lineTo", + "x": 3459972, + "y": 5068021 + }, + { + "type": "lineTo", + "x": 3768580, + "y": 5091759 + }, + { + "type": "lineTo", + "x": 4005971, + "y": 5109562 + }, + { + "type": "lineTo", + "x": 4243362, + "y": 5085825 + }, + { + "type": "lineTo", + "x": 4338318, + "y": 5044283 + }, + { + "type": "lineTo", + "x": 4433275, + "y": 4984939 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "347", + "path_data": [ + { + "path_width": 496103, + "path_height": 264597, + "commands": [ + { + "type": "moveTo", + "x": 3343044, + "y": 4643662 + }, + { + "type": "lineTo", + "x": 3455494, + "y": 4723041 + }, + { + "type": "lineTo", + "x": 3587788, + "y": 4782575 + }, + { + "type": "lineTo", + "x": 3706853, + "y": 4815650 + }, + { + "type": "lineTo", + "x": 3779615, + "y": 4861954 + }, + { + "type": "lineTo", + "x": 3839147, + "y": 4908259 + }, + { + "type": "lineTo", + "x": 3839147, + "y": 4908259 + } + ] + } + ] + }, + { + "anatomical_name": "Unknown_region", + "color": "FF6600", + "color_name": "orange", + "shape_id": "351", + "path_data": [ + { + "path_width": 271203, + "path_height": 138913, + "commands": [ + { + "type": "moveTo", + "x": 4236029, + "y": 4987637 + }, + { + "type": "lineTo", + "x": 4176497, + "y": 5027327 + }, + { + "type": "lineTo", + "x": 4143423, + "y": 5060401 + }, + { + "type": "lineTo", + "x": 4143423, + "y": 5119935 + }, + { + "type": "lineTo", + "x": 4322020, + "y": 5126550 + }, + { + "type": "lineTo", + "x": 4414626, + "y": 5126550 + }, + { + "type": "lineTo", + "x": 4414626, + "y": 5047171 + }, + { + "type": "lineTo", + "x": 4335250, + "y": 4987637 + }, + { + "type": "lineTo", + "x": 4236029, + "y": 4987637 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "352", + "path_data": [ + { + "path_width": 965746, + "path_height": 324130, + "commands": [ + { + "type": "moveTo", + "x": 7007589, + "y": 4240152 + }, + { + "type": "lineTo", + "x": 6961286, + "y": 4306301 + }, + { + "type": "lineTo", + "x": 6974515, + "y": 4379065 + }, + { + "type": "lineTo", + "x": 7053892, + "y": 4445214 + }, + { + "type": "lineTo", + "x": 7265562, + "y": 4498134 + }, + { + "type": "lineTo", + "x": 7430930, + "y": 4531208 + }, + { + "type": "lineTo", + "x": 7669059, + "y": 4537823 + }, + { + "type": "lineTo", + "x": 7774894, + "y": 4517978 + }, + { + "type": "lineTo", + "x": 7874115, + "y": 4451829 + }, + { + "type": "lineTo", + "x": 7927032, + "y": 4398910 + }, + { + "type": "lineTo", + "x": 7841041, + "y": 4319531 + }, + { + "type": "lineTo", + "x": 7563224, + "y": 4233537 + }, + { + "type": "lineTo", + "x": 7450774, + "y": 4226923 + }, + { + "type": "lineTo", + "x": 7278792, + "y": 4213693 + }, + { + "type": "lineTo", + "x": 7166342, + "y": 4240152 + }, + { + "type": "lineTo", + "x": 7073736, + "y": 4246767 + }, + { + "type": "lineTo", + "x": 7007589, + "y": 4240152 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/clavicle_sternal_end_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/clavicle_sternal_end_colored_regions.json new file mode 100644 index 00000000..ef71f04d --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/clavicle_sternal_end_colored_regions.json @@ -0,0 +1,213 @@ +{ + "slide_number": 12, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "399", + "path_data": [ + { + "path_width": 635021, + "path_height": 670593, + "commands": [ + { + "type": "moveTo", + "x": 7672425, + "y": 1940566 + }, + { + "type": "lineTo", + "x": 7708033, + "y": 1827812 + }, + { + "type": "lineTo", + "x": 7797055, + "y": 1762533 + }, + { + "type": "lineTo", + "x": 7927620, + "y": 1738795 + }, + { + "type": "lineTo", + "x": 8022576, + "y": 1786271 + }, + { + "type": "lineTo", + "x": 8141272, + "y": 1857484 + }, + { + "type": "lineTo", + "x": 8218424, + "y": 1999911 + }, + { + "type": "lineTo", + "x": 8271837, + "y": 2071124 + }, + { + "type": "lineTo", + "x": 8265902, + "y": 2272896 + }, + { + "type": "lineTo", + "x": 8194685, + "y": 2379716 + }, + { + "type": "lineTo", + "x": 8040381, + "y": 2397519 + }, + { + "type": "lineTo", + "x": 7951359, + "y": 2403454 + }, + { + "type": "lineTo", + "x": 7892011, + "y": 2409388 + }, + { + "type": "lineTo", + "x": 7838598, + "y": 2261027 + }, + { + "type": "lineTo", + "x": 7737707, + "y": 2118600 + }, + { + "type": "lineTo", + "x": 7672425, + "y": 2017714 + }, + { + "type": "lineTo", + "x": 7636816, + "y": 1999911 + }, + { + "type": "lineTo", + "x": 7672425, + "y": 1940566 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "402", + "path_data": [ + { + "path_width": 534130, + "path_height": 735872, + "commands": [ + { + "type": "moveTo", + "x": 6350206, + "y": 4177854 + }, + { + "type": "lineTo", + "x": 6433293, + "y": 4094771 + }, + { + "type": "lineTo", + "x": 6504510, + "y": 4023558 + }, + { + "type": "lineTo", + "x": 6623206, + "y": 4011689 + }, + { + "type": "lineTo", + "x": 6741901, + "y": 4047296 + }, + { + "type": "lineTo", + "x": 6824988, + "y": 4165985 + }, + { + "type": "lineTo", + "x": 6884336, + "y": 4361822 + }, + { + "type": "lineTo", + "x": 6884336, + "y": 4533921 + }, + { + "type": "lineTo", + "x": 6860596, + "y": 4628872 + }, + { + "type": "lineTo", + "x": 6795314, + "y": 4729757 + }, + { + "type": "lineTo", + "x": 6712227, + "y": 4747561 + }, + { + "type": "lineTo", + "x": 6623206, + "y": 4747561 + }, + { + "type": "lineTo", + "x": 6551988, + "y": 4729757 + }, + { + "type": "lineTo", + "x": 6504510, + "y": 4480511 + }, + { + "type": "lineTo", + "x": 6421423, + "y": 4367756 + }, + { + "type": "lineTo", + "x": 6350206, + "y": 4177854 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/extraction_summary.json b/boneset-api/data/annotations/ColoredRegions/extraction_summary.json new file mode 100644 index 00000000..bb51cc7c --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/extraction_summary.json @@ -0,0 +1,407 @@ +{ + "total_slides": 41, + "slides_with_annotations": [ + 10, + 11, + 14, + 15, + 16, + 17, + 18, + 19, + 2, + 20, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 3, + 32, + 33, + 34, + 35, + 36, + 37, + 40, + 41, + 42, + 43, + 44, + 45, + 48, + 49, + 5, + 50, + 51, + 52, + 53, + 6, + 7, + 8, + 9 + ], + "extraction_summary": { + "10": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "11": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "14": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "15": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "16": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "17": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "18": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "19": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "2": { + "regions_found": 4, + "anatomical_names": [ + "Ischium", + "Pubis_and_Obturator_foramen", + "Ischium", + "Pubis_and_Obturator_foramen" + ] + }, + "20": { + "regions_found": 6, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "23": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "24": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "25": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "26": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "27": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "28": { + "regions_found": 1, + "anatomical_names": [ + "Ischium" + ] + }, + "29": { + "regions_found": 1, + "anatomical_names": [ + "Ischium" + ] + }, + "3": { + "regions_found": 2, + "anatomical_names": [ + "Ischium", + "Ischium" + ] + }, + "32": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "33": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "34": { + "regions_found": 9, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "35": { + "regions_found": 4, + "anatomical_names": [ + "Ischium", + "Ischium", + "Ischium", + "Pubis_and_Obturator_foramen" + ] + }, + "36": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "37": { + "regions_found": 6, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "40": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "41": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "42": { + "regions_found": 3, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "43": { + "regions_found": 2, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "44": { + "regions_found": 2, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "45": { + "regions_found": 5, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "48": { + "regions_found": 1, + "anatomical_names": [ + "Pubis_and_Obturator_foramen" + ] + }, + "49": { + "regions_found": 2, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "5": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "50": { + "regions_found": 16, + "anatomical_names": [ + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium", + "Ischium" + ] + }, + "51": { + "regions_found": 1, + "anatomical_names": [ + "Pubis_and_Obturator_foramen" + ] + }, + "52": { + "regions_found": 1, + "anatomical_names": [ + "Pubis_and_Obturator_foramen" + ] + }, + "53": { + "regions_found": 2, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "6": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "7": { + "regions_found": 4, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "8": { + "regions_found": 2, + "anatomical_names": [ + "Pubis_and_Obturator_foramen", + "Pubis_and_Obturator_foramen" + ] + }, + "9": { + "regions_found": 1, + "anatomical_names": [ + "Pubis_and_Obturator_foramen" + ] + } + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/first_rib_grooves_for_subclavian_vessels_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/first_rib_grooves_for_subclavian_vessels_colored_regions.json new file mode 100644 index 00000000..580fa97f --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/first_rib_grooves_for_subclavian_vessels_colored_regions.json @@ -0,0 +1,91 @@ +{ + "slide_number": 17, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Unknown_region", + "color": "FF0000", + "color_name": "red", + "shape_id": "532", + "path_data": [ + { + "path_width": 587591, + "path_height": 322246, + "commands": [ + { + "type": "moveTo", + "x": 4188453, + "y": 4050823 + }, + { + "type": "lineTo", + "x": 4298913, + "y": 4157831 + }, + { + "type": "lineTo", + "x": 4456714, + "y": 4282676 + }, + { + "type": "lineTo", + "x": 4551395, + "y": 4380768 + }, + { + "type": "lineTo", + "x": 4551395, + "y": 4452109 + }, + { + "type": "lineTo", + "x": 4425154, + "y": 4505614 + }, + { + "type": "lineTo", + "x": 4283133, + "y": 4478861 + }, + { + "type": "lineTo", + "x": 4109552, + "y": 4434274 + }, + { + "type": "lineTo", + "x": 3991201, + "y": 4336181 + }, + { + "type": "lineTo", + "x": 3928080, + "y": 4255925 + }, + { + "type": "lineTo", + "x": 3817621, + "y": 4104327 + }, + { + "type": "lineTo", + "x": 4014872, + "y": 4077574 + }, + { + "type": "lineTo", + "x": 4188453, + "y": 4050823 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/first_rib_head_and_neck_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/first_rib_head_and_neck_colored_regions.json new file mode 100644 index 00000000..6e74c93b --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/first_rib_head_and_neck_colored_regions.json @@ -0,0 +1,432 @@ +{ + "slide_number": 15, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "481", + "path_data": [ + { + "path_width": 570492, + "path_height": 353173, + "commands": [ + { + "type": "moveTo", + "x": 4444375, + "y": 1433067 + }, + { + "type": "lineTo", + "x": 4532665, + "y": 1419483 + }, + { + "type": "lineTo", + "x": 4600581, + "y": 1412691 + }, + { + "type": "lineTo", + "x": 4695663, + "y": 1426275 + }, + { + "type": "lineTo", + "x": 4770370, + "y": 1473817 + }, + { + "type": "lineTo", + "x": 4770370, + "y": 1473817 + }, + { + "type": "lineTo", + "x": 4858661, + "y": 1541735 + }, + { + "type": "lineTo", + "x": 4872244, + "y": 1602861 + }, + { + "type": "lineTo", + "x": 4872244, + "y": 1657195 + }, + { + "type": "lineTo", + "x": 4851869, + "y": 1684362 + }, + { + "type": "lineTo", + "x": 4790745, + "y": 1718321 + }, + { + "type": "lineTo", + "x": 4722829, + "y": 1765864 + }, + { + "type": "lineTo", + "x": 4620956, + "y": 1765864 + }, + { + "type": "lineTo", + "x": 4485125, + "y": 1691154 + }, + { + "type": "lineTo", + "x": 4390043, + "y": 1657195 + }, + { + "type": "lineTo", + "x": 4315335, + "y": 1589278 + }, + { + "type": "lineTo", + "x": 4301752, + "y": 1521360 + }, + { + "type": "lineTo", + "x": 4328918, + "y": 1487401 + }, + { + "type": "lineTo", + "x": 4362876, + "y": 1473817 + }, + { + "type": "lineTo", + "x": 4444375, + "y": 1433067 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "482", + "path_data": [ + { + "path_width": 604238, + "path_height": 621038, + "commands": [ + { + "type": "moveTo", + "x": 4701846, + "y": 1790381 + }, + { + "type": "lineTo", + "x": 4584355, + "y": 1907875 + }, + { + "type": "lineTo", + "x": 4528407, + "y": 1980609 + }, + { + "type": "lineTo", + "x": 4528407, + "y": 2053344 + }, + { + "type": "lineTo", + "x": 4517218, + "y": 2154053 + }, + { + "type": "lineTo", + "x": 4517218, + "y": 2176432 + }, + { + "type": "lineTo", + "x": 4338184, + "y": 2137268 + }, + { + "type": "lineTo", + "x": 4209504, + "y": 2137268 + }, + { + "type": "lineTo", + "x": 4119987, + "y": 2081318 + }, + { + "type": "lineTo", + "x": 4097608, + "y": 2030964 + }, + { + "type": "lineTo", + "x": 4119987, + "y": 1919065 + }, + { + "type": "lineTo", + "x": 4192719, + "y": 1851926 + }, + { + "type": "lineTo", + "x": 4231883, + "y": 1762407 + }, + { + "type": "lineTo", + "x": 4254262, + "y": 1684078 + }, + { + "type": "lineTo", + "x": 4287831, + "y": 1555394 + }, + { + "type": "lineTo", + "x": 4388537, + "y": 1650508 + }, + { + "type": "lineTo", + "x": 4534002, + "y": 1717647 + }, + { + "type": "lineTo", + "x": 4645898, + "y": 1784786 + }, + { + "type": "lineTo", + "x": 4701846, + "y": 1790381 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "485", + "path_data": [ + { + "path_width": 570670, + "path_height": 262962, + "commands": [ + { + "type": "moveTo", + "x": 2388979, + "y": 4168232 + }, + { + "type": "lineTo", + "x": 2517660, + "y": 4084308 + }, + { + "type": "lineTo", + "x": 2601582, + "y": 4050738 + }, + { + "type": "lineTo", + "x": 2713478, + "y": 4056333 + }, + { + "type": "lineTo", + "x": 2797400, + "y": 4078713 + }, + { + "type": "lineTo", + "x": 2847753, + "y": 4084308 + }, + { + "type": "lineTo", + "x": 2903701, + "y": 4134662 + }, + { + "type": "lineTo", + "x": 2937270, + "y": 4190611 + }, + { + "type": "lineTo", + "x": 2892511, + "y": 4291320 + }, + { + "type": "lineTo", + "x": 2830968, + "y": 4313700 + }, + { + "type": "lineTo", + "x": 2685504, + "y": 4308105 + }, + { + "type": "lineTo", + "x": 2584797, + "y": 4285725 + }, + { + "type": "lineTo", + "x": 2495280, + "y": 4285725 + }, + { + "type": "lineTo", + "x": 2405764, + "y": 4308105 + }, + { + "type": "lineTo", + "x": 2366600, + "y": 4308105 + }, + { + "type": "lineTo", + "x": 2366600, + "y": 4268941 + }, + { + "type": "lineTo", + "x": 2388979, + "y": 4168232 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "486", + "path_data": [ + { + "path_width": 509127, + "path_height": 414026, + "commands": [ + { + "type": "moveTo", + "x": 2366600, + "y": 4313700 + }, + { + "type": "lineTo", + "x": 2512065, + "y": 4302510 + }, + { + "type": "lineTo", + "x": 2679909, + "y": 4313700 + }, + { + "type": "lineTo", + "x": 2825374, + "y": 4319295 + }, + { + "type": "lineTo", + "x": 2853348, + "y": 4324890 + }, + { + "type": "lineTo", + "x": 2747046, + "y": 4509523 + }, + { + "type": "lineTo", + "x": 2713478, + "y": 4593447 + }, + { + "type": "lineTo", + "x": 2719072, + "y": 4638207 + }, + { + "type": "lineTo", + "x": 2523254, + "y": 4666182 + }, + { + "type": "lineTo", + "x": 2383384, + "y": 4710941 + }, + { + "type": "lineTo", + "x": 2344221, + "y": 4716536 + }, + { + "type": "lineTo", + "x": 2383384, + "y": 4593447 + }, + { + "type": "lineTo", + "x": 2388979, + "y": 4509523 + }, + { + "type": "lineTo", + "x": 2388979, + "y": 4425599 + }, + { + "type": "lineTo", + "x": 2366600, + "y": 4313700 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/first_rib_tubercles_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/first_rib_tubercles_colored_regions.json new file mode 100644 index 00000000..8618e63a --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/first_rib_tubercles_colored_regions.json @@ -0,0 +1,281 @@ +{ + "slide_number": 16, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "507", + "path_data": [ + { + "path_width": 278000, + "path_height": 650811, + "commands": [ + { + "type": "moveTo", + "x": 4063912, + "y": 2716979 + }, + { + "type": "lineTo", + "x": 3988094, + "y": 2653793 + }, + { + "type": "lineTo", + "x": 3905958, + "y": 2590608 + }, + { + "type": "lineTo", + "x": 3874367, + "y": 2514785 + }, + { + "type": "lineTo", + "x": 3874367, + "y": 2426326 + }, + { + "type": "lineTo", + "x": 3905958, + "y": 2325229 + }, + { + "type": "lineTo", + "x": 3994412, + "y": 2274680 + }, + { + "type": "lineTo", + "x": 4044958, + "y": 2198858 + }, + { + "type": "lineTo", + "x": 4044958, + "y": 2066168 + }, + { + "type": "lineTo", + "x": 4127094, + "y": 2135672 + }, + { + "type": "lineTo", + "x": 4152367, + "y": 2230450 + }, + { + "type": "lineTo", + "x": 4152367, + "y": 2356821 + }, + { + "type": "lineTo", + "x": 4133412, + "y": 2420007 + }, + { + "type": "lineTo", + "x": 4133412, + "y": 2527422 + }, + { + "type": "lineTo", + "x": 4108140, + "y": 2672749 + }, + { + "type": "lineTo", + "x": 4063912, + "y": 2716979 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "510", + "path_data": [ + { + "path_width": 265364, + "path_height": 366476, + "commands": [ + { + "type": "moveTo", + "x": 2325094, + "y": 5004294 + }, + { + "type": "lineTo", + "x": 2299821, + "y": 5067480 + }, + { + "type": "lineTo", + "x": 2255594, + "y": 5099073 + }, + { + "type": "lineTo", + "x": 2261912, + "y": 5168577 + }, + { + "type": "lineTo", + "x": 2318776, + "y": 5275992 + }, + { + "type": "lineTo", + "x": 2350367, + "y": 5332859 + }, + { + "type": "lineTo", + "x": 2426185, + "y": 5364452 + }, + { + "type": "lineTo", + "x": 2483049, + "y": 5313903 + }, + { + "type": "lineTo", + "x": 2514639, + "y": 5219125 + }, + { + "type": "lineTo", + "x": 2520958, + "y": 5092754 + }, + { + "type": "lineTo", + "x": 2445139, + "y": 5029569 + }, + { + "type": "lineTo", + "x": 2381958, + "y": 4997976 + }, + { + "type": "lineTo", + "x": 2325094, + "y": 5004294 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "511", + "path_data": [ + { + "path_width": 473864, + "path_height": 311226, + "commands": [ + { + "type": "moveTo", + "x": 5694005, + "y": 2723298 + }, + { + "type": "lineTo", + "x": 5681369, + "y": 2805439 + }, + { + "type": "cubicBezTo", + "x1": 5687687, + "y1": 2838085, + "x2": 5690846, + "y2": 2896005, + "x": 5731914, + "y": 2919173 + }, + { + "type": "cubicBezTo", + "x1": 5772982, + "y1": 2942341, + "x2": 5859331, + "y2": 2949712, + "x": 5927778, + "y": 2944447 + }, + { + "type": "cubicBezTo", + "x1": 5996225, + "y1": 2939182, + "x2": 6138385, + "y2": 2927598, + "x": 6142597, + "y": 2887580 + }, + { + "type": "lineTo", + "x": 6155233, + "y": 2767527 + }, + { + "type": "cubicBezTo", + "x1": 6147862, + "y1": 2733828, + "x2": 6140490, + "y2": 2702235, + "x": 6098369, + "y": 2685386 + }, + { + "type": "lineTo", + "x": 5972006, + "y": 2634838 + }, + { + "type": "lineTo", + "x": 5877233, + "y": 2647475 + }, + { + "type": "lineTo", + "x": 5795096, + "y": 2660112 + }, + { + "type": "lineTo", + "x": 5731914, + "y": 2672749 + }, + { + "type": "lineTo", + "x": 5694005, + "y": 2723298 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/iliac_crest_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/iliac_crest_colored_regions.json new file mode 100644 index 00000000..b8ef09f2 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/iliac_crest_colored_regions.json @@ -0,0 +1,278 @@ +{ + "slide_number": 5, + "images": [ + { + "index": 0, + "name": "Google Shape;201;p5", + "description": "pelvis_lat_blk.psd - Right Pelvis (lateral aspect)", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Iliac Crest", + "color": "008000", + "image_name": "Google Shape;201;p5", + "path_data": [ + { + "path_width": 1881736, + "path_height": 1196237, + "commands": [ + { + "type": "moveTo", + "x": 1690459, + "y": 619218 + }, + { + "type": "lineTo", + "x": 1526186, + "y": 448618 + }, + { + "type": "lineTo", + "x": 1305050, + "y": 309609 + }, + { + "type": "lineTo", + "x": 1058640, + "y": 189557 + }, + { + "type": "lineTo", + "x": 850140, + "y": 170601 + }, + { + "type": "lineTo", + "x": 603731, + "y": 303291 + }, + { + "type": "lineTo", + "x": 496321, + "y": 467573 + }, + { + "type": "lineTo", + "x": 376759, + "y": 728352 + }, + { + "type": "cubicBezTo", + "x1": 330107, + "y1": 780330, + "x2": 131535, + "y2": 1117901, + "x": 84883, + "y": 1169879 + }, + { + "type": "lineTo", + "x": 0, + "y": 1196237 + }, + { + "type": "lineTo", + "x": 490003, + "y": 360158 + }, + { + "type": "lineTo", + "x": 597412, + "y": 202194 + }, + { + "type": "lineTo", + "x": 749049, + "y": 69504 + }, + { + "type": "lineTo", + "x": 888049, + "y": 6319 + }, + { + "type": "lineTo", + "x": 1083913, + "y": 0 + }, + { + "type": "lineTo", + "x": 1292413, + "y": 75823 + }, + { + "type": "lineTo", + "x": 1450368, + "y": 189557 + }, + { + "type": "lineTo", + "x": 1646232, + "y": 366476 + }, + { + "type": "lineTo", + "x": 1741005, + "y": 524440 + }, + { + "type": "lineTo", + "x": 1881736, + "y": 777205 + }, + { + "type": "lineTo", + "x": 1820244, + "y": 797856 + }, + { + "type": "lineTo", + "x": 1690459, + "y": 619218 + }, + { + "type": "close" + } + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "Google Shape;202;p5", + "description": "pelvis_med_blk.psd - Right Pelvis (medial aspect)", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Iliac Crest", + "color": "008000", + "image_name": "Google Shape;202;p5", + "path_data": [ + { + "path_width": 1242510, + "path_height": 1264241, + "commands": [ + { + "type": "moveTo", + "x": 1135100, + "y": 347521 + }, + { + "type": "lineTo", + "x": 1015055, + "y": 183238 + }, + { + "type": "lineTo", + "x": 895009, + "y": 107416 + }, + { + "type": "lineTo", + "x": 749691, + "y": 82141 + }, + { + "type": "lineTo", + "x": 591736, + "y": 176920 + }, + { + "type": "lineTo", + "x": 446418, + "y": 347521 + }, + { + "type": "lineTo", + "x": 269508, + "y": 606581 + }, + { + "type": "lineTo", + "x": 174735, + "y": 821412 + }, + { + "type": "lineTo", + "x": 63181, + "y": 1147579 + }, + { + "type": "lineTo", + "x": 0, + "y": 1264241 + }, + { + "type": "cubicBezTo", + "x1": 14133, + "y1": 1201106, + "x2": -8196, + "y2": 1180505, + "x": 5937, + "y": 1117370 + }, + { + "type": "lineTo", + "x": 124190, + "y": 764545 + }, + { + "type": "lineTo", + "x": 206326, + "y": 587626 + }, + { + "type": "lineTo", + "x": 370599, + "y": 334884 + }, + { + "type": "lineTo", + "x": 585418, + "y": 101097 + }, + { + "type": "lineTo", + "x": 737054, + "y": 0 + }, + { + "type": "lineTo", + "x": 964509, + "y": 18956 + }, + { + "type": "lineTo", + "x": 1122464, + "y": 75823 + }, + { + "type": "lineTo", + "x": 1223555, + "y": 208513 + }, + { + "type": "lineTo", + "x": 1242510, + "y": 341202 + }, + { + "type": "lineTo", + "x": 1135100, + "y": 347521 + }, + { + "type": "close" + } + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/inferior_maxilla_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/inferior_maxilla_colored_regions.json new file mode 100644 index 00000000..165dfbd5 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/inferior_maxilla_colored_regions.json @@ -0,0 +1,1441 @@ +{ + "slide_number": 21, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "750", + "path_data": [ + { + "path_width": 3895725, + "path_height": 2000250, + "commands": [ + { + "type": "moveTo", + "x": 5426076, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 3600450 + }, + { + "type": "lineTo", + "x": 5330826, + "y": 3565525 + }, + { + "type": "lineTo", + "x": 5286376, + "y": 3590925 + }, + { + "type": "lineTo", + "x": 5273676, + "y": 3590925 + }, + { + "type": "lineTo", + "x": 5238751, + "y": 3581400 + }, + { + "type": "lineTo", + "x": 5226051, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 5200651, + "y": 3635375 + }, + { + "type": "lineTo", + "x": 5162551, + "y": 3654425 + }, + { + "type": "lineTo", + "x": 5162551, + "y": 3676650 + }, + { + "type": "lineTo", + "x": 5159376, + "y": 3708400 + }, + { + "type": "lineTo", + "x": 5178426, + "y": 3743325 + }, + { + "type": "lineTo", + "x": 5178426, + "y": 3784600 + }, + { + "type": "lineTo", + "x": 5149851, + "y": 3848100 + }, + { + "type": "lineTo", + "x": 5111751, + "y": 3867150 + }, + { + "type": "lineTo", + "x": 5083176, + "y": 3867150 + }, + { + "type": "lineTo", + "x": 5057776, + "y": 3886200 + }, + { + "type": "lineTo", + "x": 5038726, + "y": 3895725 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 3905250 + }, + { + "type": "lineTo", + "x": 4972051, + "y": 3902075 + }, + { + "type": "lineTo", + "x": 4937126, + "y": 3940175 + }, + { + "type": "lineTo", + "x": 4908551, + "y": 3943350 + }, + { + "type": "lineTo", + "x": 4857751, + "y": 3902075 + }, + { + "type": "lineTo", + "x": 4822826, + "y": 3914775 + }, + { + "type": "lineTo", + "x": 4775201, + "y": 3917950 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 3870325 + }, + { + "type": "lineTo", + "x": 4629151, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 4600576, + "y": 3778250 + }, + { + "type": "lineTo", + "x": 4521201, + "y": 3810000 + }, + { + "type": "lineTo", + "x": 4460876, + "y": 3841750 + }, + { + "type": "lineTo", + "x": 4384676, + "y": 3854450 + }, + { + "type": "lineTo", + "x": 4356101, + "y": 3892550 + }, + { + "type": "lineTo", + "x": 4302126, + "y": 3851275 + }, + { + "type": "lineTo", + "x": 4260851, + "y": 3806825 + }, + { + "type": "lineTo", + "x": 4229101, + "y": 3790950 + }, + { + "type": "lineTo", + "x": 4229101, + "y": 3733800 + }, + { + "type": "lineTo", + "x": 4235451, + "y": 3673475 + }, + { + "type": "lineTo", + "x": 4238626, + "y": 3632200 + }, + { + "type": "lineTo", + "x": 4235451, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 4168776, + "y": 3514725 + }, + { + "type": "lineTo", + "x": 4105276, + "y": 3492500 + }, + { + "type": "lineTo", + "x": 4038601, + "y": 3492500 + }, + { + "type": "lineTo", + "x": 3994151, + "y": 3486150 + }, + { + "type": "lineTo", + "x": 3943351, + "y": 3470275 + }, + { + "type": "lineTo", + "x": 3914776, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 3914776, + "y": 3362325 + }, + { + "type": "lineTo", + "x": 3937001, + "y": 3340100 + }, + { + "type": "lineTo", + "x": 3940176, + "y": 3314700 + }, + { + "type": "lineTo", + "x": 3917951, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 3867151, + "y": 3152775 + }, + { + "type": "lineTo", + "x": 3937001, + "y": 3133725 + }, + { + "type": "lineTo", + "x": 3990976, + "y": 3146425 + }, + { + "type": "lineTo", + "x": 4025901, + "y": 3162300 + }, + { + "type": "lineTo", + "x": 4086226, + "y": 3168650 + }, + { + "type": "lineTo", + "x": 4152901, + "y": 3175000 + }, + { + "type": "lineTo", + "x": 4213226, + "y": 3184525 + }, + { + "type": "lineTo", + "x": 4295776, + "y": 3190875 + }, + { + "type": "lineTo", + "x": 4368801, + "y": 3187700 + }, + { + "type": "lineTo", + "x": 4416426, + "y": 3187700 + }, + { + "type": "lineTo", + "x": 4467226, + "y": 3171825 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 3117850 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 3143250 + }, + { + "type": "lineTo", + "x": 4559301, + "y": 3203575 + }, + { + "type": "lineTo", + "x": 4613276, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 4562476, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 4518026, + "y": 3305175 + }, + { + "type": "lineTo", + "x": 4492626, + "y": 3333750 + }, + { + "type": "lineTo", + "x": 4467226, + "y": 3371850 + }, + { + "type": "lineTo", + "x": 4467226, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 4467226, + "y": 3448050 + }, + { + "type": "lineTo", + "x": 4479926, + "y": 3508375 + }, + { + "type": "lineTo", + "x": 4524376, + "y": 3533775 + }, + { + "type": "lineTo", + "x": 4565651, + "y": 3556000 + }, + { + "type": "lineTo", + "x": 4606926, + "y": 3571875 + }, + { + "type": "lineTo", + "x": 4660901, + "y": 3609975 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 3632200 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 3641725 + }, + { + "type": "lineTo", + "x": 4775201, + "y": 3638550 + }, + { + "type": "lineTo", + "x": 4851401, + "y": 3629025 + }, + { + "type": "lineTo", + "x": 4876801, + "y": 3597275 + }, + { + "type": "lineTo", + "x": 4876801, + "y": 3565525 + }, + { + "type": "lineTo", + "x": 4914901, + "y": 3527425 + }, + { + "type": "lineTo", + "x": 4933951, + "y": 3498850 + }, + { + "type": "lineTo", + "x": 4959351, + "y": 3467100 + }, + { + "type": "lineTo", + "x": 4972051, + "y": 3425825 + }, + { + "type": "lineTo", + "x": 4962526, + "y": 3381375 + }, + { + "type": "lineTo", + "x": 4933951, + "y": 3330575 + }, + { + "type": "lineTo", + "x": 4972051, + "y": 3295650 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 3282950 + }, + { + "type": "lineTo", + "x": 5032376, + "y": 3263900 + }, + { + "type": "lineTo", + "x": 5057776, + "y": 3187700 + }, + { + "type": "lineTo", + "x": 5076826, + "y": 3146425 + }, + { + "type": "lineTo", + "x": 5067301, + "y": 3082925 + }, + { + "type": "lineTo", + "x": 5057776, + "y": 3025775 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 2981325 + }, + { + "type": "lineTo", + "x": 5019676, + "y": 2943225 + }, + { + "type": "lineTo", + "x": 4997451, + "y": 2924175 + }, + { + "type": "lineTo", + "x": 5013326, + "y": 2886075 + }, + { + "type": "lineTo", + "x": 5048251, + "y": 2838450 + }, + { + "type": "lineTo", + "x": 5086351, + "y": 2819400 + }, + { + "type": "lineTo", + "x": 5118101, + "y": 2794000 + }, + { + "type": "lineTo", + "x": 5130801, + "y": 2749550 + }, + { + "type": "lineTo", + "x": 5137151, + "y": 2698750 + }, + { + "type": "lineTo", + "x": 5121276, + "y": 2657475 + }, + { + "type": "lineTo", + "x": 5121276, + "y": 2635250 + }, + { + "type": "lineTo", + "x": 5146676, + "y": 2603500 + }, + { + "type": "lineTo", + "x": 5165726, + "y": 2578100 + }, + { + "type": "lineTo", + "x": 5175251, + "y": 2549525 + }, + { + "type": "lineTo", + "x": 5175251, + "y": 2505075 + }, + { + "type": "lineTo", + "x": 5162551, + "y": 2451100 + }, + { + "type": "lineTo", + "x": 5156201, + "y": 2425700 + }, + { + "type": "lineTo", + "x": 5200651, + "y": 2435225 + }, + { + "type": "lineTo", + "x": 5245101, + "y": 2435225 + }, + { + "type": "lineTo", + "x": 5283201, + "y": 2413000 + }, + { + "type": "lineTo", + "x": 5283201, + "y": 2378075 + }, + { + "type": "lineTo", + "x": 5283201, + "y": 2349500 + }, + { + "type": "lineTo", + "x": 5276851, + "y": 2295525 + }, + { + "type": "lineTo", + "x": 5292726, + "y": 2270125 + }, + { + "type": "lineTo", + "x": 5340351, + "y": 2263775 + }, + { + "type": "lineTo", + "x": 5356226, + "y": 2232025 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 2193925 + }, + { + "type": "lineTo", + "x": 5375276, + "y": 2152650 + }, + { + "type": "lineTo", + "x": 5397501, + "y": 2108200 + }, + { + "type": "lineTo", + "x": 5451476, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 5492751, + "y": 2133600 + }, + { + "type": "lineTo", + "x": 5524501, + "y": 2127250 + }, + { + "type": "lineTo", + "x": 5546726, + "y": 2111375 + }, + { + "type": "lineTo", + "x": 5556251, + "y": 2092325 + }, + { + "type": "lineTo", + "x": 5559426, + "y": 2063750 + }, + { + "type": "lineTo", + "x": 5568951, + "y": 2019300 + }, + { + "type": "lineTo", + "x": 5622926, + "y": 2016125 + }, + { + "type": "lineTo", + "x": 5686426, + "y": 2092325 + }, + { + "type": "lineTo", + "x": 5727701, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 5756276, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 5803901, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 5851526, + "y": 2079625 + }, + { + "type": "lineTo", + "x": 5880101, + "y": 2028825 + }, + { + "type": "lineTo", + "x": 5892801, + "y": 1993900 + }, + { + "type": "lineTo", + "x": 5946776, + "y": 1990725 + }, + { + "type": "lineTo", + "x": 5969001, + "y": 2054225 + }, + { + "type": "lineTo", + "x": 5994401, + "y": 2114550 + }, + { + "type": "lineTo", + "x": 6035676, + "y": 2146300 + }, + { + "type": "lineTo", + "x": 6108701, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 6146801, + "y": 2092325 + }, + { + "type": "lineTo", + "x": 6178551, + "y": 2070100 + }, + { + "type": "lineTo", + "x": 6194426, + "y": 2057400 + }, + { + "type": "lineTo", + "x": 6245226, + "y": 2070100 + }, + { + "type": "lineTo", + "x": 6238876, + "y": 2165350 + }, + { + "type": "lineTo", + "x": 6242051, + "y": 2200275 + }, + { + "type": "lineTo", + "x": 6292851, + "y": 2193925 + }, + { + "type": "lineTo", + "x": 6340476, + "y": 2178050 + }, + { + "type": "lineTo", + "x": 6403976, + "y": 2127250 + }, + { + "type": "lineTo", + "x": 6426201, + "y": 2098675 + }, + { + "type": "lineTo", + "x": 6442076, + "y": 2111375 + }, + { + "type": "lineTo", + "x": 6442076, + "y": 2174875 + }, + { + "type": "lineTo", + "x": 6432551, + "y": 2251075 + }, + { + "type": "lineTo", + "x": 6429376, + "y": 2314575 + }, + { + "type": "lineTo", + "x": 6451601, + "y": 2327275 + }, + { + "type": "lineTo", + "x": 6486526, + "y": 2327275 + }, + { + "type": "lineTo", + "x": 6518276, + "y": 2320925 + }, + { + "type": "lineTo", + "x": 6521451, + "y": 2355850 + }, + { + "type": "lineTo", + "x": 6527801, + "y": 2409825 + }, + { + "type": "lineTo", + "x": 6527801, + "y": 2454275 + }, + { + "type": "lineTo", + "x": 6565901, + "y": 2463800 + }, + { + "type": "lineTo", + "x": 6600826, + "y": 2470150 + }, + { + "type": "lineTo", + "x": 6657976, + "y": 2479675 + }, + { + "type": "lineTo", + "x": 6670676, + "y": 2482850 + }, + { + "type": "lineTo", + "x": 6635751, + "y": 2546350 + }, + { + "type": "lineTo", + "x": 6626226, + "y": 2587625 + }, + { + "type": "lineTo", + "x": 6642101, + "y": 2644775 + }, + { + "type": "lineTo", + "x": 6654801, + "y": 2682875 + }, + { + "type": "lineTo", + "x": 6689726, + "y": 2695575 + }, + { + "type": "lineTo", + "x": 6750051, + "y": 2695575 + }, + { + "type": "lineTo", + "x": 6721476, + "y": 2740025 + }, + { + "type": "lineTo", + "x": 6705601, + "y": 2774950 + }, + { + "type": "lineTo", + "x": 6702426, + "y": 2800350 + }, + { + "type": "lineTo", + "x": 6715126, + "y": 2844800 + }, + { + "type": "lineTo", + "x": 6734176, + "y": 2863850 + }, + { + "type": "lineTo", + "x": 6756401, + "y": 2898775 + }, + { + "type": "lineTo", + "x": 6765926, + "y": 2917825 + }, + { + "type": "lineTo", + "x": 6765926, + "y": 2959100 + }, + { + "type": "lineTo", + "x": 6781801, + "y": 3009900 + }, + { + "type": "lineTo", + "x": 6823076, + "y": 3013075 + }, + { + "type": "lineTo", + "x": 6877051, + "y": 3019425 + }, + { + "type": "lineTo", + "x": 6896101, + "y": 3019425 + }, + { + "type": "lineTo", + "x": 6823076, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 6788151, + "y": 3117850 + }, + { + "type": "lineTo", + "x": 6765926, + "y": 3146425 + }, + { + "type": "lineTo", + "x": 6762751, + "y": 3184525 + }, + { + "type": "lineTo", + "x": 6740526, + "y": 3219450 + }, + { + "type": "lineTo", + "x": 6737351, + "y": 3241675 + }, + { + "type": "lineTo", + "x": 6737351, + "y": 3298825 + }, + { + "type": "lineTo", + "x": 6756401, + "y": 3346450 + }, + { + "type": "lineTo", + "x": 6794501, + "y": 3365500 + }, + { + "type": "lineTo", + "x": 6845301, + "y": 3394075 + }, + { + "type": "lineTo", + "x": 6861176, + "y": 3409950 + }, + { + "type": "lineTo", + "x": 6800851, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 6800851, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 6772276, + "y": 3492500 + }, + { + "type": "lineTo", + "x": 6781801, + "y": 3521075 + }, + { + "type": "lineTo", + "x": 6784976, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 6807201, + "y": 3613150 + }, + { + "type": "lineTo", + "x": 6851651, + "y": 3644900 + }, + { + "type": "lineTo", + "x": 6899276, + "y": 3660775 + }, + { + "type": "lineTo", + "x": 6943726, + "y": 3676650 + }, + { + "type": "lineTo", + "x": 7029451, + "y": 3689350 + }, + { + "type": "lineTo", + "x": 7086601, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 7150101, + "y": 3679825 + }, + { + "type": "lineTo", + "x": 7194551, + "y": 3657600 + }, + { + "type": "lineTo", + "x": 7219951, + "y": 3619500 + }, + { + "type": "lineTo", + "x": 7242176, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 7277101, + "y": 3527425 + }, + { + "type": "lineTo", + "x": 7289801, + "y": 3495675 + }, + { + "type": "lineTo", + "x": 7302501, + "y": 3457575 + }, + { + "type": "lineTo", + "x": 7299326, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 7264401, + "y": 3371850 + }, + { + "type": "lineTo", + "x": 7219951, + "y": 3352800 + }, + { + "type": "lineTo", + "x": 7165976, + "y": 3333750 + }, + { + "type": "lineTo", + "x": 7108826, + "y": 3346450 + }, + { + "type": "lineTo", + "x": 7178676, + "y": 3308350 + }, + { + "type": "lineTo", + "x": 7197726, + "y": 3235325 + }, + { + "type": "lineTo", + "x": 7254876, + "y": 3260725 + }, + { + "type": "lineTo", + "x": 7343776, + "y": 3282950 + }, + { + "type": "lineTo", + "x": 7413626, + "y": 3289300 + }, + { + "type": "lineTo", + "x": 7477126, + "y": 3298825 + }, + { + "type": "lineTo", + "x": 7531101, + "y": 3311525 + }, + { + "type": "lineTo", + "x": 7610476, + "y": 3286125 + }, + { + "type": "lineTo", + "x": 7670801, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 7734301, + "y": 3289300 + }, + { + "type": "lineTo", + "x": 7762876, + "y": 3327400 + }, + { + "type": "lineTo", + "x": 7721601, + "y": 3359150 + }, + { + "type": "lineTo", + "x": 7731126, + "y": 3403600 + }, + { + "type": "lineTo", + "x": 7731126, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 7699376, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 7654926, + "y": 3581400 + }, + { + "type": "lineTo", + "x": 7623176, + "y": 3603625 + }, + { + "type": "lineTo", + "x": 7597776, + "y": 3625850 + }, + { + "type": "lineTo", + "x": 7575551, + "y": 3641725 + }, + { + "type": "lineTo", + "x": 7518401, + "y": 3657600 + }, + { + "type": "lineTo", + "x": 7442201, + "y": 3667125 + }, + { + "type": "lineTo", + "x": 7391401, + "y": 3673475 + }, + { + "type": "lineTo", + "x": 7337426, + "y": 3702050 + }, + { + "type": "lineTo", + "x": 7289801, + "y": 3749675 + }, + { + "type": "lineTo", + "x": 7270751, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 7258051, + "y": 3848100 + }, + { + "type": "lineTo", + "x": 7251701, + "y": 3946525 + }, + { + "type": "lineTo", + "x": 7210426, + "y": 3971925 + }, + { + "type": "lineTo", + "x": 7178676, + "y": 3990975 + }, + { + "type": "lineTo", + "x": 7092951, + "y": 3971925 + }, + { + "type": "lineTo", + "x": 7086601, + "y": 3965575 + }, + { + "type": "lineTo", + "x": 7077076, + "y": 3914775 + }, + { + "type": "lineTo", + "x": 7038976, + "y": 3883025 + }, + { + "type": "lineTo", + "x": 6959601, + "y": 3911600 + }, + { + "type": "lineTo", + "x": 6870701, + "y": 3987800 + }, + { + "type": "lineTo", + "x": 6781801, + "y": 3956050 + }, + { + "type": "lineTo", + "x": 6664326, + "y": 3927475 + }, + { + "type": "lineTo", + "x": 6572251, + "y": 3889375 + }, + { + "type": "lineTo", + "x": 6518276, + "y": 3870325 + }, + { + "type": "lineTo", + "x": 6518276, + "y": 3790950 + }, + { + "type": "lineTo", + "x": 6505576, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 6432551, + "y": 3648075 + }, + { + "type": "lineTo", + "x": 6346826, + "y": 3587750 + }, + { + "type": "lineTo", + "x": 6321426, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 6248401, + "y": 3552825 + }, + { + "type": "lineTo", + "x": 6203951, + "y": 3549650 + }, + { + "type": "lineTo", + "x": 6169026, + "y": 3571875 + }, + { + "type": "lineTo", + "x": 6121401, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 6073776, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 6010276, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 5943601, + "y": 3527425 + }, + { + "type": "lineTo", + "x": 5851526, + "y": 3527425 + }, + { + "type": "lineTo", + "x": 5848351, + "y": 3575050 + }, + { + "type": "lineTo", + "x": 5778501, + "y": 3549650 + }, + { + "type": "lineTo", + "x": 5740401, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 5695951, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 5695951, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 5632451, + "y": 3581400 + }, + { + "type": "lineTo", + "x": 5613401, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 5565776, + "y": 3575050 + }, + { + "type": "lineTo", + "x": 5511801, + "y": 3597275 + }, + { + "type": "lineTo", + "x": 5426076, + "y": 3606800 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/inferior_occipital_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/inferior_occipital_colored_regions.json new file mode 100644 index 00000000..d4fe22e3 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/inferior_occipital_colored_regions.json @@ -0,0 +1,689 @@ +{ + "slide_number": 26, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "941", + "path_data": [ + { + "path_width": 4406123, + "path_height": 3784081, + "commands": [ + { + "type": "moveTo", + "x": 6217411, + "y": 2365311 + }, + { + "type": "lineTo", + "x": 6093003, + "y": 2256454 + }, + { + "type": "lineTo", + "x": 5978962, + "y": 2214984 + }, + { + "type": "lineTo", + "x": 5813085, + "y": 2209801 + }, + { + "type": "lineTo", + "x": 5652391, + "y": 2230535 + }, + { + "type": "lineTo", + "x": 5507248, + "y": 2266821 + }, + { + "type": "lineTo", + "x": 5403575, + "y": 2303107 + }, + { + "type": "lineTo", + "x": 5351738, + "y": 2334209 + }, + { + "type": "lineTo", + "x": 5320636, + "y": 2391229 + }, + { + "type": "lineTo", + "x": 5279167, + "y": 2443066 + }, + { + "type": "lineTo", + "x": 5284350, + "y": 2515637 + }, + { + "type": "lineTo", + "x": 5242881, + "y": 2598576 + }, + { + "type": "lineTo", + "x": 5180677, + "y": 2681515 + }, + { + "type": "lineTo", + "x": 5061452, + "y": 2738535 + }, + { + "type": "lineTo", + "x": 4962962, + "y": 2764454 + }, + { + "type": "lineTo", + "x": 4874840, + "y": 2790372 + }, + { + "type": "lineTo", + "x": 4916309, + "y": 2842209 + }, + { + "type": "lineTo", + "x": 4921493, + "y": 2862943 + }, + { + "type": "lineTo", + "x": 4843738, + "y": 2940699 + }, + { + "type": "lineTo", + "x": 4672677, + "y": 2982168 + }, + { + "type": "lineTo", + "x": 4569003, + "y": 3008086 + }, + { + "type": "lineTo", + "x": 4460146, + "y": 3008086 + }, + { + "type": "lineTo", + "x": 4335738, + "y": 2945882 + }, + { + "type": "lineTo", + "x": 4232065, + "y": 2909596 + }, + { + "type": "lineTo", + "x": 4159493, + "y": 2873311 + }, + { + "type": "lineTo", + "x": 4102473, + "y": 2904413 + }, + { + "type": "lineTo", + "x": 4086922, + "y": 2987352 + }, + { + "type": "lineTo", + "x": 4071371, + "y": 3034005 + }, + { + "type": "lineTo", + "x": 4102473, + "y": 3132494 + }, + { + "type": "lineTo", + "x": 4112840, + "y": 3220617 + }, + { + "type": "lineTo", + "x": 4097289, + "y": 3355392 + }, + { + "type": "lineTo", + "x": 4097289, + "y": 3402045 + }, + { + "type": "lineTo", + "x": 4061003, + "y": 3479801 + }, + { + "type": "lineTo", + "x": 3983248, + "y": 3588658 + }, + { + "type": "lineTo", + "x": 3931411, + "y": 3635311 + }, + { + "type": "lineTo", + "x": 3874391, + "y": 3687148 + }, + { + "type": "lineTo", + "x": 3807003, + "y": 3770086 + }, + { + "type": "lineTo", + "x": 3786269, + "y": 3827107 + }, + { + "type": "lineTo", + "x": 3724065, + "y": 3904862 + }, + { + "type": "lineTo", + "x": 3744799, + "y": 3961882 + }, + { + "type": "lineTo", + "x": 3801820, + "y": 4008535 + }, + { + "type": "lineTo", + "x": 3801820, + "y": 4091474 + }, + { + "type": "lineTo", + "x": 3708514, + "y": 4112209 + }, + { + "type": "lineTo", + "x": 3599656, + "y": 4086290 + }, + { + "type": "lineTo", + "x": 3589289, + "y": 4086290 + }, + { + "type": "lineTo", + "x": 3553003, + "y": 4107025 + }, + { + "type": "lineTo", + "x": 3584105, + "y": 4210699 + }, + { + "type": "lineTo", + "x": 3599656, + "y": 4366209 + }, + { + "type": "lineTo", + "x": 3599656, + "y": 4366209 + }, + { + "type": "lineTo", + "x": 3615207, + "y": 4454331 + }, + { + "type": "lineTo", + "x": 3656677, + "y": 4511352 + }, + { + "type": "lineTo", + "x": 3558187, + "y": 4609841 + }, + { + "type": "lineTo", + "x": 3620391, + "y": 4703148 + }, + { + "type": "lineTo", + "x": 3718881, + "y": 4832739 + }, + { + "type": "lineTo", + "x": 3739616, + "y": 4926045 + }, + { + "type": "lineTo", + "x": 3817371, + "y": 5050454 + }, + { + "type": "lineTo", + "x": 3869207, + "y": 5133392 + }, + { + "type": "lineTo", + "x": 3900309, + "y": 5252617 + }, + { + "type": "lineTo", + "x": 4019534, + "y": 5382209 + }, + { + "type": "lineTo", + "x": 4159493, + "y": 5496250 + }, + { + "type": "lineTo", + "x": 4289085, + "y": 5615474 + }, + { + "type": "lineTo", + "x": 4506799, + "y": 5739882 + }, + { + "type": "lineTo", + "x": 4755616, + "y": 5864290 + }, + { + "type": "lineTo", + "x": 4931860, + "y": 5900576 + }, + { + "type": "lineTo", + "x": 5159942, + "y": 5921311 + }, + { + "type": "lineTo", + "x": 5393207, + "y": 5947229 + }, + { + "type": "lineTo", + "x": 5673126, + "y": 5962780 + }, + { + "type": "lineTo", + "x": 5839003, + "y": 5962780 + }, + { + "type": "lineTo", + "x": 6020432, + "y": 5993882 + }, + { + "type": "lineTo", + "x": 6269248, + "y": 5983515 + }, + { + "type": "lineTo", + "x": 6440309, + "y": 5936862 + }, + { + "type": "lineTo", + "x": 6683942, + "y": 5853923 + }, + { + "type": "lineTo", + "x": 6844636, + "y": 5776168 + }, + { + "type": "lineTo", + "x": 7103820, + "y": 5620658 + }, + { + "type": "lineTo", + "x": 7300799, + "y": 5434045 + }, + { + "type": "lineTo", + "x": 7435575, + "y": 5278535 + }, + { + "type": "lineTo", + "x": 7617003, + "y": 5066005 + }, + { + "type": "lineTo", + "x": 7648105, + "y": 4977882 + }, + { + "type": "lineTo", + "x": 7679207, + "y": 4843107 + }, + { + "type": "lineTo", + "x": 7731044, + "y": 4729066 + }, + { + "type": "lineTo", + "x": 7793248, + "y": 4615025 + }, + { + "type": "lineTo", + "x": 7860636, + "y": 4500984 + }, + { + "type": "lineTo", + "x": 7902105, + "y": 4397311 + }, + { + "type": "lineTo", + "x": 7912473, + "y": 4335107 + }, + { + "type": "lineTo", + "x": 7959126, + "y": 4293637 + }, + { + "type": "lineTo", + "x": 7959126, + "y": 4200331 + }, + { + "type": "lineTo", + "x": 7933207, + "y": 4107025 + }, + { + "type": "lineTo", + "x": 7886230, + "y": 4133591 + }, + { + "type": "lineTo", + "x": 7823184, + "y": 4146421 + }, + { + "type": "cubicBezTo", + "x1": 7828044, + "y1": 4114563, + "x2": 7766229, + "y2": 4133505, + "x": 7771089, + "y": 4101647 + }, + { + "type": "cubicBezTo", + "x1": 7788022, + "y1": 4068839, + "x2": 7766856, + "y2": 4074130, + "x": 7783789, + "y": 4041322 + }, + { + "type": "lineTo", + "x": 7860636, + "y": 3956699 + }, + { + "type": "lineTo", + "x": 7865820, + "y": 3868576 + }, + { + "type": "lineTo", + "x": 7834718, + "y": 3806372 + }, + { + "type": "lineTo", + "x": 7813983, + "y": 3759719 + }, + { + "type": "lineTo", + "x": 7756962, + "y": 3733801 + }, + { + "type": "lineTo", + "x": 7699942, + "y": 3692331 + }, + { + "type": "lineTo", + "x": 7699942, + "y": 3681964 + }, + { + "type": "lineTo", + "x": 7746595, + "y": 3640494 + }, + { + "type": "lineTo", + "x": 7736228, + "y": 3609392 + }, + { + "type": "lineTo", + "x": 7653289, + "y": 3567923 + }, + { + "type": "lineTo", + "x": 7601452, + "y": 3536821 + }, + { + "type": "lineTo", + "x": 7565167, + "y": 3453882 + }, + { + "type": "lineTo", + "x": 7570350, + "y": 3386494 + }, + { + "type": "lineTo", + "x": 7508146, + "y": 3319107 + }, + { + "type": "lineTo", + "x": 7508146, + "y": 3288005 + }, + { + "type": "lineTo", + "x": 7508146, + "y": 3241352 + }, + { + "type": "lineTo", + "x": 7456309, + "y": 3179148 + }, + { + "type": "lineTo", + "x": 7471860, + "y": 3111760 + }, + { + "type": "lineTo", + "x": 7440758, + "y": 3008086 + }, + { + "type": "lineTo", + "x": 7404473, + "y": 2935515 + }, + { + "type": "lineTo", + "x": 7373371, + "y": 2914780 + }, + { + "type": "lineTo", + "x": 7316350, + "y": 2899229 + }, + { + "type": "lineTo", + "x": 7259330, + "y": 2888862 + }, + { + "type": "lineTo", + "x": 7217860, + "y": 2904413 + }, + { + "type": "lineTo", + "x": 7176391, + "y": 2919964 + }, + { + "type": "lineTo", + "x": 7134922, + "y": 2930331 + }, + { + "type": "lineTo", + "x": 7072718, + "y": 2935515 + }, + { + "type": "lineTo", + "x": 7020881, + "y": 2935515 + }, + { + "type": "lineTo", + "x": 6948309, + "y": 2956250 + }, + { + "type": "lineTo", + "x": 6829085, + "y": 2956250 + }, + { + "type": "lineTo", + "x": 6751330, + "y": 2919964 + }, + { + "type": "lineTo", + "x": 6715044, + "y": 2862943 + }, + { + "type": "lineTo", + "x": 6668391, + "y": 2800739 + }, + { + "type": "lineTo", + "x": 6637289, + "y": 2743719 + }, + { + "type": "lineTo", + "x": 6554350, + "y": 2733352 + }, + { + "type": "lineTo", + "x": 6450677, + "y": 2697066 + }, + { + "type": "lineTo", + "x": 6336636, + "y": 2655596 + }, + { + "type": "lineTo", + "x": 6253697, + "y": 2593392 + }, + { + "type": "lineTo", + "x": 6207044, + "y": 2500086 + }, + { + "type": "lineTo", + "x": 6217411, + "y": 2365311 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/inferior_palatine_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/inferior_palatine_colored_regions.json new file mode 100644 index 00000000..1e21ed9f --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/inferior_palatine_colored_regions.json @@ -0,0 +1,612 @@ +{ + "slide_number": 23, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "834", + "path_data": [ + { + "path_width": 2394656, + "path_height": 758825, + "commands": [ + { + "type": "moveTo", + "x": 4994276, + "y": 2625725 + }, + { + "type": "lineTo", + "x": 5045076, + "y": 2562225 + }, + { + "type": "lineTo", + "x": 5010151, + "y": 2530475 + }, + { + "type": "lineTo", + "x": 4981576, + "y": 2511425 + }, + { + "type": "lineTo", + "x": 4953001, + "y": 2511425 + }, + { + "type": "lineTo", + "x": 4927601, + "y": 2505075 + }, + { + "type": "lineTo", + "x": 4889501, + "y": 2473325 + }, + { + "type": "lineTo", + "x": 4854576, + "y": 2447925 + }, + { + "type": "lineTo", + "x": 4806951, + "y": 2403475 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 2387600 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 2381250 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 2390775 + }, + { + "type": "lineTo", + "x": 4686301, + "y": 2390775 + }, + { + "type": "lineTo", + "x": 4648201, + "y": 2409825 + }, + { + "type": "lineTo", + "x": 4597401, + "y": 2413000 + }, + { + "type": "lineTo", + "x": 4549776, + "y": 2371725 + }, + { + "type": "lineTo", + "x": 4489451, + "y": 2355850 + }, + { + "type": "lineTo", + "x": 4438651, + "y": 2352675 + }, + { + "type": "lineTo", + "x": 4375151, + "y": 2352675 + }, + { + "type": "lineTo", + "x": 4318001, + "y": 2352675 + }, + { + "type": "lineTo", + "x": 4305301, + "y": 2393950 + }, + { + "type": "lineTo", + "x": 4270376, + "y": 2374900 + }, + { + "type": "lineTo", + "x": 4238626, + "y": 2368550 + }, + { + "type": "lineTo", + "x": 4206876, + "y": 2359025 + }, + { + "type": "lineTo", + "x": 4171951, + "y": 2362200 + }, + { + "type": "lineTo", + "x": 4149726, + "y": 2339975 + }, + { + "type": "lineTo", + "x": 4127501, + "y": 2365375 + }, + { + "type": "lineTo", + "x": 4060826, + "y": 2390775 + }, + { + "type": "lineTo", + "x": 3994151, + "y": 2413000 + }, + { + "type": "lineTo", + "x": 3946526, + "y": 2419350 + }, + { + "type": "lineTo", + "x": 3886201, + "y": 2428875 + }, + { + "type": "lineTo", + "x": 3851276, + "y": 2425700 + }, + { + "type": "lineTo", + "x": 3806826, + "y": 2403475 + }, + { + "type": "lineTo", + "x": 3768726, + "y": 2400300 + }, + { + "type": "lineTo", + "x": 3743326, + "y": 2419350 + }, + { + "type": "lineTo", + "x": 3698876, + "y": 2409825 + }, + { + "type": "lineTo", + "x": 3670301, + "y": 2438400 + }, + { + "type": "lineTo", + "x": 3651251, + "y": 2463800 + }, + { + "type": "lineTo", + "x": 3616326, + "y": 2482850 + }, + { + "type": "lineTo", + "x": 3606801, + "y": 2520950 + }, + { + "type": "lineTo", + "x": 3594101, + "y": 2546350 + }, + { + "type": "lineTo", + "x": 3594101, + "y": 2584450 + }, + { + "type": "lineTo", + "x": 3587751, + "y": 2638425 + }, + { + "type": "lineTo", + "x": 3568701, + "y": 2679700 + }, + { + "type": "lineTo", + "x": 3530601, + "y": 2701925 + }, + { + "type": "lineTo", + "x": 3492501, + "y": 2730500 + }, + { + "type": "lineTo", + "x": 3438526, + "y": 2743200 + }, + { + "type": "lineTo", + "x": 3384551, + "y": 2743200 + }, + { + "type": "cubicBezTo", + "x1": 3368676, + "y1": 2751667, + "x2": 3368675, + "y2": 2788708, + "x": 3352800, + "y": 2797175 + }, + { + "type": "lineTo", + "x": 3298826, + "y": 2816225 + }, + { + "type": "cubicBezTo", + "x1": 3263372, + "y1": 2842683, + "x2": 3221038, + "y2": 2841096, + "x": 3181351, + "y": 2870200 + }, + { + "type": "cubicBezTo", + "x1": 3109914, + "y1": 2899304, + "x2": 3130022, + "y2": 2925233, + "x": 3127376, + "y": 2940050 + }, + { + "type": "cubicBezTo", + "x1": 3124730, + "y1": 2954867, + "x2": 3163889, + "y2": 2962804, + "x": 3175001, + "y": 2971800 + }, + { + "type": "lineTo", + "x": 3314701, + "y": 2936875 + }, + { + "type": "lineTo", + "x": 3444876, + "y": 2974975 + }, + { + "type": "lineTo", + "x": 3511551, + "y": 2854325 + }, + { + "type": "lineTo", + "x": 3559176, + "y": 2841625 + }, + { + "type": "lineTo", + "x": 3616326, + "y": 2841625 + }, + { + "type": "lineTo", + "x": 3663951, + "y": 2854325 + }, + { + "type": "lineTo", + "x": 3695701, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 3762376, + "y": 2813050 + }, + { + "type": "lineTo", + "x": 3810001, + "y": 2790825 + }, + { + "type": "lineTo", + "x": 3870326, + "y": 2768600 + }, + { + "type": "lineTo", + "x": 3956051, + "y": 2768600 + }, + { + "type": "lineTo", + "x": 4016376, + "y": 2787650 + }, + { + "type": "lineTo", + "x": 4070351, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 4152901, + "y": 2838450 + }, + { + "type": "lineTo", + "x": 4187826, + "y": 2886075 + }, + { + "type": "lineTo", + "x": 4194176, + "y": 2930525 + }, + { + "type": "lineTo", + "x": 4229101, + "y": 2971800 + }, + { + "type": "lineTo", + "x": 4276726, + "y": 2994025 + }, + { + "type": "lineTo", + "x": 4308476, + "y": 3016250 + }, + { + "type": "lineTo", + "x": 4362451, + "y": 3003550 + }, + { + "type": "lineTo", + "x": 4371976, + "y": 2984500 + }, + { + "type": "lineTo", + "x": 4400551, + "y": 2962275 + }, + { + "type": "lineTo", + "x": 4422776, + "y": 2949575 + }, + { + "type": "lineTo", + "x": 4410076, + "y": 2921000 + }, + { + "type": "lineTo", + "x": 4410076, + "y": 2886075 + }, + { + "type": "lineTo", + "x": 4441826, + "y": 2857500 + }, + { + "type": "lineTo", + "x": 4511676, + "y": 2819400 + }, + { + "type": "lineTo", + "x": 4600576, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 2806700 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 2813050 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 2832100 + }, + { + "type": "lineTo", + "x": 4816476, + "y": 2851150 + }, + { + "type": "lineTo", + "x": 4851401, + "y": 2905125 + }, + { + "type": "lineTo", + "x": 4845051, + "y": 3009900 + }, + { + "type": "lineTo", + "x": 4857751, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 4889501, + "y": 3022600 + }, + { + "type": "lineTo", + "x": 4905376, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 4946651, + "y": 2955925 + }, + { + "type": "lineTo", + "x": 4981576, + "y": 2924175 + }, + { + "type": "lineTo", + "x": 5010151, + "y": 2911475 + }, + { + "type": "lineTo", + "x": 5070476, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 5121276, + "y": 2892425 + }, + { + "type": "lineTo", + "x": 5076826, + "y": 2965450 + }, + { + "type": "lineTo", + "x": 5111751, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 5143501, + "y": 3006725 + }, + { + "type": "lineTo", + "x": 5210176, + "y": 2978150 + }, + { + "type": "lineTo", + "x": 5276851, + "y": 2968625 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 2968625 + }, + { + "type": "lineTo", + "x": 5426076, + "y": 2990850 + }, + { + "type": "lineTo", + "x": 5457826, + "y": 2994025 + }, + { + "type": "lineTo", + "x": 5508626, + "y": 2962275 + }, + { + "type": "lineTo", + "x": 5521326, + "y": 2930525 + }, + { + "type": "lineTo", + "x": 5467351, + "y": 2908300 + }, + { + "type": "lineTo", + "x": 5387976, + "y": 2867025 + }, + { + "type": "lineTo", + "x": 5353051, + "y": 2832100 + }, + { + "type": "lineTo", + "x": 5280026, + "y": 2828925 + }, + { + "type": "lineTo", + "x": 5232401, + "y": 2784475 + }, + { + "type": "lineTo", + "x": 5143501, + "y": 2717800 + }, + { + "type": "lineTo", + "x": 5073651, + "y": 2689225 + }, + { + "type": "lineTo", + "x": 5016501, + "y": 2682875 + }, + { + "type": "lineTo", + "x": 4994276, + "y": 2625725 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/inferior_sphenoid_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/inferior_sphenoid_colored_regions.json new file mode 100644 index 00000000..f800a8e6 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/inferior_sphenoid_colored_regions.json @@ -0,0 +1,969 @@ +{ + "slide_number": 22, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "783", + "path_data": [ + { + "path_width": 1838325, + "path_height": 1412875, + "commands": [ + { + "type": "moveTo", + "x": 2581275, + "y": 4318000 + }, + { + "type": "lineTo", + "x": 2574925, + "y": 4264025 + }, + { + "type": "lineTo", + "x": 2590800, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 2587625, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 2581275, + "y": 4149725 + }, + { + "type": "lineTo", + "x": 2549525, + "y": 4105275 + }, + { + "type": "lineTo", + "x": 2549525, + "y": 4076700 + }, + { + "type": "lineTo", + "x": 2527300, + "y": 4006850 + }, + { + "type": "lineTo", + "x": 2508250, + "y": 3965575 + }, + { + "type": "lineTo", + "x": 2495550, + "y": 3927475 + }, + { + "type": "lineTo", + "x": 2486025, + "y": 3886200 + }, + { + "type": "lineTo", + "x": 2460625, + "y": 3844925 + }, + { + "type": "lineTo", + "x": 2466975, + "y": 3803650 + }, + { + "type": "lineTo", + "x": 2489200, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 2476500, + "y": 3686175 + }, + { + "type": "lineTo", + "x": 2466975, + "y": 3651250 + }, + { + "type": "lineTo", + "x": 2425700, + "y": 3609975 + }, + { + "type": "lineTo", + "x": 2397125, + "y": 3587750 + }, + { + "type": "lineTo", + "x": 2346325, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 2282825, + "y": 3584575 + }, + { + "type": "lineTo", + "x": 2305050, + "y": 3530600 + }, + { + "type": "lineTo", + "x": 2352675, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 2409825, + "y": 3375025 + }, + { + "type": "lineTo", + "x": 2457450, + "y": 3292475 + }, + { + "type": "lineTo", + "x": 2508250, + "y": 3225800 + }, + { + "type": "lineTo", + "x": 2533650, + "y": 3181350 + }, + { + "type": "lineTo", + "x": 2533650, + "y": 3111500 + }, + { + "type": "lineTo", + "x": 2565400, + "y": 3079750 + }, + { + "type": "lineTo", + "x": 2625725, + "y": 3067050 + }, + { + "type": "lineTo", + "x": 2679700, + "y": 3025775 + }, + { + "type": "lineTo", + "x": 2705100, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 2733675, + "y": 2962275 + }, + { + "type": "lineTo", + "x": 2774950, + "y": 2933700 + }, + { + "type": "lineTo", + "x": 2816225, + "y": 2927350 + }, + { + "type": "lineTo", + "x": 2882900, + "y": 2965450 + }, + { + "type": "lineTo", + "x": 2987675, + "y": 3022600 + }, + { + "type": "lineTo", + "x": 3019425, + "y": 3041650 + }, + { + "type": "lineTo", + "x": 3086100, + "y": 3124200 + }, + { + "type": "lineTo", + "x": 3203575, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 3270250, + "y": 3095625 + }, + { + "type": "lineTo", + "x": 3336925, + "y": 3108325 + }, + { + "type": "lineTo", + "x": 3400425, + "y": 3143250 + }, + { + "type": "cubicBezTo", + "x1": 3401483, + "y1": 3091392, + "x2": 3462867, + "y2": 3153833, + "x": 3463925, + "y": 3101975 + }, + { + "type": "lineTo", + "x": 3517900, + "y": 2974975 + }, + { + "type": "lineTo", + "x": 3578225, + "y": 2952750 + }, + { + "type": "lineTo", + "x": 3619500, + "y": 2987675 + }, + { + "type": "lineTo", + "x": 3667125, + "y": 3038475 + }, + { + "type": "lineTo", + "x": 3667125, + "y": 3117850 + }, + { + "type": "lineTo", + "x": 3641725, + "y": 3181350 + }, + { + "type": "lineTo", + "x": 3635375, + "y": 3244850 + }, + { + "type": "lineTo", + "x": 3651250, + "y": 3302000 + }, + { + "type": "lineTo", + "x": 3692525, + "y": 3333750 + }, + { + "type": "lineTo", + "x": 3730625, + "y": 3368675 + }, + { + "type": "lineTo", + "x": 3756025, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 3787775, + "y": 3438525 + }, + { + "type": "lineTo", + "x": 3787775, + "y": 3473450 + }, + { + "type": "lineTo", + "x": 3816350, + "y": 3495675 + }, + { + "type": "lineTo", + "x": 3848100, + "y": 3508375 + }, + { + "type": "lineTo", + "x": 3883025, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 3908425, + "y": 3540125 + }, + { + "type": "lineTo", + "x": 3911600, + "y": 3575050 + }, + { + "type": "lineTo", + "x": 3914775, + "y": 3629025 + }, + { + "type": "lineTo", + "x": 3911600, + "y": 3663950 + }, + { + "type": "lineTo", + "x": 3917950, + "y": 3705225 + }, + { + "type": "lineTo", + "x": 3914775, + "y": 3752850 + }, + { + "type": "lineTo", + "x": 3981450, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 4038600, + "y": 3854450 + }, + { + "type": "lineTo", + "x": 4057650, + "y": 3943350 + }, + { + "type": "lineTo", + "x": 4070350, + "y": 4016375 + }, + { + "type": "lineTo", + "x": 4121150, + "y": 4051300 + }, + { + "type": "lineTo", + "x": 4016375, + "y": 4098925 + }, + { + "type": "lineTo", + "x": 3937000, + "y": 4111625 + }, + { + "type": "lineTo", + "x": 3844925, + "y": 4140200 + }, + { + "type": "lineTo", + "x": 3787775, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 3765550, + "y": 4257675 + }, + { + "type": "lineTo", + "x": 3736975, + "y": 4289425 + }, + { + "type": "lineTo", + "x": 3657600, + "y": 4244975 + }, + { + "type": "lineTo", + "x": 3629025, + "y": 4200525 + }, + { + "type": "lineTo", + "x": 3568700, + "y": 4162425 + }, + { + "type": "lineTo", + "x": 3517900, + "y": 4121150 + }, + { + "type": "lineTo", + "x": 3508375, + "y": 4108450 + }, + { + "type": "lineTo", + "x": 3517900, + "y": 4073525 + }, + { + "type": "lineTo", + "x": 3476625, + "y": 4022725 + }, + { + "type": "lineTo", + "x": 3413125, + "y": 4044950 + }, + { + "type": "lineTo", + "x": 3257550, + "y": 4092575 + }, + { + "type": "lineTo", + "x": 3162300, + "y": 4133850 + }, + { + "type": "lineTo", + "x": 3086100, + "y": 4178300 + }, + { + "type": "lineTo", + "x": 3006725, + "y": 4197350 + }, + { + "type": "lineTo", + "x": 2927350, + "y": 4260850 + }, + { + "type": "lineTo", + "x": 2847975, + "y": 4295775 + }, + { + "type": "lineTo", + "x": 2822575, + "y": 4314825 + }, + { + "type": "lineTo", + "x": 2740025, + "y": 4327525 + }, + { + "type": "lineTo", + "x": 2679700, + "y": 4340225 + }, + { + "type": "lineTo", + "x": 2581275, + "y": 4318000 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "784", + "path_data": [ + { + "path_width": 1606550, + "path_height": 1374775, + "commands": [ + { + "type": "moveTo", + "x": 5969000, + "y": 3648076 + }, + { + "type": "lineTo", + "x": 5911850, + "y": 3616326 + }, + { + "type": "lineTo", + "x": 5876925, + "y": 3600451 + }, + { + "type": "lineTo", + "x": 5832475, + "y": 3578226 + }, + { + "type": "lineTo", + "x": 5797550, + "y": 3565526 + }, + { + "type": "lineTo", + "x": 5762625, + "y": 3559176 + }, + { + "type": "lineTo", + "x": 5727700, + "y": 3498851 + }, + { + "type": "lineTo", + "x": 5692775, + "y": 3438526 + }, + { + "type": "lineTo", + "x": 5657850, + "y": 3371851 + }, + { + "type": "lineTo", + "x": 5648325, + "y": 3282951 + }, + { + "type": "lineTo", + "x": 5686425, + "y": 3317876 + }, + { + "type": "lineTo", + "x": 5705475, + "y": 3311526 + }, + { + "type": "lineTo", + "x": 5715000, + "y": 3286126 + }, + { + "type": "lineTo", + "x": 5708650, + "y": 3248026 + }, + { + "type": "lineTo", + "x": 5699125, + "y": 3216276 + }, + { + "type": "lineTo", + "x": 5667375, + "y": 3165476 + }, + { + "type": "lineTo", + "x": 5695950, + "y": 3111501 + }, + { + "type": "lineTo", + "x": 5641975, + "y": 3060701 + }, + { + "type": "lineTo", + "x": 5588000, + "y": 3022601 + }, + { + "type": "cubicBezTo", + "x1": 5570008, + "y1": 3015193, + "x2": 5542492, + "y2": 3012547, + "x": 5524500, + "y": 3016251 + }, + { + "type": "cubicBezTo", + "x1": 5506508, + "y1": 3019955, + "x2": 5478463, + "y2": 3128964, + "x": 5454650, + "y": 3127376 + }, + { + "type": "cubicBezTo", + "x1": 5419725, + "y1": 3108326, + "x2": 5416550, + "y2": 3136900, + "x": 5381625, + "y": 3117850 + }, + { + "type": "lineTo", + "x": 5283200, + "y": 3086101 + }, + { + "type": "lineTo", + "x": 5095875, + "y": 3152776 + }, + { + "type": "lineTo", + "x": 5067300, + "y": 3105151 + }, + { + "type": "lineTo", + "x": 5095875, + "y": 3060701 + }, + { + "type": "lineTo", + "x": 5089525, + "y": 2984501 + }, + { + "type": "lineTo", + "x": 4987925, + "y": 3035301 + }, + { + "type": "lineTo", + "x": 4911725, + "y": 3095626 + }, + { + "type": "lineTo", + "x": 4841875, + "y": 3206751 + }, + { + "type": "lineTo", + "x": 4794250, + "y": 3340101 + }, + { + "type": "lineTo", + "x": 4740275, + "y": 3390901 + }, + { + "type": "lineTo", + "x": 4670425, + "y": 3470276 + }, + { + "type": "lineTo", + "x": 4632325, + "y": 3533776 + }, + { + "type": "lineTo", + "x": 4584700, + "y": 3651251 + }, + { + "type": "lineTo", + "x": 4479925, + "y": 3683001 + }, + { + "type": "lineTo", + "x": 4429125, + "y": 3771901 + }, + { + "type": "lineTo", + "x": 4381500, + "y": 3857626 + }, + { + "type": "lineTo", + "x": 4362450, + "y": 3908426 + }, + { + "type": "lineTo", + "x": 4397375, + "y": 3962401 + }, + { + "type": "lineTo", + "x": 4403725, + "y": 4013201 + }, + { + "type": "lineTo", + "x": 4467225, + "y": 4060826 + }, + { + "type": "lineTo", + "x": 4587875, + "y": 4108451 + }, + { + "type": "lineTo", + "x": 4654550, + "y": 4140201 + }, + { + "type": "lineTo", + "x": 4686300, + "y": 4216401 + }, + { + "type": "lineTo", + "x": 4705350, + "y": 4257676 + }, + { + "type": "lineTo", + "x": 4752975, + "y": 4260851 + }, + { + "type": "lineTo", + "x": 4797425, + "y": 4216401 + }, + { + "type": "lineTo", + "x": 4845050, + "y": 4191001 + }, + { + "type": "lineTo", + "x": 4895850, + "y": 4187826 + }, + { + "type": "lineTo", + "x": 4940300, + "y": 4175126 + }, + { + "type": "lineTo", + "x": 4908550, + "y": 4127501 + }, + { + "type": "lineTo", + "x": 4911725, + "y": 4079876 + }, + { + "type": "lineTo", + "x": 4911725, + "y": 4032251 + }, + { + "type": "lineTo", + "x": 4946650, + "y": 4019551 + }, + { + "type": "lineTo", + "x": 4975225, + "y": 4013201 + }, + { + "type": "lineTo", + "x": 5006975, + "y": 4044951 + }, + { + "type": "lineTo", + "x": 5038725, + "y": 4060826 + }, + { + "type": "lineTo", + "x": 5083175, + "y": 4057651 + }, + { + "type": "lineTo", + "x": 5178425, + "y": 4114801 + }, + { + "type": "lineTo", + "x": 5270500, + "y": 4152901 + }, + { + "type": "lineTo", + "x": 5353050, + "y": 4197351 + }, + { + "type": "lineTo", + "x": 5429250, + "y": 4232276 + }, + { + "type": "lineTo", + "x": 5473700, + "y": 4238626 + }, + { + "type": "lineTo", + "x": 5524500, + "y": 4238626 + }, + { + "type": "lineTo", + "x": 5565775, + "y": 4244976 + }, + { + "type": "lineTo", + "x": 5584825, + "y": 4279901 + }, + { + "type": "lineTo", + "x": 5619750, + "y": 4279901 + }, + { + "type": "lineTo", + "x": 5676900, + "y": 4314826 + }, + { + "type": "lineTo", + "x": 5699125, + "y": 4327526 + }, + { + "type": "lineTo", + "x": 5765800, + "y": 4359276 + }, + { + "type": "lineTo", + "x": 5775325, + "y": 4308476 + }, + { + "type": "lineTo", + "x": 5756275, + "y": 4270376 + }, + { + "type": "lineTo", + "x": 5784850, + "y": 4244976 + }, + { + "type": "lineTo", + "x": 5810250, + "y": 4165601 + }, + { + "type": "lineTo", + "x": 5791200, + "y": 4152901 + }, + { + "type": "lineTo", + "x": 5797550, + "y": 4092576 + }, + { + "type": "lineTo", + "x": 5848350, + "y": 4035426 + }, + { + "type": "lineTo", + "x": 5861050, + "y": 3994151 + }, + { + "type": "lineTo", + "x": 5889625, + "y": 3962401 + }, + { + "type": "lineTo", + "x": 5873750, + "y": 3873501 + }, + { + "type": "lineTo", + "x": 5867400, + "y": 3857626 + }, + { + "type": "lineTo", + "x": 5880100, + "y": 3829051 + }, + { + "type": "lineTo", + "x": 5876925, + "y": 3787776 + }, + { + "type": "lineTo", + "x": 5854700, + "y": 3746501 + }, + { + "type": "lineTo", + "x": 5864225, + "y": 3702051 + }, + { + "type": "lineTo", + "x": 5883275, + "y": 3679826 + }, + { + "type": "lineTo", + "x": 5969000, + "y": 3648076 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/inferior_temporal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/inferior_temporal_colored_regions.json new file mode 100644 index 00000000..d99e2896 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/inferior_temporal_colored_regions.json @@ -0,0 +1,1460 @@ +{ + "slide_number": 24, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "868", + "path_data": [ + { + "path_width": 1951339, + "path_height": 2936021, + "commands": [ + { + "type": "moveTo", + "x": 1833616, + "y": 2746946 + }, + { + "type": "lineTo", + "x": 1869289, + "y": 2775486 + }, + { + "type": "lineTo", + "x": 1926367, + "y": 2757648 + }, + { + "type": "lineTo", + "x": 1947771, + "y": 2768351 + }, + { + "type": "lineTo", + "x": 1922800, + "y": 2889644 + }, + { + "type": "lineTo", + "x": 1894261, + "y": 2996668 + }, + { + "type": "lineTo", + "x": 1908530, + "y": 3078720 + }, + { + "type": "lineTo", + "x": 1940636, + "y": 3150069 + }, + { + "type": "lineTo", + "x": 2004849, + "y": 3196446 + }, + { + "type": "lineTo", + "x": 2076195, + "y": 3221418 + }, + { + "type": "lineTo", + "x": 2133273, + "y": 3232121 + }, + { + "type": "lineTo", + "x": 2186783, + "y": 3232121 + }, + { + "type": "lineTo", + "x": 2265265, + "y": 3214283 + }, + { + "type": "lineTo", + "x": 2329477, + "y": 3182176 + }, + { + "type": "lineTo", + "x": 2358016, + "y": 3150069 + }, + { + "type": "lineTo", + "x": 2400824, + "y": 3107260 + }, + { + "type": "lineTo", + "x": 2465036, + "y": 3082287 + }, + { + "type": "lineTo", + "x": 2543518, + "y": 3068017 + }, + { + "type": "lineTo", + "x": 2611297, + "y": 3096557 + }, + { + "type": "lineTo", + "x": 2625567, + "y": 3157204 + }, + { + "type": "lineTo", + "x": 2643403, + "y": 3221418 + }, + { + "type": "lineTo", + "x": 2625567, + "y": 3282065 + }, + { + "type": "lineTo", + "x": 2643403, + "y": 3367684 + }, + { + "type": "lineTo", + "x": 2682644, + "y": 3453303 + }, + { + "type": "lineTo", + "x": 2700481, + "y": 3506815 + }, + { + "type": "lineTo", + "x": 2718318, + "y": 3574597 + }, + { + "type": "lineTo", + "x": 2736154, + "y": 3642379 + }, + { + "type": "lineTo", + "x": 2771828, + "y": 3713728 + }, + { + "type": "lineTo", + "x": 2782530, + "y": 3749403 + }, + { + "type": "lineTo", + "x": 2935926, + "y": 3703026 + }, + { + "type": "lineTo", + "x": 3075052, + "y": 3649514 + }, + { + "type": "lineTo", + "x": 3178505, + "y": 3581732 + }, + { + "type": "lineTo", + "x": 3249852, + "y": 3553192 + }, + { + "type": "lineTo", + "x": 3346171, + "y": 3506815 + }, + { + "type": "lineTo", + "x": 3399681, + "y": 3496113 + }, + { + "type": "lineTo", + "x": 3428220, + "y": 3481843 + }, + { + "type": "lineTo", + "x": 3478162, + "y": 3464006 + }, + { + "type": "lineTo", + "x": 3520971, + "y": 3478276 + }, + { + "type": "lineTo", + "x": 3542375, + "y": 3517518 + }, + { + "type": "lineTo", + "x": 3520971, + "y": 3560327 + }, + { + "type": "lineTo", + "x": 3542375, + "y": 3596002 + }, + { + "type": "lineTo", + "x": 3567346, + "y": 3638811 + }, + { + "type": "lineTo", + "x": 3585183, + "y": 3649514 + }, + { + "type": "lineTo", + "x": 3624424, + "y": 3695891 + }, + { + "type": "lineTo", + "x": 3638693, + "y": 3727998 + }, + { + "type": "lineTo", + "x": 3645828, + "y": 3785077 + }, + { + "type": "lineTo", + "x": 3638693, + "y": 3856427 + }, + { + "type": "lineTo", + "x": 3606587, + "y": 3913506 + }, + { + "type": "lineTo", + "x": 3499567, + "y": 3974153 + }, + { + "type": "lineTo", + "x": 3435354, + "y": 3995558 + }, + { + "type": "lineTo", + "x": 3356873, + "y": 4013395 + }, + { + "type": "lineTo", + "x": 3317632, + "y": 4038367 + }, + { + "type": "lineTo", + "x": 3349738, + "y": 4074042 + }, + { + "type": "lineTo", + "x": 3331901, + "y": 4109716 + }, + { + "type": "lineTo", + "x": 3289093, + "y": 4138256 + }, + { + "type": "lineTo", + "x": 3214179, + "y": 4173931 + }, + { + "type": "lineTo", + "x": 3117861, + "y": 4202470 + }, + { + "type": "lineTo", + "x": 3000138, + "y": 4216740 + }, + { + "type": "lineTo", + "x": 2907387, + "y": 4209605 + }, + { + "type": "lineTo", + "x": 2814636, + "y": 4166796 + }, + { + "type": "lineTo", + "x": 2721885, + "y": 4131121 + }, + { + "type": "lineTo", + "x": 2668375, + "y": 4106149 + }, + { + "type": "lineTo", + "x": 2625567, + "y": 4106149 + }, + { + "type": "lineTo", + "x": 2597028, + "y": 4145391 + }, + { + "type": "lineTo", + "x": 2572057, + "y": 4173931 + }, + { + "type": "lineTo", + "x": 2568489, + "y": 4213173 + }, + { + "type": "lineTo", + "x": 2593461, + "y": 4302359 + }, + { + "type": "lineTo", + "x": 2604163, + "y": 4384411 + }, + { + "type": "lineTo", + "x": 2604163, + "y": 4466463 + }, + { + "type": "lineTo", + "x": 2600595, + "y": 4577054 + }, + { + "type": "lineTo", + "x": 2582759, + "y": 4612729 + }, + { + "type": "lineTo", + "x": 2522114, + "y": 4684078 + }, + { + "type": "lineTo", + "x": 2497142, + "y": 4737590 + }, + { + "type": "lineTo", + "x": 2447199, + "y": 4783967 + }, + { + "type": "lineTo", + "x": 2411526, + "y": 4801804 + }, + { + "type": "lineTo", + "x": 2400824, + "y": 4858883 + }, + { + "type": "lineTo", + "x": 2354448, + "y": 4880288 + }, + { + "type": "lineTo", + "x": 2325910, + "y": 4919530 + }, + { + "type": "lineTo", + "x": 2293804, + "y": 4937368 + }, + { + "type": "lineTo", + "x": 2275967, + "y": 4973042 + }, + { + "type": "lineTo", + "x": 2272399, + "y": 5015852 + }, + { + "type": "lineTo", + "x": 2265265, + "y": 5069364 + }, + { + "type": "lineTo", + "x": 2300938, + "y": 5101471 + }, + { + "type": "lineTo", + "x": 2325910, + "y": 5140713 + }, + { + "type": "lineTo", + "x": 2304506, + "y": 5154983 + }, + { + "type": "lineTo", + "x": 2333044, + "y": 5204927 + }, + { + "type": "lineTo", + "x": 2308073, + "y": 5240601 + }, + { + "type": "lineTo", + "x": 2254563, + "y": 5222765 + }, + { + "type": "lineTo", + "x": 2215322, + "y": 5265574 + }, + { + "type": "lineTo", + "x": 2179648, + "y": 5229899 + }, + { + "type": "lineTo", + "x": 2183216, + "y": 5169253 + }, + { + "type": "lineTo", + "x": 2104734, + "y": 5140713 + }, + { + "type": "lineTo", + "x": 2101167, + "y": 5279844 + }, + { + "type": "lineTo", + "x": 2119004, + "y": 5418975 + }, + { + "type": "lineTo", + "x": 2136840, + "y": 5486757 + }, + { + "type": "lineTo", + "x": 2104734, + "y": 5486757 + }, + { + "type": "lineTo", + "x": 2104734, + "y": 5525999 + }, + { + "type": "lineTo", + "x": 2158244, + "y": 5611618 + }, + { + "type": "lineTo", + "x": 2154677, + "y": 5682967 + }, + { + "type": "lineTo", + "x": 2083330, + "y": 5650860 + }, + { + "type": "lineTo", + "x": 2040522, + "y": 5643725 + }, + { + "type": "lineTo", + "x": 1990579, + "y": 5568808 + }, + { + "type": "lineTo", + "x": 1954906, + "y": 5522431 + }, + { + "type": "lineTo", + "x": 1894261, + "y": 5468919 + }, + { + "type": "lineTo", + "x": 1847885, + "y": 5411840 + }, + { + "type": "lineTo", + "x": 1794375, + "y": 5286979 + }, + { + "type": "lineTo", + "x": 1740865, + "y": 5090768 + }, + { + "type": "lineTo", + "x": 1715893, + "y": 4919530 + }, + { + "type": "lineTo", + "x": 1694489, + "y": 4716185 + }, + { + "type": "lineTo", + "x": 1708759, + "y": 4527109 + }, + { + "type": "lineTo", + "x": 1726596, + "y": 4320197 + }, + { + "type": "lineTo", + "x": 1780106, + "y": 4152526 + }, + { + "type": "lineTo", + "x": 1815779, + "y": 4031232 + }, + { + "type": "lineTo", + "x": 1855020, + "y": 3913506 + }, + { + "type": "lineTo", + "x": 1912098, + "y": 3810050 + }, + { + "type": "lineTo", + "x": 1915665, + "y": 3706593 + }, + { + "type": "lineTo", + "x": 1897828, + "y": 3571030 + }, + { + "type": "lineTo", + "x": 1840751, + "y": 3439033 + }, + { + "type": "lineTo", + "x": 1790808, + "y": 3310605 + }, + { + "type": "lineTo", + "x": 1769404, + "y": 3182176 + }, + { + "type": "lineTo", + "x": 1769404, + "y": 3043045 + }, + { + "type": "lineTo", + "x": 1787240, + "y": 2914617 + }, + { + "type": "lineTo", + "x": 1801510, + "y": 2814728 + }, + { + "type": "lineTo", + "x": 1833616, + "y": 2746946 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "869", + "path_data": [ + { + "path_width": 1879992, + "path_height": 2900346, + "commands": [ + { + "type": "moveTo", + "x": 5953902, + "y": 2597112 + }, + { + "type": "lineTo", + "x": 6018114, + "y": 2575708 + }, + { + "type": "lineTo", + "x": 6057355, + "y": 2607815 + }, + { + "type": "lineTo", + "x": 6078759, + "y": 2604247 + }, + { + "type": "lineTo", + "x": 6110865, + "y": 2636355 + }, + { + "type": "lineTo", + "x": 6146538, + "y": 2682732 + }, + { + "type": "lineTo", + "x": 6221453, + "y": 2714839 + }, + { + "type": "lineTo", + "x": 6249991, + "y": 2761216 + }, + { + "type": "lineTo", + "x": 6296367, + "y": 2782620 + }, + { + "type": "lineTo", + "x": 6307069, + "y": 2871807 + }, + { + "type": "lineTo", + "x": 6321338, + "y": 2946724 + }, + { + "type": "lineTo", + "x": 6332040, + "y": 3053748 + }, + { + "type": "lineTo", + "x": 6342742, + "y": 3171474 + }, + { + "type": "lineTo", + "x": 6346310, + "y": 3274930 + }, + { + "type": "lineTo", + "x": 6339175, + "y": 3396224 + }, + { + "type": "lineTo", + "x": 6292800, + "y": 3517518 + }, + { + "type": "lineTo", + "x": 6242857, + "y": 3624542 + }, + { + "type": "lineTo", + "x": 6203616, + "y": 3752970 + }, + { + "type": "lineTo", + "x": 6210751, + "y": 3867129 + }, + { + "type": "lineTo", + "x": 6210751, + "y": 3995558 + }, + { + "type": "lineTo", + "x": 6232155, + "y": 4081177 + }, + { + "type": "lineTo", + "x": 6257126, + "y": 4191768 + }, + { + "type": "lineTo", + "x": 6282098, + "y": 4245280 + }, + { + "type": "lineTo", + "x": 6296367, + "y": 4284522 + }, + { + "type": "lineTo", + "x": 6349877, + "y": 4330899 + }, + { + "type": "lineTo", + "x": 6417657, + "y": 4412951 + }, + { + "type": "lineTo", + "x": 6442628, + "y": 4459328 + }, + { + "type": "lineTo", + "x": 6467600, + "y": 4562784 + }, + { + "type": "lineTo", + "x": 6467600, + "y": 4676943 + }, + { + "type": "lineTo", + "x": 6467600, + "y": 4787534 + }, + { + "type": "lineTo", + "x": 6431926, + "y": 4923098 + }, + { + "type": "lineTo", + "x": 6396253, + "y": 5030122 + }, + { + "type": "lineTo", + "x": 6378416, + "y": 5083634 + }, + { + "type": "lineTo", + "x": 6364147, + "y": 5147848 + }, + { + "type": "lineTo", + "x": 6353444, + "y": 5212062 + }, + { + "type": "lineTo", + "x": 6317771, + "y": 5322653 + }, + { + "type": "lineTo", + "x": 6264261, + "y": 5429677 + }, + { + "type": "lineTo", + "x": 6235722, + "y": 5458217 + }, + { + "type": "lineTo", + "x": 6185779, + "y": 5476054 + }, + { + "type": "lineTo", + "x": 6178645, + "y": 5401138 + }, + { + "type": "lineTo", + "x": 6142971, + "y": 5372598 + }, + { + "type": "lineTo", + "x": 6142971, + "y": 5297681 + }, + { + "type": "lineTo", + "x": 6103730, + "y": 5258439 + }, + { + "type": "lineTo", + "x": 6064489, + "y": 5208495 + }, + { + "type": "lineTo", + "x": 6064489, + "y": 5130011 + }, + { + "type": "lineTo", + "x": 6050220, + "y": 5069364 + }, + { + "type": "lineTo", + "x": 6064489, + "y": 5030122 + }, + { + "type": "lineTo", + "x": 6043085, + "y": 4930233 + }, + { + "type": "lineTo", + "x": 6000277, + "y": 4848181 + }, + { + "type": "lineTo", + "x": 5950334, + "y": 4773264 + }, + { + "type": "lineTo", + "x": 5854016, + "y": 4741157 + }, + { + "type": "lineTo", + "x": 5796938, + "y": 4705483 + }, + { + "type": "lineTo", + "x": 5771967, + "y": 4616296 + }, + { + "type": "lineTo", + "x": 5771967, + "y": 4548514 + }, + { + "type": "lineTo", + "x": 5722024, + "y": 4495002 + }, + { + "type": "lineTo", + "x": 5732726, + "y": 4434355 + }, + { + "type": "lineTo", + "x": 5682783, + "y": 4366574 + }, + { + "type": "lineTo", + "x": 5682783, + "y": 4302359 + }, + { + "type": "lineTo", + "x": 5697053, + "y": 4255982 + }, + { + "type": "lineTo", + "x": 5672081, + "y": 4202470 + }, + { + "type": "lineTo", + "x": 5625706, + "y": 4127554 + }, + { + "type": "lineTo", + "x": 5575763, + "y": 4116851 + }, + { + "type": "lineTo", + "x": 5543657, + "y": 4106149 + }, + { + "type": "lineTo", + "x": 5497281, + "y": 4120419 + }, + { + "type": "lineTo", + "x": 5436637, + "y": 4141824 + }, + { + "type": "lineTo", + "x": 5386694, + "y": 4152526 + }, + { + "type": "lineTo", + "x": 5293943, + "y": 4159661 + }, + { + "type": "lineTo", + "x": 5215461, + "y": 4166796 + }, + { + "type": "lineTo", + "x": 5151249, + "y": 4166796 + }, + { + "type": "lineTo", + "x": 5072767, + "y": 4141824 + }, + { + "type": "lineTo", + "x": 5033526, + "y": 4113284 + }, + { + "type": "lineTo", + "x": 4983584, + "y": 4059772 + }, + { + "type": "lineTo", + "x": 4930073, + "y": 4013395 + }, + { + "type": "lineTo", + "x": 4851592, + "y": 3970585 + }, + { + "type": "lineTo", + "x": 4758841, + "y": 3924208 + }, + { + "type": "lineTo", + "x": 4680359, + "y": 3895669 + }, + { + "type": "lineTo", + "x": 4598310, + "y": 3838589 + }, + { + "type": "lineTo", + "x": 4587608, + "y": 3802915 + }, + { + "type": "lineTo", + "x": 4633984, + "y": 3745835 + }, + { + "type": "lineTo", + "x": 4666090, + "y": 3667351 + }, + { + "type": "lineTo", + "x": 4733869, + "y": 3620974 + }, + { + "type": "lineTo", + "x": 4758841, + "y": 3606704 + }, + { + "type": "lineTo", + "x": 4726735, + "y": 3538922 + }, + { + "type": "lineTo", + "x": 4737437, + "y": 3456871 + }, + { + "type": "lineTo", + "x": 4798082, + "y": 3431899 + }, + { + "type": "lineTo", + "x": 4848024, + "y": 3485410 + }, + { + "type": "lineTo", + "x": 4915804, + "y": 3492545 + }, + { + "type": "lineTo", + "x": 4980016, + "y": 3542490 + }, + { + "type": "lineTo", + "x": 5040661, + "y": 3553192 + }, + { + "type": "lineTo", + "x": 5094171, + "y": 3588867 + }, + { + "type": "lineTo", + "x": 5151249, + "y": 3613839 + }, + { + "type": "lineTo", + "x": 5194057, + "y": 3649514 + }, + { + "type": "lineTo", + "x": 5251135, + "y": 3649514 + }, + { + "type": "lineTo", + "x": 5311779, + "y": 3685188 + }, + { + "type": "lineTo", + "x": 5351020, + "y": 3685188 + }, + { + "type": "lineTo", + "x": 5422367, + "y": 3713728 + }, + { + "type": "lineTo", + "x": 5518685, + "y": 3760105 + }, + { + "type": "lineTo", + "x": 5465175, + "y": 3688756 + }, + { + "type": "lineTo", + "x": 5493714, + "y": 3581732 + }, + { + "type": "lineTo", + "x": 5529388, + "y": 3524653 + }, + { + "type": "lineTo", + "x": 5554359, + "y": 3464006 + }, + { + "type": "lineTo", + "x": 5586465, + "y": 3410494 + }, + { + "type": "lineTo", + "x": 5579330, + "y": 3321307 + }, + { + "type": "lineTo", + "x": 5579330, + "y": 3282065 + }, + { + "type": "lineTo", + "x": 5561494, + "y": 3207148 + }, + { + "type": "lineTo", + "x": 5568628, + "y": 3160771 + }, + { + "type": "lineTo", + "x": 5625706, + "y": 3150069 + }, + { + "type": "lineTo", + "x": 5679216, + "y": 3139367 + }, + { + "type": "lineTo", + "x": 5714890, + "y": 3153637 + }, + { + "type": "lineTo", + "x": 5754130, + "y": 3214283 + }, + { + "type": "lineTo", + "x": 5800506, + "y": 3239256 + }, + { + "type": "lineTo", + "x": 5807641, + "y": 3282065 + }, + { + "type": "lineTo", + "x": 5850449, + "y": 3289200 + }, + { + "type": "lineTo", + "x": 5886122, + "y": 3303470 + }, + { + "type": "lineTo", + "x": 5964604, + "y": 3299902 + }, + { + "type": "lineTo", + "x": 6025249, + "y": 3296335 + }, + { + "type": "lineTo", + "x": 6093028, + "y": 3274930 + }, + { + "type": "lineTo", + "x": 6142971, + "y": 3257093 + }, + { + "type": "lineTo", + "x": 6196481, + "y": 3217851 + }, + { + "type": "lineTo", + "x": 6221453, + "y": 3153637 + }, + { + "type": "lineTo", + "x": 6228587, + "y": 3085855 + }, + { + "type": "lineTo", + "x": 6214318, + "y": 3010938 + }, + { + "type": "lineTo", + "x": 6192914, + "y": 2943156 + }, + { + "type": "lineTo", + "x": 6153673, + "y": 2900347 + }, + { + "type": "lineTo", + "x": 6103730, + "y": 2821863 + }, + { + "type": "lineTo", + "x": 6071624, + "y": 2761216 + }, + { + "type": "lineTo", + "x": 6010979, + "y": 2711271 + }, + { + "type": "lineTo", + "x": 5953902, + "y": 2597112 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "881", + "path_data": [ + { + "path_width": 150919, + "path_height": 247650, + "commands": [ + { + "type": "moveTo", + "x": 4581526, + "y": 3698876 + }, + { + "type": "lineTo", + "x": 4495801, + "y": 3686176 + }, + { + "type": "lineTo", + "x": 4495801, + "y": 3562351 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 3521076 + }, + { + "type": "lineTo", + "x": 4552951, + "y": 3460751 + }, + { + "type": "lineTo", + "x": 4587876, + "y": 3451226 + }, + { + "type": "lineTo", + "x": 4622801, + "y": 3482976 + }, + { + "type": "lineTo", + "x": 4635501, + "y": 3543301 + }, + { + "type": "lineTo", + "x": 4635501, + "y": 3619501 + }, + { + "type": "cubicBezTo", + "x1": 4627034, + "y1": 3632201, + "x2": 4653493, + "y2": 3686175, + "x": 4645026, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 4581526, + "y": 3698876 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "882", + "path_data": [ + { + "path_width": 155575, + "path_height": 250825, + "commands": [ + { + "type": "moveTo", + "x": 7778749, + "y": 3660776 + }, + { + "type": "lineTo", + "x": 7727949, + "y": 3686176 + }, + { + "type": "lineTo", + "x": 7721599, + "y": 3635376 + }, + { + "type": "lineTo", + "x": 7699374, + "y": 3575051 + }, + { + "type": "lineTo", + "x": 7673974, + "y": 3492501 + }, + { + "type": "lineTo", + "x": 7677149, + "y": 3448051 + }, + { + "type": "lineTo", + "x": 7712074, + "y": 3435351 + }, + { + "type": "lineTo", + "x": 7759699, + "y": 3448051 + }, + { + "type": "cubicBezTo", + "x1": 7775045, + "y1": 3455459, + "x2": 7793037, + "y2": 3459693, + "x": 7804149, + "y": 3479801 + }, + { + "type": "lineTo", + "x": 7826374, + "y": 3568701 + }, + { + "type": "lineTo", + "x": 7829549, + "y": 3635376 + }, + { + "type": "lineTo", + "x": 7778749, + "y": 3660776 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/inferior_vomer_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/inferior_vomer_colored_regions.json new file mode 100644 index 00000000..373fc1aa --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/inferior_vomer_colored_regions.json @@ -0,0 +1,340 @@ +{ + "slide_number": 25, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "916", + "path_data": [ + { + "path_width": 993775, + "path_height": 1536700, + "commands": [ + { + "type": "moveTo", + "x": 5470526, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 5445126, + "y": 3530600 + }, + { + "type": "lineTo", + "x": 5397501, + "y": 3603625 + }, + { + "type": "lineTo", + "x": 5337176, + "y": 3673475 + }, + { + "type": "lineTo", + "x": 5267326, + "y": 3714750 + }, + { + "type": "lineTo", + "x": 5181601, + "y": 3756025 + }, + { + "type": "lineTo", + "x": 5089526, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 5016501, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 3825875 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 3870325 + }, + { + "type": "lineTo", + "x": 5026026, + "y": 3911600 + }, + { + "type": "lineTo", + "x": 4987926, + "y": 3946525 + }, + { + "type": "lineTo", + "x": 5048251, + "y": 3997325 + }, + { + "type": "lineTo", + "x": 5089526, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 5114926, + "y": 4095750 + }, + { + "type": "lineTo", + "x": 5137151, + "y": 4149725 + }, + { + "type": "lineTo", + "x": 5191126, + "y": 4213225 + }, + { + "type": "lineTo", + "x": 5241926, + "y": 4270375 + }, + { + "type": "lineTo", + "x": 5245101, + "y": 4340225 + }, + { + "type": "lineTo", + "x": 5222876, + "y": 4429125 + }, + { + "type": "lineTo", + "x": 5216526, + "y": 4483100 + }, + { + "type": "lineTo", + "x": 5264151, + "y": 4511675 + }, + { + "type": "lineTo", + "x": 5314951, + "y": 4530725 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 4514850 + }, + { + "type": "lineTo", + "x": 5410201, + "y": 4492625 + }, + { + "type": "lineTo", + "x": 5419726, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 5486401, + "y": 4476750 + }, + { + "type": "lineTo", + "x": 5534026, + "y": 4483100 + }, + { + "type": "lineTo", + "x": 5543551, + "y": 4422775 + }, + { + "type": "lineTo", + "x": 5568951, + "y": 4391025 + }, + { + "type": "lineTo", + "x": 5622926, + "y": 4457700 + }, + { + "type": "lineTo", + "x": 5721351, + "y": 4483100 + }, + { + "type": "lineTo", + "x": 5778501, + "y": 4483100 + }, + { + "type": "lineTo", + "x": 5822951, + "y": 4429125 + }, + { + "type": "lineTo", + "x": 5772151, + "y": 4349750 + }, + { + "type": "lineTo", + "x": 5813426, + "y": 4254500 + }, + { + "type": "lineTo", + "x": 5845176, + "y": 4194175 + }, + { + "type": "lineTo", + "x": 5886451, + "y": 4140200 + }, + { + "type": "lineTo", + "x": 5921376, + "y": 4067175 + }, + { + "type": "lineTo", + "x": 5969001, + "y": 4025900 + }, + { + "type": "lineTo", + "x": 5981701, + "y": 3975100 + }, + { + "type": "lineTo", + "x": 5949951, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 5918201, + "y": 3914775 + }, + { + "type": "lineTo", + "x": 5927726, + "y": 3844925 + }, + { + "type": "lineTo", + "x": 5934076, + "y": 3752850 + }, + { + "type": "lineTo", + "x": 5838826, + "y": 3714750 + }, + { + "type": "lineTo", + "x": 5746751, + "y": 3660775 + }, + { + "type": "lineTo", + "x": 5664201, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 5622926, + "y": 3498850 + }, + { + "type": "lineTo", + "x": 5648326, + "y": 3498850 + }, + { + "type": "lineTo", + "x": 5648326, + "y": 3371850 + }, + { + "type": "lineTo", + "x": 5654676, + "y": 3298825 + }, + { + "type": "lineTo", + "x": 5686426, + "y": 3162300 + }, + { + "type": "lineTo", + "x": 5695951, + "y": 3079750 + }, + { + "type": "lineTo", + "x": 5654676, + "y": 3108325 + }, + { + "type": "lineTo", + "x": 5619751, + "y": 3108325 + }, + { + "type": "lineTo", + "x": 5521326, + "y": 3041650 + }, + { + "type": "lineTo", + "x": 5454651, + "y": 2994025 + }, + { + "type": "lineTo", + "x": 5473701, + "y": 3082925 + }, + { + "type": "lineTo", + "x": 5486401, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 5480051, + "y": 3355975 + }, + { + "type": "cubicBezTo", + "x1": 5478993, + "y1": 3389842, + "x2": 5477934, + "y2": 3423708, + "x": 5470526, + "y": 3460750 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/ischial_spine_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/ischial_spine_colored_regions.json new file mode 100644 index 00000000..bf464fe4 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/ischial_spine_colored_regions.json @@ -0,0 +1,66 @@ +{ + "slide_number": 13, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Ischial Spine (Lateral View)", + "color": "008000", + "path_data": [ + { + "path_width": 151637, + "path_height": 183238, + "commands": [ + {"type": "moveTo", "x": 82137, "y": 0}, + {"type": "lineTo", "x": 25273, "y": 37912}, + {"type": "lineTo", "x": 0, "y": 63186}, + {"type": "lineTo", "x": 0, "y": 101097}, + {"type": "lineTo", "x": 18955, "y": 132690}, + {"type": "lineTo", "x": 63182, "y": 183238}, + {"type": "lineTo", "x": 126364, "y": 183238}, + {"type": "lineTo", "x": 151637, "y": 50549}, + {"type": "lineTo", "x": 82137, "y": 0}, + {"type": "close"} + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Ischial Spine (Medial View)", + "color": "008000", + "path_data": [ + { + "path_width": 176909, + "path_height": 214831, + "commands": [ + {"type": "moveTo", "x": 56864, "y": 0}, + {"type": "lineTo", "x": 12637, "y": 69505}, + {"type": "lineTo", "x": 0, "y": 145327}, + {"type": "lineTo", "x": 31591, "y": 202194}, + {"type": "lineTo", "x": 75818, "y": 214831}, + {"type": "lineTo", "x": 145319, "y": 214831}, + {"type": "lineTo", "x": 176909, "y": 151646}, + {"type": "lineTo", "x": 176909, "y": 75823}, + {"type": "lineTo", "x": 88455, "y": 44230}, + {"type": "lineTo", "x": 56864, "y": 0}, + {"type": "close"} + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/ischial_tuberosity_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/ischial_tuberosity_colored_regions.json new file mode 100644 index 00000000..1f0c3a07 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/ischial_tuberosity_colored_regions.json @@ -0,0 +1,81 @@ +{ + "slide_number": 12, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Ischial Tuberosity (Lateral View)", + "color": "008000", + "path_data": [ + { + "path_width": 701319, + "path_height": 827730, + "commands": [ + {"type": "moveTo", "x": 448591, "y": 644492}, + {"type": "lineTo", "x": 404364, "y": 435980}, + {"type": "lineTo", "x": 404364, "y": 360157}, + {"type": "lineTo", "x": 391727, "y": 227468}, + {"type": "lineTo", "x": 315909, "y": 94778}, + {"type": "lineTo", "x": 221136, "y": 31593}, + {"type": "lineTo", "x": 63181, "y": 0}, + {"type": "lineTo", "x": 44227, "y": 75823}, + {"type": "lineTo", "x": 18954, "y": 170601}, + {"type": "lineTo", "x": 0, "y": 202194}, + {"type": "lineTo", "x": 6318, "y": 353839}, + {"type": "lineTo", "x": 50545, "y": 467573}, + {"type": "lineTo", "x": 145318, "y": 593944}, + {"type": "lineTo", "x": 227454, "y": 695041}, + {"type": "lineTo", "x": 417000, "y": 783501}, + {"type": "lineTo", "x": 568637, "y": 827730}, + {"type": "lineTo", "x": 701319, "y": 751908}, + {"type": "lineTo", "x": 581273, "y": 713996}, + {"type": "lineTo", "x": 448591, "y": 644492}, + {"type": "close"} + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Ischial Tuberosity (Medial View)", + "color": "008000", + "path_data": [ + { + "path_width": 949959, + "path_height": 664092, + "commands": [ + {"type": "moveTo", "x": 899414, "y": 0}, + {"type": "lineTo", "x": 886778, "y": 139008}, + {"type": "lineTo", "x": 810959, "y": 290654}, + {"type": "lineTo", "x": 684595, "y": 423343}, + {"type": "lineTo", "x": 498296, "y": 543396}, + {"type": "cubicBezTo", "x1": 423176, "y1": 570675, "x2": 311832, "y2": 578011, "x": 233874, "y": 587017}, + {"type": "lineTo", "x": 0, "y": 614035}, + {"type": "lineTo", "x": 35797, "y": 664092}, + {"type": "lineTo", "x": 501368, "y": 650811}, + {"type": "lineTo", "x": 684595, "y": 568670}, + {"type": "lineTo", "x": 823596, "y": 454936}, + {"type": "lineTo", "x": 880459, "y": 334884}, + {"type": "lineTo", "x": 931005, "y": 183238}, + {"type": "lineTo", "x": 949959, "y": 120053}, + {"type": "lineTo", "x": 899414, "y": 0}, + {"type": "close"} + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/lateral_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/lateral_colored_regions.json new file mode 100644 index 00000000..662add54 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lateral_colored_regions.json @@ -0,0 +1,224 @@ +{ + "slide_number": 11, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "447", + "path_data": [ + { + "path_width": 2550453, + "path_height": 1646245, + "commands": [ + { + "type": "moveTo", + "x": 6337301, + "y": 3978275 + }, + { + "type": "lineTo", + "x": 6388101, + "y": 3911600 + }, + { + "type": "lineTo", + "x": 6429376, + "y": 3870325 + }, + { + "type": "lineTo", + "x": 6499226, + "y": 3775075 + }, + { + "type": "lineTo", + "x": 6562726, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 6597651, + "y": 3609975 + }, + { + "type": "lineTo", + "x": 6626226, + "y": 3441700 + }, + { + "type": "cubicBezTo", + "x1": 6628343, + "y1": 3403600, + "x2": 6633634, + "y2": 3317875, + "x": 6629401, + "y": 3260725 + }, + { + "type": "cubicBezTo", + "x1": 6618289, + "y1": 3220508, + "x2": 6599239, + "y2": 3183996, + "x": 6556376, + "y": 3133725 + }, + { + "type": "cubicBezTo", + "x1": 6513513, + "y1": 3083454, + "x2": 6449484, + "y2": 3007783, + "x": 6372226, + "y": 2959100 + }, + { + "type": "cubicBezTo", + "x1": 6294968, + "y1": 2910417, + "x2": 6192838, + "y2": 2876550, + "x": 6092826, + "y": 2841625 + }, + { + "type": "cubicBezTo", + "x1": 5992814, + "y1": 2806700, + "x2": 5873751, + "y2": 2771775, + "x": 5772151, + "y": 2749550 + }, + { + "type": "cubicBezTo", + "x1": 5670551, + "y1": 2727325, + "x2": 5564188, + "y2": 2712508, + "x": 5483226, + "y": 2708275 + }, + { + "type": "cubicBezTo", + "x1": 5402264, + "y1": 2704042, + "x2": 5347759, + "y2": 2709333, + "x": 5286376, + "y": 2711450 + }, + { + "type": "cubicBezTo", + "x1": 5224993, + "y1": 2713567, + "x2": 5167843, + "y2": 2715683, + "x": 5092701, + "y": 2730500 + }, + { + "type": "cubicBezTo", + "x1": 4997451, + "y1": 2750608, + "x2": 4921251, + "y2": 2789767, + "x": 4835526, + "y": 2813050 + }, + { + "type": "lineTo", + "x": 4664076, + "y": 2895600 + }, + { + "type": "cubicBezTo", + "x1": 4594226, + "y1": 2937933, + "x2": 4521201, + "y2": 2967567, + "x": 4451351, + "y": 3009900 + }, + { + "type": "cubicBezTo", + "x1": 4376209, + "y1": 3056996, + "x2": 4283076, + "y2": 3125788, + "x": 4225926, + "y": 3194050 + }, + { + "type": "cubicBezTo", + "x1": 4168776, + "y1": 3262312, + "x2": 4131734, + "y2": 3333221, + "x": 4108451, + "y": 3419475 + }, + { + "type": "cubicBezTo", + "x1": 4085168, + "y1": 3505729, + "x2": 4072468, + "y2": 3626379, + "x": 4086226, + "y": 3711575 + }, + { + "type": "cubicBezTo", + "x1": 4099984, + "y1": 3796771, + "x2": 4147609, + "y2": 3880909, + "x": 4191001, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 4346576, + "y": 4010025 + }, + { + "type": "lineTo", + "x": 4505326, + "y": 4086225 + }, + { + "type": "lineTo", + "x": 4641851, + "y": 4171950 + }, + { + "type": "lineTo", + "x": 4803776, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 4273550 + }, + { + "type": "lineTo", + "x": 5264151, + "y": 4349750 + }, + { + "type": "lineTo", + "x": 5273676, + "y": 4352925 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/laterial_ethmoid_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/laterial_ethmoid_colored_regions.json new file mode 100644 index 00000000..c00330e7 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/laterial_ethmoid_colored_regions.json @@ -0,0 +1,240 @@ +{ + "slide_number": 15, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "536", + "path_data": [ + { + "path_width": 514350, + "path_height": 727075, + "commands": [ + { + "type": "moveTo", + "x": 6029325, + "y": 3546476 + }, + { + "type": "cubicBezTo", + "x1": 6028267, + "y1": 3510493, + "x2": 6017683, + "y2": 3474509, + "x": 6016625, + "y": 3438526 + }, + { + "type": "lineTo", + "x": 6007100, + "y": 3321051 + }, + { + "type": "lineTo", + "x": 6010275, + "y": 3254376 + }, + { + "type": "lineTo", + "x": 6035675, + "y": 3209926 + }, + { + "type": "lineTo", + "x": 6073775, + "y": 3146426 + }, + { + "type": "lineTo", + "x": 6124575, + "y": 3060701 + }, + { + "type": "lineTo", + "x": 6181725, + "y": 2974976 + }, + { + "type": "lineTo", + "x": 6219825, + "y": 2921001 + }, + { + "type": "lineTo", + "x": 6251575, + "y": 2863851 + }, + { + "type": "lineTo", + "x": 6273800, + "y": 2841626 + }, + { + "type": "lineTo", + "x": 6280150, + "y": 2857501 + }, + { + "type": "lineTo", + "x": 6321425, + "y": 2882901 + }, + { + "type": "lineTo", + "x": 6350000, + "y": 2936876 + }, + { + "type": "lineTo", + "x": 6384925, + "y": 2933701 + }, + { + "type": "lineTo", + "x": 6423025, + "y": 2936876 + }, + { + "type": "lineTo", + "x": 6454775, + "y": 2955926 + }, + { + "type": "lineTo", + "x": 6470650, + "y": 3041651 + }, + { + "type": "lineTo", + "x": 6477000, + "y": 3076576 + }, + { + "type": "lineTo", + "x": 6489700, + "y": 3098801 + }, + { + "type": "lineTo", + "x": 6492875, + "y": 3133726 + }, + { + "type": "lineTo", + "x": 6496050, + "y": 3184526 + }, + { + "type": "lineTo", + "x": 6511925, + "y": 3216276 + }, + { + "type": "lineTo", + "x": 6521450, + "y": 3235326 + }, + { + "type": "lineTo", + "x": 6499225, + "y": 3267076 + }, + { + "type": "lineTo", + "x": 6473825, + "y": 3267076 + }, + { + "type": "lineTo", + "x": 6435725, + "y": 3305176 + }, + { + "type": "lineTo", + "x": 6419850, + "y": 3359151 + }, + { + "type": "lineTo", + "x": 6423025, + "y": 3400426 + }, + { + "type": "lineTo", + "x": 6429375, + "y": 3432176 + }, + { + "type": "lineTo", + "x": 6397625, + "y": 3467101 + }, + { + "type": "lineTo", + "x": 6375400, + "y": 3473451 + }, + { + "type": "lineTo", + "x": 6330950, + "y": 3457576 + }, + { + "type": "lineTo", + "x": 6270625, + "y": 3476626 + }, + { + "type": "lineTo", + "x": 6245225, + "y": 3508376 + }, + { + "type": "lineTo", + "x": 6232525, + "y": 3502026 + }, + { + "type": "lineTo", + "x": 6184900, + "y": 3536951 + }, + { + "type": "lineTo", + "x": 6162675, + "y": 3568701 + }, + { + "type": "lineTo", + "x": 6134100, + "y": 3552826 + }, + { + "type": "lineTo", + "x": 6121400, + "y": 3508376 + }, + { + "type": "lineTo", + "x": 6089650, + "y": 3498851 + }, + { + "type": "lineTo", + "x": 6029325, + "y": 3546476 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/laterial_lacrimal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/laterial_lacrimal_colored_regions.json new file mode 100644 index 00000000..82080564 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/laterial_lacrimal_colored_regions.json @@ -0,0 +1,459 @@ +{ + "slide_number": 16, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "556", + "path_data": [ + { + "path_width": 577850, + "path_height": 1060450, + "commands": [ + { + "type": "moveTo", + "x": 6819900, + "y": 2755900 + }, + { + "type": "lineTo", + "x": 6765925, + "y": 2797175 + }, + { + "type": "lineTo", + "x": 6750050, + "y": 2813050 + }, + { + "type": "lineTo", + "x": 6727825, + "y": 2854325 + }, + { + "type": "lineTo", + "x": 6654800, + "y": 2851150 + }, + { + "type": "lineTo", + "x": 6591300, + "y": 2886075 + }, + { + "type": "lineTo", + "x": 6550025, + "y": 2924175 + }, + { + "type": "lineTo", + "x": 6521450, + "y": 2987675 + }, + { + "type": "lineTo", + "x": 6477000, + "y": 3019425 + }, + { + "type": "lineTo", + "x": 6477000, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 6492875, + "y": 3136900 + }, + { + "type": "lineTo", + "x": 6505575, + "y": 3209925 + }, + { + "type": "lineTo", + "x": 6515100, + "y": 3244850 + }, + { + "type": "lineTo", + "x": 6470650, + "y": 3263900 + }, + { + "type": "lineTo", + "x": 6448425, + "y": 3305175 + }, + { + "type": "lineTo", + "x": 6413500, + "y": 3362325 + }, + { + "type": "lineTo", + "x": 6419850, + "y": 3403600 + }, + { + "type": "lineTo", + "x": 6372225, + "y": 3432175 + }, + { + "type": "lineTo", + "x": 6356350, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 6350000, + "y": 3492500 + }, + { + "type": "lineTo", + "x": 6375400, + "y": 3575050 + }, + { + "type": "lineTo", + "x": 6391275, + "y": 3638550 + }, + { + "type": "lineTo", + "x": 6432550, + "y": 3648075 + }, + { + "type": "lineTo", + "x": 6483350, + "y": 3679825 + }, + { + "type": "lineTo", + "x": 6521450, + "y": 3730625 + }, + { + "type": "lineTo", + "x": 6572250, + "y": 3771900 + }, + { + "type": "lineTo", + "x": 6594475, + "y": 3781425 + }, + { + "type": "lineTo", + "x": 6626225, + "y": 3781425 + }, + { + "type": "lineTo", + "x": 6705600, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 6772275, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 6832600, + "y": 3775075 + }, + { + "type": "lineTo", + "x": 6864350, + "y": 3749675 + }, + { + "type": "lineTo", + "x": 6867525, + "y": 3683000 + }, + { + "type": "lineTo", + "x": 6880225, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 6880225, + "y": 3533775 + }, + { + "type": "lineTo", + "x": 6873875, + "y": 3470275 + }, + { + "type": "lineTo", + "x": 6886575, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 6905625, + "y": 3336925 + }, + { + "type": "lineTo", + "x": 6915150, + "y": 3238500 + }, + { + "type": "lineTo", + "x": 6915150, + "y": 3181350 + }, + { + "type": "lineTo", + "x": 6924675, + "y": 3143250 + }, + { + "type": "lineTo", + "x": 6927850, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 6918325, + "y": 3041650 + }, + { + "type": "lineTo", + "x": 6918325, + "y": 3000375 + }, + { + "type": "lineTo", + "x": 6908800, + "y": 2946400 + }, + { + "type": "lineTo", + "x": 6902450, + "y": 2895600 + }, + { + "type": "lineTo", + "x": 6877050, + "y": 2860675 + }, + { + "type": "lineTo", + "x": 6861175, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 6819900, + "y": 2755900 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "557", + "path_data": [ + { + "path_width": 398007, + "path_height": 1020527, + "commands": [ + { + "type": "moveTo", + "x": 6854826, + "y": 3905250 + }, + { + "type": "cubicBezTo", + "x1": 6843185, + "y1": 3913717, + "x2": 6811434, + "y2": 3897842, + "x": 6791326, + "y": 3883025 + }, + { + "type": "lineTo", + "x": 6734176, + "y": 3816350 + }, + { + "type": "cubicBezTo", + "x1": 6721476, + "y1": 3790421, + "x2": 6718830, + "y2": 3762375, + "x": 6715126, + "y": 3727450 + }, + { + "type": "cubicBezTo", + "x1": 6711422, + "y1": 3692525, + "x2": 6708247, + "y2": 3649133, + "x": 6711951, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 6737351, + "y": 3473450 + }, + { + "type": "lineTo", + "x": 6753226, + "y": 3365500 + }, + { + "type": "lineTo", + "x": 6765926, + "y": 3279775 + }, + { + "type": "lineTo", + "x": 6788151, + "y": 3155950 + }, + { + "type": "lineTo", + "x": 6823076, + "y": 3063875 + }, + { + "type": "lineTo", + "x": 6845301, + "y": 2990850 + }, + { + "type": "cubicBezTo", + "x1": 6855884, + "y1": 2963863, + "x2": 6862234, + "y2": 2917825, + "x": 6886576, + "y": 2901950 + }, + { + "type": "cubicBezTo", + "x1": 6910918, + "y1": 2886075, + "x2": 6963834, + "y2": 2881312, + "x": 6991351, + "y": 2895600 + }, + { + "type": "cubicBezTo", + "x1": 7018868, + "y1": 2922058, + "x2": 7040034, + "y2": 2923117, + "x": 7051676, + "y": 2987675 + }, + { + "type": "lineTo", + "x": 7099301, + "y": 3124200 + }, + { + "type": "cubicBezTo", + "x1": 7115176, + "y1": 3169708, + "x2": 7105122, + "y2": 3205163, + "x": 7105651, + "y": 3238500 + }, + { + "type": "lineTo", + "x": 7102476, + "y": 3324225 + }, + { + "type": "lineTo", + "x": 7099301, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 7070726, + "y": 3486150 + }, + { + "type": "lineTo", + "x": 7029451, + "y": 3533775 + }, + { + "type": "lineTo", + "x": 7007226, + "y": 3590925 + }, + { + "type": "lineTo", + "x": 6991351, + "y": 3619500 + }, + { + "type": "cubicBezTo", + "x1": 6989234, + "y1": 3622675, + "x2": 6964892, + "y2": 3667125, + "x": 6962775, + "y": 3670300 + }, + { + "type": "lineTo", + "x": 6931026, + "y": 3749675 + }, + { + "type": "lineTo", + "x": 6915151, + "y": 3800475 + }, + { + "type": "cubicBezTo", + "x1": 6906684, + "y1": 3820583, + "x2": 6898217, + "y2": 3859742, + "x": 6889750, + "y": 3879850 + }, + { + "type": "lineTo", + "x": 6854826, + "y": 3905250 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/laterial_mandible_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/laterial_mandible_colored_regions.json new file mode 100644 index 00000000..861331b9 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/laterial_mandible_colored_regions.json @@ -0,0 +1,964 @@ +{ + "slide_number": 18, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "617", + "path_data": [ + { + "path_width": 4562475, + "path_height": 3025775, + "commands": [ + { + "type": "moveTo", + "x": 4225925, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 4156075, + "y": 3517900 + }, + { + "type": "lineTo", + "x": 4083050, + "y": 3505200 + }, + { + "type": "lineTo", + "x": 4003675, + "y": 3505200 + }, + { + "type": "lineTo", + "x": 3940175, + "y": 3505200 + }, + { + "type": "lineTo", + "x": 3892550, + "y": 3482975 + }, + { + "type": "lineTo", + "x": 3800475, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 3692525, + "y": 3403600 + }, + { + "type": "lineTo", + "x": 3641725, + "y": 3438525 + }, + { + "type": "lineTo", + "x": 3581400, + "y": 3514725 + }, + { + "type": "lineTo", + "x": 3527425, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 3482975, + "y": 3632200 + }, + { + "type": "lineTo", + "x": 3409950, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 3327400, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 3273425, + "y": 3759200 + }, + { + "type": "lineTo", + "x": 3197225, + "y": 3749675 + }, + { + "type": "lineTo", + "x": 3114675, + "y": 3724275 + }, + { + "type": "lineTo", + "x": 3000375, + "y": 3679825 + }, + { + "type": "lineTo", + "x": 2854325, + "y": 3616325 + }, + { + "type": "lineTo", + "x": 2736850, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 2606675, + "y": 3486150 + }, + { + "type": "lineTo", + "x": 2520950, + "y": 3422650 + }, + { + "type": "lineTo", + "x": 2476500, + "y": 3355975 + }, + { + "type": "lineTo", + "x": 2444750, + "y": 3289300 + }, + { + "type": "lineTo", + "x": 2438400, + "y": 3254375 + }, + { + "type": "lineTo", + "x": 2432050, + "y": 3200400 + }, + { + "type": "lineTo", + "x": 2432050, + "y": 3165475 + }, + { + "type": "lineTo", + "x": 2314575, + "y": 3121025 + }, + { + "type": "lineTo", + "x": 2254250, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 2168525, + "y": 3038475 + }, + { + "type": "lineTo", + "x": 2108200, + "y": 3006725 + }, + { + "type": "lineTo", + "x": 2044700, + "y": 2981325 + }, + { + "type": "lineTo", + "x": 1968500, + "y": 3003550 + }, + { + "type": "lineTo", + "x": 1930400, + "y": 3057525 + }, + { + "type": "lineTo", + "x": 1901825, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 1901825, + "y": 3140075 + }, + { + "type": "lineTo", + "x": 1939925, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 1978025, + "y": 3327400 + }, + { + "type": "lineTo", + "x": 2000250, + "y": 3390900 + }, + { + "type": "lineTo", + "x": 2025650, + "y": 3448050 + }, + { + "type": "lineTo", + "x": 2073275, + "y": 3559175 + }, + { + "type": "lineTo", + "x": 2111375, + "y": 3657600 + }, + { + "type": "lineTo", + "x": 2124075, + "y": 3717925 + }, + { + "type": "lineTo", + "x": 2162175, + "y": 3787775 + }, + { + "type": "lineTo", + "x": 2222500, + "y": 3911600 + }, + { + "type": "lineTo", + "x": 2276475, + "y": 4073525 + }, + { + "type": "lineTo", + "x": 2308225, + "y": 4168775 + }, + { + "type": "lineTo", + "x": 2339975, + "y": 4276725 + }, + { + "type": "lineTo", + "x": 2374900, + "y": 4397375 + }, + { + "type": "lineTo", + "x": 2390775, + "y": 4508500 + }, + { + "type": "lineTo", + "x": 2403475, + "y": 4616450 + }, + { + "type": "cubicBezTo", + "x1": 2404533, + "y1": 4657725, + "x2": 2405592, + "y2": 4699000, + "x": 2406650, + "y": 4740275 + }, + { + "type": "lineTo", + "x": 2406650, + "y": 4851400 + }, + { + "type": "lineTo", + "x": 2397125, + "y": 4908550 + }, + { + "type": "lineTo", + "x": 2397125, + "y": 4940300 + }, + { + "type": "lineTo", + "x": 2406650, + "y": 5054600 + }, + { + "type": "lineTo", + "x": 2422525, + "y": 5156200 + }, + { + "type": "lineTo", + "x": 2432050, + "y": 5178425 + }, + { + "type": "lineTo", + "x": 2441575, + "y": 5235575 + }, + { + "type": "lineTo", + "x": 2444750, + "y": 5289550 + }, + { + "type": "lineTo", + "x": 2479675, + "y": 5365750 + }, + { + "type": "lineTo", + "x": 2524125, + "y": 5451475 + }, + { + "type": "lineTo", + "x": 2587625, + "y": 5546725 + }, + { + "type": "lineTo", + "x": 2667000, + "y": 5626100 + }, + { + "type": "lineTo", + "x": 2736850, + "y": 5695950 + }, + { + "type": "lineTo", + "x": 2762250, + "y": 5708650 + }, + { + "type": "lineTo", + "x": 2819400, + "y": 5765800 + }, + { + "type": "lineTo", + "x": 2857500, + "y": 5794375 + }, + { + "type": "lineTo", + "x": 2943225, + "y": 5794375 + }, + { + "type": "lineTo", + "x": 3073400, + "y": 5778500 + }, + { + "type": "lineTo", + "x": 3171825, + "y": 5759450 + }, + { + "type": "lineTo", + "x": 3206750, + "y": 5743575 + }, + { + "type": "lineTo", + "x": 3295650, + "y": 5746750 + }, + { + "type": "lineTo", + "x": 3387725, + "y": 5746750 + }, + { + "type": "lineTo", + "x": 3470275, + "y": 5740400 + }, + { + "type": "lineTo", + "x": 3549650, + "y": 5740400 + }, + { + "type": "lineTo", + "x": 3635375, + "y": 5740400 + }, + { + "type": "lineTo", + "x": 3740150, + "y": 5759450 + }, + { + "type": "lineTo", + "x": 3848100, + "y": 5778500 + }, + { + "type": "lineTo", + "x": 3984625, + "y": 5810250 + }, + { + "type": "lineTo", + "x": 4159250, + "y": 5851525 + }, + { + "type": "lineTo", + "x": 4324350, + "y": 5905500 + }, + { + "type": "lineTo", + "x": 4476750, + "y": 5949950 + }, + { + "type": "lineTo", + "x": 4606925, + "y": 5984875 + }, + { + "type": "lineTo", + "x": 4737100, + "y": 5997575 + }, + { + "type": "lineTo", + "x": 4883150, + "y": 6007100 + }, + { + "type": "lineTo", + "x": 5022850, + "y": 6003925 + }, + { + "type": "lineTo", + "x": 5210175, + "y": 6000750 + }, + { + "type": "lineTo", + "x": 5470525, + "y": 5969000 + }, + { + "type": "lineTo", + "x": 5654675, + "y": 5940425 + }, + { + "type": "lineTo", + "x": 5816600, + "y": 5883275 + }, + { + "type": "lineTo", + "x": 5930900, + "y": 5838825 + }, + { + "type": "lineTo", + "x": 6029325, + "y": 5807075 + }, + { + "type": "lineTo", + "x": 6111875, + "y": 5762625 + }, + { + "type": "lineTo", + "x": 6153150, + "y": 5730875 + }, + { + "type": "lineTo", + "x": 6229350, + "y": 5702300 + }, + { + "type": "lineTo", + "x": 6296025, + "y": 5629275 + }, + { + "type": "lineTo", + "x": 6321425, + "y": 5607050 + }, + { + "type": "lineTo", + "x": 6375400, + "y": 5524500 + }, + { + "type": "lineTo", + "x": 6416675, + "y": 5451475 + }, + { + "type": "lineTo", + "x": 6442075, + "y": 5365750 + }, + { + "type": "lineTo", + "x": 6464300, + "y": 5314950 + }, + { + "type": "lineTo", + "x": 6464300, + "y": 5210175 + }, + { + "type": "lineTo", + "x": 6438900, + "y": 5083175 + }, + { + "type": "lineTo", + "x": 6423025, + "y": 4978400 + }, + { + "type": "lineTo", + "x": 6407150, + "y": 4946650 + }, + { + "type": "lineTo", + "x": 6388100, + "y": 4857750 + }, + { + "type": "lineTo", + "x": 6397625, + "y": 4816475 + }, + { + "type": "lineTo", + "x": 6397625, + "y": 4692650 + }, + { + "type": "lineTo", + "x": 6410325, + "y": 4600575 + }, + { + "type": "lineTo", + "x": 6410325, + "y": 4556125 + }, + { + "type": "lineTo", + "x": 6353175, + "y": 4641850 + }, + { + "type": "cubicBezTo", + "x1": 6335183, + "y1": 4658254, + "x2": 6311900, + "y2": 4671483, + "x": 6302375, + "y": 4654550 + }, + { + "type": "lineTo", + "x": 6273800, + "y": 4603750 + }, + { + "type": "lineTo", + "x": 6251575, + "y": 4724400 + }, + { + "type": "lineTo", + "x": 6238875, + "y": 4791075 + }, + { + "type": "lineTo", + "x": 6197600, + "y": 4835525 + }, + { + "type": "lineTo", + "x": 6140450, + "y": 4864100 + }, + { + "type": "lineTo", + "x": 6086475, + "y": 4832350 + }, + { + "type": "lineTo", + "x": 6042025, + "y": 4800600 + }, + { + "type": "lineTo", + "x": 6016625, + "y": 4781550 + }, + { + "type": "lineTo", + "x": 5975350, + "y": 4873625 + }, + { + "type": "lineTo", + "x": 5953125, + "y": 4933950 + }, + { + "type": "lineTo", + "x": 5902325, + "y": 4956175 + }, + { + "type": "lineTo", + "x": 5835650, + "y": 4943475 + }, + { + "type": "lineTo", + "x": 5784850, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 5765800, + "y": 4879975 + }, + { + "type": "lineTo", + "x": 5743575, + "y": 4813300 + }, + { + "type": "lineTo", + "x": 5740400, + "y": 4727575 + }, + { + "type": "lineTo", + "x": 5670550, + "y": 4813300 + }, + { + "type": "lineTo", + "x": 5632450, + "y": 4883150 + }, + { + "type": "lineTo", + "x": 5610225, + "y": 4927600 + }, + { + "type": "lineTo", + "x": 5546725, + "y": 4978400 + }, + { + "type": "lineTo", + "x": 5575300, + "y": 4962525 + }, + { + "type": "lineTo", + "x": 5540375, + "y": 4981575 + }, + { + "type": "lineTo", + "x": 5502275, + "y": 4984750 + }, + { + "type": "lineTo", + "x": 5451475, + "y": 4975225 + }, + { + "type": "lineTo", + "x": 5429250, + "y": 4937125 + }, + { + "type": "lineTo", + "x": 5426075, + "y": 4914900 + }, + { + "type": "lineTo", + "x": 5413375, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 5407025, + "y": 4816475 + }, + { + "type": "lineTo", + "x": 5381625, + "y": 4873625 + }, + { + "type": "lineTo", + "x": 5362575, + "y": 4911725 + }, + { + "type": "lineTo", + "x": 5337175, + "y": 4940300 + }, + { + "type": "lineTo", + "x": 5299075, + "y": 4962525 + }, + { + "type": "lineTo", + "x": 5260975, + "y": 4962525 + }, + { + "type": "lineTo", + "x": 5210175, + "y": 4953000 + }, + { + "type": "lineTo", + "x": 5184775, + "y": 4930775 + }, + { + "type": "lineTo", + "x": 5168900, + "y": 4905375 + }, + { + "type": "lineTo", + "x": 5156200, + "y": 4870450 + }, + { + "type": "lineTo", + "x": 5143500, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 5108575, + "y": 4895850 + }, + { + "type": "lineTo", + "x": 5080000, + "y": 4943475 + }, + { + "type": "lineTo", + "x": 5045075, + "y": 4943475 + }, + { + "type": "lineTo", + "x": 4997450, + "y": 4937125 + }, + { + "type": "lineTo", + "x": 4959350, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 4933950, + "y": 4892675 + }, + { + "type": "lineTo", + "x": 4914900, + "y": 4810125 + }, + { + "type": "lineTo", + "x": 4914900, + "y": 4768850 + }, + { + "type": "lineTo", + "x": 4832350, + "y": 4749800 + }, + { + "type": "lineTo", + "x": 4787900, + "y": 4797425 + }, + { + "type": "lineTo", + "x": 4721225, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 4664075, + "y": 4851400 + }, + { + "type": "lineTo", + "x": 4556125, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 4467225, + "y": 4806950 + }, + { + "type": "lineTo", + "x": 4384675, + "y": 4752975 + }, + { + "type": "lineTo", + "x": 4324350, + "y": 4705350 + }, + { + "type": "lineTo", + "x": 4264025, + "y": 4664075 + }, + { + "type": "lineTo", + "x": 4187825, + "y": 4616450 + }, + { + "type": "lineTo", + "x": 4137025, + "y": 4578350 + }, + { + "type": "lineTo", + "x": 4105275, + "y": 4556125 + }, + { + "type": "lineTo", + "x": 4076700, + "y": 4562475 + }, + { + "type": "lineTo", + "x": 4041775, + "y": 4438650 + }, + { + "type": "lineTo", + "x": 4035425, + "y": 4330700 + }, + { + "type": "lineTo", + "x": 4041775, + "y": 4241800 + }, + { + "type": "lineTo", + "x": 4057650, + "y": 4165600 + }, + { + "type": "lineTo", + "x": 4076700, + "y": 4137025 + }, + { + "type": "lineTo", + "x": 4079875, + "y": 4073525 + }, + { + "type": "lineTo", + "x": 4124325, + "y": 3990975 + }, + { + "type": "lineTo", + "x": 4143375, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 4143375, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 4184650, + "y": 3841750 + }, + { + "type": "lineTo", + "x": 4206875, + "y": 3787775 + }, + { + "type": "lineTo", + "x": 4222750, + "y": 3721100 + }, + { + "type": "lineTo", + "x": 4235450, + "y": 3654425 + }, + { + "type": "lineTo", + "x": 4225925, + "y": 3562350 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/laterial_parietal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/laterial_parietal_colored_regions.json new file mode 100644 index 00000000..e9f92c4d --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/laterial_parietal_colored_regions.json @@ -0,0 +1,1090 @@ +{ + "slide_number": 13, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "493", + "path_data": [ + { + "path_width": 2365375, + "path_height": 2559050, + "commands": [ + { + "type": "moveTo", + "x": 5454651, + "y": 1660525 + }, + { + "type": "lineTo", + "x": 5448301, + "y": 1692275 + }, + { + "type": "lineTo", + "x": 5457826, + "y": 1733550 + }, + { + "type": "lineTo", + "x": 5464176, + "y": 1771650 + }, + { + "type": "lineTo", + "x": 5429251, + "y": 1803400 + }, + { + "type": "lineTo", + "x": 5438776, + "y": 1828800 + }, + { + "type": "lineTo", + "x": 5438776, + "y": 1860550 + }, + { + "type": "lineTo", + "x": 5435601, + "y": 1901825 + }, + { + "type": "lineTo", + "x": 5416551, + "y": 1914525 + }, + { + "type": "lineTo", + "x": 5400676, + "y": 1943100 + }, + { + "type": "lineTo", + "x": 5407026, + "y": 1962150 + }, + { + "type": "lineTo", + "x": 5403851, + "y": 1984375 + }, + { + "type": "lineTo", + "x": 5397501, + "y": 2009775 + }, + { + "type": "lineTo", + "x": 5413376, + "y": 2016125 + }, + { + "type": "lineTo", + "x": 5432426, + "y": 2054225 + }, + { + "type": "lineTo", + "x": 5416551, + "y": 2070100 + }, + { + "type": "lineTo", + "x": 5441951, + "y": 2085975 + }, + { + "type": "lineTo", + "x": 5397501, + "y": 2105025 + }, + { + "type": "cubicBezTo", + "x1": 5400147, + "y1": 2109258, + "x2": 5429251, + "y2": 2113492, + "x": 5432426, + "y": 2120900 + }, + { + "type": "cubicBezTo", + "x1": 5435601, + "y1": 2128308, + "x2": 5417080, + "y2": 2141008, + "x": 5416551, + "y": 2149475 + }, + { + "type": "lineTo", + "x": 5454651, + "y": 2162175 + }, + { + "type": "lineTo", + "x": 5429251, + "y": 2181225 + }, + { + "type": "lineTo", + "x": 5438776, + "y": 2206625 + }, + { + "type": "lineTo", + "x": 5413376, + "y": 2238375 + }, + { + "type": "lineTo", + "x": 5445126, + "y": 2254250 + }, + { + "type": "lineTo", + "x": 5410201, + "y": 2282825 + }, + { + "type": "lineTo", + "x": 5435601, + "y": 2301875 + }, + { + "type": "lineTo", + "x": 5413376, + "y": 2327275 + }, + { + "type": "lineTo", + "x": 5445126, + "y": 2336800 + }, + { + "type": "lineTo", + "x": 5461001, + "y": 2352675 + }, + { + "type": "lineTo", + "x": 5495926, + "y": 2359025 + }, + { + "type": "lineTo", + "x": 5495926, + "y": 2381250 + }, + { + "type": "lineTo", + "x": 5518151, + "y": 2397125 + }, + { + "type": "lineTo", + "x": 5492751, + "y": 2422525 + }, + { + "type": "lineTo", + "x": 5521326, + "y": 2444750 + }, + { + "type": "lineTo", + "x": 5499101, + "y": 2473325 + }, + { + "type": "lineTo", + "x": 5537201, + "y": 2495550 + }, + { + "type": "lineTo", + "x": 5530851, + "y": 2520950 + }, + { + "type": "lineTo", + "x": 5530851, + "y": 2555875 + }, + { + "type": "lineTo", + "x": 5581651, + "y": 2559050 + }, + { + "type": "lineTo", + "x": 5610226, + "y": 2587625 + }, + { + "type": "lineTo", + "x": 5632451, + "y": 2667000 + }, + { + "type": "lineTo", + "x": 5670551, + "y": 2736850 + }, + { + "type": "lineTo", + "x": 5718176, + "y": 2787650 + }, + { + "type": "lineTo", + "x": 5740401, + "y": 2828925 + }, + { + "type": "lineTo", + "x": 5746751, + "y": 2911475 + }, + { + "type": "lineTo", + "x": 5826126, + "y": 2971800 + }, + { + "type": "lineTo", + "x": 5857876, + "y": 3038475 + }, + { + "type": "lineTo", + "x": 5845176, + "y": 3105150 + }, + { + "type": "lineTo", + "x": 5842001, + "y": 3187700 + }, + { + "type": "lineTo", + "x": 5857876, + "y": 3289300 + }, + { + "type": "lineTo", + "x": 5826126, + "y": 3355975 + }, + { + "type": "lineTo", + "x": 5765801, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 5683251, + "y": 3489325 + }, + { + "type": "lineTo", + "x": 5651501, + "y": 3505200 + }, + { + "type": "lineTo", + "x": 5575301, + "y": 3441700 + }, + { + "type": "lineTo", + "x": 5524501, + "y": 3486150 + }, + { + "type": "lineTo", + "x": 5492751, + "y": 3441700 + }, + { + "type": "lineTo", + "x": 5480051, + "y": 3438525 + }, + { + "type": "lineTo", + "x": 5448301, + "y": 3381375 + }, + { + "type": "lineTo", + "x": 5429251, + "y": 3425825 + }, + { + "type": "lineTo", + "x": 5387976, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 5349876, + "y": 3403600 + }, + { + "type": "lineTo", + "x": 5305426, + "y": 3365500 + }, + { + "type": "lineTo", + "x": 5276851, + "y": 3384550 + }, + { + "type": "lineTo", + "x": 5226051, + "y": 3352800 + }, + { + "type": "lineTo", + "x": 5203826, + "y": 3349625 + }, + { + "type": "lineTo", + "x": 5191126, + "y": 3400425 + }, + { + "type": "lineTo", + "x": 5140326, + "y": 3378200 + }, + { + "type": "lineTo", + "x": 5111751, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 5099051, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 5092701, + "y": 3441700 + }, + { + "type": "lineTo", + "x": 5064126, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 5038726, + "y": 3419475 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 3397250 + }, + { + "type": "lineTo", + "x": 4981576, + "y": 3429000 + }, + { + "type": "lineTo", + "x": 4962526, + "y": 3422650 + }, + { + "type": "lineTo", + "x": 4927601, + "y": 3394075 + }, + { + "type": "lineTo", + "x": 4879976, + "y": 3441700 + }, + { + "type": "lineTo", + "x": 4870451, + "y": 3470275 + }, + { + "type": "lineTo", + "x": 4829176, + "y": 3454400 + }, + { + "type": "lineTo", + "x": 4791076, + "y": 3473450 + }, + { + "type": "lineTo", + "x": 4765676, + "y": 3479800 + }, + { + "type": "lineTo", + "x": 4746626, + "y": 3511550 + }, + { + "type": "lineTo", + "x": 4708526, + "y": 3511550 + }, + { + "type": "lineTo", + "x": 4667251, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 4648201, + "y": 3594100 + }, + { + "type": "lineTo", + "x": 4629151, + "y": 3622675 + }, + { + "type": "lineTo", + "x": 4600576, + "y": 3629025 + }, + { + "type": "lineTo", + "x": 4572001, + "y": 3629025 + }, + { + "type": "lineTo", + "x": 4549776, + "y": 3667125 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 3695700 + }, + { + "type": "lineTo", + "x": 4524376, + "y": 3708400 + }, + { + "type": "lineTo", + "x": 4486276, + "y": 3705225 + }, + { + "type": "lineTo", + "x": 4451351, + "y": 3717925 + }, + { + "type": "lineTo", + "x": 4425951, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 4378326, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 4349751, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 4324351, + "y": 3810000 + }, + { + "type": "lineTo", + "x": 4349751, + "y": 3841750 + }, + { + "type": "lineTo", + "x": 4349751, + "y": 3863975 + }, + { + "type": "lineTo", + "x": 4346576, + "y": 3892550 + }, + { + "type": "lineTo", + "x": 4308476, + "y": 3898900 + }, + { + "type": "lineTo", + "x": 4318001, + "y": 3943350 + }, + { + "type": "lineTo", + "x": 4298951, + "y": 3956050 + }, + { + "type": "lineTo", + "x": 4327526, + "y": 3975100 + }, + { + "type": "lineTo", + "x": 4298951, + "y": 3990975 + }, + { + "type": "lineTo", + "x": 4346576, + "y": 4013200 + }, + { + "type": "lineTo", + "x": 4311651, + "y": 4035425 + }, + { + "type": "lineTo", + "x": 4359276, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 4321176, + "y": 4083050 + }, + { + "type": "lineTo", + "x": 4378326, + "y": 4098925 + }, + { + "type": "lineTo", + "x": 4365626, + "y": 4117975 + }, + { + "type": "lineTo", + "x": 4400551, + "y": 4127500 + }, + { + "type": "lineTo", + "x": 4371976, + "y": 4152900 + }, + { + "type": "lineTo", + "x": 4403726, + "y": 4213225 + }, + { + "type": "lineTo", + "x": 4333876, + "y": 4210050 + }, + { + "type": "lineTo", + "x": 4276726, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 4213226, + "y": 4181475 + }, + { + "type": "lineTo", + "x": 4162426, + "y": 4156075 + }, + { + "type": "lineTo", + "x": 4108451, + "y": 4137025 + }, + { + "type": "lineTo", + "x": 4038601, + "y": 4102100 + }, + { + "type": "lineTo", + "x": 4016376, + "y": 4054475 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 4067175 + }, + { + "type": "lineTo", + "x": 3965576, + "y": 4016375 + }, + { + "type": "lineTo", + "x": 3924301, + "y": 4013200 + }, + { + "type": "lineTo", + "x": 3924301, + "y": 3971925 + }, + { + "type": "lineTo", + "x": 3883026, + "y": 3975100 + }, + { + "type": "lineTo", + "x": 3883026, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 3851276, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 3863976, + "y": 3883025 + }, + { + "type": "lineTo", + "x": 3825876, + "y": 3883025 + }, + { + "type": "lineTo", + "x": 3825876, + "y": 3835400 + }, + { + "type": "lineTo", + "x": 3806826, + "y": 3790950 + }, + { + "type": "lineTo", + "x": 3759201, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 3762376, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 3759201, + "y": 3736975 + }, + { + "type": "lineTo", + "x": 3708401, + "y": 3736975 + }, + { + "type": "lineTo", + "x": 3663951, + "y": 3689350 + }, + { + "type": "lineTo", + "x": 3622676, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 3581401, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 3530601, + "y": 3206750 + }, + { + "type": "lineTo", + "x": 3498851, + "y": 3063875 + }, + { + "type": "lineTo", + "x": 3492501, + "y": 2927350 + }, + { + "type": "lineTo", + "x": 3492501, + "y": 2806700 + }, + { + "type": "lineTo", + "x": 3514726, + "y": 2673350 + }, + { + "type": "lineTo", + "x": 3565526, + "y": 2511425 + }, + { + "type": "lineTo", + "x": 3597276, + "y": 2422525 + }, + { + "type": "lineTo", + "x": 3663951, + "y": 2327275 + }, + { + "type": "lineTo", + "x": 3775076, + "y": 2193925 + }, + { + "type": "lineTo", + "x": 3927476, + "y": 2073275 + }, + { + "type": "lineTo", + "x": 4095751, + "y": 1971675 + }, + { + "type": "lineTo", + "x": 4305301, + "y": 1860550 + }, + { + "type": "lineTo", + "x": 4502151, + "y": 1781175 + }, + { + "type": "lineTo", + "x": 4708526, + "y": 1711325 + }, + { + "type": "lineTo", + "x": 4832351, + "y": 1682750 + }, + { + "type": "lineTo", + "x": 5051426, + "y": 1657350 + }, + { + "type": "lineTo", + "x": 5207001, + "y": 1654175 + }, + { + "type": "lineTo", + "x": 5454651, + "y": 1660525 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "494", + "path_data": [ + { + "path_width": 450850, + "path_height": 1724025, + "commands": [ + { + "type": "moveTo", + "x": 5454650, + "y": 1654176 + }, + { + "type": "lineTo", + "x": 5467350, + "y": 1758951 + }, + { + "type": "lineTo", + "x": 5438775, + "y": 1803401 + }, + { + "type": "lineTo", + "x": 5438775, + "y": 1901826 + }, + { + "type": "lineTo", + "x": 5400675, + "y": 1943101 + }, + { + "type": "lineTo", + "x": 5400675, + "y": 1990726 + }, + { + "type": "cubicBezTo", + "x1": 5405967, + "y1": 2008718, + "x2": 5418667, + "y2": 2017714, + "x": 5422900, + "y": 2035176 + }, + { + "type": "cubicBezTo", + "x1": 5427133, + "y1": 2052638, + "x2": 5431367, + "y2": 2085447, + "x": 5426075, + "y": 2095501 + }, + { + "type": "lineTo", + "x": 5432425, + "y": 2136776 + }, + { + "type": "lineTo", + "x": 5441950, + "y": 2152651 + }, + { + "type": "lineTo", + "x": 5438775, + "y": 2181226 + }, + { + "type": "lineTo", + "x": 5426075, + "y": 2241551 + }, + { + "type": "lineTo", + "x": 5426075, + "y": 2241551 + }, + { + "type": "lineTo", + "x": 5422900, + "y": 2279651 + }, + { + "type": "lineTo", + "x": 5432425, + "y": 2327276 + }, + { + "type": "lineTo", + "x": 5499100, + "y": 2365376 + }, + { + "type": "lineTo", + "x": 5505450, + "y": 2390776 + }, + { + "type": "lineTo", + "x": 5505450, + "y": 2447926 + }, + { + "type": "lineTo", + "x": 5540375, + "y": 2514601 + }, + { + "type": "lineTo", + "x": 5534025, + "y": 2546351 + }, + { + "type": "lineTo", + "x": 5597525, + "y": 2565401 + }, + { + "type": "lineTo", + "x": 5632450, + "y": 2670176 + }, + { + "type": "lineTo", + "x": 5699125, + "y": 2765426 + }, + { + "type": "lineTo", + "x": 5749925, + "y": 2847976 + }, + { + "type": "lineTo", + "x": 5749925, + "y": 2895601 + }, + { + "type": "lineTo", + "x": 5794375, + "y": 2946401 + }, + { + "type": "lineTo", + "x": 5842000, + "y": 3013076 + }, + { + "type": "lineTo", + "x": 5848350, + "y": 3086101 + }, + { + "type": "lineTo", + "x": 5848350, + "y": 3178176 + }, + { + "type": "lineTo", + "x": 5851525, + "y": 3251201 + }, + { + "type": "lineTo", + "x": 5851525, + "y": 3302001 + }, + { + "type": "lineTo", + "x": 5800725, + "y": 3378201 + }, + { + "type": "lineTo", + "x": 5800725, + "y": 3378201 + }, + { + "type": "lineTo", + "x": 5800725, + "y": 3378201 + } + ] + } + ] + }, + { + "anatomical_name": "Unknown_region", + "color": "FF6600", + "color_name": "orange", + "shape_id": "495", + "path_data": [ + { + "path_width": 733425, + "path_height": 523875, + "commands": [ + { + "type": "moveTo", + "x": 4410076, + "y": 4248151 + }, + { + "type": "lineTo", + "x": 4279901, + "y": 4187826 + }, + { + "type": "lineTo", + "x": 4292601, + "y": 4260851 + }, + { + "type": "lineTo", + "x": 4200526, + "y": 4206876 + }, + { + "type": "lineTo", + "x": 4060826, + "y": 4117976 + }, + { + "type": "lineTo", + "x": 3956051, + "y": 4029076 + }, + { + "type": "lineTo", + "x": 3848101, + "y": 3917951 + }, + { + "type": "lineTo", + "x": 3790951, + "y": 3832226 + }, + { + "type": "lineTo", + "x": 3708401, + "y": 3749676 + }, + { + "type": "lineTo", + "x": 3676651, + "y": 3736976 + }, + { + "type": "lineTo", + "x": 3676651, + "y": 3736976 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/laterial_sphenoid_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/laterial_sphenoid_colored_regions.json new file mode 100644 index 00000000..da7d28ea --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/laterial_sphenoid_colored_regions.json @@ -0,0 +1,586 @@ +{ + "slide_number": 14, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "515", + "path_data": [ + { + "path_width": 1006475, + "path_height": 1809750, + "commands": [ + { + "type": "moveTo", + "x": 5356225, + "y": 2762250 + }, + { + "type": "lineTo", + "x": 5302250, + "y": 2714625 + }, + { + "type": "lineTo", + "x": 5194300, + "y": 2670175 + }, + { + "type": "lineTo", + "x": 5086350, + "y": 2625725 + }, + { + "type": "lineTo", + "x": 5006975, + "y": 2635250 + }, + { + "type": "lineTo", + "x": 4972050, + "y": 2619375 + }, + { + "type": "lineTo", + "x": 4933950, + "y": 2632075 + }, + { + "type": "lineTo", + "x": 4873625, + "y": 2597150 + }, + { + "type": "lineTo", + "x": 4781550, + "y": 2530475 + }, + { + "type": "lineTo", + "x": 4724400, + "y": 2619375 + }, + { + "type": "lineTo", + "x": 4654550, + "y": 2647950 + }, + { + "type": "lineTo", + "x": 4603750, + "y": 2720975 + }, + { + "type": "lineTo", + "x": 4562475, + "y": 2746375 + }, + { + "type": "lineTo", + "x": 4527550, + "y": 2749550 + }, + { + "type": "lineTo", + "x": 4498975, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 4457700, + "y": 2841625 + }, + { + "type": "lineTo", + "x": 4441825, + "y": 2851150 + }, + { + "type": "lineTo", + "x": 4467225, + "y": 2876550 + }, + { + "type": "lineTo", + "x": 4533900, + "y": 2882900 + }, + { + "type": "lineTo", + "x": 4559300, + "y": 2924175 + }, + { + "type": "lineTo", + "x": 4591050, + "y": 2971800 + }, + { + "type": "lineTo", + "x": 4670425, + "y": 2971800 + }, + { + "type": "lineTo", + "x": 4699000, + "y": 3051175 + }, + { + "type": "lineTo", + "x": 4727575, + "y": 3105150 + }, + { + "type": "lineTo", + "x": 4749800, + "y": 3155950 + }, + { + "type": "lineTo", + "x": 4762500, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 4816475, + "y": 3228975 + }, + { + "type": "lineTo", + "x": 4857750, + "y": 3254375 + }, + { + "type": "lineTo", + "x": 4879975, + "y": 3282950 + }, + { + "type": "lineTo", + "x": 4911725, + "y": 3276600 + }, + { + "type": "lineTo", + "x": 4918075, + "y": 3327400 + }, + { + "type": "lineTo", + "x": 4953000, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 4981575, + "y": 3479800 + }, + { + "type": "lineTo", + "x": 5010150, + "y": 3568700 + }, + { + "type": "lineTo", + "x": 5038725, + "y": 3584575 + }, + { + "type": "lineTo", + "x": 5000625, + "y": 3676650 + }, + { + "type": "lineTo", + "x": 4978400, + "y": 3702050 + }, + { + "type": "lineTo", + "x": 4991100, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 5019675, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 5026025, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 5019675, + "y": 3860800 + }, + { + "type": "lineTo", + "x": 5032375, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 5006975, + "y": 3981450 + }, + { + "type": "lineTo", + "x": 4975225, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 5000625, + "y": 4057650 + }, + { + "type": "lineTo", + "x": 4972050, + "y": 4102100 + }, + { + "type": "lineTo", + "x": 4984750, + "y": 4146550 + }, + { + "type": "lineTo", + "x": 4994275, + "y": 4178300 + }, + { + "type": "lineTo", + "x": 4943475, + "y": 4213225 + }, + { + "type": "lineTo", + "x": 4962525, + "y": 4241800 + }, + { + "type": "lineTo", + "x": 4946650, + "y": 4302125 + }, + { + "type": "lineTo", + "x": 4968875, + "y": 4340225 + }, + { + "type": "lineTo", + "x": 5013325, + "y": 4308475 + }, + { + "type": "lineTo", + "x": 5089525, + "y": 4270375 + }, + { + "type": "lineTo", + "x": 5197475, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 5251450, + "y": 4213225 + }, + { + "type": "cubicBezTo", + "x1": 5249333, + "y1": 4160308, + "x2": 5274733, + "y2": 4185179, + "x": 5289550, + "y": 4175125 + }, + { + "type": "lineTo", + "x": 5340350, + "y": 4152900 + }, + { + "type": "lineTo", + "x": 5448300, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 5432425, + "y": 3990975 + }, + { + "type": "lineTo", + "x": 5416550, + "y": 3746500 + }, + { + "type": "lineTo", + "x": 5407025, + "y": 3463925 + }, + { + "type": "lineTo", + "x": 5387975, + "y": 3143250 + }, + { + "type": "lineTo", + "x": 5365750, + "y": 2870200 + }, + { + "type": "lineTo", + "x": 5356225, + "y": 2762250 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "516", + "path_data": [ + { + "path_width": 539750, + "path_height": 1641475, + "commands": [ + { + "type": "moveTo", + "x": 5508625, + "y": 2809876 + }, + { + "type": "lineTo", + "x": 5610225, + "y": 4241801 + }, + { + "type": "lineTo", + "x": 5626100, + "y": 4270376 + }, + { + "type": "lineTo", + "x": 5673725, + "y": 4302126 + }, + { + "type": "lineTo", + "x": 5724525, + "y": 4384676 + }, + { + "type": "lineTo", + "x": 5727700, + "y": 4451351 + }, + { + "type": "lineTo", + "x": 5759450, + "y": 4438651 + }, + { + "type": "lineTo", + "x": 5765800, + "y": 4410076 + }, + { + "type": "lineTo", + "x": 5794375, + "y": 4365626 + }, + { + "type": "lineTo", + "x": 5810250, + "y": 4356101 + }, + { + "type": "lineTo", + "x": 5835650, + "y": 4330701 + }, + { + "type": "lineTo", + "x": 5816600, + "y": 4295776 + }, + { + "type": "lineTo", + "x": 5784850, + "y": 4232276 + }, + { + "type": "lineTo", + "x": 5753100, + "y": 4159251 + }, + { + "type": "cubicBezTo", + "x1": 5750983, + "y1": 4142318, + "x2": 5761567, + "y2": 4125384, + "x": 5759450, + "y": 4108451 + }, + { + "type": "lineTo", + "x": 5759450, + "y": 4070351 + }, + { + "type": "lineTo", + "x": 5708650, + "y": 4054476 + }, + { + "type": "lineTo", + "x": 5686425, + "y": 3975101 + }, + { + "type": "lineTo", + "x": 5692775, + "y": 3886201 + }, + { + "type": "lineTo", + "x": 5689600, + "y": 3829051 + }, + { + "type": "lineTo", + "x": 5711825, + "y": 3743326 + }, + { + "type": "lineTo", + "x": 5743575, + "y": 3676651 + }, + { + "type": "lineTo", + "x": 5775325, + "y": 3616326 + }, + { + "type": "lineTo", + "x": 5794375, + "y": 3562351 + }, + { + "type": "lineTo", + "x": 5835650, + "y": 3514726 + }, + { + "type": "lineTo", + "x": 5857875, + "y": 3495676 + }, + { + "type": "lineTo", + "x": 5883275, + "y": 3495676 + }, + { + "type": "lineTo", + "x": 5921375, + "y": 3451226 + }, + { + "type": "lineTo", + "x": 5953125, + "y": 3371851 + }, + { + "type": "lineTo", + "x": 5988050, + "y": 3311526 + }, + { + "type": "lineTo", + "x": 6029325, + "y": 3228976 + }, + { + "type": "lineTo", + "x": 6048375, + "y": 3136901 + }, + { + "type": "lineTo", + "x": 6035675, + "y": 3067051 + }, + { + "type": "lineTo", + "x": 6016625, + "y": 2984501 + }, + { + "type": "lineTo", + "x": 6013450, + "y": 2886076 + }, + { + "type": "lineTo", + "x": 5924550, + "y": 2847976 + }, + { + "type": "lineTo", + "x": 5851525, + "y": 2844801 + }, + { + "type": "lineTo", + "x": 5794375, + "y": 2879726 + }, + { + "type": "lineTo", + "x": 5734050, + "y": 2892426 + }, + { + "type": "lineTo", + "x": 5641975, + "y": 2860676 + }, + { + "type": "lineTo", + "x": 5591175, + "y": 2841626 + }, + { + "type": "lineTo", + "x": 5508625, + "y": 2809876 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/laterial_temporal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/laterial_temporal_colored_regions.json new file mode 100644 index 00000000..c7b790ea --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/laterial_temporal_colored_regions.json @@ -0,0 +1,1031 @@ +{ + "slide_number": 17, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "583", + "path_data": [ + { + "path_width": 3216275, + "path_height": 2508250, + "commands": [ + { + "type": "moveTo", + "x": 5857876, + "y": 3057525 + }, + { + "type": "lineTo", + "x": 5807076, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 5781676, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 5730876, + "y": 2946400 + }, + { + "type": "lineTo", + "x": 5689601, + "y": 2955925 + }, + { + "type": "lineTo", + "x": 5680076, + "y": 2974975 + }, + { + "type": "lineTo", + "x": 5680076, + "y": 2994025 + }, + { + "type": "lineTo", + "x": 5661026, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 5622926, + "y": 2943225 + }, + { + "type": "lineTo", + "x": 5594351, + "y": 2921000 + }, + { + "type": "lineTo", + "x": 5568951, + "y": 2921000 + }, + { + "type": "lineTo", + "x": 5553076, + "y": 2914650 + }, + { + "type": "lineTo", + "x": 5534026, + "y": 2863850 + }, + { + "type": "lineTo", + "x": 5514976, + "y": 2844800 + }, + { + "type": "lineTo", + "x": 5505451, + "y": 2844800 + }, + { + "type": "lineTo", + "x": 5492751, + "y": 2854325 + }, + { + "type": "lineTo", + "x": 5486401, + "y": 2895600 + }, + { + "type": "lineTo", + "x": 5464176, + "y": 2911475 + }, + { + "type": "lineTo", + "x": 5416551, + "y": 2882900 + }, + { + "type": "lineTo", + "x": 5387976, + "y": 2908300 + }, + { + "type": "lineTo", + "x": 5308601, + "y": 2838450 + }, + { + "type": "lineTo", + "x": 5280026, + "y": 2806700 + }, + { + "type": "lineTo", + "x": 5232401, + "y": 2851150 + }, + { + "type": "lineTo", + "x": 5178426, + "y": 2806700 + }, + { + "type": "lineTo", + "x": 5146676, + "y": 2803525 + }, + { + "type": "lineTo", + "x": 5114926, + "y": 2797175 + }, + { + "type": "lineTo", + "x": 5095876, + "y": 2828925 + }, + { + "type": "lineTo", + "x": 5095876, + "y": 2828925 + }, + { + "type": "lineTo", + "x": 5095876, + "y": 2879725 + }, + { + "type": "lineTo", + "x": 5083176, + "y": 2914650 + }, + { + "type": "lineTo", + "x": 5038726, + "y": 2857500 + }, + { + "type": "lineTo", + "x": 5010151, + "y": 2857500 + }, + { + "type": "lineTo", + "x": 4981576, + "y": 2895600 + }, + { + "type": "lineTo", + "x": 4953001, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 4927601, + "y": 2905125 + }, + { + "type": "lineTo", + "x": 4864101, + "y": 2873375 + }, + { + "type": "lineTo", + "x": 4819651, + "y": 2905125 + }, + { + "type": "lineTo", + "x": 4775201, + "y": 2876550 + }, + { + "type": "lineTo", + "x": 4737101, + "y": 2895600 + }, + { + "type": "lineTo", + "x": 4711701, + "y": 2911475 + }, + { + "type": "lineTo", + "x": 4657726, + "y": 2870200 + }, + { + "type": "lineTo", + "x": 4591051, + "y": 2917825 + }, + { + "type": "lineTo", + "x": 4575176, + "y": 2984500 + }, + { + "type": "lineTo", + "x": 4540251, + "y": 2994025 + }, + { + "type": "lineTo", + "x": 4473576, + "y": 2962275 + }, + { + "type": "lineTo", + "x": 4432301, + "y": 2990850 + }, + { + "type": "lineTo", + "x": 4406901, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 4365626, + "y": 2997200 + }, + { + "type": "lineTo", + "x": 4330701, + "y": 3067050 + }, + { + "type": "lineTo", + "x": 4283076, + "y": 3067050 + }, + { + "type": "lineTo", + "x": 4254501, + "y": 3092450 + }, + { + "type": "lineTo", + "x": 4219576, + "y": 3089275 + }, + { + "type": "lineTo", + "x": 4203701, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 4184651, + "y": 3114675 + }, + { + "type": "lineTo", + "x": 4191001, + "y": 3155950 + }, + { + "type": "lineTo", + "x": 4178301, + "y": 3222625 + }, + { + "type": "lineTo", + "x": 4130676, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 4079876, + "y": 3241675 + }, + { + "type": "lineTo", + "x": 4029076, + "y": 3263900 + }, + { + "type": "lineTo", + "x": 4006851, + "y": 3305175 + }, + { + "type": "lineTo", + "x": 3994151, + "y": 3343275 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 3359150 + }, + { + "type": "lineTo", + "x": 3898901, + "y": 3349625 + }, + { + "type": "lineTo", + "x": 3876676, + "y": 3400425 + }, + { + "type": "lineTo", + "x": 3829051, + "y": 3425825 + }, + { + "type": "lineTo", + "x": 3727451, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 3698876, + "y": 3463925 + }, + { + "type": "lineTo", + "x": 3689351, + "y": 3482975 + }, + { + "type": "lineTo", + "x": 3698876, + "y": 3527425 + }, + { + "type": "lineTo", + "x": 3689351, + "y": 3575050 + }, + { + "type": "lineTo", + "x": 3670301, + "y": 3651250 + }, + { + "type": "lineTo", + "x": 3654426, + "y": 3683000 + }, + { + "type": "lineTo", + "x": 3616326, + "y": 3689350 + }, + { + "type": "lineTo", + "x": 3616326, + "y": 3746500 + }, + { + "type": "lineTo", + "x": 3625851, + "y": 3775075 + }, + { + "type": "lineTo", + "x": 3600451, + "y": 3787775 + }, + { + "type": "lineTo", + "x": 3644901, + "y": 3841750 + }, + { + "type": "lineTo", + "x": 3676651, + "y": 3879850 + }, + { + "type": "lineTo", + "x": 3629026, + "y": 3902075 + }, + { + "type": "lineTo", + "x": 3670301, + "y": 3949700 + }, + { + "type": "lineTo", + "x": 3686176, + "y": 3968750 + }, + { + "type": "lineTo", + "x": 3648076, + "y": 3994150 + }, + { + "type": "lineTo", + "x": 3721101, + "y": 4029075 + }, + { + "type": "lineTo", + "x": 3752851, + "y": 4070350 + }, + { + "type": "lineTo", + "x": 3705226, + "y": 4114800 + }, + { + "type": "lineTo", + "x": 3727451, + "y": 4165600 + }, + { + "type": "lineTo", + "x": 3746501, + "y": 4206875 + }, + { + "type": "lineTo", + "x": 3756026, + "y": 4238625 + }, + { + "type": "lineTo", + "x": 3606801, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 3606801, + "y": 4238625 + }, + { + "type": "lineTo", + "x": 3616326, + "y": 4314825 + }, + { + "type": "lineTo", + "x": 3648076, + "y": 4406900 + }, + { + "type": "lineTo", + "x": 3673476, + "y": 4505325 + }, + { + "type": "lineTo", + "x": 3689351, + "y": 4565650 + }, + { + "type": "lineTo", + "x": 3743326, + "y": 4654550 + }, + { + "type": "lineTo", + "x": 3781426, + "y": 4705350 + }, + { + "type": "lineTo", + "x": 3838576, + "y": 4762500 + }, + { + "type": "lineTo", + "x": 3873501, + "y": 4797425 + }, + { + "type": "lineTo", + "x": 3921126, + "y": 4860925 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 4911725 + }, + { + "type": "lineTo", + "x": 4022726, + "y": 4994275 + }, + { + "type": "lineTo", + "x": 4108451, + "y": 5083175 + }, + { + "type": "lineTo", + "x": 4181476, + "y": 5162550 + }, + { + "type": "lineTo", + "x": 4238626, + "y": 5213350 + }, + { + "type": "lineTo", + "x": 4292601, + "y": 5241925 + }, + { + "type": "lineTo", + "x": 4311651, + "y": 5251450 + }, + { + "type": "lineTo", + "x": 4368801, + "y": 5286375 + }, + { + "type": "lineTo", + "x": 4397376, + "y": 5305425 + }, + { + "type": "lineTo", + "x": 4489451, + "y": 5267325 + }, + { + "type": "lineTo", + "x": 4521201, + "y": 5286375 + }, + { + "type": "lineTo", + "x": 4641851, + "y": 5245100 + }, + { + "type": "lineTo", + "x": 4676776, + "y": 5191125 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 5124450 + }, + { + "type": "lineTo", + "x": 4752976, + "y": 5146675 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 5153025 + }, + { + "type": "lineTo", + "x": 4797426, + "y": 5127625 + }, + { + "type": "lineTo", + "x": 4822826, + "y": 5153025 + }, + { + "type": "lineTo", + "x": 5003801, + "y": 5105400 + }, + { + "type": "lineTo", + "x": 5073651, + "y": 5070475 + }, + { + "type": "lineTo", + "x": 5127626, + "y": 5067300 + }, + { + "type": "lineTo", + "x": 5207001, + "y": 5067300 + }, + { + "type": "lineTo", + "x": 5181601, + "y": 4959350 + }, + { + "type": "lineTo", + "x": 5146676, + "y": 4892675 + }, + { + "type": "lineTo", + "x": 5124451, + "y": 4829175 + }, + { + "type": "lineTo", + "x": 5146676, + "y": 4768850 + }, + { + "type": "lineTo", + "x": 5197476, + "y": 4724400 + }, + { + "type": "lineTo", + "x": 5254626, + "y": 4718050 + }, + { + "type": "lineTo", + "x": 5318126, + "y": 4737100 + }, + { + "type": "lineTo", + "x": 5368926, + "y": 4762500 + }, + { + "type": "lineTo", + "x": 5429251, + "y": 4803775 + }, + { + "type": "lineTo", + "x": 5476876, + "y": 4832350 + }, + { + "type": "lineTo", + "x": 5534026, + "y": 4864100 + }, + { + "type": "lineTo", + "x": 5641976, + "y": 4892675 + }, + { + "type": "lineTo", + "x": 5727701, + "y": 4908550 + }, + { + "type": "lineTo", + "x": 5832476, + "y": 4889500 + }, + { + "type": "lineTo", + "x": 5927726, + "y": 4889500 + }, + { + "type": "lineTo", + "x": 6022976, + "y": 4892675 + }, + { + "type": "lineTo", + "x": 6118226, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 6226176, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 6296026, + "y": 4911725 + }, + { + "type": "lineTo", + "x": 6346826, + "y": 4940300 + }, + { + "type": "lineTo", + "x": 6372226, + "y": 4949825 + }, + { + "type": "lineTo", + "x": 6394451, + "y": 4933950 + }, + { + "type": "lineTo", + "x": 6457951, + "y": 4924425 + }, + { + "type": "lineTo", + "x": 6540501, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 6559551, + "y": 4918075 + }, + { + "type": "lineTo", + "x": 6540501, + "y": 4873625 + }, + { + "type": "lineTo", + "x": 6575426, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 6677026, + "y": 4835525 + }, + { + "type": "lineTo", + "x": 6645276, + "y": 4794250 + }, + { + "type": "lineTo", + "x": 6699251, + "y": 4749800 + }, + { + "type": "lineTo", + "x": 6750051, + "y": 4730750 + }, + { + "type": "lineTo", + "x": 6750051, + "y": 4686300 + }, + { + "type": "lineTo", + "x": 6765926, + "y": 4657725 + }, + { + "type": "lineTo", + "x": 6794501, + "y": 4632325 + }, + { + "type": "lineTo", + "x": 6816726, + "y": 4572000 + }, + { + "type": "lineTo", + "x": 6772276, + "y": 4537075 + }, + { + "type": "lineTo", + "x": 6680201, + "y": 4556125 + }, + { + "type": "lineTo", + "x": 6569076, + "y": 4581525 + }, + { + "type": "lineTo", + "x": 6492876, + "y": 4587875 + }, + { + "type": "lineTo", + "x": 6429376, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 6353176, + "y": 4622800 + }, + { + "type": "lineTo", + "x": 6292851, + "y": 4638675 + }, + { + "type": "lineTo", + "x": 6257926, + "y": 4641850 + }, + { + "type": "lineTo", + "x": 6178551, + "y": 4632325 + }, + { + "type": "lineTo", + "x": 6130926, + "y": 4638675 + }, + { + "type": "lineTo", + "x": 6045201, + "y": 4651375 + }, + { + "type": "lineTo", + "x": 5984876, + "y": 4664075 + }, + { + "type": "lineTo", + "x": 6096001, + "y": 4597400 + }, + { + "type": "lineTo", + "x": 6153151, + "y": 4533900 + }, + { + "type": "lineTo", + "x": 6219826, + "y": 4483100 + }, + { + "type": "lineTo", + "x": 6280151, + "y": 4451350 + }, + { + "type": "lineTo", + "x": 6330951, + "y": 4381500 + }, + { + "type": "lineTo", + "x": 6340476, + "y": 4340225 + }, + { + "type": "lineTo", + "x": 6318251, + "y": 4324350 + }, + { + "type": "lineTo", + "x": 6359526, + "y": 4295775 + }, + { + "type": "lineTo", + "x": 6350001, + "y": 4248150 + }, + { + "type": "lineTo", + "x": 6375401, + "y": 4213225 + }, + { + "type": "lineTo", + "x": 6375401, + "y": 4191000 + }, + { + "type": "lineTo", + "x": 6353176, + "y": 4156075 + }, + { + "type": "lineTo", + "x": 6391276, + "y": 4114800 + }, + { + "type": "lineTo", + "x": 6400801, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 6381751, + "y": 3984625 + }, + { + "type": "lineTo", + "x": 6381751, + "y": 3965575 + }, + { + "type": "lineTo", + "x": 6391276, + "y": 3908425 + }, + { + "type": "lineTo", + "x": 6375401, + "y": 3860800 + }, + { + "type": "lineTo", + "x": 6353176, + "y": 3860800 + }, + { + "type": "lineTo", + "x": 6403976, + "y": 3781425 + }, + { + "type": "lineTo", + "x": 6410326, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 6381751, + "y": 3721100 + }, + { + "type": "lineTo", + "x": 6353176, + "y": 3635375 + }, + { + "type": "lineTo", + "x": 6318251, + "y": 3533775 + }, + { + "type": "lineTo", + "x": 6286501, + "y": 3467100 + }, + { + "type": "lineTo", + "x": 6248401, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 6181726, + "y": 3381375 + }, + { + "type": "lineTo", + "x": 6143626, + "y": 3390900 + }, + { + "type": "lineTo", + "x": 6099176, + "y": 3260725 + }, + { + "type": "lineTo", + "x": 6067426, + "y": 3168650 + }, + { + "type": "lineTo", + "x": 5984876, + "y": 3146425 + }, + { + "type": "lineTo", + "x": 5937251, + "y": 3079750 + }, + { + "type": "lineTo", + "x": 5857876, + "y": 3057525 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/lumbar_accessory_process.json b/boneset-api/data/annotations/ColoredRegions/lumbar_accessory_process.json new file mode 100644 index 00000000..30e608ff --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lumbar_accessory_process.json @@ -0,0 +1,158 @@ +{ + "slide_number": 43, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1406", + "path_data": [ + { + "path_width": 513542, + "path_height": 652316, + "commands": [ + { + "type": "moveTo", + "x": 3959855, + "y": 3206067 + }, + { + "type": "lineTo", + "x": 3890458, + "y": 3379556 + }, + { + "type": "lineTo", + "x": 3918217, + "y": 3559984 + }, + { + "type": "lineTo", + "x": 4029253, + "y": 3671016 + }, + { + "type": "lineTo", + "x": 4209687, + "y": 3733472 + }, + { + "type": "lineTo", + "x": 4404000, + "y": 3747351 + }, + { + "type": "lineTo", + "x": 4341542, + "y": 3559984 + }, + { + "type": "lineTo", + "x": 4202747, + "y": 3448951 + }, + { + "type": "lineTo", + "x": 4098651, + "y": 3337919 + }, + { + "type": "lineTo", + "x": 4063952, + "y": 3171370 + }, + { + "type": "lineTo", + "x": 4015373, + "y": 3095035 + }, + { + "type": "lineTo", + "x": 3959855, + "y": 3206067 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1407", + "path_data": [ + { + "path_width": 263711, + "path_height": 437191, + "commands": [ + { + "type": "moveTo", + "x": 7318700, + "y": 3108915 + }, + { + "type": "lineTo", + "x": 7408917, + "y": 3268524 + }, + { + "type": "lineTo", + "x": 7401977, + "y": 3358738 + }, + { + "type": "lineTo", + "x": 7395037, + "y": 3428134 + }, + { + "type": "lineTo", + "x": 7249302, + "y": 3511408 + }, + { + "type": "lineTo", + "x": 7166025, + "y": 3546106 + }, + { + "type": "lineTo", + "x": 7145206, + "y": 3428134 + }, + { + "type": "lineTo", + "x": 7152146, + "y": 3310161 + }, + { + "type": "lineTo", + "x": 7214603, + "y": 3247706 + }, + { + "type": "lineTo", + "x": 7277061, + "y": 3206068 + }, + { + "type": "lineTo", + "x": 7318700, + "y": 3108915 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/lumbar_articular_surfaces.json b/boneset-api/data/annotations/ColoredRegions/lumbar_articular_surfaces.json new file mode 100644 index 00000000..1dc66e85 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lumbar_articular_surfaces.json @@ -0,0 +1,388 @@ +{ + "slide_number": 45, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1454", + "path_data": [ + { + "path_width": 367807, + "path_height": 458009, + "commands": [ + { + "type": "moveTo", + "x": 6860676, + "y": 3983297 + }, + { + "type": "lineTo", + "x": 6777399, + "y": 3920841 + }, + { + "type": "lineTo", + "x": 6708001, + "y": 3920841 + }, + { + "type": "lineTo", + "x": 6596965, + "y": 3976357 + }, + { + "type": "lineTo", + "x": 6534507, + "y": 4017994 + }, + { + "type": "lineTo", + "x": 6520628, + "y": 4073511 + }, + { + "type": "lineTo", + "x": 6520628, + "y": 4122088 + }, + { + "type": "lineTo", + "x": 6562266, + "y": 4253939 + }, + { + "type": "lineTo", + "x": 6610844, + "y": 4323334 + }, + { + "type": "lineTo", + "x": 6680242, + "y": 4344153 + }, + { + "type": "lineTo", + "x": 6812097, + "y": 4378850 + }, + { + "type": "lineTo", + "x": 6867615, + "y": 4316395 + }, + { + "type": "lineTo", + "x": 6888435, + "y": 4198422 + }, + { + "type": "lineTo", + "x": 6881495, + "y": 4080450 + }, + { + "type": "lineTo", + "x": 6860676, + "y": 3983297 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1455", + "path_data": [ + { + "path_width": 114300, + "path_height": 187325, + "commands": [ + { + "type": "moveTo", + "x": 4575175, + "y": 4362451 + }, + { + "type": "lineTo", + "x": 4524375, + "y": 4391026 + }, + { + "type": "lineTo", + "x": 4486275, + "y": 4460876 + }, + { + "type": "lineTo", + "x": 4473575, + "y": 4524376 + }, + { + "type": "lineTo", + "x": 4495800, + "y": 4549776 + }, + { + "type": "lineTo", + "x": 4540250, + "y": 4537076 + }, + { + "type": "lineTo", + "x": 4572000, + "y": 4498976 + }, + { + "type": "lineTo", + "x": 4584700, + "y": 4473576 + }, + { + "type": "lineTo", + "x": 4587875, + "y": 4432301 + }, + { + "type": "lineTo", + "x": 4575175, + "y": 4362451 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1456", + "path_data": [ + { + "path_width": 117475, + "path_height": 206375, + "commands": [ + { + "type": "moveTo", + "x": 4010026, + "y": 4502151 + }, + { + "type": "lineTo", + "x": 3978276, + "y": 4546601 + }, + { + "type": "lineTo", + "x": 3956051, + "y": 4540251 + }, + { + "type": "lineTo", + "x": 3933826, + "y": 4521201 + }, + { + "type": "lineTo", + "x": 3898901, + "y": 4479926 + }, + { + "type": "lineTo", + "x": 3898901, + "y": 4445001 + }, + { + "type": "lineTo", + "x": 3892551, + "y": 4340226 + }, + { + "type": "lineTo", + "x": 3924301, + "y": 4352926 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 4391026 + }, + { + "type": "lineTo", + "x": 3990976, + "y": 4422776 + }, + { + "type": "lineTo", + "x": 4010026, + "y": 4502151 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1457", + "path_data": [ + { + "path_width": 149225, + "path_height": 279400, + "commands": [ + { + "type": "moveTo", + "x": 3829051, + "y": 1708150 + }, + { + "type": "lineTo", + "x": 3829051, + "y": 1812925 + }, + { + "type": "lineTo", + "x": 3863976, + "y": 1895475 + }, + { + "type": "lineTo", + "x": 3911601, + "y": 1962150 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 1984375 + }, + { + "type": "lineTo", + "x": 3978276, + "y": 1920875 + }, + { + "type": "lineTo", + "x": 3917951, + "y": 1905000 + }, + { + "type": "lineTo", + "x": 3889376, + "y": 1882775 + }, + { + "type": "lineTo", + "x": 3876676, + "y": 1816100 + }, + { + "type": "cubicBezTo", + "x1": 3867151, + "y1": 1797050, + "x2": 3857626, + "y2": 1724025, + "x": 3848101, + "y": 1704975 + }, + { + "type": "lineTo", + "x": 3829051, + "y": 1708150 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1458", + "path_data": [ + { + "path_width": 161925, + "path_height": 219075, + "commands": [ + { + "type": "moveTo", + "x": 4616451, + "y": 1943101 + }, + { + "type": "lineTo", + "x": 4670426, + "y": 1911351 + }, + { + "type": "lineTo", + "x": 4711701, + "y": 1844676 + }, + { + "type": "lineTo", + "x": 4727576, + "y": 1771651 + }, + { + "type": "lineTo", + "x": 4740276, + "y": 1739901 + }, + { + "type": "lineTo", + "x": 4778376, + "y": 1746251 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 1844676 + }, + { + "type": "lineTo", + "x": 4756151, + "y": 1908176 + }, + { + "type": "lineTo", + "x": 4727576, + "y": 1936751 + }, + { + "type": "lineTo", + "x": 4670426, + "y": 1958976 + }, + { + "type": "lineTo", + "x": 4616451, + "y": 1943101 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/lumbar_body.json b/boneset-api/data/annotations/ColoredRegions/lumbar_body.json new file mode 100644 index 00000000..89a9a00f --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lumbar_body.json @@ -0,0 +1,505 @@ +{ + "slide_number": 40, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1327", + "path_data": [ + { + "path_width": 1505421, + "path_height": 1048766, + "commands": [ + { + "type": "moveTo", + "x": 4948653, + "y": 2404313 + }, + { + "type": "lineTo", + "x": 4791690, + "y": 2318700 + }, + { + "type": "lineTo", + "x": 4634727, + "y": 2297296 + }, + { + "type": "lineTo", + "x": 4549111, + "y": 2311565 + }, + { + "type": "lineTo", + "x": 4356474, + "y": 2382910 + }, + { + "type": "lineTo", + "x": 4263723, + "y": 2411448 + }, + { + "type": "lineTo", + "x": 4113894, + "y": 2347237 + }, + { + "type": "lineTo", + "x": 3992605, + "y": 2297296 + }, + { + "type": "lineTo", + "x": 3899854, + "y": 2268758 + }, + { + "type": "lineTo", + "x": 3807103, + "y": 2283027 + }, + { + "type": "lineTo", + "x": 3750025, + "y": 2304431 + }, + { + "type": "lineTo", + "x": 3643005, + "y": 2311565 + }, + { + "type": "lineTo", + "x": 3600196, + "y": 2340103 + }, + { + "type": "lineTo", + "x": 3550254, + "y": 2432851 + }, + { + "type": "lineTo", + "x": 3507445, + "y": 2596944 + }, + { + "type": "lineTo", + "x": 3528850, + "y": 2732498 + }, + { + "type": "lineTo", + "x": 3550254, + "y": 2910860 + }, + { + "type": "lineTo", + "x": 3600196, + "y": 3010742 + }, + { + "type": "lineTo", + "x": 3742890, + "y": 3146297 + }, + { + "type": "lineTo", + "x": 3885584, + "y": 3253314 + }, + { + "type": "lineTo", + "x": 3992605, + "y": 3288986 + }, + { + "type": "lineTo", + "x": 4085356, + "y": 3317524 + }, + { + "type": "lineTo", + "x": 4320800, + "y": 3288986 + }, + { + "type": "lineTo", + "x": 4556245, + "y": 3231911 + }, + { + "type": "lineTo", + "x": 4627592, + "y": 3260448 + }, + { + "type": "lineTo", + "x": 4898710, + "y": 3039280 + }, + { + "type": "lineTo", + "x": 4998596, + "y": 2896591 + }, + { + "type": "lineTo", + "x": 5012866, + "y": 2732498 + }, + { + "type": "lineTo", + "x": 5005731, + "y": 2596944 + }, + { + "type": "lineTo", + "x": 4970057, + "y": 2475658 + }, + { + "type": "lineTo", + "x": 4948653, + "y": 2404313 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1328", + "path_data": [ + { + "path_width": 1455477, + "path_height": 1077303, + "commands": [ + { + "type": "moveTo", + "x": 4912980, + "y": 5186754 + }, + { + "type": "lineTo", + "x": 4905845, + "y": 5079737 + }, + { + "type": "lineTo", + "x": 4834498, + "y": 4965585 + }, + { + "type": "lineTo", + "x": 4748882, + "y": 4908510 + }, + { + "type": "lineTo", + "x": 4627592, + "y": 4830031 + }, + { + "type": "lineTo", + "x": 4506302, + "y": 4830031 + }, + { + "type": "lineTo", + "x": 4377878, + "y": 4879972 + }, + { + "type": "lineTo", + "x": 4256588, + "y": 4937048 + }, + { + "type": "lineTo", + "x": 4049682, + "y": 4844300 + }, + { + "type": "lineTo", + "x": 3885584, + "y": 4815762 + }, + { + "type": "lineTo", + "x": 3692947, + "y": 4865703 + }, + { + "type": "lineTo", + "x": 3593062, + "y": 4922779 + }, + { + "type": "lineTo", + "x": 3528850, + "y": 4986989 + }, + { + "type": "lineTo", + "x": 3457503, + "y": 5122544 + }, + { + "type": "lineTo", + "x": 3471772, + "y": 5258098 + }, + { + "type": "lineTo", + "x": 3507445, + "y": 5407922 + }, + { + "type": "lineTo", + "x": 3600196, + "y": 5529208 + }, + { + "type": "lineTo", + "x": 3714352, + "y": 5671897 + }, + { + "type": "lineTo", + "x": 3785698, + "y": 5728973 + }, + { + "type": "lineTo", + "x": 3906988, + "y": 5764645 + }, + { + "type": "lineTo", + "x": 4056817, + "y": 5828855 + }, + { + "type": "lineTo", + "x": 4292262, + "y": 5893065 + }, + { + "type": "lineTo", + "x": 4506302, + "y": 5843124 + }, + { + "type": "lineTo", + "x": 4656131, + "y": 5743242 + }, + { + "type": "lineTo", + "x": 4848768, + "y": 5529208 + }, + { + "type": "lineTo", + "x": 4848768, + "y": 5529208 + }, + { + "type": "lineTo", + "x": 4891576, + "y": 5450729 + }, + { + "type": "lineTo", + "x": 4912980, + "y": 5186754 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1329", + "path_data": [ + { + "path_width": 1184359, + "path_height": 1027362, + "commands": [ + { + "type": "moveTo", + "x": 7188947, + "y": 3674247 + }, + { + "type": "lineTo", + "x": 7210351, + "y": 3788398 + }, + { + "type": "lineTo", + "x": 7174677, + "y": 3859743 + }, + { + "type": "lineTo", + "x": 7231755, + "y": 3923953 + }, + { + "type": "lineTo", + "x": 7424392, + "y": 3988163 + }, + { + "type": "lineTo", + "x": 7524277, + "y": 3995298 + }, + { + "type": "lineTo", + "x": 7702645, + "y": 3988163 + }, + { + "type": "lineTo", + "x": 7888147, + "y": 3945357 + }, + { + "type": "lineTo", + "x": 8016571, + "y": 3945357 + }, + { + "type": "lineTo", + "x": 8259151, + "y": 3866878 + }, + { + "type": "lineTo", + "x": 8359036, + "y": 3831205 + }, + { + "type": "lineTo", + "x": 8294824, + "y": 3702785 + }, + { + "type": "lineTo", + "x": 8259151, + "y": 3574365 + }, + { + "type": "lineTo", + "x": 8259151, + "y": 3396003 + }, + { + "type": "lineTo", + "x": 8316228, + "y": 3217642 + }, + { + "type": "lineTo", + "x": 8359036, + "y": 3146297 + }, + { + "type": "lineTo", + "x": 8323363, + "y": 3089221 + }, + { + "type": "lineTo", + "x": 8209208, + "y": 3074952 + }, + { + "type": "lineTo", + "x": 8009436, + "y": 3082087 + }, + { + "type": "lineTo", + "x": 7809665, + "y": 3082087 + }, + { + "type": "lineTo", + "x": 7638432, + "y": 3053549 + }, + { + "type": "lineTo", + "x": 7510008, + "y": 3017877 + }, + { + "type": "lineTo", + "x": 7310236, + "y": 2967936 + }, + { + "type": "lineTo", + "x": 7188947, + "y": 3017877 + }, + { + "type": "lineTo", + "x": 7203216, + "y": 3096356 + }, + { + "type": "lineTo", + "x": 7246024, + "y": 3224776 + }, + { + "type": "lineTo", + "x": 7288832, + "y": 3338927 + }, + { + "type": "lineTo", + "x": 7288832, + "y": 3488751 + }, + { + "type": "lineTo", + "x": 7274563, + "y": 3588634 + }, + { + "type": "lineTo", + "x": 7188947, + "y": 3674247 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/lumbar_mammillary_process.json b/boneset-api/data/annotations/ColoredRegions/lumbar_mammillary_process.json new file mode 100644 index 00000000..fc8cbe6a --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lumbar_mammillary_process.json @@ -0,0 +1,283 @@ +{ + "slide_number": 44, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1428", + "path_data": [ + { + "path_width": 631519, + "path_height": 1200541, + "commands": [ + { + "type": "moveTo", + "x": 4549736, + "y": 2255351 + }, + { + "type": "lineTo", + "x": 4487278, + "y": 2428840 + }, + { + "type": "lineTo", + "x": 4494218, + "y": 2637026 + }, + { + "type": "lineTo", + "x": 4535856, + "y": 2852152 + }, + { + "type": "lineTo", + "x": 4584435, + "y": 3060338 + }, + { + "type": "lineTo", + "x": 4619134, + "y": 3226887 + }, + { + "type": "lineTo", + "x": 4577495, + "y": 3400375 + }, + { + "type": "lineTo", + "x": 4452579, + "y": 3442013 + }, + { + "type": "lineTo", + "x": 4334603, + "y": 3442013 + }, + { + "type": "lineTo", + "x": 4244387, + "y": 3421194 + }, + { + "type": "lineTo", + "x": 4161109, + "y": 3317101 + }, + { + "type": "lineTo", + "x": 4147230, + "y": 3240766 + }, + { + "type": "lineTo", + "x": 4084772, + "y": 3171371 + }, + { + "type": "lineTo", + "x": 4036194, + "y": 3115854 + }, + { + "type": "lineTo", + "x": 3994555, + "y": 2970124 + }, + { + "type": "lineTo", + "x": 3987615, + "y": 2803575 + }, + { + "type": "lineTo", + "x": 3987615, + "y": 2650905 + }, + { + "type": "lineTo", + "x": 4050073, + "y": 2498235 + }, + { + "type": "lineTo", + "x": 4161109, + "y": 2408021 + }, + { + "type": "lineTo", + "x": 4265206, + "y": 2331686 + }, + { + "type": "lineTo", + "x": 4369302, + "y": 2290049 + }, + { + "type": "lineTo", + "x": 4431760, + "y": 2255351 + }, + { + "type": "lineTo", + "x": 4473399, + "y": 2241472 + }, + { + "type": "lineTo", + "x": 4549736, + "y": 2255351 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1429", + "path_data": [ + { + "path_width": 582940, + "path_height": 1172782, + "commands": [ + { + "type": "moveTo", + "x": 6853735, + "y": 2248411 + }, + { + "type": "lineTo", + "x": 6860675, + "y": 2505174 + }, + { + "type": "lineTo", + "x": 6839855, + "y": 2859090 + }, + { + "type": "lineTo", + "x": 6812096, + "y": 3074216 + }, + { + "type": "lineTo", + "x": 6846795, + "y": 3206067 + }, + { + "type": "lineTo", + "x": 6888434, + "y": 3303221 + }, + { + "type": "lineTo", + "x": 6964771, + "y": 3372616 + }, + { + "type": "lineTo", + "x": 7027229, + "y": 3393435 + }, + { + "type": "lineTo", + "x": 7068867, + "y": 3414253 + }, + { + "type": "lineTo", + "x": 7179904, + "y": 3407314 + }, + { + "type": "lineTo", + "x": 7284000, + "y": 3240765 + }, + { + "type": "lineTo", + "x": 7346458, + "y": 3074216 + }, + { + "type": "lineTo", + "x": 7395036, + "y": 2914607 + }, + { + "type": "lineTo", + "x": 7395036, + "y": 2748058 + }, + { + "type": "lineTo", + "x": 7374217, + "y": 2637025 + }, + { + "type": "lineTo", + "x": 7346458, + "y": 2505174 + }, + { + "type": "lineTo", + "x": 7339518, + "y": 2401081 + }, + { + "type": "lineTo", + "x": 7332578, + "y": 2366383 + }, + { + "type": "lineTo", + "x": 7193783, + "y": 2296988 + }, + { + "type": "lineTo", + "x": 7110506, + "y": 2303927 + }, + { + "type": "lineTo", + "x": 7082747, + "y": 2324746 + }, + { + "type": "lineTo", + "x": 7006410, + "y": 2276169 + }, + { + "type": "lineTo", + "x": 6916193, + "y": 2241471 + }, + { + "type": "lineTo", + "x": 6853735, + "y": 2248411 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/lumbar_spinous_process.json b/boneset-api/data/annotations/ColoredRegions/lumbar_spinous_process.json new file mode 100644 index 00000000..c04ddb80 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lumbar_spinous_process.json @@ -0,0 +1,525 @@ +{ + "slide_number": 42, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1383", + "path_data": [ + { + "path_width": 292100, + "path_height": 523875, + "commands": [ + { + "type": "moveTo", + "x": 4394200, + "y": 1806576 + }, + { + "type": "lineTo", + "x": 4378325, + "y": 1714501 + }, + { + "type": "lineTo", + "x": 4394200, + "y": 1641476 + }, + { + "type": "lineTo", + "x": 4397375, + "y": 1606551 + }, + { + "type": "lineTo", + "x": 4378325, + "y": 1524001 + }, + { + "type": "lineTo", + "x": 4375150, + "y": 1485901 + }, + { + "type": "lineTo", + "x": 4356100, + "y": 1454151 + }, + { + "type": "lineTo", + "x": 4327525, + "y": 1444626 + }, + { + "type": "lineTo", + "x": 4292600, + "y": 1454151 + }, + { + "type": "lineTo", + "x": 4276725, + "y": 1470026 + }, + { + "type": "lineTo", + "x": 4267200, + "y": 1470026 + }, + { + "type": "lineTo", + "x": 4241800, + "y": 1447801 + }, + { + "type": "lineTo", + "x": 4216400, + "y": 1466851 + }, + { + "type": "lineTo", + "x": 4184650, + "y": 1476376 + }, + { + "type": "lineTo", + "x": 4175125, + "y": 1495426 + }, + { + "type": "lineTo", + "x": 4175125, + "y": 1520826 + }, + { + "type": "lineTo", + "x": 4156075, + "y": 1549401 + }, + { + "type": "lineTo", + "x": 4137025, + "y": 1577976 + }, + { + "type": "lineTo", + "x": 4111625, + "y": 1609726 + }, + { + "type": "lineTo", + "x": 4114800, + "y": 1670051 + }, + { + "type": "lineTo", + "x": 4133850, + "y": 1711326 + }, + { + "type": "lineTo", + "x": 4146550, + "y": 1733551 + }, + { + "type": "lineTo", + "x": 4133850, + "y": 1787526 + }, + { + "type": "lineTo", + "x": 4105275, + "y": 1838326 + }, + { + "type": "lineTo", + "x": 4152900, + "y": 1911351 + }, + { + "type": "lineTo", + "x": 4197350, + "y": 1968501 + }, + { + "type": "lineTo", + "x": 4298950, + "y": 1968501 + }, + { + "type": "lineTo", + "x": 4359275, + "y": 1930401 + }, + { + "type": "lineTo", + "x": 4387850, + "y": 1857376 + }, + { + "type": "lineTo", + "x": 4394200, + "y": 1806576 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1384", + "path_data": [ + { + "path_width": 304800, + "path_height": 615950, + "commands": [ + { + "type": "moveTo", + "x": 4232275, + "y": 3879850 + }, + { + "type": "lineTo", + "x": 4184650, + "y": 3851275 + }, + { + "type": "lineTo", + "x": 4149725, + "y": 3870325 + }, + { + "type": "lineTo", + "x": 4121150, + "y": 3898900 + }, + { + "type": "lineTo", + "x": 4108450, + "y": 3914775 + }, + { + "type": "lineTo", + "x": 4108450, + "y": 3968750 + }, + { + "type": "lineTo", + "x": 4108450, + "y": 3997325 + }, + { + "type": "lineTo", + "x": 4117975, + "y": 4029075 + }, + { + "type": "lineTo", + "x": 4124325, + "y": 4073525 + }, + { + "type": "lineTo", + "x": 4124325, + "y": 4146550 + }, + { + "type": "lineTo", + "x": 4095750, + "y": 4191000 + }, + { + "type": "lineTo", + "x": 4089400, + "y": 4273550 + }, + { + "type": "lineTo", + "x": 4133850, + "y": 4394200 + }, + { + "type": "lineTo", + "x": 4194175, + "y": 4441825 + }, + { + "type": "lineTo", + "x": 4257675, + "y": 4467225 + }, + { + "type": "lineTo", + "x": 4321175, + "y": 4391025 + }, + { + "type": "lineTo", + "x": 4349750, + "y": 4305300 + }, + { + "type": "lineTo", + "x": 4375150, + "y": 4216400 + }, + { + "type": "lineTo", + "x": 4356100, + "y": 4156075 + }, + { + "type": "lineTo", + "x": 4368800, + "y": 4111625 + }, + { + "type": "lineTo", + "x": 4387850, + "y": 4054475 + }, + { + "type": "lineTo", + "x": 4394200, + "y": 3975100 + }, + { + "type": "lineTo", + "x": 4391025, + "y": 3937000 + }, + { + "type": "lineTo", + "x": 4346575, + "y": 3895725 + }, + { + "type": "lineTo", + "x": 4308475, + "y": 3898900 + }, + { + "type": "lineTo", + "x": 4308475, + "y": 3898900 + }, + { + "type": "lineTo", + "x": 4232275, + "y": 3879850 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1385", + "path_data": [ + { + "path_width": 644525, + "path_height": 685800, + "commands": [ + { + "type": "moveTo", + "x": 6607176, + "y": 3429001 + }, + { + "type": "lineTo", + "x": 6515101, + "y": 3441701 + }, + { + "type": "lineTo", + "x": 6451601, + "y": 3441701 + }, + { + "type": "lineTo", + "x": 6378576, + "y": 3448051 + }, + { + "type": "lineTo", + "x": 6327776, + "y": 3448051 + }, + { + "type": "lineTo", + "x": 6267451, + "y": 3441701 + }, + { + "type": "lineTo", + "x": 6216651, + "y": 3463926 + }, + { + "type": "lineTo", + "x": 6156326, + "y": 3527426 + }, + { + "type": "lineTo", + "x": 6064251, + "y": 3667126 + }, + { + "type": "lineTo", + "x": 6038851, + "y": 3730626 + }, + { + "type": "lineTo", + "x": 6019801, + "y": 3775076 + }, + { + "type": "lineTo", + "x": 6029326, + "y": 3863976 + }, + { + "type": "lineTo", + "x": 6064251, + "y": 3949701 + }, + { + "type": "lineTo", + "x": 6096001, + "y": 3981451 + }, + { + "type": "lineTo", + "x": 6102351, + "y": 3987801 + }, + { + "type": "lineTo", + "x": 6102351, + "y": 3987801 + }, + { + "type": "lineTo", + "x": 6134101, + "y": 4060826 + }, + { + "type": "lineTo", + "x": 6203951, + "y": 4092576 + }, + { + "type": "lineTo", + "x": 6254751, + "y": 4102101 + }, + { + "type": "lineTo", + "x": 6318251, + "y": 4114801 + }, + { + "type": "lineTo", + "x": 6384926, + "y": 4114801 + }, + { + "type": "lineTo", + "x": 6454776, + "y": 4095751 + }, + { + "type": "lineTo", + "x": 6496051, + "y": 4079876 + }, + { + "type": "lineTo", + "x": 6515101, + "y": 4048126 + }, + { + "type": "lineTo", + "x": 6530976, + "y": 3959226 + }, + { + "type": "lineTo", + "x": 6556376, + "y": 3867151 + }, + { + "type": "lineTo", + "x": 6604001, + "y": 3797301 + }, + { + "type": "lineTo", + "x": 6642101, + "y": 3756026 + }, + { + "type": "lineTo", + "x": 6651626, + "y": 3714751 + }, + { + "type": "lineTo", + "x": 6664326, + "y": 3632201 + }, + { + "type": "lineTo", + "x": 6664326, + "y": 3581401 + }, + { + "type": "lineTo", + "x": 6629401, + "y": 3590926 + }, + { + "type": "lineTo", + "x": 6610351, + "y": 3578226 + }, + { + "type": "lineTo", + "x": 6594476, + "y": 3565526 + }, + { + "type": "lineTo", + "x": 6600826, + "y": 3505201 + }, + { + "type": "lineTo", + "x": 6607176, + "y": 3429001 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/lumbar_transverse_process.json b/boneset-api/data/annotations/ColoredRegions/lumbar_transverse_process.json new file mode 100644 index 00000000..5361a002 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/lumbar_transverse_process.json @@ -0,0 +1,619 @@ +{ + "slide_number": 41, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1354", + "path_data": [ + { + "path_width": 444500, + "path_height": 292100, + "commands": [ + { + "type": "moveTo", + "x": 3717925, + "y": 2181225 + }, + { + "type": "lineTo", + "x": 3663950, + "y": 2149475 + }, + { + "type": "lineTo", + "x": 3619500, + "y": 2124075 + }, + { + "type": "lineTo", + "x": 3571875, + "y": 2105025 + }, + { + "type": "lineTo", + "x": 3502025, + "y": 2089150 + }, + { + "type": "lineTo", + "x": 3422650, + "y": 2051050 + }, + { + "type": "lineTo", + "x": 3378200, + "y": 2035175 + }, + { + "type": "lineTo", + "x": 3314700, + "y": 2006600 + }, + { + "type": "lineTo", + "x": 3282950, + "y": 1965325 + }, + { + "type": "lineTo", + "x": 3311525, + "y": 1936750 + }, + { + "type": "lineTo", + "x": 3394075, + "y": 1908175 + }, + { + "type": "lineTo", + "x": 3460750, + "y": 1905000 + }, + { + "type": "lineTo", + "x": 3511550, + "y": 1898650 + }, + { + "type": "lineTo", + "x": 3578225, + "y": 1905000 + }, + { + "type": "lineTo", + "x": 3606800, + "y": 1895475 + }, + { + "type": "lineTo", + "x": 3635375, + "y": 1889125 + }, + { + "type": "lineTo", + "x": 3667125, + "y": 1911350 + }, + { + "type": "lineTo", + "x": 3686175, + "y": 1943100 + }, + { + "type": "lineTo", + "x": 3711575, + "y": 1987550 + }, + { + "type": "lineTo", + "x": 3724275, + "y": 2057400 + }, + { + "type": "lineTo", + "x": 3727450, + "y": 2120900 + }, + { + "type": "lineTo", + "x": 3717925, + "y": 2181225 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1355", + "path_data": [ + { + "path_width": 444500, + "path_height": 330200, + "commands": [ + { + "type": "moveTo", + "x": 5289550, + "y": 1974850 + }, + { + "type": "lineTo", + "x": 5245100, + "y": 1946275 + }, + { + "type": "lineTo", + "x": 5203825, + "y": 1943100 + }, + { + "type": "lineTo", + "x": 5178425, + "y": 1933575 + }, + { + "type": "lineTo", + "x": 5133975, + "y": 1920875 + }, + { + "type": "lineTo", + "x": 5099050, + "y": 1920875 + }, + { + "type": "lineTo", + "x": 5095875, + "y": 1920875 + }, + { + "type": "lineTo", + "x": 5041900, + "y": 1920875 + }, + { + "type": "lineTo", + "x": 5003800, + "y": 1911350 + }, + { + "type": "lineTo", + "x": 4972050, + "y": 1898650 + }, + { + "type": "lineTo", + "x": 4937125, + "y": 1936750 + }, + { + "type": "lineTo", + "x": 4876800, + "y": 2006600 + }, + { + "type": "lineTo", + "x": 4854575, + "y": 2051050 + }, + { + "type": "lineTo", + "x": 4845050, + "y": 2117725 + }, + { + "type": "lineTo", + "x": 4845050, + "y": 2178050 + }, + { + "type": "lineTo", + "x": 4857750, + "y": 2228850 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 2187575 + }, + { + "type": "lineTo", + "x": 4959350, + "y": 2155825 + }, + { + "type": "lineTo", + "x": 5013325, + "y": 2127250 + }, + { + "type": "lineTo", + "x": 5073650, + "y": 2101850 + }, + { + "type": "lineTo", + "x": 5124450, + "y": 2089150 + }, + { + "type": "lineTo", + "x": 5172075, + "y": 2073275 + }, + { + "type": "lineTo", + "x": 5226050, + "y": 2054225 + }, + { + "type": "lineTo", + "x": 5289550, + "y": 1974850 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1356", + "path_data": [ + { + "path_width": 406400, + "path_height": 304800, + "commands": [ + { + "type": "moveTo", + "x": 3629025, + "y": 4572000 + }, + { + "type": "lineTo", + "x": 3514725, + "y": 4552950 + }, + { + "type": "lineTo", + "x": 3454400, + "y": 4546600 + }, + { + "type": "lineTo", + "x": 3403600, + "y": 4546600 + }, + { + "type": "lineTo", + "x": 3365500, + "y": 4559300 + }, + { + "type": "lineTo", + "x": 3349625, + "y": 4591050 + }, + { + "type": "lineTo", + "x": 3349625, + "y": 4613275 + }, + { + "type": "lineTo", + "x": 3371850, + "y": 4648200 + }, + { + "type": "lineTo", + "x": 3409950, + "y": 4683125 + }, + { + "type": "lineTo", + "x": 3422650, + "y": 4699000 + }, + { + "type": "lineTo", + "x": 3486150, + "y": 4714875 + }, + { + "type": "lineTo", + "x": 3533775, + "y": 4737100 + }, + { + "type": "lineTo", + "x": 3600450, + "y": 4768850 + }, + { + "type": "lineTo", + "x": 3638550, + "y": 4791075 + }, + { + "type": "lineTo", + "x": 3683000, + "y": 4822825 + }, + { + "type": "lineTo", + "x": 3714750, + "y": 4851400 + }, + { + "type": "lineTo", + "x": 3756025, + "y": 4781550 + }, + { + "type": "lineTo", + "x": 3746500, + "y": 4714875 + }, + { + "type": "lineTo", + "x": 3705225, + "y": 4648200 + }, + { + "type": "lineTo", + "x": 3689350, + "y": 4597400 + }, + { + "type": "lineTo", + "x": 3629025, + "y": 4572000 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1357", + "path_data": [ + { + "path_width": 352425, + "path_height": 263525, + "commands": [ + { + "type": "moveTo", + "x": 4737101, + "y": 4597401 + }, + { + "type": "lineTo", + "x": 4679951, + "y": 4702176 + }, + { + "type": "lineTo", + "x": 4679951, + "y": 4733926 + }, + { + "type": "lineTo", + "x": 4692651, + "y": 4822826 + }, + { + "type": "lineTo", + "x": 4759326, + "y": 4787901 + }, + { + "type": "lineTo", + "x": 4860926, + "y": 4759326 + }, + { + "type": "lineTo", + "x": 4943476, + "y": 4724401 + }, + { + "type": "lineTo", + "x": 4981576, + "y": 4714876 + }, + { + "type": "lineTo", + "x": 5003801, + "y": 4699001 + }, + { + "type": "lineTo", + "x": 5022851, + "y": 4660901 + }, + { + "type": "lineTo", + "x": 5032376, + "y": 4635501 + }, + { + "type": "lineTo", + "x": 5016501, + "y": 4594226 + }, + { + "type": "lineTo", + "x": 4984751, + "y": 4575176 + }, + { + "type": "lineTo", + "x": 4946651, + "y": 4559301 + }, + { + "type": "lineTo", + "x": 4870451, + "y": 4572001 + }, + { + "type": "lineTo", + "x": 4822826, + "y": 4587876 + }, + { + "type": "lineTo", + "x": 4737101, + "y": 4597401 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1358", + "path_data": [ + { + "path_width": 450850, + "path_height": 469900, + "commands": [ + { + "type": "moveTo", + "x": 6648450, + "y": 3286125 + }, + { + "type": "lineTo", + "x": 6616700, + "y": 3359150 + }, + { + "type": "lineTo", + "x": 6604000, + "y": 3454400 + }, + { + "type": "lineTo", + "x": 6597650, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 6613525, + "y": 3584575 + }, + { + "type": "lineTo", + "x": 6664325, + "y": 3581400 + }, + { + "type": "lineTo", + "x": 6705600, + "y": 3590925 + }, + { + "type": "lineTo", + "x": 6756400, + "y": 3578225 + }, + { + "type": "lineTo", + "x": 6813550, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 6861175, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 6962775, + "y": 3581400 + }, + { + "type": "lineTo", + "x": 6997700, + "y": 3613150 + }, + { + "type": "lineTo", + "x": 7019925, + "y": 3549650 + }, + { + "type": "lineTo", + "x": 7038975, + "y": 3448050 + }, + { + "type": "lineTo", + "x": 7048500, + "y": 3375025 + }, + { + "type": "lineTo", + "x": 7035800, + "y": 3333750 + }, + { + "type": "lineTo", + "x": 7007225, + "y": 3197225 + }, + { + "type": "lineTo", + "x": 6978650, + "y": 3143250 + }, + { + "type": "lineTo", + "x": 6851650, + "y": 3168650 + }, + { + "type": "lineTo", + "x": 6740525, + "y": 3219450 + }, + { + "type": "lineTo", + "x": 6648450, + "y": 3286125 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/pectineal_line_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/pectineal_line_colored_regions.json new file mode 100644 index 00000000..fc21c748 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/pectineal_line_colored_regions.json @@ -0,0 +1,35 @@ +{ + "slide_number": 18, + "images": [ + { + "image_name": "pelvis_med_blk.psd", + "width": 3171469, + "height": 2648661, + "colored_regions": [ + { + "region_name": "Pectineal line", + "color": "#008000", + "color_name": "green", + "stroke_width": 150000, + "path_data": [ + { + "commands": [ + {"type": "moveTo", "x": 906215, "y": 0}, + {"type": "lineTo", "x": 793765, "y": 132298}, + {"type": "lineTo", "x": 661471, "y": 284441}, + {"type": "lineTo", "x": 549021, "y": 416739}, + {"type": "lineTo", "x": 377038, "y": 582111}, + {"type": "lineTo", "x": 271203, "y": 681335}, + {"type": "lineTo", "x": 178597, "y": 747484}, + {"type": "lineTo", "x": 59533, "y": 826863}, + {"type": "lineTo", "x": 0, "y": 846707} + ] + } + ], + "offset_x": 165243, + "offset_y": 1142994 + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/posterior_iliac_spines_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/posterior_iliac_spines_colored_regions.json new file mode 100644 index 00000000..c33bd4eb --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/posterior_iliac_spines_colored_regions.json @@ -0,0 +1,256 @@ +{ + "slide_number": 7, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Posterior Superior Iliac Spine - Left", + "color": "008000", + "offset_x": 0, + "offset_y": 1500000, + "path_data": [ + { + "path_width": 163357, + "path_height": 336862, + "commands": [ + { + "type": "moveTo", + "x": 92940, + "y": 337 + }, + { + "type": "cubicBezTo", + "x1": 65802, + "y1": 5241, + "x2": 16020, + "y2": 62911, + "x": 530, + "y": 107559 + }, + { + "type": "cubicBezTo", + "x1": 353, + "y1": 161114, + "x2": 177, + "y2": 214668, + "x": 0, + "y": 268223 + }, + { + "type": "lineTo", + "x": 109048, + "y": 336862 + }, + { + "type": "lineTo", + "x": 158677, + "y": 198913 + }, + { + "type": "lineTo", + "x": 163357, + "y": 78137 + }, + { + "type": "cubicBezTo", + "x1": 152401, + "y1": 45041, + "x2": 120078, + "y2": -4567, + "x": 92940, + "y": 337 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Posterior Inferior Iliac Spine - Left", + "color": "FF00E6", + "offset_x": 200000, + "offset_y": 2100000, + "path_data": [ + { + "path_width": 227455, + "path_height": 195875, + "commands": [ + { + "type": "moveTo", + "x": 227455, + "y": 0 + }, + { + "type": "lineTo", + "x": 126364, + "y": 25274 + }, + { + "type": "lineTo", + "x": 56864, + "y": 75822 + }, + { + "type": "lineTo", + "x": 0, + "y": 151645 + }, + { + "type": "lineTo", + "x": 0, + "y": 170601 + }, + { + "type": "lineTo", + "x": 63182, + "y": 195875 + }, + { + "type": "lineTo", + "x": 183228, + "y": 151645 + }, + { + "type": "lineTo", + "x": 221137, + "y": 151645 + }, + { + "type": "lineTo", + "x": 227455, + "y": 0 + }, + { + "type": "close" + } + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Posterior Superior Iliac Spine - Right", + "color": "008000", + "offset_x": 2450000, + "offset_y": 1000000, + "path_data": [ + { + "path_width": 208500, + "path_height": 420061, + "commands": [ + { + "type": "moveTo", + "x": 171123, + "y": 113682 + }, + { + "type": "lineTo", + "x": 23296, + "y": 0 + }, + { + "type": "lineTo", + "x": 0, + "y": 147111 + }, + { + "type": "lineTo", + "x": 27974, + "y": 277629 + }, + { + "type": "lineTo", + "x": 45482, + "y": 396234 + }, + { + "type": "lineTo", + "x": 107409, + "y": 420061 + }, + { + "type": "lineTo", + "x": 208500, + "y": 249460 + }, + { + "type": "lineTo", + "x": 171123, + "y": 113682 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Posterior Inferior Iliac Spine - Right", + "color": "FF00E6", + "offset_x": 2100000, + "offset_y": 1600000, + "path_data": [ + { + "path_width": 259045, + "path_height": 189556, + "commands": [ + { + "type": "moveTo", + "x": 12636, + "y": 25274 + }, + { + "type": "lineTo", + "x": 0, + "y": 126371 + }, + { + "type": "lineTo", + "x": 151636, + "y": 189556 + }, + { + "type": "lineTo", + "x": 259045, + "y": 183238 + }, + { + "type": "lineTo", + "x": 246409, + "y": 31593 + }, + { + "type": "lineTo", + "x": 101091, + "y": 0 + }, + { + "type": "lineTo", + "x": 12636, + "y": 25274 + }, + { + "type": "close" + } + ] + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/posterior_inferior_iliac_spines_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/posterior_inferior_iliac_spines_colored_regions.json new file mode 100644 index 00000000..8eea6d6d --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/posterior_inferior_iliac_spines_colored_regions.json @@ -0,0 +1,131 @@ +{ + "slide_number": 7, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Posterior Inferior Iliac Spine - Left", + "color": "FF00E6", + "path_data": [ + { + "path_width": 227455, + "path_height": 195875, + "commands": [ + { + "type": "moveTo", + "x": 227455, + "y": 0 + }, + { + "type": "lineTo", + "x": 126364, + "y": 25274 + }, + { + "type": "lineTo", + "x": 56864, + "y": 75822 + }, + { + "type": "lineTo", + "x": 0, + "y": 151645 + }, + { + "type": "lineTo", + "x": 0, + "y": 170601 + }, + { + "type": "lineTo", + "x": 63182, + "y": 195875 + }, + { + "type": "lineTo", + "x": 183228, + "y": 151645 + }, + { + "type": "lineTo", + "x": 221137, + "y": 151645 + }, + { + "type": "lineTo", + "x": 227455, + "y": 0 + }, + { + "type": "close" + } + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Posterior Inferior Iliac Spine - Right", + "color": "FF00E6", + "path_data": [ + { + "path_width": 259045, + "path_height": 189556, + "commands": [ + { + "type": "moveTo", + "x": 12636, + "y": 25274 + }, + { + "type": "lineTo", + "x": 0, + "y": 126371 + }, + { + "type": "lineTo", + "x": 151636, + "y": 189556 + }, + { + "type": "lineTo", + "x": 259045, + "y": 183238 + }, + { + "type": "lineTo", + "x": 246409, + "y": 31593 + }, + { + "type": "lineTo", + "x": 101091, + "y": 0 + }, + { + "type": "lineTo", + "x": 12636, + "y": 25274 + }, + { + "type": "close" + } + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/posterior_superior_iliac_spines_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/posterior_superior_iliac_spines_colored_regions.json new file mode 100644 index 00000000..59d31058 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/posterior_superior_iliac_spines_colored_regions.json @@ -0,0 +1,138 @@ +{ + "slide_number": 7, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Posterior Superior Iliac Spine - Left", + "color": "008000", + "path_data": [ + { + "path_width": 163357, + "path_height": 336862, + "commands": [ + { + "type": "moveTo", + "x": 92940, + "y": 337 + }, + { + "type": "cubicBezTo", + "x1": 65802, + "y1": 5241, + "x2": 16020, + "y2": 62911, + "x": 530, + "y": 107559 + }, + { + "type": "cubicBezTo", + "x1": 353, + "y1": 161114, + "x2": 177, + "y2": 214668, + "x": 0, + "y": 268223 + }, + { + "type": "lineTo", + "x": 109048, + "y": 336862 + }, + { + "type": "lineTo", + "x": 158677, + "y": 198913 + }, + { + "type": "lineTo", + "x": 163357, + "y": 78137 + }, + { + "type": "cubicBezTo", + "x1": 152401, + "y1": 45041, + "x2": 120078, + "y2": -4567, + "x": 92940, + "y": 337 + }, + { + "type": "close" + } + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Posterior Superior Iliac Spine - Right", + "color": "008000", + "path_data": [ + { + "path_width": 208500, + "path_height": 420061, + "commands": [ + { + "type": "moveTo", + "x": 171123, + "y": 113682 + }, + { + "type": "lineTo", + "x": 23296, + "y": 0 + }, + { + "type": "lineTo", + "x": 0, + "y": 147111 + }, + { + "type": "lineTo", + "x": 27974, + "y": 277629 + }, + { + "type": "lineTo", + "x": 45482, + "y": 396234 + }, + { + "type": "lineTo", + "x": 107409, + "y": 420061 + }, + { + "type": "lineTo", + "x": 208500, + "y": 249460 + }, + { + "type": "lineTo", + "x": 171123, + "y": 113682 + }, + { + "type": "close" + } + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/pubic_rami_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/pubic_rami_colored_regions.json new file mode 100644 index 00000000..0559de5c --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/pubic_rami_colored_regions.json @@ -0,0 +1,128 @@ +{ + "slide_number": 17, + "images": [ + { + "image_name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "region_name": "Superior Pubic Ramus Lateral", + "color": "#FF00E6", + "color_name": "magenta", + "path_data": [ + { + "commands": [ + {"type": "moveTo", "x": 74708, "y": 0}, + {"type": "lineTo", "x": 65919, "y": 184564}, + {"type": "lineTo", "x": 13184, "y": 290030}, + {"type": "lineTo", "x": 0, "y": 338368}, + {"type": "lineTo", "x": 35157, "y": 404284}, + {"type": "lineTo", "x": 57130, "y": 496566}, + {"type": "lineTo", "x": 61524, "y": 527327}, + {"type": "lineTo", "x": 193361, "y": 522933}, + {"type": "lineTo", "x": 329593, "y": 457017}, + {"type": "lineTo", "x": 483403, "y": 351551}, + {"type": "lineTo", "x": 483403, "y": 351551}, + {"type": "lineTo", "x": 404301, "y": 303213}, + {"type": "lineTo", "x": 320804, "y": 250480}, + {"type": "lineTo", "x": 254885, "y": 193353}, + {"type": "lineTo", "x": 180178, "y": 140621}, + {"type": "lineTo", "x": 74708, "y": 0} + ] + } + ], + "offset_x": 1700438, + "offset_y": 2151893 + }, + { + "region_name": "Inferior Pubic Ramus Lateral", + "color": "#FF6600", + "color_name": "orange", + "path_data": [ + { + "commands": [ + {"type": "moveTo", "x": 0, "y": 166987}, + {"type": "lineTo", "x": 96680, "y": 312002}, + {"type": "lineTo", "x": 166993, "y": 250481}, + {"type": "lineTo", "x": 276857, "y": 202142}, + {"type": "lineTo", "x": 369143, "y": 162593}, + {"type": "lineTo", "x": 246096, "y": 74705}, + {"type": "lineTo", "x": 118653, "y": 0}, + {"type": "lineTo", "x": 70313, "y": 43944}, + {"type": "lineTo", "x": 26367, "y": 101071}, + {"type": "lineTo", "x": 0, "y": 166987} + ] + } + ], + "offset_x": 1634520, + "offset_y": 2793473 + } + ] + }, + { + "image_name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "region_name": "Superior Pubic Ramus Medial", + "color": "#FF00E6", + "color_name": "magenta", + "path_data": [ + { + "commands": [ + {"type": "moveTo", "x": 527348, "y": 149410}, + {"type": "lineTo", "x": 452641, "y": 228509}, + {"type": "lineTo", "x": 435063, "y": 312002}, + {"type": "lineTo", "x": 377933, "y": 408679}, + {"type": "lineTo", "x": 360355, "y": 514144}, + {"type": "lineTo", "x": 355960, "y": 580060}, + {"type": "lineTo", "x": 325198, "y": 610821}, + {"type": "lineTo", "x": 158205, "y": 580060}, + {"type": "lineTo", "x": 0, "y": 465806}, + {"type": "lineTo", "x": 96681, "y": 360341}, + {"type": "lineTo", "x": 210940, "y": 246086}, + {"type": "lineTo", "x": 276858, "y": 131832}, + {"type": "lineTo", "x": 307620, "y": 48339}, + {"type": "lineTo", "x": 325198, "y": 0}, + {"type": "lineTo", "x": 395511, "y": 0}, + {"type": "lineTo", "x": 479008, "y": 21972}, + {"type": "lineTo", "x": 531743, "y": 92283}, + {"type": "lineTo", "x": 527348, "y": 149410} + ] + } + ], + "offset_x": 424185, + "offset_y": 2231620 + }, + { + "region_name": "Inferior Pubic Ramus Medial", + "color": "#FF6600", + "color_name": "orange", + "path_data": [ + { + "commands": [ + {"type": "moveTo", "x": 316409, "y": 74705}, + {"type": "lineTo", "x": 202150, "y": 83494}, + {"type": "lineTo", "x": 123048, "y": 52733}, + {"type": "lineTo", "x": 48340, "y": 0}, + {"type": "lineTo", "x": 21973, "y": 70310}, + {"type": "lineTo", "x": 0, "y": 175776}, + {"type": "lineTo", "x": 30762, "y": 263664}, + {"type": "lineTo", "x": 39551, "y": 298819}, + {"type": "lineTo", "x": 171388, "y": 276847}, + {"type": "lineTo", "x": 246096, "y": 276847}, + {"type": "lineTo", "x": 281252, "y": 241692}, + {"type": "lineTo", "x": 351566, "y": 145015}, + {"type": "lineTo", "x": 316409, "y": 74705} + ] + } + ], + "offset_x": 793328, + "offset_y": 3022611 + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/pubic_tubercle_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/pubic_tubercle_colored_regions.json new file mode 100644 index 00000000..1f51bcb7 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/pubic_tubercle_colored_regions.json @@ -0,0 +1,83 @@ +{ + "slide_number": 20, + "images": [ + { + "image_name": "pelvis_lat_blk.psd", + "width": 4166564, + "height": 4100124, + "colored_regions": [ + { + "region_name": "Pubic tubercle", + "anatomical_name": "Pubic tubercle", + "color": "008000", + "color_name": "green", + "opacity": 0.29, + "fill": true, + "path_data": [ + { + "path_width": 332787, + "path_height": 339589, + "commands": [ + { + "type": "moveTo", + "x": 13583, + "y": 0 + }, + { + "type": "lineTo", + "x": 142623, + "y": 13583 + }, + { + "type": "lineTo", + "x": 251288, + "y": 27167 + }, + { + "type": "lineTo", + "x": 312412, + "y": 101877 + }, + { + "type": "lineTo", + "x": 332787, + "y": 203753 + }, + { + "type": "lineTo", + "x": 292037, + "y": 271671 + }, + { + "type": "lineTo", + "x": 210538, + "y": 339589 + }, + { + "type": "lineTo", + "x": 101873, + "y": 326005 + }, + { + "type": "lineTo", + "x": 0, + "y": 176586 + }, + { + "type": "lineTo", + "x": 13583, + "y": 0 + }, + { + "type": "close" + } + ] + } + ], + "offset_x": 0, + "offset_y": 0 + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/ramus_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/ramus_colored_regions.json new file mode 100644 index 00000000..70e81448 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/ramus_colored_regions.json @@ -0,0 +1,82 @@ +{ + "slide_number": 11, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Ramus (Lateral View)", + "color": "008000", + "path_data": [ + { + "path_width": 657092, + "path_height": 511803, + "commands": [ + {"type": "moveTo", "x": 657092, "y": 176919}, + {"type": "lineTo", "x": 657092, "y": 120052}, + {"type": "lineTo", "x": 549683, "y": 0}, + {"type": "lineTo", "x": 442274, "y": 63185}, + {"type": "lineTo", "x": 341183, "y": 94778}, + {"type": "lineTo", "x": 214819, "y": 145327}, + {"type": "lineTo", "x": 151637, "y": 101097}, + {"type": "lineTo", "x": 82137, "y": 164282}, + {"type": "lineTo", "x": 0, "y": 221149}, + {"type": "lineTo", "x": 18955, "y": 334883}, + {"type": "lineTo", "x": 44228, "y": 410706}, + {"type": "lineTo", "x": 101091, "y": 473891}, + {"type": "lineTo", "x": 227455, "y": 505484}, + {"type": "lineTo", "x": 265364, "y": 511803}, + {"type": "lineTo", "x": 404365, "y": 448617}, + {"type": "lineTo", "x": 530728, "y": 366476}, + {"type": "lineTo", "x": 644456, "y": 290653}, + {"type": "lineTo", "x": 657092, "y": 176919}, + {"type": "close"} + ] + } + ] + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Ramus (Medial View)", + "color": "008000", + "path_data": [ + { + "path_width": 701319, + "path_height": 454936, + "commands": [ + {"type": "moveTo", "x": 461227, "y": 0}, + {"type": "lineTo", "x": 410682, "y": 107415}, + {"type": "lineTo", "x": 309591, "y": 132689}, + {"type": "lineTo", "x": 176909, "y": 170601}, + {"type": "lineTo", "x": 88454, "y": 202193}, + {"type": "lineTo", "x": 56863, "y": 315927}, + {"type": "lineTo", "x": 25272, "y": 379113}, + {"type": "lineTo", "x": 0, "y": 429661}, + {"type": "lineTo", "x": 56863, "y": 454936}, + {"type": "lineTo", "x": 202182, "y": 448617}, + {"type": "lineTo", "x": 322227, "y": 448617}, + {"type": "lineTo", "x": 505455, "y": 417024}, + {"type": "lineTo", "x": 644455, "y": 385431}, + {"type": "lineTo", "x": 695000, "y": 271697}, + {"type": "lineTo", "x": 701319, "y": 195875}, + {"type": "lineTo", "x": 644455, "y": 101097}, + {"type": "lineTo", "x": 461227, "y": 0}, + {"type": "close"} + ] + } + ] + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_articular_surface_for_ilium.json b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_articular_surface_for_ilium.json new file mode 100644 index 00000000..637ddef8 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_articular_surface_for_ilium.json @@ -0,0 +1,348 @@ +{ + "slide_number": 53, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1677", + "path_data": [ + { + "path_width": 838615, + "path_height": 2471854, + "commands": [ + { + "type": "moveTo", + "x": 3798699, + "y": 4562707 + }, + { + "type": "lineTo", + "x": 3949477, + "y": 4457390 + }, + { + "type": "lineTo", + "x": 4055909, + "y": 4271536 + }, + { + "type": "lineTo", + "x": 4113561, + "y": 4005146 + }, + { + "type": "lineTo", + "x": 4109126, + "y": 3831683 + }, + { + "type": "lineTo", + "x": 4024867, + "y": 3521927 + }, + { + "type": "lineTo", + "x": 4060344, + "y": 3199780 + }, + { + "type": "lineTo", + "x": 4060344, + "y": 2982951 + }, + { + "type": "lineTo", + "x": 4047040, + "y": 2611244 + }, + { + "type": "lineTo", + "x": 3989389, + "y": 2456366 + }, + { + "type": "lineTo", + "x": 3971651, + "y": 2251927 + }, + { + "type": "lineTo", + "x": 3900696, + "y": 2103244 + }, + { + "type": "lineTo", + "x": 3794264, + "y": 2090853 + }, + { + "type": "lineTo", + "x": 3705570, + "y": 2165195 + }, + { + "type": "lineTo", + "x": 3580620, + "y": 2320073 + }, + { + "type": "lineTo", + "x": 3538947, + "y": 2481147 + }, + { + "type": "lineTo", + "x": 3513253, + "y": 2679390 + }, + { + "type": "lineTo", + "x": 3529233, + "y": 2865243 + }, + { + "type": "lineTo", + "x": 3605400, + "y": 3150219 + }, + { + "type": "lineTo", + "x": 3670093, + "y": 3236951 + }, + { + "type": "lineTo", + "x": 3718875, + "y": 3385634 + }, + { + "type": "lineTo", + "x": 3776525, + "y": 3571487 + }, + { + "type": "lineTo", + "x": 3798699, + "y": 3738756 + }, + { + "type": "lineTo", + "x": 3776525, + "y": 3837878 + }, + { + "type": "lineTo", + "x": 3825307, + "y": 3955585 + }, + { + "type": "lineTo", + "x": 3880216, + "y": 4085682 + }, + { + "type": "lineTo", + "x": 3886412, + "y": 4197195 + }, + { + "type": "lineTo", + "x": 3848327, + "y": 4401634 + }, + { + "type": "lineTo", + "x": 3798699, + "y": 4562707 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1678", + "path_data": [ + { + "path_width": 582342, + "path_height": 2434683, + "commands": [ + { + "type": "moveTo", + "x": 8109415, + "y": 2323172 + }, + { + "type": "cubicBezTo", + "x1": 8072244, + "y1": 2331432, + "x2": 8035073, + "y2": 2321107, + "x": 7997902, + "y": 2329367 + }, + { + "type": "lineTo", + "x": 7917366, + "y": 2378928 + }, + { + "type": "cubicBezTo", + "x1": 7894651, + "y1": 2405773, + "x2": 7840959, + "y2": 2451205, + "x": 7818244, + "y": 2478050 + }, + { + "type": "lineTo", + "x": 7762488, + "y": 2564781 + }, + { + "type": "cubicBezTo", + "x1": 7745968, + "y1": 2604017, + "x2": 7710861, + "y2": 2649448, + "x": 7694341, + "y": 2688684 + }, + { + "type": "lineTo", + "x": 7663366, + "y": 2831172 + }, + { + "type": "cubicBezTo", + "x1": 7646846, + "y1": 2886928, + "x2": 7599349, + "y2": 2992245, + "x": 7582829, + "y": 3048001 + }, + { + "type": "lineTo", + "x": 7564244, + "y": 3258635 + }, + { + "type": "lineTo", + "x": 7558049, + "y": 3679903 + }, + { + "type": "lineTo", + "x": 7539463, + "y": 3909123 + }, + { + "type": "lineTo", + "x": 7539463, + "y": 4175513 + }, + { + "type": "lineTo", + "x": 7607610, + "y": 4454294 + }, + { + "type": "lineTo", + "x": 7688146, + "y": 4652538 + }, + { + "type": "lineTo", + "x": 7762488, + "y": 4757855 + }, + { + "type": "lineTo", + "x": 7805854, + "y": 4621562 + }, + { + "type": "lineTo", + "x": 7743902, + "y": 4386147 + }, + { + "type": "lineTo", + "x": 7694341, + "y": 4119757 + }, + { + "type": "lineTo", + "x": 7793463, + "y": 3902928 + }, + { + "type": "lineTo", + "x": 7874000, + "y": 3611757 + }, + { + "type": "lineTo", + "x": 7966927, + "y": 3184294 + }, + { + "type": "lineTo", + "x": 7985512, + "y": 3029416 + }, + { + "type": "lineTo", + "x": 7942146, + "y": 2924099 + }, + { + "type": "lineTo", + "x": 7979317, + "y": 2763025 + }, + { + "type": "lineTo", + "x": 8072244, + "y": 2639123 + }, + { + "type": "lineTo", + "x": 8121805, + "y": 2564781 + }, + { + "type": "cubicBezTo", + "x1": 8117675, + "y1": 2542066, + "x2": 8088764, + "y2": 2519350, + "x": 8084634, + "y": 2496635 + }, + { + "type": "lineTo", + "x": 8109415, + "y": 2323172 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_median_sacral_crest.json b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_median_sacral_crest.json new file mode 100644 index 00000000..6ac48022 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_median_sacral_crest.json @@ -0,0 +1,446 @@ +{ + "slide_number": 51, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1635", + "path_data": [ + { + "path_width": 965996, + "path_height": 2241550, + "commands": [ + { + "type": "moveTo", + "x": 4273551, + "y": 2111376 + }, + { + "type": "lineTo", + "x": 4267201, + "y": 2197101 + }, + { + "type": "cubicBezTo", + "x1": 4273551, + "y1": 2232026, + "x2": 4267200, + "y2": 2263775, + "x": 4273550, + "y": 2298700 + }, + { + "type": "lineTo", + "x": 4264026, + "y": 2349501 + }, + { + "type": "cubicBezTo", + "x1": 4262968, + "y1": 2383368, + "x2": 4261909, + "y2": 2417234, + "x": 4260851, + "y": 2451101 + }, + { + "type": "lineTo", + "x": 4273551, + "y": 2540001 + }, + { + "type": "lineTo", + "x": 4251326, + "y": 2647951 + }, + { + "type": "lineTo", + "x": 4260851, + "y": 2752726 + }, + { + "type": "lineTo", + "x": 4289426, + "y": 2847976 + }, + { + "type": "lineTo", + "x": 4295776, + "y": 2949576 + }, + { + "type": "lineTo", + "x": 4254501, + "y": 3086101 + }, + { + "type": "lineTo", + "x": 4270376, + "y": 3184526 + }, + { + "type": "lineTo", + "x": 4270376, + "y": 3254376 + }, + { + "type": "lineTo", + "x": 4257676, + "y": 3317876 + }, + { + "type": "lineTo", + "x": 4292601, + "y": 3413126 + }, + { + "type": "lineTo", + "x": 4295776, + "y": 3492501 + }, + { + "type": "lineTo", + "x": 4295776, + "y": 3556001 + }, + { + "type": "lineTo", + "x": 4352926, + "y": 3622676 + }, + { + "type": "lineTo", + "x": 4346576, + "y": 3711576 + }, + { + "type": "lineTo", + "x": 4368800, + "y": 3787775 + }, + { + "type": "lineTo", + "x": 4400551, + "y": 3848101 + }, + { + "type": "lineTo", + "x": 4470401, + "y": 3924301 + }, + { + "type": "cubicBezTo", + "x1": 4495272, + "y1": 3935413, + "x2": 4502679, + "y2": 3969279, + "x": 4521200, + "y": 3987800 + }, + { + "type": "cubicBezTo", + "x1": 4539721, + "y1": 4006321, + "x2": 4574647, + "y2": 4011613, + "x": 4581526, + "y": 4035426 + }, + { + "type": "cubicBezTo", + "x1": 4607455, + "y1": 4052888, + "x2": 4577821, + "y2": 4104218, + "x": 4565650, + "y": 4121151 + }, + { + "type": "cubicBezTo", + "x1": 4553479, + "y1": 4138084, + "x2": 4551362, + "y2": 4126972, + "x": 4505325, + "y": 4162426 + }, + { + "type": "cubicBezTo", + "x1": 4471988, + "y1": 4182005, + "x2": 4460876, + "y2": 4182534, + "x": 4435476, + "y": 4187826 + }, + { + "type": "lineTo", + "x": 4349751, + "y": 4146551 + }, + { + "type": "lineTo", + "x": 4238626, + "y": 4140201 + }, + { + "type": "lineTo", + "x": 4146551, + "y": 4127501 + }, + { + "type": "lineTo", + "x": 4029076, + "y": 4117976 + }, + { + "type": "lineTo", + "x": 3962401, + "y": 4156076 + }, + { + "type": "cubicBezTo", + "x1": 3932239, + "y1": 4156605, + "x2": 3895726, + "y2": 4165072, + "x": 3857626, + "y": 4171951 + }, + { + "type": "cubicBezTo", + "x1": 3819526, + "y1": 4178830, + "x2": 3765022, + "y2": 4149197, + "x": 3730626, + "y": 4146551 + }, + { + "type": "cubicBezTo", + "x1": 3696230, + "y1": 4143905, + "x2": 3660776, + "y2": 4117447, + "x": 3641726, + "y": 4105276 + }, + { + "type": "lineTo", + "x": 3625851, + "y": 4032251 + }, + { + "type": "lineTo", + "x": 3663951, + "y": 3975101 + }, + { + "type": "lineTo", + "x": 3702051, + "y": 3870326 + }, + { + "type": "lineTo", + "x": 3746501, + "y": 3790951 + }, + { + "type": "lineTo", + "x": 3781426, + "y": 3705226 + }, + { + "type": "lineTo", + "x": 3816351, + "y": 3619501 + }, + { + "type": "lineTo", + "x": 3848101, + "y": 3536951 + }, + { + "type": "cubicBezTo", + "x1": 3847043, + "y1": 3503084, + "x2": 3861859, + "y2": 3481918, + "x": 3860801, + "y": 3448051 + }, + { + "type": "lineTo", + "x": 3857626, + "y": 3352801 + }, + { + "type": "lineTo", + "x": 3876676, + "y": 3267076 + }, + { + "type": "lineTo", + "x": 3902076, + "y": 3187701 + }, + { + "type": "cubicBezTo", + "x1": 3902076, + "y1": 3158068, + "x2": 3896784, + "y2": 3132668, + "x": 3895726, + "y": 3105151 + }, + { + "type": "cubicBezTo", + "x1": 3894668, + "y1": 3077634, + "x2": 3908426, + "y2": 3086101, + "x": 3895726, + "y": 3022601 + }, + { + "type": "lineTo", + "x": 3873501, + "y": 2949576 + }, + { + "type": "cubicBezTo", + "x1": 3869797, + "y1": 2923647, + "x2": 3879322, + "y2": 2899305, + "x": 3879851, + "y": 2879726 + }, + { + "type": "cubicBezTo", + "x1": 3880380, + "y1": 2860147, + "x2": 3894668, + "y2": 2833688, + "x": 3898901, + "y": 2816226 + }, + { + "type": "lineTo", + "x": 3921126, + "y": 2762251 + }, + { + "type": "lineTo", + "x": 3930651, + "y": 2708276 + }, + { + "type": "lineTo", + "x": 3946526, + "y": 2628901 + }, + { + "type": "lineTo", + "x": 3962401, + "y": 2530476 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 2457451 + }, + { + "type": "lineTo", + "x": 3975101, + "y": 2378076 + }, + { + "type": "lineTo", + "x": 3959226, + "y": 2298701 + }, + { + "type": "lineTo", + "x": 3949701, + "y": 2212976 + }, + { + "type": "cubicBezTo", + "x1": 3948643, + "y1": 2176993, + "x2": 3947584, + "y2": 2141009, + "x": 3946526, + "y": 2105026 + }, + { + "type": "cubicBezTo", + "x1": 3939118, + "y1": 2076451, + "x2": 3947584, + "y2": 2032001, + "x": 3940176, + "y": 2003426 + }, + { + "type": "lineTo", + "x": 4006851, + "y": 1968501 + }, + { + "type": "lineTo", + "x": 4079876, + "y": 1946276 + }, + { + "type": "lineTo", + "x": 4140201, + "y": 1962151 + }, + { + "type": "lineTo", + "x": 4191001, + "y": 1962151 + }, + { + "type": "cubicBezTo", + "x1": 4200526, + "y1": 1976967, + "x2": 4238625, + "y2": 1972734, + "x": 4248150, + "y": 1987550 + }, + { + "type": "cubicBezTo", + "x1": 4259262, + "y1": 2001837, + "x2": 4256617, + "y2": 2014537, + "x": 4260850, + "y": 2035175 + }, + { + "type": "cubicBezTo", + "x1": 4265083, + "y1": 2055813, + "x2": 4278313, + "y2": 2090738, + "x": 4273551, + "y": 2111376 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_foramina.json b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_foramina.json new file mode 100644 index 00000000..c429e26e --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_foramina.json @@ -0,0 +1,2810 @@ +{ + "slide_number": 50, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1598", + "path_data": [ + { + "path_width": 97296, + "path_height": 127684, + "commands": [ + { + "type": "moveTo", + "x": 3752850, + "y": 3076575 + }, + { + "type": "cubicBezTo", + "x1": 3747558, + "y1": 3079750, + "x2": 3741660, + "y2": 3071066, + "x": 3736975, + "y": 3067050 + }, + { + "type": "cubicBezTo", + "x1": 3734078, + "y1": 3064567, + "x2": 3733605, + "y2": 3059909, + "x": 3730625, + "y": 3057525 + }, + { + "type": "cubicBezTo", + "x1": 3728555, + "y1": 3055869, + "x2": 3709230, + "y2": 3051382, + "x": 3708400, + "y": 3051175 + }, + { + "type": "cubicBezTo", + "x1": 3706283, + "y1": 3048000, + "x2": 3703757, + "y2": 3045063, + "x": 3702050, + "y": 3041650 + }, + { + "type": "cubicBezTo", + "x1": 3700553, + "y1": 3038657, + "x2": 3700966, + "y2": 3034738, + "x": 3698875, + "y": 3032125 + }, + { + "type": "cubicBezTo", + "x1": 3696491, + "y1": 3029145, + "x2": 3692525, + "y2": 3027892, + "x": 3689350, + "y": 3025775 + }, + { + "type": "cubicBezTo", + "x1": 3680653, + "y1": 2999685, + "x2": 3677306, + "y2": 2997751, + "x": 3686175, + "y": 2962275 + }, + { + "type": "cubicBezTo", + "x1": 3687100, + "y1": 2958573, + "x2": 3692213, + "y2": 2957475, + "x": 3695700, + "y": 2955925 + }, + { + "type": "cubicBezTo", + "x1": 3701817, + "y1": 2953207, + "x2": 3714750, + "y2": 2949575, + "x": 3714750, + "y": 2949575 + }, + { + "type": "cubicBezTo", + "x1": 3726392, + "y1": 2950633, + "x2": 3738245, + "y2": 2950301, + "x": 3749675, + "y": 2952750 + }, + { + "type": "cubicBezTo", + "x1": 3753406, + "y1": 2953550, + "x2": 3756095, + "y2": 2956882, + "x": 3759200, + "y": 2959100 + }, + { + "type": "cubicBezTo", + "x1": 3774237, + "y1": 2969840, + "x2": 3769481, + "y2": 2964997, + "x": 3778250, + "y": 2978150 + }, + { + "type": "cubicBezTo", + "x1": 3777729, + "y1": 2986480, + "x2": 3779228, + "y2": 3032245, + "x": 3768725, + "y": 3048000 + }, + { + "type": "cubicBezTo", + "x1": 3760715, + "y1": 3060016, + "x2": 3758142, + "y2": 3073400, + "x": 3752850, + "y": 3076575 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1599", + "path_data": [ + { + "path_width": 79375, + "path_height": 136525, + "commands": [ + { + "type": "moveTo", + "x": 4664076, + "y": 3057526 + }, + { + "type": "cubicBezTo", + "x1": 4661430, + "y1": 3062818, + "x2": 4657229, + "y2": 3077804, + "x": 4651376, + "y": 3082926 + }, + { + "type": "cubicBezTo", + "x1": 4624680, + "y1": 3106285, + "x2": 4641698, + "y2": 3089353, + "x": 4622801, + "y": 3098801 + }, + { + "type": "cubicBezTo", + "x1": 4619388, + "y1": 3100508, + "x2": 4616451, + "y2": 3103034, + "x": 4613276, + "y": 3105151 + }, + { + "type": "cubicBezTo", + "x1": 4610101, + "y1": 3103034, + "x2": 4606449, + "y2": 3101499, + "x": 4603751, + "y": 3098801 + }, + { + "type": "cubicBezTo", + "x1": 4597596, + "y1": 3092646, + "x2": 4596808, + "y2": 3087498, + "x": 4594226, + "y": 3079751 + }, + { + "type": "cubicBezTo", + "x1": 4596343, + "y1": 3059643, + "x2": 4595857, + "y2": 3039087, + "x": 4600576, + "y": 3019426 + }, + { + "type": "cubicBezTo", + "x1": 4602357, + "y1": 3012005, + "x2": 4606036, + "y2": 3002789, + "x": 4613276, + "y": 3000376 + }, + { + "type": "lineTo", + "x": 4622801, + "y": 2997201 + }, + { + "type": "cubicBezTo", + "x1": 4624893, + "y1": 2990926, + "x2": 4626731, + "y2": 2982627, + "x": 4632326, + "y": 2978151 + }, + { + "type": "cubicBezTo", + "x1": 4634939, + "y1": 2976060, + "x2": 4638775, + "y2": 2976294, + "x": 4641851, + "y": 2974976 + }, + { + "type": "cubicBezTo", + "x1": 4646201, + "y1": 2973112, + "x2": 4650318, + "y2": 2970743, + "x": 4654551, + "y": 2968626 + }, + { + "type": "cubicBezTo", + "x1": 4657726, + "y1": 2970743, + "x2": 4661378, + "y2": 2972278, + "x": 4664076, + "y": 2974976 + }, + { + "type": "cubicBezTo", + "x1": 4670231, + "y1": 2981131, + "x2": 4671019, + "y2": 2986279, + "x": 4673601, + "y": 2994026 + }, + { + "type": "cubicBezTo", + "x1": 4673204, + "y1": 2999976, + "x2": 4674826, + "y2": 3036026, + "x": 4667251, + "y": 3051176 + }, + { + "type": "lineTo", + "x": 4664076, + "y": 3057526 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1600", + "path_data": [ + { + "path_width": 128092, + "path_height": 121683, + "commands": [ + { + "type": "moveTo", + "x": 3832225, + "y": 3540126 + }, + { + "type": "cubicBezTo", + "x1": 3821112, + "y1": 3545418, + "x2": 3819779, + "y2": 3551955, + "x": 3759200, + "y": 3543301 + }, + { + "type": "cubicBezTo", + "x1": 3755887, + "y1": 3542828, + "x2": 3752601, + "y2": 3541751, + "x": 3749675, + "y": 3540126 + }, + { + "type": "cubicBezTo", + "x1": 3743004, + "y1": 3536420, + "x2": 3730625, + "y2": 3527426, + "x": 3730625, + "y": 3527426 + }, + { + "type": "cubicBezTo", + "x1": 3729567, + "y1": 3524251, + "x2": 3729541, + "y2": 3520514, + "x": 3727450, + "y": 3517901 + }, + { + "type": "cubicBezTo", + "x1": 3722974, + "y1": 3512306, + "x2": 3714675, + "y2": 3510468, + "x": 3708400, + "y": 3508376 + }, + { + "type": "cubicBezTo", + "x1": 3709458, + "y1": 3496734, + "x2": 3708277, + "y2": 3484666, + "x": 3711575, + "y": 3473451 + }, + { + "type": "cubicBezTo", + "x1": 3716092, + "y1": 3458092, + "x2": 3723075, + "y2": 3455201, + "x": 3733800, + "y": 3448051 + }, + { + "type": "cubicBezTo", + "x1": 3735611, + "y1": 3442618, + "x2": 3738049, + "y2": 3432518, + "x": 3743325, + "y": 3429001 + }, + { + "type": "cubicBezTo", + "x1": 3746956, + "y1": 3426580, + "x2": 3751792, + "y2": 3426884, + "x": 3756025, + "y": 3425826 + }, + { + "type": "cubicBezTo", + "x1": 3764492, + "y1": 3426884, + "x2": 3773503, + "y2": 3425832, + "x": 3781425, + "y": 3429001 + }, + { + "type": "cubicBezTo", + "x1": 3784968, + "y1": 3430418, + "x2": 3785077, + "y2": 3435828, + "x": 3787775, + "y": 3438526 + }, + { + "type": "cubicBezTo", + "x1": 3790473, + "y1": 3441224, + "x2": 3794125, + "y2": 3442759, + "x": 3797300, + "y": 3444876 + }, + { + "type": "cubicBezTo", + "x1": 3799392, + "y1": 3451151, + "x2": 3801230, + "y2": 3459450, + "x": 3806825, + "y": 3463926 + }, + { + "type": "cubicBezTo", + "x1": 3809438, + "y1": 3466017, + "x2": 3813175, + "y2": 3466043, + "x": 3816350, + "y": 3467101 + }, + { + "type": "cubicBezTo", + "x1": 3826745, + "y1": 3498285, + "x2": 3820153, + "y2": 3474360, + "x": 3825875, + "y": 3511551 + }, + { + "type": "cubicBezTo", + "x1": 3829673, + "y1": 3536236, + "x2": 3843338, + "y2": 3534834, + "x": 3832225, + "y": 3540126 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1601", + "path_data": [ + { + "path_width": 123233, + "path_height": 133350, + "commands": [ + { + "type": "moveTo", + "x": 4575176, + "y": 3543300 + }, + { + "type": "cubicBezTo", + "x1": 4572001, + "y1": 3545946, + "x2": 4564238, + "y2": 3549122, + "x": 4559301, + "y": 3552825 + }, + { + "type": "cubicBezTo", + "x1": 4551066, + "y1": 3559002, + "x2": 4550123, + "y2": 3564998, + "x": 4540251, + "y": 3568700 + }, + { + "type": "cubicBezTo", + "x1": 4535198, + "y1": 3570595, + "x2": 4529668, + "y2": 3570817, + "x": 4524376, + "y": 3571875 + }, + { + "type": "lineTo", + "x": 4505326, + "y": 3568700 + }, + { + "type": "cubicBezTo", + "x1": 4497592, + "y1": 3553232, + "x2": 4509861, + "y2": 3539901, + "x": 4514851, + "y": 3527425 + }, + { + "type": "cubicBezTo", + "x1": 4517337, + "y1": 3521210, + "x2": 4515214, + "y2": 3511368, + "x": 4521201, + "y": 3508375 + }, + { + "type": "lineTo", + "x": 4533901, + "y": 3502025 + }, + { + "type": "cubicBezTo", + "x1": 4536793, + "y1": 3496242, + "x2": 4542258, + "y2": 3486808, + "x": 4543426, + "y": 3479800 + }, + { + "type": "cubicBezTo", + "x1": 4545002, + "y1": 3470347, + "x2": 4542635, + "y2": 3459950, + "x": 4546601, + "y": 3451225 + }, + { + "type": "cubicBezTo", + "x1": 4548560, + "y1": 3446916, + "x2": 4555192, + "y2": 3447223, + "x": 4559301, + "y": 3444875 + }, + { + "type": "cubicBezTo", + "x1": 4562614, + "y1": 3442982, + "x2": 4565651, + "y2": 3440642, + "x": 4568826, + "y": 3438525 + }, + { + "type": "cubicBezTo", + "x1": 4585591, + "y1": 3444113, + "x2": 4575566, + "y2": 3439844, + "x": 4597401, + "y": 3454400 + }, + { + "type": "cubicBezTo", + "x1": 4600576, + "y1": 3456517, + "x2": 4603224, + "y2": 3459825, + "x": 4606926, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 4619626, + "y": 3463925 + }, + { + "type": "cubicBezTo", + "x1": 4627123, + "y1": 3486415, + "x2": 4627931, + "y2": 3478938, + "x": 4622801, + "y": 3502025 + }, + { + "type": "cubicBezTo", + "x1": 4622075, + "y1": 3505292, + "x2": 4621993, + "y2": 3509183, + "x": 4619626, + "y": 3511550 + }, + { + "type": "cubicBezTo", + "x1": 4617259, + "y1": 3513917, + "x2": 4613276, + "y2": 3513667, + "x": 4610101, + "y": 3514725 + }, + { + "type": "cubicBezTo", + "x1": 4582137, + "y1": 3542689, + "x2": 4622553, + "y2": 3505795, + "x": 4584701, + "y": 3527425 + }, + { + "type": "cubicBezTo", + "x1": 4581388, + "y1": 3529318, + "x2": 4581049, + "y2": 3534252, + "x": 4578351, + "y": 3536950 + }, + { + "type": "cubicBezTo", + "x1": 4567945, + "y1": 3547356, + "x2": 4578351, + "y2": 3540654, + "x": 4575176, + "y": 3543300 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1602", + "path_data": [ + { + "path_width": 124725, + "path_height": 115844, + "commands": [ + { + "type": "moveTo", + "x": 3857626, + "y": 3949700 + }, + { + "type": "cubicBezTo", + "x1": 3849689, + "y1": 3953933, + "x2": 3821584, + "y2": 3948318, + "x": 3803651, + "y": 3946525 + }, + { + "type": "cubicBezTo", + "x1": 3800321, + "y1": 3946192, + "x2": 3797344, + "y2": 3944269, + "x": 3794126, + "y": 3943350 + }, + { + "type": "cubicBezTo", + "x1": 3789930, + "y1": 3942151, + "x2": 3785659, + "y2": 3941233, + "x": 3781426, + "y": 3940175 + }, + { + "type": "cubicBezTo", + "x1": 3778251, + "y1": 3938058, + "x2": 3774599, + "y2": 3936523, + "x": 3771901, + "y": 3933825 + }, + { + "type": "cubicBezTo", + "x1": 3769203, + "y1": 3931127, + "x2": 3768482, + "y2": 3926743, + "x": 3765551, + "y": 3924300 + }, + { + "type": "cubicBezTo", + "x1": 3761915, + "y1": 3921270, + "x2": 3757084, + "y2": 3920067, + "x": 3752851, + "y": 3917950 + }, + { + "type": "cubicBezTo", + "x1": 3746945, + "y1": 3900231, + "x2": 3741666, + "y2": 3893526, + "x": 3749676, + "y": 3873500 + }, + { + "type": "cubicBezTo", + "x1": 3751093, + "y1": 3869957, + "x2": 3756026, + "y2": 3869267, + "x": 3759201, + "y": 3867150 + }, + { + "type": "cubicBezTo", + "x1": 3761318, + "y1": 3863975, + "x2": 3763844, + "y2": 3861038, + "x": 3765551, + "y": 3857625 + }, + { + "type": "cubicBezTo", + "x1": 3767048, + "y1": 3854632, + "x2": 3766635, + "y2": 3850713, + "x": 3768726, + "y": 3848100 + }, + { + "type": "cubicBezTo", + "x1": 3771718, + "y1": 3844360, + "x2": 3787826, + "y2": 3836962, + "x": 3790951, + "y": 3835400 + }, + { + "type": "cubicBezTo", + "x1": 3807884, + "y1": 3836458, + "x2": 3824878, + "y2": 3836799, + "x": 3841751, + "y": 3838575 + }, + { + "type": "cubicBezTo", + "x1": 3845079, + "y1": 3838925, + "x2": 3848705, + "y2": 3839607, + "x": 3851276, + "y": 3841750 + }, + { + "type": "cubicBezTo", + "x1": 3855341, + "y1": 3845138, + "x2": 3857626, + "y2": 3850217, + "x": 3860801, + "y": 3854450 + }, + { + "type": "cubicBezTo", + "x1": 3861859, + "y1": 3858683, + "x2": 3862257, + "y2": 3863139, + "x": 3863976, + "y": 3867150 + }, + { + "type": "cubicBezTo", + "x1": 3865479, + "y1": 3870657, + "x2": 3870326, + "y2": 3872859, + "x": 3870326, + "y": 3876675 + }, + { + "type": "cubicBezTo", + "x1": 3870326, + "y1": 3887468, + "x2": 3866403, + "y2": 3897908, + "x": 3863976, + "y": 3908425 + }, + { + "type": "cubicBezTo", + "x1": 3863223, + "y1": 3911686, + "x2": 3863168, + "y2": 3915583, + "x": 3860801, + "y": 3917950 + }, + { + "type": "cubicBezTo", + "x1": 3858434, + "y1": 3920317, + "x2": 3854451, + "y2": 3920067, + "x": 3851276, + "y": 3921125 + }, + { + "type": "cubicBezTo", + "x1": 3847527, + "y1": 3936121, + "x2": 3865563, + "y2": 3945467, + "x": 3857626, + "y": 3949700 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1603", + "path_data": [ + { + "path_width": 128167, + "path_height": 120650, + "commands": [ + { + "type": "moveTo", + "x": 4584701, + "y": 3905250 + }, + { + "type": "cubicBezTo", + "x1": 4582584, + "y1": 3909483, + "x2": 4576793, + "y2": 3916333, + "x": 4572001, + "y": 3921125 + }, + { + "type": "cubicBezTo", + "x1": 4569303, + "y1": 3923823, + "x2": 4565174, + "y2": 3924777, + "x": 4562476, + "y": 3927475 + }, + { + "type": "cubicBezTo", + "x1": 4559778, + "y1": 3930173, + "x2": 4559106, + "y2": 3934616, + "x": 4556126, + "y": 3937000 + }, + { + "type": "cubicBezTo", + "x1": 4553513, + "y1": 3939091, + "x2": 4549594, + "y2": 3938678, + "x": 4546601, + "y": 3940175 + }, + { + "type": "cubicBezTo", + "x1": 4543188, + "y1": 3941882, + "x2": 4540251, + "y2": 3944408, + "x": 4537076, + "y": 3946525 + }, + { + "type": "cubicBezTo", + "x1": 4536018, + "y1": 3950758, + "x2": 4536322, + "y2": 3955594, + "x": 4533901, + "y": 3959225 + }, + { + "type": "cubicBezTo", + "x1": 4529516, + "y1": 3965803, + "x2": 4518048, + "y2": 3967157, + "x": 4511676, + "y": 3968750 + }, + { + "type": "cubicBezTo", + "x1": 4501960, + "y1": 3966321, + "x2": 4496760, + "y2": 3966534, + "x": 4489451, + "y": 3959225 + }, + { + "type": "cubicBezTo", + "x1": 4475090, + "y1": 3944864, + "x2": 4492119, + "y2": 3952706, + "x": 4473576, + "y": 3946525 + }, + { + "type": "cubicBezTo", + "x1": 4466168, + "y1": 3924300, + "x2": 4473576, + "y2": 3929592, + "x": 4457701, + "y": 3924300 + }, + { + "type": "cubicBezTo", + "x1": 4458759, + "y1": 3917950, + "x2": 4459479, + "y2": 3911534, + "x": 4460876, + "y": 3905250 + }, + { + "type": "cubicBezTo", + "x1": 4461602, + "y1": 3901983, + "x2": 4461684, + "y2": 3898092, + "x": 4464051, + "y": 3895725 + }, + { + "type": "cubicBezTo", + "x1": 4467398, + "y1": 3892378, + "x2": 4472518, + "y2": 3891492, + "x": 4476751, + "y": 3889375 + }, + { + "type": "cubicBezTo", + "x1": 4482823, + "y1": 3871159, + "x2": 4475578, + "y2": 3888162, + "x": 4489451, + "y": 3870325 + }, + { + "type": "cubicBezTo", + "x1": 4507283, + "y1": 3847399, + "x2": 4493475, + "y2": 3854167, + "x": 4511676, + "y": 3848100 + }, + { + "type": "cubicBezTo", + "x1": 4516347, + "y1": 3848567, + "x2": 4542904, + "y2": 3848868, + "x": 4552951, + "y": 3854450 + }, + { + "type": "cubicBezTo", + "x1": 4559622, + "y1": 3858156, + "x2": 4572001, + "y2": 3867150, + "x": 4572001, + "y": 3867150 + }, + { + "type": "cubicBezTo", + "x1": 4579981, + "y1": 3891091, + "x2": 4569216, + "y2": 3861581, + "x": 4581526, + "y": 3886200 + }, + { + "type": "cubicBezTo", + "x1": 4583023, + "y1": 3889193, + "x2": 4583458, + "y2": 3892618, + "x": 4584701, + "y": 3895725 + }, + { + "type": "cubicBezTo", + "x1": 4585580, + "y1": 3897922, + "x2": 4586818, + "y2": 3901017, + "x": 4584701, + "y": 3905250 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1604", + "path_data": [ + { + "path_width": 168112, + "path_height": 101748, + "commands": [ + { + "type": "moveTo", + "x": 3838575, + "y": 4279900 + }, + { + "type": "cubicBezTo", + "x1": 3834871, + "y1": 4285721, + "x2": 3828389, + "y2": 4285915, + "x": 3822700, + "y": 4286250 + }, + { + "type": "cubicBezTo", + "x1": 3809978, + "y1": 4286998, + "x2": 3797232, + "y2": 4284759, + "x": 3784600, + "y": 4283075 + }, + { + "type": "cubicBezTo", + "x1": 3781283, + "y1": 4282633, + "x2": 3778293, + "y2": 4280819, + "x": 3775075, + "y": 4279900 + }, + { + "type": "cubicBezTo", + "x1": 3770879, + "y1": 4278701, + "x2": 3766571, + "y2": 4277924, + "x": 3762375, + "y": 4276725 + }, + { + "type": "cubicBezTo", + "x1": 3759157, + "y1": 4275806, + "x2": 3756068, + "y2": 4274469, + "x": 3752850, + "y": 4273550 + }, + { + "type": "cubicBezTo", + "x1": 3748654, + "y1": 4272351, + "x2": 3744346, + "y2": 4271574, + "x": 3740150, + "y": 4270375 + }, + { + "type": "cubicBezTo", + "x1": 3736932, + "y1": 4269456, + "x2": 3733759, + "y2": 4268375, + "x": 3730625, + "y": 4267200 + }, + { + "type": "cubicBezTo", + "x1": 3725289, + "y1": 4265199, + "x2": 3720209, + "y2": 4262488, + "x": 3714750, + "y": 4260850 + }, + { + "type": "cubicBezTo", + "x1": 3709581, + "y1": 4259299, + "x2": 3704167, + "y2": 4258733, + "x": 3698875, + "y": 4257675 + }, + { + "type": "cubicBezTo", + "x1": 3695700, + "y1": 4255558, + "x2": 3692048, + "y2": 4254023, + "x": 3689350, + "y": 4251325 + }, + { + "type": "cubicBezTo", + "x1": 3683195, + "y1": 4245170, + "x2": 3682407, + "y2": 4240022, + "x": 3679825, + "y": 4232275 + }, + { + "type": "cubicBezTo", + "x1": 3680883, + "y1": 4224867, + "x2": 3681532, + "y2": 4217388, + "x": 3683000, + "y": 4210050 + }, + { + "type": "cubicBezTo", + "x1": 3683656, + "y1": 4206768, + "x2": 3683452, + "y2": 4202470, + "x": 3686175, + "y": 4200525 + }, + { + "type": "cubicBezTo", + "x1": 3691622, + "y1": 4196634, + "x2": 3698875, + "y2": 4196292, + "x": 3705225, + "y": 4194175 + }, + { + "type": "cubicBezTo", + "x1": 3708400, + "y1": 4193117, + "x2": 3711503, + "y2": 4191812, + "x": 3714750, + "y": 4191000 + }, + { + "type": "lineTo", + "x": 3740150, + "y": 4184650 + }, + { + "type": "cubicBezTo", + "x1": 3748617, + "y1": 4185708, + "x2": 3757318, + "y2": 4185580, + "x": 3765550, + "y": 4187825 + }, + { + "type": "cubicBezTo", + "x1": 3769231, + "y1": 4188829, + "x2": 3771588, + "y2": 4192625, + "x": 3775075, + "y": 4194175 + }, + { + "type": "cubicBezTo", + "x1": 3781192, + "y1": 4196893, + "x2": 3787775, + "y2": 4198408, + "x": 3794125, + "y": 4200525 + }, + { + "type": "cubicBezTo", + "x1": 3797300, + "y1": 4203700, + "x2": 3801469, + "y2": 4206125, + "x": 3803650, + "y": 4210050 + }, + { + "type": "cubicBezTo", + "x1": 3805779, + "y1": 4213883, + "x2": 3809381, + "y2": 4234269, + "x": 3816350, + "y": 4238625 + }, + { + "type": "cubicBezTo", + "x1": 3822026, + "y1": 4242173, + "x2": 3829831, + "y2": 4241262, + "x": 3835400, + "y": 4244975 + }, + { + "type": "lineTo", + "x": 3844925, + "y": 4251325 + }, + { + "type": "cubicBezTo", + "x1": 3853168, + "y1": 4267811, + "x2": 3842279, + "y2": 4274079, + "x": 3838575, + "y": 4279900 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1605", + "path_data": [ + { + "path_width": 127511, + "path_height": 73754, + "commands": [ + { + "type": "moveTo", + "x": 4581526, + "y": 4244975 + }, + { + "type": "cubicBezTo", + "x1": 4587876, + "y1": 4252912, + "x2": 4572892, + "y2": 4255429, + "x": 4568826, + "y": 4260850 + }, + { + "type": "cubicBezTo", + "x1": 4566536, + "y1": 4263903, + "x2": 4565174, + "y2": 4267677, + "x": 4562476, + "y": 4270375 + }, + { + "type": "cubicBezTo", + "x1": 4559778, + "y1": 4273073, + "x2": 4556438, + "y2": 4275175, + "x": 4552951, + "y": 4276725 + }, + { + "type": "cubicBezTo", + "x1": 4534190, + "y1": 4285063, + "x2": 4527123, + "y2": 4283828, + "x": 4505326, + "y": 4286250 + }, + { + "type": "cubicBezTo", + "x1": 4489451, + "y1": 4285192, + "x2": 4471932, + "y2": 4290190, + "x": 4457701, + "y": 4283075 + }, + { + "type": "cubicBezTo", + "x1": 4451943, + "y1": 4280196, + "x2": 4459479, + "y2": 4270309, + "x": 4460876, + "y": 4264025 + }, + { + "type": "cubicBezTo", + "x1": 4461602, + "y1": 4260758, + "x2": 4461684, + "y2": 4256867, + "x": 4464051, + "y": 4254500 + }, + { + "type": "cubicBezTo", + "x1": 4469447, + "y1": 4249104, + "x2": 4476751, + "y2": 4246033, + "x": 4483101, + "y": 4241800 + }, + { + "type": "lineTo", + "x": 4511676, + "y": 4222750 + }, + { + "type": "cubicBezTo", + "x1": 4514851, + "y1": 4220633, + "x2": 4517581, + "y2": 4217607, + "x": 4521201, + "y": 4216400 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 4213225 + }, + { + "type": "cubicBezTo", + "x1": 4595273, + "y1": 4216811, + "x2": 4575176, + "y2": 4237038, + "x": 4581526, + "y": 4244975 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1606", + "path_data": [ + { + "path_width": 160881, + "path_height": 81286, + "commands": [ + { + "type": "moveTo", + "x": 7721601, + "y": 4095750 + }, + { + "type": "cubicBezTo", + "x1": 7719484, + "y1": 4102629, + "x2": 7710411, + "y2": 4096248, + "x": 7705726, + "y": 4098925 + }, + { + "type": "cubicBezTo", + "x1": 7702413, + "y1": 4100818, + "x2": 7702883, + "y2": 4106947, + "x": 7699376, + "y": 4108450 + }, + { + "type": "cubicBezTo", + "x1": 7672256, + "y1": 4120073, + "x2": 7642233, + "y2": 4119245, + "x": 7613651, + "y": 4121150 + }, + { + "type": "cubicBezTo", + "x1": 7596718, + "y1": 4119033, + "x2": 7579161, + "y2": 4119819, + "x": 7562851, + "y": 4114800 + }, + { + "type": "cubicBezTo", + "x1": 7559204, + "y1": 4113678, + "x2": 7569992, + "y2": 4111430, + "x": 7572376, + "y": 4108450 + }, + { + "type": "cubicBezTo", + "x1": 7574467, + "y1": 4105837, + "x2": 7573184, + "y2": 4101292, + "x": 7575551, + "y": 4098925 + }, + { + "type": "cubicBezTo", + "x1": 7579474, + "y1": 4095002, + "x2": 7592084, + "y2": 4091297, + "x": 7597776, + "y": 4089400 + }, + { + "type": "cubicBezTo", + "x1": 7605756, + "y1": 4065459, + "x2": 7594063, + "y2": 4094041, + "x": 7610476, + "y": 4073525 + }, + { + "type": "cubicBezTo", + "x1": 7612567, + "y1": 4070912, + "x2": 7611795, + "y2": 4066785, + "x": 7613651, + "y": 4064000 + }, + { + "type": "cubicBezTo", + "x1": 7620446, + "y1": 4053807, + "x2": 7622715, + "y2": 4054629, + "x": 7632701, + "y": 4051300 + }, + { + "type": "cubicBezTo", + "x1": 7635876, + "y1": 4048125, + "x2": 7637754, + "y2": 4042182, + "x": 7642226, + "y": 4041775 + }, + { + "type": "cubicBezTo", + "x1": 7684352, + "y1": 4037945, + "x2": 7687028, + "y2": 4039776, + "x": 7712076, + "y": 4048125 + }, + { + "type": "cubicBezTo", + "x1": 7714193, + "y1": 4051300, + "x2": 7716719, + "y2": 4054237, + "x": 7718426, + "y": 4057650 + }, + { + "type": "cubicBezTo", + "x1": 7723944, + "y1": 4068685, + "x2": 7723718, + "y2": 4088871, + "x": 7721601, + "y": 4095750 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1607", + "path_data": [ + { + "path_width": 108687, + "path_height": 55132, + "commands": [ + { + "type": "moveTo", + "x": 6883401, + "y": 4095750 + }, + { + "type": "cubicBezTo", + "x1": 6872818, + "y1": 4099454, + "x2": 6843739, + "y2": 4094011, + "x": 6807201, + "y": 4083050 + }, + { + "type": "cubicBezTo", + "x1": 6803995, + "y1": 4082088, + "x2": 6800669, + "y2": 4081372, + "x": 6797676, + "y": 4079875 + }, + { + "type": "cubicBezTo", + "x1": 6794263, + "y1": 4078168, + "x2": 6791326, + "y2": 4075642, + "x": 6788151, + "y": 4073525 + }, + { + "type": "cubicBezTo", + "x1": 6787525, + "y1": 4072585, + "x2": 6776360, + "y2": 4057648, + "x": 6778626, + "y": 4054475 + }, + { + "type": "cubicBezTo", + "x1": 6783062, + "y1": 4048265, + "x2": 6797676, + "y2": 4041775, + "x": 6797676, + "y": 4041775 + }, + { + "type": "cubicBezTo", + "x1": 6812493, + "y1": 4042833, + "x2": 6827373, + "y2": 4043214, + "x": 6842126, + "y": 4044950 + }, + { + "type": "cubicBezTo", + "x1": 6845450, + "y1": 4045341, + "x2": 6848725, + "y2": 4046500, + "x": 6851651, + "y": 4048125 + }, + { + "type": "cubicBezTo", + "x1": 6858322, + "y1": 4051831, + "x2": 6870701, + "y2": 4060825, + "x": 6870701, + "y": 4060825 + }, + { + "type": "cubicBezTo", + "x1": 6878711, + "y1": 4072841, + "x2": 6893984, + "y2": 4092046, + "x": 6883401, + "y": 4095750 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1608", + "path_data": [ + { + "path_width": 120650, + "path_height": 106323, + "commands": [ + { + "type": "moveTo", + "x": 7693025, + "y": 3616326 + }, + { + "type": "cubicBezTo", + "x1": 7683500, + "y1": 3612622, + "x2": 7667557, + "y2": 3617817, + "x": 7654925, + "y": 3619501 + }, + { + "type": "cubicBezTo", + "x1": 7642519, + "y1": 3621155, + "x2": 7647342, + "y2": 3623929, + "x": 7635875, + "y": 3629026 + }, + { + "type": "cubicBezTo", + "x1": 7629758, + "y1": 3631744, + "x2": 7622394, + "y2": 3631663, + "x": 7616825, + "y": 3635376 + }, + { + "type": "cubicBezTo", + "x1": 7604515, + "y1": 3643582, + "x2": 7610920, + "y2": 3640519, + "x": 7597775, + "y": 3644901 + }, + { + "type": "cubicBezTo", + "x1": 7598833, + "y1": 3648076, + "x2": 7600950, + "y2": 3651079, + "x": 7600950, + "y": 3654426 + }, + { + "type": "cubicBezTo", + "x1": 7600950, + "y1": 3661910, + "x2": 7599114, + "y2": 3669288, + "x": 7597775, + "y": 3676651 + }, + { + "type": "cubicBezTo", + "x1": 7596180, + "y1": 3685422, + "x2": 7594145, + "y2": 3690715, + "x": 7591425, + "y": 3698876 + }, + { + "type": "cubicBezTo", + "x1": 7592483, + "y1": 3703109, + "x2": 7592435, + "y2": 3707787, + "x": 7594600, + "y": 3711576 + }, + { + "type": "cubicBezTo", + "x1": 7596828, + "y1": 3715475, + "x2": 7599865, + "y2": 3719681, + "x": 7604125, + "y": 3721101 + }, + { + "type": "cubicBezTo", + "x1": 7607300, + "y1": 3722159, + "x2": 7610724, + "y2": 3719551, + "x": 7613650, + "y": 3717926 + }, + { + "type": "cubicBezTo", + "x1": 7620321, + "y1": 3714220, + "x2": 7625115, + "y2": 3706069, + "x": 7632700, + "y": 3705226 + }, + { + "type": "lineTo", + "x": 7661275, + "y": 3702051 + }, + { + "type": "cubicBezTo", + "x1": 7667625, + "y1": 3695701, + "x2": 7675344, + "y2": 3690473, + "x": 7680325, + "y": 3683001 + }, + { + "type": "cubicBezTo", + "x1": 7682442, + "y1": 3679826, + "x2": 7683695, + "y2": 3675860, + "x": 7686675, + "y": 3673476 + }, + { + "type": "cubicBezTo", + "x1": 7689288, + "y1": 3671385, + "x2": 7693025, + "y2": 3671359, + "x": 7696200, + "y": 3670301 + }, + { + "type": "cubicBezTo", + "x1": 7710756, + "y1": 3648466, + "x2": 7706487, + "y2": 3658491, + "x": 7712075, + "y": 3641726 + }, + { + "type": "cubicBezTo", + "x1": 7708451, + "y1": 3616358, + "x2": 7702550, + "y2": 3620030, + "x": 7693025, + "y": 3616326 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1609", + "path_data": [ + { + "path_width": 121916, + "path_height": 111125, + "commands": [ + { + "type": "moveTo", + "x": 6877050, + "y": 3638551 + }, + { + "type": "cubicBezTo", + "x1": 6880754, + "y1": 3644901, + "x2": 6875295, + "y2": 3649220, + "x": 6873875, + "y": 3654426 + }, + { + "type": "cubicBezTo", + "x1": 6872114, + "y1": 3660884, + "x2": 6869642, + "y2": 3667126, + "x": 6867525, + "y": 3673476 + }, + { + "type": "cubicBezTo", + "x1": 6864216, + "y1": 3683402, + "x2": 6861008, + "y2": 3695813, + "x": 6851650, + "y": 3702051 + }, + { + "type": "cubicBezTo", + "x1": 6829815, + "y1": 3716607, + "x2": 6839840, + "y2": 3712338, + "x": 6823075, + "y": 3717926 + }, + { + "type": "cubicBezTo", + "x1": 6792689, + "y1": 3687540, + "x2": 6831594, + "y2": 3723606, + "x": 6804025, + "y": 3705226 + }, + { + "type": "cubicBezTo", + "x1": 6800289, + "y1": 3702735, + "x2": 6797949, + "y2": 3698576, + "x": 6794500, + "y": 3695701 + }, + { + "type": "cubicBezTo", + "x1": 6791569, + "y1": 3693258, + "x2": 6788150, + "y2": 3691468, + "x": 6784975, + "y": 3689351 + }, + { + "type": "cubicBezTo", + "x1": 6782858, + "y1": 3686176, + "x2": 6781556, + "y2": 3682269, + "x": 6778625, + "y": 3679826 + }, + { + "type": "cubicBezTo", + "x1": 6773394, + "y1": 3675467, + "x2": 6763017, + "y2": 3672507, + "x": 6756400, + "y": 3670301 + }, + { + "type": "cubicBezTo", + "x1": 6757912, + "y1": 3655183, + "x2": 6756463, + "y2": 3632138, + "x": 6769100, + "y": 3619501 + }, + { + "type": "cubicBezTo", + "x1": 6771798, + "y1": 3616803, + "x2": 6775039, + "y2": 3614455, + "x": 6778625, + "y": 3613151 + }, + { + "type": "cubicBezTo", + "x1": 6786827, + "y1": 3610169, + "x2": 6804025, + "y2": 3606801, + "x": 6804025, + "y": 3606801 + }, + { + "type": "cubicBezTo", + "x1": 6813550, + "y1": 3607859, + "x2": 6823202, + "y2": 3608096, + "x": 6832600, + "y": 3609976 + }, + { + "type": "cubicBezTo", + "x1": 6839164, + "y1": 3611289, + "x2": 6851650, + "y2": 3616326, + "x": 6851650, + "y": 3616326 + }, + { + "type": "cubicBezTo", + "x1": 6859339, + "y1": 3631703, + "x2": 6873346, + "y2": 3632201, + "x": 6877050, + "y": 3638551 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1610", + "path_data": [ + { + "path_width": 121606, + "path_height": 117475, + "commands": [ + { + "type": "moveTo", + "x": 6858000, + "y": 3238501 + }, + { + "type": "cubicBezTo", + "x1": 6855883, + "y1": 3249613, + "x2": 6863690, + "y2": 3282951, + "x": 6842125, + "y": 3282951 + }, + { + "type": "cubicBezTo", + "x1": 6834983, + "y1": 3282951, + "x2": 6809936, + "y2": 3277366, + "x": 6804025, + "y": 3273426 + }, + { + "type": "cubicBezTo", + "x1": 6800850, + "y1": 3271309, + "x2": 6797987, + "y2": 3268626, + "x": 6794500, + "y": 3267076 + }, + { + "type": "cubicBezTo", + "x1": 6788383, + "y1": 3264358, + "x2": 6775450, + "y2": 3260726, + "x": 6775450, + "y": 3260726 + }, + { + "type": "cubicBezTo", + "x1": 6773333, + "y1": 3257551, + "x2": 6772080, + "y2": 3253585, + "x": 6769100, + "y": 3251201 + }, + { + "type": "cubicBezTo", + "x1": 6743277, + "y1": 3230543, + "x2": 6776815, + "y2": 3268441, + "x": 6750050, + "y": 3241676 + }, + { + "type": "cubicBezTo", + "x1": 6746308, + "y1": 3237934, + "x2": 6743700, + "y2": 3233209, + "x": 6740525, + "y": 3228976 + }, + { + "type": "cubicBezTo", + "x1": 6739467, + "y1": 3225801, + "x2": 6737350, + "y2": 3222798, + "x": 6737350, + "y": 3219451 + }, + { + "type": "cubicBezTo", + "x1": 6737350, + "y1": 3214573, + "x2": 6740426, + "y2": 3197424, + "x": 6743700, + "y": 3190876 + }, + { + "type": "cubicBezTo", + "x1": 6747268, + "y1": 3183740, + "x2": 6753556, + "y2": 3176842, + "x": 6759575, + "y": 3171826 + }, + { + "type": "cubicBezTo", + "x1": 6762506, + "y1": 3169383, + "x2": 6765925, + "y2": 3167593, + "x": 6769100, + "y": 3165476 + }, + { + "type": "cubicBezTo", + "x1": 6780742, + "y1": 3166534, + "x2": 6792595, + "y2": 3166202, + "x": 6804025, + "y": 3168651 + }, + { + "type": "cubicBezTo", + "x1": 6807756, + "y1": 3169451, + "x2": 6810137, + "y2": 3173294, + "x": 6813550, + "y": 3175001 + }, + { + "type": "cubicBezTo", + "x1": 6839840, + "y1": 3188146, + "x2": 6805303, + "y2": 3166328, + "x": 6832600, + "y": 3184526 + }, + { + "type": "cubicBezTo", + "x1": 6834717, + "y1": 3187701, + "x2": 6835970, + "y2": 3191667, + "x": 6838950, + "y": 3194051 + }, + { + "type": "cubicBezTo", + "x1": 6841563, + "y1": 3196142, + "x2": 6846530, + "y2": 3194503, + "x": 6848475, + "y": 3197226 + }, + { + "type": "cubicBezTo", + "x1": 6852366, + "y1": 3202673, + "x2": 6853202, + "y2": 3209782, + "x": 6854825, + "y": 3216276 + }, + { + "type": "cubicBezTo", + "x1": 6858574, + "y1": 3231272, + "x2": 6860117, + "y2": 3227389, + "x": 6858000, + "y": 3238501 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1611", + "path_data": [ + { + "path_width": 127000, + "path_height": 158903, + "commands": [ + { + "type": "moveTo", + "x": 6788150, + "y": 2743201 + }, + { + "type": "cubicBezTo", + "x1": 6784446, + "y1": 2737909, + "x2": 6778022, + "y2": 2734093, + "x": 6772275, + "y": 2730501 + }, + { + "type": "cubicBezTo", + "x1": 6761507, + "y1": 2723771, + "x2": 6748601, + "y2": 2729095, + "x": 6737350, + "y": 2730501 + }, + { + "type": "cubicBezTo", + "x1": 6719134, + "y1": 2736573, + "x2": 6736137, + "y2": 2729328, + "x": 6718300, + "y": 2743201 + }, + { + "type": "cubicBezTo", + "x1": 6712276, + "y1": 2747886, + "x2": 6699250, + "y2": 2755901, + "x": 6699250, + "y": 2755901 + }, + { + "type": "cubicBezTo", + "x1": 6691270, + "y1": 2779842, + "x2": 6702035, + "y2": 2750332, + "x": 6689725, + "y": 2774951 + }, + { + "type": "cubicBezTo", + "x1": 6688228, + "y1": 2777944, + "x2": 6687608, + "y2": 2781301, + "x": 6686550, + "y": 2784476 + }, + { + "type": "cubicBezTo", + "x1": 6687608, + "y1": 2799293, + "x2": 6687989, + "y2": 2814173, + "x": 6689725, + "y": 2828926 + }, + { + "type": "cubicBezTo", + "x1": 6690116, + "y1": 2832250, + "x2": 6690177, + "y2": 2836506, + "x": 6692900, + "y": 2838451 + }, + { + "type": "cubicBezTo", + "x1": 6698347, + "y1": 2842342, + "x2": 6706381, + "y2": 2841088, + "x": 6711950, + "y": 2844801 + }, + { + "type": "cubicBezTo", + "x1": 6735156, + "y1": 2860272, + "x2": 6705977, + "y2": 2841388, + "x": 6734175, + "y": 2857501 + }, + { + "type": "cubicBezTo", + "x1": 6737488, + "y1": 2859394, + "x2": 6740213, + "y2": 2862301, + "x": 6743700, + "y": 2863851 + }, + { + "type": "cubicBezTo", + "x1": 6749817, + "y1": 2866569, + "x2": 6757181, + "y2": 2866488, + "x": 6762750, + "y": 2870201 + }, + { + "type": "cubicBezTo", + "x1": 6790047, + "y1": 2888399, + "x2": 6755510, + "y2": 2866581, + "x": 6781800, + "y": 2879726 + }, + { + "type": "cubicBezTo", + "x1": 6785213, + "y1": 2881433, + "x2": 6788150, + "y2": 2883959, + "x": 6791325, + "y": 2886076 + }, + { + "type": "cubicBezTo", + "x1": 6808067, + "y1": 2874915, + "x2": 6795824, + "y2": 2886162, + "x": 6804025, + "y": 2867026 + }, + { + "type": "cubicBezTo", + "x1": 6805528, + "y1": 2863519, + "x2": 6808668, + "y2": 2860914, + "x": 6810375, + "y": 2857501 + }, + { + "type": "cubicBezTo", + "x1": 6811872, + "y1": 2854508, + "x2": 6812492, + "y2": 2851151, + "x": 6813550, + "y": 2847976 + }, + { + "type": "cubicBezTo", + "x1": 6812492, + "y1": 2833159, + "x2": 6812956, + "y2": 2818154, + "x": 6810375, + "y": 2803526 + }, + { + "type": "cubicBezTo", + "x1": 6809712, + "y1": 2799768, + "x2": 6805575, + "y2": 2797488, + "x": 6804025, + "y": 2794001 + }, + { + "type": "cubicBezTo", + "x1": 6786656, + "y1": 2754920, + "x2": 6805583, + "y2": 2791805, + "x": 6794500, + "y": 2762251 + }, + { + "type": "cubicBezTo", + "x1": 6787677, + "y1": 2744056, + "x2": 6791854, + "y2": 2748493, + "x": 6788150, + "y": 2743201 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1612", + "path_data": [ + { + "path_width": 127000, + "path_height": 143221, + "commands": [ + { + "type": "moveTo", + "x": 7766050, + "y": 2816226 + }, + { + "type": "cubicBezTo", + "x1": 7764463, + "y1": 2819401, + "x2": 7754967, + "y2": 2824134, + "x": 7750175, + "y": 2828926 + }, + { + "type": "cubicBezTo", + "x1": 7747477, + "y1": 2831624, + "x2": 7746805, + "y2": 2836067, + "x": 7743825, + "y": 2838451 + }, + { + "type": "cubicBezTo", + "x1": 7741212, + "y1": 2840542, + "x2": 7737226, + "y2": 2840001, + "x": 7734300, + "y": 2841626 + }, + { + "type": "cubicBezTo", + "x1": 7727629, + "y1": 2845332, + "x2": 7722490, + "y2": 2851913, + "x": 7715250, + "y": 2854326 + }, + { + "type": "cubicBezTo", + "x1": 7692580, + "y1": 2861883, + "x2": 7701769, + "y2": 2856963, + "x": 7686675, + "y": 2867026 + }, + { + "type": "cubicBezTo", + "x1": 7676257, + "y1": 2865538, + "x2": 7662730, + "y2": 2866867, + "x": 7654925, + "y": 2857501 + }, + { + "type": "cubicBezTo", + "x1": 7651895, + "y1": 2853865, + "x2": 7650692, + "y2": 2849034, + "x": 7648575, + "y": 2844801 + }, + { + "type": "cubicBezTo", + "x1": 7649633, + "y1": 2827868, + "x2": 7649233, + "y2": 2810780, + "x": 7651750, + "y": 2794001 + }, + { + "type": "cubicBezTo", + "x1": 7652452, + "y1": 2789320, + "x2": 7654753, + "y2": 2784648, + "x": 7658100, + "y": 2781301 + }, + { + "type": "cubicBezTo", + "x1": 7663496, + "y1": 2775905, + "x2": 7677150, + "y2": 2768601, + "x": 7677150, + "y": 2768601 + }, + { + "type": "cubicBezTo", + "x1": 7688792, + "y1": 2751139, + "x2": 7677150, + "y2": 2765955, + "x": 7693025, + "y": 2752726 + }, + { + "type": "cubicBezTo", + "x1": 7708880, + "y1": 2739513, + "x2": 7695336, + "y2": 2745606, + "x": 7712075, + "y": 2740026 + }, + { + "type": "cubicBezTo", + "x1": 7713133, + "y1": 2736851, + "x2": 7713159, + "y2": 2733114, + "x": 7715250, + "y": 2730501 + }, + { + "type": "cubicBezTo", + "x1": 7725903, + "y1": 2717185, + "x2": 7738926, + "y2": 2727296, + "x": 7753350, + "y": 2730501 + }, + { + "type": "cubicBezTo", + "x1": 7755467, + "y1": 2733676, + "x2": 7757257, + "y2": 2737095, + "x": 7759700, + "y": 2740026 + }, + { + "type": "cubicBezTo", + "x1": 7762575, + "y1": 2743475, + "x2": 7767044, + "y2": 2745626, + "x": 7769225, + "y": 2749551 + }, + { + "type": "cubicBezTo", + "x1": 7772476, + "y1": 2755402, + "x2": 7775575, + "y2": 2768601, + "x": 7775575, + "y": 2768601 + }, + { + "type": "cubicBezTo", + "x1": 7774517, + "y1": 2778126, + "x2": 7773976, + "y2": 2787723, + "x": 7772400, + "y": 2797176 + }, + { + "type": "cubicBezTo", + "x1": 7771850, + "y1": 2800477, + "x2": 7771592, + "y2": 2804334, + "x": 7769225, + "y": 2806701 + }, + { + "type": "cubicBezTo", + "x1": 7766858, + "y1": 2809068, + "x2": 7762875, + "y2": 2808818, + "x": 7759700, + "y": 2809876 + }, + { + "type": "cubicBezTo", + "x1": 7756052, + "y1": 2820821, + "x2": 7767637, + "y2": 2813051, + "x": 7766050, + "y": 2816226 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1613", + "path_data": [ + { + "path_width": 146099, + "path_height": 123825, + "commands": [ + { + "type": "moveTo", + "x": 7737476, + "y": 3219451 + }, + { + "type": "cubicBezTo", + "x1": 7738005, + "y1": 3221038, + "x2": 7734147, + "y2": 3230493, + "x": 7731126, + "y": 3235326 + }, + { + "type": "cubicBezTo", + "x1": 7726761, + "y1": 3242311, + "x2": 7718659, + "y2": 3246812, + "x": 7712076, + "y": 3251201 + }, + { + "type": "cubicBezTo", + "x1": 7709959, + "y1": 3254376, + "x2": 7708962, + "y2": 3258704, + "x": 7705726, + "y": 3260726 + }, + { + "type": "cubicBezTo", + "x1": 7700050, + "y1": 3264274, + "x2": 7692245, + "y2": 3263363, + "x": 7686676, + "y": 3267076 + }, + { + "type": "lineTo", + "x": 7677151, + "y": 3273426 + }, + { + "type": "cubicBezTo", + "x1": 7668639, + "y1": 3272717, + "x2": 7642495, + "y2": 3273561, + "x": 7629526, + "y": 3267076 + }, + { + "type": "cubicBezTo", + "x1": 7626113, + "y1": 3265369, + "x2": 7623176, + "y2": 3262843, + "x": 7620001, + "y": 3260726 + }, + { + "type": "cubicBezTo", + "x1": 7615768, + "y1": 3254376, + "x2": 7609714, + "y2": 3248916, + "x": 7607301, + "y": 3241676 + }, + { + "type": "cubicBezTo", + "x1": 7605184, + "y1": 3235326, + "x2": 7604664, + "y2": 3228195, + "x": 7600951, + "y": 3222626 + }, + { + "type": "cubicBezTo", + "x1": 7592745, + "y1": 3210316, + "x2": 7595808, + "y2": 3216721, + "x": 7591426, + "y": 3203576 + }, + { + "type": "cubicBezTo", + "x1": 7592484, + "y1": 3198284, + "x2": 7592188, + "y2": 3192528, + "x": 7594601, + "y": 3187701 + }, + { + "type": "cubicBezTo", + "x1": 7598892, + "y1": 3179120, + "x2": 7609155, + "y2": 3175661, + "x": 7616826, + "y": 3171826 + }, + { + "type": "cubicBezTo", + "x1": 7617884, + "y1": 3168651, + "x2": 7617634, + "y2": 3164668, + "x": 7620001, + "y": 3162301 + }, + { + "type": "cubicBezTo", + "x1": 7622368, + "y1": 3159934, + "x2": 7626533, + "y2": 3160623, + "x": 7629526, + "y": 3159126 + }, + { + "type": "cubicBezTo", + "x1": 7654145, + "y1": 3146816, + "x2": 7624635, + "y2": 3157581, + "x": 7648576, + "y": 3149601 + }, + { + "type": "cubicBezTo", + "x1": 7668684, + "y1": 3151718, + "x2": 7688867, + "y2": 3153219, + "x": 7708901, + "y": 3155951 + }, + { + "type": "cubicBezTo", + "x1": 7712217, + "y1": 3156403, + "x2": 7716059, + "y2": 3156759, + "x": 7718426, + "y": 3159126 + }, + { + "type": "cubicBezTo", + "x1": 7749098, + "y1": 3189798, + "x2": 7688841, + "y2": 3146811, + "x": 7731126, + "y": 3175001 + }, + { + "type": "cubicBezTo", + "x1": 7734892, + "y1": 3197599, + "x2": 7735954, + "y2": 3192135, + "x": 7731126, + "y": 3216276 + }, + { + "type": "cubicBezTo", + "x1": 7730470, + "y1": 3219558, + "x2": 7730042, + "y2": 3223188, + "x": 7727951, + "y": 3225801 + }, + { + "type": "cubicBezTo", + "x1": 7717545, + "y1": 3238808, + "x2": 7736947, + "y2": 3217864, + "x": 7737476, + "y": 3219451 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_hiatus.json b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_hiatus.json new file mode 100644 index 00000000..4907d52c --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_hiatus.json @@ -0,0 +1,86 @@ +{ + "slide_number": 52, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1656", + "path_data": [ + { + "path_width": 257175, + "path_height": 95250, + "commands": [ + { + "type": "moveTo", + "x": 5626101, + "y": 4235450 + }, + { + "type": "lineTo", + "x": 5556251, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 5521326, + "y": 4257675 + }, + { + "type": "lineTo", + "x": 5508626, + "y": 4286250 + }, + { + "type": "lineTo", + "x": 5549901, + "y": 4308475 + }, + { + "type": "lineTo", + "x": 5632451, + "y": 4321175 + }, + { + "type": "lineTo", + "x": 5724526, + "y": 4327525 + }, + { + "type": "lineTo", + "x": 5756276, + "y": 4305300 + }, + { + "type": "lineTo", + "x": 5765801, + "y": 4264025 + }, + { + "type": "lineTo", + "x": 5740401, + "y": 4241800 + }, + { + "type": "lineTo", + "x": 5702301, + "y": 4232275 + }, + { + "type": "lineTo", + "x": 5626101, + "y": 4235450 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_promontory.json b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_promontory.json new file mode 100644 index 00000000..4eadb396 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_sacral_promontory.json @@ -0,0 +1,260 @@ +{ + "slide_number": 48, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1553", + "path_data": [ + { + "path_width": 2613025, + "path_height": 368300, + "commands": [ + { + "type": "moveTo", + "x": 6965951, + "y": 2279650 + }, + { + "type": "lineTo", + "x": 6772276, + "y": 2190750 + }, + { + "type": "lineTo", + "x": 6651626, + "y": 2159000 + }, + { + "type": "lineTo", + "x": 6511926, + "y": 2155825 + }, + { + "type": "lineTo", + "x": 6372226, + "y": 2190750 + }, + { + "type": "lineTo", + "x": 6178551, + "y": 2251075 + }, + { + "type": "lineTo", + "x": 5994401, + "y": 2292350 + }, + { + "type": "lineTo", + "x": 5788026, + "y": 2330450 + }, + { + "type": "lineTo", + "x": 5588001, + "y": 2352675 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 2346325 + }, + { + "type": "lineTo", + "x": 5191126, + "y": 2333625 + }, + { + "type": "lineTo", + "x": 4991101, + "y": 2311400 + }, + { + "type": "lineTo", + "x": 4797426, + "y": 2314575 + }, + { + "type": "lineTo", + "x": 4641851, + "y": 2349500 + }, + { + "type": "lineTo", + "x": 4521201, + "y": 2371725 + }, + { + "type": "lineTo", + "x": 4381501, + "y": 2397125 + }, + { + "type": "lineTo", + "x": 4356101, + "y": 2365375 + }, + { + "type": "lineTo", + "x": 4368801, + "y": 2308225 + }, + { + "type": "lineTo", + "x": 4416426, + "y": 2279650 + }, + { + "type": "lineTo", + "x": 4495801, + "y": 2247900 + }, + { + "type": "lineTo", + "x": 4603751, + "y": 2184400 + }, + { + "type": "lineTo", + "x": 4714876, + "y": 2162175 + }, + { + "type": "lineTo", + "x": 4851401, + "y": 2152650 + }, + { + "type": "lineTo", + "x": 4956176, + "y": 2139950 + }, + { + "type": "lineTo", + "x": 5105401, + "y": 2136775 + }, + { + "type": "lineTo", + "x": 5203826, + "y": 2171700 + }, + { + "type": "lineTo", + "x": 5324476, + "y": 2178050 + }, + { + "type": "lineTo", + "x": 5410201, + "y": 2193925 + }, + { + "type": "lineTo", + "x": 5499101, + "y": 2171700 + }, + { + "type": "lineTo", + "x": 5591176, + "y": 2190750 + }, + { + "type": "lineTo", + "x": 5654676, + "y": 2178050 + }, + { + "type": "lineTo", + "x": 5702301, + "y": 2184400 + }, + { + "type": "lineTo", + "x": 5775326, + "y": 2165350 + }, + { + "type": "lineTo", + "x": 5876926, + "y": 2155825 + }, + { + "type": "lineTo", + "x": 5930901, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 6013451, + "y": 2108200 + }, + { + "type": "lineTo", + "x": 6130926, + "y": 2108200 + }, + { + "type": "lineTo", + "x": 6203951, + "y": 2073275 + }, + { + "type": "lineTo", + "x": 6337301, + "y": 2047875 + }, + { + "type": "lineTo", + "x": 6496051, + "y": 2028825 + }, + { + "type": "lineTo", + "x": 6613526, + "y": 2028825 + }, + { + "type": "lineTo", + "x": 6743701, + "y": 2066925 + }, + { + "type": "lineTo", + "x": 6886576, + "y": 2133600 + }, + { + "type": "lineTo", + "x": 6937376, + "y": 2184400 + }, + { + "type": "cubicBezTo", + "x1": 6940551, + "y1": 2201333, + "x2": 6965951, + "y2": 2224617, + "x": 6969126, + "y": 2241550 + }, + { + "type": "lineTo", + "x": 6965951, + "y": 2279650 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_superior_articular_process.json b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_superior_articular_process.json new file mode 100644 index 00000000..3a561cb8 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sacrum_and_coccyx_superior_articular_process.json @@ -0,0 +1,253 @@ +{ + "slide_number": 49, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1574", + "path_data": [ + { + "path_width": 687036, + "path_height": 770289, + "commands": [ + { + "type": "moveTo", + "x": 4889783, + "y": 2276170 + }, + { + "type": "lineTo", + "x": 4841205, + "y": 2442719 + }, + { + "type": "lineTo", + "x": 4667711, + "y": 2484356 + }, + { + "type": "lineTo", + "x": 4494217, + "y": 2449658 + }, + { + "type": "lineTo", + "x": 4348482, + "y": 2352505 + }, + { + "type": "lineTo", + "x": 4258265, + "y": 2199835 + }, + { + "type": "lineTo", + "x": 4258265, + "y": 2047165 + }, + { + "type": "lineTo", + "x": 4230506, + "y": 1970830 + }, + { + "type": "lineTo", + "x": 4251325, + "y": 1818160 + }, + { + "type": "lineTo", + "x": 4348482, + "y": 1748765 + }, + { + "type": "lineTo", + "x": 4404000, + "y": 1714067 + }, + { + "type": "lineTo", + "x": 4480337, + "y": 1714067 + }, + { + "type": "lineTo", + "x": 4556675, + "y": 1734886 + }, + { + "type": "lineTo", + "x": 4633012, + "y": 1838979 + }, + { + "type": "lineTo", + "x": 4660771, + "y": 1859798 + }, + { + "type": "lineTo", + "x": 4716289, + "y": 1894495 + }, + { + "type": "lineTo", + "x": 4792627, + "y": 1950012 + }, + { + "type": "lineTo", + "x": 4868964, + "y": 2005528 + }, + { + "type": "lineTo", + "x": 4910602, + "y": 2047165 + }, + { + "type": "lineTo", + "x": 4917542, + "y": 2095742 + }, + { + "type": "lineTo", + "x": 4889783, + "y": 2276170 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1575", + "path_data": [ + { + "path_width": 763374, + "path_height": 700894, + "commands": [ + { + "type": "moveTo", + "x": 6312434, + "y": 2428839 + }, + { + "type": "lineTo", + "x": 6291614, + "y": 2338625 + }, + { + "type": "lineTo", + "x": 6270795, + "y": 2248411 + }, + { + "type": "lineTo", + "x": 6305494, + "y": 2151257 + }, + { + "type": "lineTo", + "x": 6354072, + "y": 2102680 + }, + { + "type": "lineTo", + "x": 6409590, + "y": 2061043 + }, + { + "type": "lineTo", + "x": 6478988, + "y": 1991648 + }, + { + "type": "lineTo", + "x": 6569205, + "y": 1887555 + }, + { + "type": "lineTo", + "x": 6708000, + "y": 1783462 + }, + { + "type": "lineTo", + "x": 6812096, + "y": 1762643 + }, + { + "type": "lineTo", + "x": 6916193, + "y": 1762643 + }, + { + "type": "lineTo", + "x": 6964771, + "y": 1818159 + }, + { + "type": "lineTo", + "x": 7006410, + "y": 1908373 + }, + { + "type": "lineTo", + "x": 7034169, + "y": 1977769 + }, + { + "type": "lineTo", + "x": 7027229, + "y": 2123499 + }, + { + "type": "lineTo", + "x": 6999470, + "y": 2227592 + }, + { + "type": "lineTo", + "x": 6943952, + "y": 2331685 + }, + { + "type": "lineTo", + "x": 6819036, + "y": 2380262 + }, + { + "type": "lineTo", + "x": 6694120, + "y": 2463537 + }, + { + "type": "lineTo", + "x": 6478988, + "y": 2428839 + }, + { + "type": "lineTo", + "x": 6312434, + "y": 2428839 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/scapula_acromion_and_caracoid_process_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/scapula_acromion_and_caracoid_process_colored_regions.json new file mode 100644 index 00000000..8686932a --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/scapula_acromion_and_caracoid_process_colored_regions.json @@ -0,0 +1,462 @@ +{ + "slide_number": 28, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "862", + "path_data": [ + { + "path_width": 992205, + "path_height": 429968, + "commands": [ + { + "type": "moveTo", + "x": 3858991, + "y": 2447514 + }, + { + "type": "lineTo", + "x": 3819303, + "y": 2282141 + }, + { + "type": "lineTo", + "x": 3700238, + "y": 2169688 + }, + { + "type": "lineTo", + "x": 3541485, + "y": 2110154 + }, + { + "type": "lineTo", + "x": 3382733, + "y": 2096924 + }, + { + "type": "lineTo", + "x": 3111530, + "y": 2050620 + }, + { + "type": "lineTo", + "x": 2932933, + "y": 2077079 + }, + { + "type": "lineTo", + "x": 2866786, + "y": 2176303 + }, + { + "type": "lineTo", + "x": 2866786, + "y": 2229222 + }, + { + "type": "lineTo", + "x": 2906474, + "y": 2275526 + }, + { + "type": "lineTo", + "x": 2999080, + "y": 2301986 + }, + { + "type": "lineTo", + "x": 3144603, + "y": 2282141 + }, + { + "type": "lineTo", + "x": 3263668, + "y": 2301986 + }, + { + "type": "lineTo", + "x": 3369503, + "y": 2354905 + }, + { + "type": "lineTo", + "x": 3528256, + "y": 2460744 + }, + { + "type": "lineTo", + "x": 3673779, + "y": 2480588 + }, + { + "type": "lineTo", + "x": 3792844, + "y": 2480588 + }, + { + "type": "lineTo", + "x": 3858991, + "y": 2447514 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "863", + "path_data": [ + { + "path_width": 820223, + "path_height": 1071614, + "commands": [ + { + "type": "moveTo", + "x": 7841042, + "y": 2956861 + }, + { + "type": "lineTo", + "x": 7874116, + "y": 2778259 + }, + { + "type": "lineTo", + "x": 7854272, + "y": 2672421 + }, + { + "type": "lineTo", + "x": 7827813, + "y": 2559967 + }, + { + "type": "lineTo", + "x": 7960107, + "y": 2467359 + }, + { + "type": "lineTo", + "x": 8065942, + "y": 2394595 + }, + { + "type": "lineTo", + "x": 8151933, + "y": 2275526 + }, + { + "type": "lineTo", + "x": 8171777, + "y": 2209377 + }, + { + "type": "lineTo", + "x": 8191622, + "y": 2136613 + }, + { + "type": "lineTo", + "x": 8297457, + "y": 2057235 + }, + { + "type": "lineTo", + "x": 8350374, + "y": 2044005 + }, + { + "type": "lineTo", + "x": 8416521, + "y": 2070464 + }, + { + "type": "lineTo", + "x": 8522357, + "y": 2196148 + }, + { + "type": "lineTo", + "x": 8581889, + "y": 2215992 + }, + { + "type": "lineTo", + "x": 8641421, + "y": 2268912 + }, + { + "type": "lineTo", + "x": 8648036, + "y": 2500433 + }, + { + "type": "lineTo", + "x": 8608348, + "y": 2559967 + }, + { + "type": "lineTo", + "x": 8588504, + "y": 2725340 + }, + { + "type": "lineTo", + "x": 8535586, + "y": 2811333 + }, + { + "type": "lineTo", + "x": 8469439, + "y": 2943632 + }, + { + "type": "lineTo", + "x": 8350374, + "y": 3069315 + }, + { + "type": "lineTo", + "x": 8251154, + "y": 3115619 + }, + { + "type": "lineTo", + "x": 8118860, + "y": 3075930 + }, + { + "type": "lineTo", + "x": 8105630, + "y": 3042855 + }, + { + "type": "lineTo", + "x": 8026254, + "y": 3016395 + }, + { + "type": "lineTo", + "x": 7927033, + "y": 2996551 + }, + { + "type": "lineTo", + "x": 7841042, + "y": 2956861 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "864", + "path_data": [ + { + "path_width": 628397, + "path_height": 277826, + "commands": [ + { + "type": "moveTo", + "x": 7430931, + "y": 2361520 + }, + { + "type": "lineTo", + "x": 7536766, + "y": 2275526 + }, + { + "type": "lineTo", + "x": 7669060, + "y": 2242452 + }, + { + "type": "lineTo", + "x": 7781510, + "y": 2242452 + }, + { + "type": "lineTo", + "x": 7900575, + "y": 2275526 + }, + { + "type": "lineTo", + "x": 7993180, + "y": 2354905 + }, + { + "type": "lineTo", + "x": 7999795, + "y": 2401210 + }, + { + "type": "lineTo", + "x": 7960107, + "y": 2467359 + }, + { + "type": "lineTo", + "x": 7893960, + "y": 2473973 + }, + { + "type": "lineTo", + "x": 7834428, + "y": 2401210 + }, + { + "type": "lineTo", + "x": 7715363, + "y": 2427669 + }, + { + "type": "lineTo", + "x": 7576454, + "y": 2460744 + }, + { + "type": "lineTo", + "x": 7503692, + "y": 2500433 + }, + { + "type": "lineTo", + "x": 7371398, + "y": 2520278 + }, + { + "type": "lineTo", + "x": 7378013, + "y": 2460744 + }, + { + "type": "lineTo", + "x": 7430931, + "y": 2361520 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "865", + "path_data": [ + { + "path_width": 304276, + "path_height": 522577, + "commands": [ + { + "type": "moveTo", + "x": 3257052, + "y": 2817949 + }, + { + "type": "lineTo", + "x": 3171061, + "y": 2725341 + }, + { + "type": "lineTo", + "x": 3144602, + "y": 2639347 + }, + { + "type": "lineTo", + "x": 3091685, + "y": 2573198 + }, + { + "type": "lineTo", + "x": 3032152, + "y": 2480589 + }, + { + "type": "lineTo", + "x": 3005693, + "y": 2427670 + }, + { + "type": "lineTo", + "x": 2999079, + "y": 2354906 + }, + { + "type": "lineTo", + "x": 3032152, + "y": 2321832 + }, + { + "type": "lineTo", + "x": 3124758, + "y": 2295372 + }, + { + "type": "lineTo", + "x": 3230593, + "y": 2295372 + }, + { + "type": "lineTo", + "x": 3303355, + "y": 2341676 + }, + { + "type": "lineTo", + "x": 3290126, + "y": 2381366 + }, + { + "type": "lineTo", + "x": 3276896, + "y": 2460745 + }, + { + "type": "lineTo", + "x": 3283511, + "y": 2599658 + }, + { + "type": "lineTo", + "x": 3290126, + "y": 2698881 + }, + { + "type": "lineTo", + "x": 3257052, + "y": 2817949 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/scapula_frossae_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/scapula_frossae_colored_regions.json new file mode 100644 index 00000000..e241dad7 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/scapula_frossae_colored_regions.json @@ -0,0 +1,451 @@ +{ + "slide_number": 27, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "827", + "path_data": [ + { + "path_width": 1711475, + "path_height": 2417873, + "commands": [ + { + "type": "moveTo", + "x": 2295551, + "y": 3246471 + }, + { + "type": "lineTo", + "x": 2472131, + "y": 3545309 + }, + { + "type": "lineTo", + "x": 2709836, + "y": 3844148 + }, + { + "type": "lineTo", + "x": 2838876, + "y": 4088652 + }, + { + "type": "lineTo", + "x": 2995082, + "y": 4319572 + }, + { + "type": "lineTo", + "x": 3130914, + "y": 4611619 + }, + { + "type": "lineTo", + "x": 3287120, + "y": 4849331 + }, + { + "type": "lineTo", + "x": 3450118, + "y": 4903665 + }, + { + "type": "lineTo", + "x": 3585949, + "y": 4740663 + }, + { + "type": "lineTo", + "x": 3613115, + "y": 4360323 + }, + { + "type": "lineTo", + "x": 3721780, + "y": 3979983 + }, + { + "type": "lineTo", + "x": 3796488, + "y": 3606435 + }, + { + "type": "lineTo", + "x": 3830445, + "y": 3294013 + }, + { + "type": "lineTo", + "x": 3803279, + "y": 2981591 + }, + { + "type": "lineTo", + "x": 3748947, + "y": 2743879 + }, + { + "type": "lineTo", + "x": 3599532, + "y": 2506167 + }, + { + "type": "lineTo", + "x": 3456909, + "y": 2485792 + }, + { + "type": "lineTo", + "x": 3341452, + "y": 2526542 + }, + { + "type": "lineTo", + "x": 3232787, + "y": 2648794 + }, + { + "type": "lineTo", + "x": 3062998, + "y": 2743879 + }, + { + "type": "lineTo", + "x": 2927167, + "y": 2832172 + }, + { + "type": "lineTo", + "x": 2798127, + "y": 2866131 + }, + { + "type": "lineTo", + "x": 2628338, + "y": 2886507 + }, + { + "type": "lineTo", + "x": 2472131, + "y": 2838964 + }, + { + "type": "lineTo", + "x": 2370258, + "y": 2832172 + }, + { + "type": "lineTo", + "x": 2315925, + "y": 2832172 + }, + { + "type": "lineTo", + "x": 2234427, + "y": 2832172 + }, + { + "type": "lineTo", + "x": 2186886, + "y": 2900090 + }, + { + "type": "lineTo", + "x": 2118970, + "y": 2961216 + }, + { + "type": "lineTo", + "x": 2159719, + "y": 3063093 + }, + { + "type": "lineTo", + "x": 2295551, + "y": 3246471 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Unknown_region", + "color": "FF6600", + "color_name": "orange", + "shape_id": "830", + "path_data": [ + { + "path_width": 1543638, + "path_height": 1976408, + "commands": [ + { + "type": "moveTo", + "x": 4659017, + "y": 3049509 + }, + { + "type": "lineTo", + "x": 4944263, + "y": 3103844 + }, + { + "type": "lineTo", + "x": 5148010, + "y": 3110635 + }, + { + "type": "lineTo", + "x": 5338174, + "y": 3083468 + }, + { + "type": "lineTo", + "x": 5467214, + "y": 3035926 + }, + { + "type": "lineTo", + "x": 5609837, + "y": 3035926 + }, + { + "type": "lineTo", + "x": 5698127, + "y": 3069885 + }, + { + "type": "lineTo", + "x": 5867916, + "y": 3090260 + }, + { + "type": "lineTo", + "x": 5996956, + "y": 3103844 + }, + { + "type": "cubicBezTo", + "x1": 6014483, + "y1": 3123505, + "x2": 6059740, + "y2": 3170986, + "x": 6052453, + "y": 3208228 + }, + { + "type": "cubicBezTo", + "x1": 6045166, + "y1": 3245470, + "x2": 5976478, + "y2": 3281451, + "x": 5953233, + "y": 3327296 + }, + { + "type": "lineTo", + "x": 5833605, + "y": 3483299 + }, + { + "type": "lineTo", + "x": 5650586, + "y": 3837356 + }, + { + "type": "lineTo", + "x": 5338174, + "y": 4299197 + }, + { + "type": "lineTo", + "x": 5080094, + "y": 4686328 + }, + { + "type": "lineTo", + "x": 4869556, + "y": 4842539 + }, + { + "type": "lineTo", + "x": 4788057, + "y": 4964791 + }, + { + "type": "lineTo", + "x": 4679392, + "y": 5012334 + }, + { + "type": "lineTo", + "x": 4570727, + "y": 4985167 + }, + { + "type": "lineTo", + "x": 4557143, + "y": 4822164 + }, + { + "type": "lineTo", + "x": 4618268, + "y": 4502950 + }, + { + "type": "lineTo", + "x": 4611476, + "y": 4190528 + }, + { + "type": "lineTo", + "x": 4570727, + "y": 3864523 + }, + { + "type": "lineTo", + "x": 4563935, + "y": 3599643 + }, + { + "type": "lineTo", + "x": 4516394, + "y": 3457016 + }, + { + "type": "lineTo", + "x": 4509602, + "y": 3334764 + }, + { + "type": "lineTo", + "x": 4550352, + "y": 3137802 + }, + { + "type": "lineTo", + "x": 4659017, + "y": 3049509 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "831", + "path_data": [ + { + "path_width": 1480563, + "path_height": 614037, + "commands": [ + { + "type": "moveTo", + "x": 4781265, + "y": 2343164 + }, + { + "type": "cubicBezTo", + "x1": 4697502, + "y1": 2419006, + "x2": 4634114, + "y2": 2681622, + "x": 4604684, + "y": 2764255 + }, + { + "type": "lineTo", + "x": 4604684, + "y": 2838964 + }, + { + "type": "lineTo", + "x": 4591101, + "y": 2893298 + }, + { + "type": "lineTo", + "x": 4747307, + "y": 2913674 + }, + { + "type": "lineTo", + "x": 4930680, + "y": 2913674 + }, + { + "type": "lineTo", + "x": 5195551, + "y": 2859339 + }, + { + "type": "lineTo", + "x": 5365340, + "y": 2805005 + }, + { + "type": "lineTo", + "x": 5664169, + "y": 2737087 + }, + { + "type": "lineTo", + "x": 5895083, + "y": 2703128 + }, + { + "type": "lineTo", + "x": 6044497, + "y": 2628419 + }, + { + "type": "lineTo", + "x": 6071664, + "y": 2519750 + }, + { + "type": "lineTo", + "x": 5956207, + "y": 2397498 + }, + { + "type": "lineTo", + "x": 5419673, + "y": 2309205 + }, + { + "type": "lineTo", + "x": 5107261, + "y": 2309205 + }, + { + "type": "cubicBezTo", + "x1": 5000860, + "y1": 2314865, + "x2": 4865028, + "y2": 2267322, + "x": 4781265, + "y": 2343164 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/scapula_spine_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/scapula_spine_colored_regions.json new file mode 100644 index 00000000..735b18df --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/scapula_spine_colored_regions.json @@ -0,0 +1,248 @@ +{ + "slide_number": 26, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "805", + "path_data": [ + { + "path_width": 2196827, + "path_height": 612713, + "commands": [ + { + "type": "moveTo", + "x": 4416537, + "y": 2928836 + }, + { + "type": "lineTo", + "x": 4568456, + "y": 2940988 + }, + { + "type": "cubicBezTo", + "x1": 4593156, + "y1": 2941381, + "x2": 4628440, + "y2": 2931191, + "x": 4653140, + "y": 2931584 + }, + { + "type": "lineTo", + "x": 4730959, + "y": 2919821 + }, + { + "type": "lineTo", + "x": 4854064, + "y": 2892377 + }, + { + "type": "lineTo", + "x": 5036367, + "y": 2837689 + }, + { + "type": "lineTo", + "x": 5285514, + "y": 2783002 + }, + { + "type": "lineTo", + "x": 5571121, + "y": 2752619 + }, + { + "type": "lineTo", + "x": 5729117, + "y": 2691855 + }, + { + "type": "lineTo", + "x": 5941803, + "y": 2625015 + }, + { + "type": "lineTo", + "x": 6178797, + "y": 2552098 + }, + { + "type": "cubicBezTo", + "x1": 6256782, + "y1": 2526780, + "x2": 6361100, + "y2": 2456900, + "x": 6409714, + "y": 2473104 + }, + { + "type": "cubicBezTo", + "x1": 6458328, + "y1": 2489308, + "x2": 6466430, + "y2": 2594632, + "x": 6470481, + "y": 2649320 + }, + { + "type": "lineTo", + "x": 6482635, + "y": 2813384 + }, + { + "type": "cubicBezTo", + "x1": 6486686, + "y1": 2868072, + "x2": 6462379, + "y2": 2936938, + "x": 6434021, + "y": 2959218 + }, + { + "type": "lineTo", + "x": 6312485, + "y": 2947065 + }, + { + "type": "lineTo", + "x": 6184874, + "y": 2965294 + }, + { + "type": "lineTo", + "x": 6020801, + "y": 2965294 + }, + { + "type": "lineTo", + "x": 5868882, + "y": 2965294 + }, + { + "type": "lineTo", + "x": 5735194, + "y": 2934912 + }, + { + "type": "lineTo", + "x": 5619735, + "y": 2928836 + }, + { + "type": "lineTo", + "x": 5528584, + "y": 2940988 + }, + { + "type": "lineTo", + "x": 5413125, + "y": 2995676 + }, + { + "type": "lineTo", + "x": 5328051, + "y": 3019982 + }, + { + "type": "lineTo", + "x": 5206516, + "y": 3038211 + }, + { + "type": "lineTo", + "x": 5036367, + "y": 3062517 + }, + { + "type": "lineTo", + "x": 4939138, + "y": 3074670 + }, + { + "type": "lineTo", + "x": 4841910, + "y": 3056440 + }, + { + "type": "lineTo", + "x": 4742133, + "y": 3034093 + }, + { + "type": "lineTo", + "x": 4653531, + "y": 2995676 + }, + { + "type": "lineTo", + "x": 4586686, + "y": 2995676 + }, + { + "type": "lineTo", + "x": 4501612, + "y": 2995676 + }, + { + "type": "lineTo", + "x": 4446921, + "y": 2995676 + }, + { + "type": "lineTo", + "x": 4375570, + "y": 3035072 + }, + { + "type": "cubicBezTo", + "x1": 4351144, + "y1": 3049672, + "x2": 4315248, + "y2": 3085828, + "x": 4300362, + "y": 3083279 + }, + { + "type": "cubicBezTo", + "x1": 4285476, + "y1": 3080730, + "x2": 4288548, + "y2": 3038137, + "x": 4286251, + "y": 3019779 + }, + { + "type": "cubicBezTo", + "x1": 4291065, + "y1": 2992469, + "x2": 4278978, + "y2": 2953007, + "x": 4300692, + "y": 2937850 + }, + { + "type": "cubicBezTo", + "x1": 4322406, + "y1": 2922693, + "x2": 4371910, + "y2": 2928313, + "x": 4416537, + "y": 2928836 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sciatic_notches_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/sciatic_notches_colored_regions.json new file mode 100644 index 00000000..b289e40b --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sciatic_notches_colored_regions.json @@ -0,0 +1,112 @@ +{ + "slide_number": 14, + "images": [ + { + "index": 0, + "name": "pelvis_lat_blk.psd", + "width": 2236557, + "height": 3535362, + "colored_regions": [ + { + "anatomical_name": "Greater Sciatic Notch (Lateral)", + "color": "#FF6600", + "stroke": true, + "stroke_width": 38100, + "offset_x": 209886, + "offset_y": 1795523, + "path_data": { + "path_width": 518092, + "path_height": 657130, + "commands": [ + {"type": "moveTo", "x": 473865, "y": 657130}, + {"type": "lineTo", "x": 499137, "y": 423343}, + {"type": "lineTo", "x": 518092, "y": 240105}, + {"type": "lineTo", "x": 518092, "y": 126371}, + {"type": "lineTo", "x": 511774, "y": 25274}, + {"type": "lineTo", "x": 435956, "y": 0}, + {"type": "lineTo", "x": 372774, "y": 0}, + {"type": "lineTo", "x": 284319, "y": 25274}, + {"type": "lineTo", "x": 157955, "y": 63186}, + {"type": "lineTo", "x": 75819, "y": 101097}, + {"type": "lineTo", "x": 0, "y": 101097}, + {"type": "lineTo", "x": 0, "y": 101097} + ] + } + }, + { + "anatomical_name": "Lesser Sciatic Notch (Lateral)", + "color": "#FF00E6", + "stroke": true, + "stroke_width": 38100, + "offset_x": 623618, + "offset_y": 2623255, + "path_data": { + "path_width": 94844, + "path_height": 300272, + "commands": [ + {"type": "moveTo", "x": 0, "y": 0}, + {"type": "lineTo", "x": 75945, "y": 34579}, + {"type": "cubicBezTo", "x1": 72619, "y1": 51766, "x2": 97868, "y2": 110229, "x": 94542, "y": 127416}, + {"type": "lineTo", "x": 79152, "y": 230800}, + {"type": "cubicBezTo", "x1": 70706, "y1": 244432, "x2": 61213, "y2": 260118, "x": 53815, "y": 271697}, + {"type": "cubicBezTo", "x1": 46417, "y1": 283276, "x2": 41115, "y2": 290747, "x": 34765, "y": 300272} + ] + } + } + ] + }, + { + "index": 1, + "name": "pelvis_med_blk.psd", + "width": 2554738, + "height": 3429000, + "colored_regions": [ + { + "anatomical_name": "Greater Sciatic Notch (Medial)", + "color": "#FF6600", + "stroke": true, + "stroke_width": 38100, + "offset_x": 1596081, + "offset_y": 1646405, + "path_data": { + "path_width": 511773, + "path_height": 669767, + "commands": [ + {"type": "moveTo", "x": 189546, "y": 669767}, + {"type": "lineTo", "x": 132682, "y": 537077}, + {"type": "lineTo", "x": 82136, "y": 404388}, + {"type": "lineTo", "x": 44227, "y": 259061}, + {"type": "lineTo", "x": 12636, "y": 183238}, + {"type": "lineTo", "x": 0, "y": 101097}, + {"type": "cubicBezTo", "x1": 19365, "y1": 83747, "x2": 19680, "y2": 53696, "x": 39045, "y": 36346}, + {"type": "lineTo", "x": 120046, "y": 6319}, + {"type": "lineTo", "x": 233773, "y": 0}, + {"type": "lineTo", "x": 379091, "y": 6319}, + {"type": "lineTo", "x": 492819, "y": 31593}, + {"type": "lineTo", "x": 511773, "y": 37912} + ] + } + }, + { + "anatomical_name": "Lesser Sciatic Notch (Medial)", + "color": "#FF00E6", + "stroke": true, + "stroke_width": 38100, + "offset_x": 1841500, + "offset_y": 2474136, + "path_data": { + "path_width": 67378, + "path_height": 237087, + "commands": [ + {"type": "moveTo", "x": 45217, "y": 0}, + {"type": "cubicBezTo", "x1": 37553, "y1": 14547, "x2": 7664, "y2": 22743, "x": 0, "y": 37290}, + {"type": "cubicBezTo", "x1": 330, "y1": 56453, "x2": 659, "y2": 75615, "x": 989, "y": 94778}, + {"type": "cubicBezTo", "x1": 5951, "y1": 109482, "x2": 10914, "y2": 149586, "x": 15876, "y": 164290}, + {"type": "lineTo", "x": 67378, "y": 237087} + ] + } + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/sternum_body_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/sternum_body_colored_regions.json new file mode 100644 index 00000000..482fd00a --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sternum_body_colored_regions.json @@ -0,0 +1,388 @@ +{ + "slide_number": 6, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "235", + "path_data": [ + { + "path_width": 1175085, + "path_height": 2082992, + "commands": [ + { + "type": "moveTo", + "x": 3684258, + "y": 3091849 + }, + { + "type": "lineTo", + "x": 4604148, + "y": 3085915 + }, + { + "type": "lineTo", + "x": 4657561, + "y": 3133390 + }, + { + "type": "lineTo", + "x": 4621952, + "y": 3287686 + }, + { + "type": "lineTo", + "x": 4580409, + "y": 3590343 + }, + { + "type": "lineTo", + "x": 4550735, + "y": 3667491 + }, + { + "type": "lineTo", + "x": 4669430, + "y": 3821786 + }, + { + "type": "lineTo", + "x": 4663495, + "y": 3910803 + }, + { + "type": "lineTo", + "x": 4633822, + "y": 4035427 + }, + { + "type": "lineTo", + "x": 4651626, + "y": 4148181 + }, + { + "type": "lineTo", + "x": 4705039, + "y": 4231264 + }, + { + "type": "lineTo", + "x": 4764387, + "y": 4320280 + }, + { + "type": "lineTo", + "x": 4675365, + "y": 4450838 + }, + { + "type": "lineTo", + "x": 4663495, + "y": 4522052 + }, + { + "type": "lineTo", + "x": 4699104, + "y": 4676347 + }, + { + "type": "lineTo", + "x": 4657561, + "y": 4812840 + }, + { + "type": "lineTo", + "x": 4705039, + "y": 4955267 + }, + { + "type": "lineTo", + "x": 4568539, + "y": 5151104 + }, + { + "type": "lineTo", + "x": 4372691, + "y": 5168907 + }, + { + "type": "lineTo", + "x": 3820758, + "y": 5157038 + }, + { + "type": "lineTo", + "x": 3755475, + "y": 4984939 + }, + { + "type": "lineTo", + "x": 3654584, + "y": 4913725 + }, + { + "type": "lineTo", + "x": 3684258, + "y": 4735692 + }, + { + "type": "lineTo", + "x": 3624910, + "y": 4670413 + }, + { + "type": "lineTo", + "x": 3666454, + "y": 4486445 + }, + { + "type": "lineTo", + "x": 3613041, + "y": 4349953 + }, + { + "type": "lineTo", + "x": 3589302, + "y": 4225329 + }, + { + "type": "lineTo", + "x": 3648649, + "y": 4136312 + }, + { + "type": "lineTo", + "x": 3648649, + "y": 3916738 + }, + { + "type": "lineTo", + "x": 3707997, + "y": 3720901 + }, + { + "type": "lineTo", + "x": 3666454, + "y": 3608146 + }, + { + "type": "lineTo", + "x": 3613041, + "y": 3530998 + }, + { + "type": "lineTo", + "x": 3666454, + "y": 3394506 + }, + { + "type": "lineTo", + "x": 3618976, + "y": 3287686 + }, + { + "type": "lineTo", + "x": 3684258, + "y": 3091849 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "236", + "path_data": [ + { + "path_width": 1145411, + "path_height": 2082992, + "commands": [ + { + "type": "moveTo", + "x": 6835622, + "y": 3044373 + }, + { + "type": "lineTo", + "x": 7850468, + "y": 3026570 + }, + { + "type": "lineTo", + "x": 7814859, + "y": 3091849 + }, + { + "type": "lineTo", + "x": 7868272, + "y": 3216472 + }, + { + "type": "lineTo", + "x": 7838598, + "y": 3341096 + }, + { + "type": "lineTo", + "x": 7874207, + "y": 3513195 + }, + { + "type": "lineTo", + "x": 7808925, + "y": 3608146 + }, + { + "type": "lineTo", + "x": 7791120, + "y": 3673425 + }, + { + "type": "lineTo", + "x": 7874207, + "y": 3821786 + }, + { + "type": "lineTo", + "x": 7862338, + "y": 3922672 + }, + { + "type": "lineTo", + "x": 7862338, + "y": 4053230 + }, + { + "type": "lineTo", + "x": 7951359, + "y": 4207526 + }, + { + "type": "lineTo", + "x": 7915750, + "y": 4379625 + }, + { + "type": "lineTo", + "x": 7903881, + "y": 4474576 + }, + { + "type": "lineTo", + "x": 7957294, + "y": 4617003 + }, + { + "type": "lineTo", + "x": 7897946, + "y": 4711954 + }, + { + "type": "lineTo", + "x": 7915750, + "y": 4818774 + }, + { + "type": "lineTo", + "x": 7939490, + "y": 4878119 + }, + { + "type": "lineTo", + "x": 7850468, + "y": 4961201 + }, + { + "type": "lineTo", + "x": 7820794, + "y": 5085825 + }, + { + "type": "lineTo", + "x": 7037404, + "y": 5109562 + }, + { + "type": "lineTo", + "x": 6930578, + "y": 5050218 + }, + { + "type": "lineTo", + "x": 6924644, + "y": 4919660 + }, + { + "type": "lineTo", + "x": 6900904, + "y": 4800971 + }, + { + "type": "lineTo", + "x": 6906839, + "y": 4599200 + }, + { + "type": "lineTo", + "x": 6811883, + "y": 4421166 + }, + { + "type": "lineTo", + "x": 6900904, + "y": 4219395 + }, + { + "type": "lineTo", + "x": 6900904, + "y": 4088837 + }, + { + "type": "lineTo", + "x": 6853426, + "y": 3970148 + }, + { + "type": "lineTo", + "x": 6883100, + "y": 3815852 + }, + { + "type": "lineTo", + "x": 6948383, + "y": 3720901 + }, + { + "type": "lineTo", + "x": 6871231, + "y": 3453851 + }, + { + "type": "lineTo", + "x": 6847492, + "y": 3281751 + }, + { + "type": "lineTo", + "x": 6835622, + "y": 3044373 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sternum_manubrium_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/sternum_manubrium_colored_regions.json new file mode 100644 index 00000000..fd474123 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sternum_manubrium_colored_regions.json @@ -0,0 +1,368 @@ +{ + "slide_number": 5, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "207", + "path_data": [ + { + "path_width": 1696110, + "path_height": 1162478, + "commands": [ + { + "type": "moveTo", + "x": 4068166, + "y": 1956769 + }, + { + "type": "lineTo", + "x": 3985428, + "y": 1956769 + }, + { + "type": "lineTo", + "x": 3865460, + "y": 1927811 + }, + { + "type": "lineTo", + "x": 3766175, + "y": 1919537 + }, + { + "type": "lineTo", + "x": 3662754, + "y": 1907126 + }, + { + "type": "lineTo", + "x": 3497280, + "y": 2076740 + }, + { + "type": "lineTo", + "x": 3306984, + "y": 2192574 + }, + { + "type": "lineTo", + "x": 3240795, + "y": 2238081 + }, + { + "type": "lineTo", + "x": 3257342, + "y": 2287724 + }, + { + "type": "lineTo", + "x": 3331805, + "y": 2345641 + }, + { + "type": "lineTo", + "x": 3389721, + "y": 2506981 + }, + { + "type": "lineTo", + "x": 3389721, + "y": 2635226 + }, + { + "type": "lineTo", + "x": 3431090, + "y": 2759334 + }, + { + "type": "lineTo", + "x": 3505553, + "y": 2875168 + }, + { + "type": "lineTo", + "x": 3575880, + "y": 2978591 + }, + { + "type": "lineTo", + "x": 3646206, + "y": 3044782 + }, + { + "type": "lineTo", + "x": 4605957, + "y": 3040645 + }, + { + "type": "lineTo", + "x": 4721789, + "y": 2813114 + }, + { + "type": "lineTo", + "x": 4763157, + "y": 2560761 + }, + { + "type": "lineTo", + "x": 4821073, + "y": 2449064 + }, + { + "type": "lineTo", + "x": 4825210, + "y": 2387010 + }, + { + "type": "lineTo", + "x": 4866579, + "y": 2329093 + }, + { + "type": "lineTo", + "x": 4866579, + "y": 2304271 + }, + { + "type": "lineTo", + "x": 4936905, + "y": 2225670 + }, + { + "type": "lineTo", + "x": 4907947, + "y": 2155342 + }, + { + "type": "lineTo", + "x": 4821073, + "y": 2134657 + }, + { + "type": "lineTo", + "x": 4709378, + "y": 2043645 + }, + { + "type": "lineTo", + "x": 4643188, + "y": 2010549 + }, + { + "type": "lineTo", + "x": 4581136, + "y": 1973317 + }, + { + "type": "lineTo", + "x": 4485988, + "y": 1882304 + }, + { + "type": "lineTo", + "x": 4432209, + "y": 1882304 + }, + { + "type": "lineTo", + "x": 4337061, + "y": 1907126 + }, + { + "type": "lineTo", + "x": 4262598, + "y": 1907126 + }, + { + "type": "lineTo", + "x": 4068166, + "y": 1956769 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "208", + "path_data": [ + { + "path_width": 1700248, + "path_height": 1158341, + "commands": [ + { + "type": "moveTo", + "x": 7352828, + "y": 1944359 + }, + { + "type": "lineTo", + "x": 7083933, + "y": 1944359 + }, + { + "type": "lineTo", + "x": 7005332, + "y": 1902990 + }, + { + "type": "lineTo", + "x": 6910185, + "y": 1936085 + }, + { + "type": "lineTo", + "x": 6823311, + "y": 2027098 + }, + { + "type": "lineTo", + "x": 6724026, + "y": 2113974 + }, + { + "type": "lineTo", + "x": 6682658, + "y": 2109837 + }, + { + "type": "lineTo", + "x": 6570963, + "y": 2072604 + }, + { + "type": "lineTo", + "x": 6479952, + "y": 2171891 + }, + { + "type": "lineTo", + "x": 6463404, + "y": 2238082 + }, + { + "type": "lineTo", + "x": 6517184, + "y": 2345642 + }, + { + "type": "lineTo", + "x": 6608194, + "y": 2473887 + }, + { + "type": "lineTo", + "x": 6690931, + "y": 2664186 + }, + { + "type": "lineTo", + "x": 6736437, + "y": 2891717 + }, + { + "type": "lineTo", + "x": 6827448, + "y": 3036510 + }, + { + "type": "lineTo", + "x": 6856406, + "y": 3061331 + }, + { + "type": "lineTo", + "x": 7807882, + "y": 3053057 + }, + { + "type": "lineTo", + "x": 7878209, + "y": 2966182 + }, + { + "type": "lineTo", + "x": 7944398, + "y": 2862758 + }, + { + "type": "lineTo", + "x": 8002314, + "y": 2717966 + }, + { + "type": "lineTo", + "x": 8064367, + "y": 2540078 + }, + { + "type": "lineTo", + "x": 8047820, + "y": 2444928 + }, + { + "type": "lineTo", + "x": 8080915, + "y": 2324957 + }, + { + "type": "lineTo", + "x": 8163652, + "y": 2221534 + }, + { + "type": "lineTo", + "x": 8163652, + "y": 2171891 + }, + { + "type": "lineTo", + "x": 8097462, + "y": 2109837 + }, + { + "type": "lineTo", + "x": 8056093, + "y": 2006413 + }, + { + "type": "lineTo", + "x": 7874072, + "y": 2051920 + }, + { + "type": "lineTo", + "x": 7638271, + "y": 1902990 + }, + { + "type": "lineTo", + "x": 7588629, + "y": 1940222 + }, + { + "type": "lineTo", + "x": 7352828, + "y": 1944359 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/sternum_xiphoid_process_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/sternum_xiphoid_process_colored_regions.json new file mode 100644 index 00000000..6f73445c --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/sternum_xiphoid_process_colored_regions.json @@ -0,0 +1,153 @@ +{ + "slide_number": 7, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "258", + "path_data": [ + { + "path_width": 824933, + "path_height": 486625, + "commands": [ + { + "type": "moveTo", + "x": 3802953, + "y": 5246056 + }, + { + "type": "lineTo", + "x": 4568539, + "y": 5246056 + }, + { + "type": "lineTo", + "x": 4598213, + "y": 5412220 + }, + { + "type": "lineTo", + "x": 4556670, + "y": 5608057 + }, + { + "type": "lineTo", + "x": 4437974, + "y": 5619926 + }, + { + "type": "lineTo", + "x": 4283670, + "y": 5732681 + }, + { + "type": "lineTo", + "x": 4111562, + "y": 5619926 + }, + { + "type": "lineTo", + "x": 3980997, + "y": 5619926 + }, + { + "type": "lineTo", + "x": 3820758, + "y": 5536844 + }, + { + "type": "lineTo", + "x": 3773280, + "y": 5352876 + }, + { + "type": "lineTo", + "x": 3802953, + "y": 5246056 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "259", + "path_data": [ + { + "path_width": 836803, + "path_height": 534101, + "commands": [ + { + "type": "moveTo", + "x": 7025535, + "y": 5222318 + }, + { + "type": "lineTo", + "x": 7844533, + "y": 5234187 + }, + { + "type": "lineTo", + "x": 7862338, + "y": 5358810 + }, + { + "type": "lineTo", + "x": 7826729, + "y": 5477499 + }, + { + "type": "lineTo", + "x": 7666490, + "y": 5649598 + }, + { + "type": "lineTo", + "x": 7512186, + "y": 5631795 + }, + { + "type": "lineTo", + "x": 7387556, + "y": 5756419 + }, + { + "type": "lineTo", + "x": 7233252, + "y": 5649598 + }, + { + "type": "lineTo", + "x": 7096752, + "y": 5655533 + }, + { + "type": "lineTo", + "x": 7025535, + "y": 5459696 + }, + { + "type": "lineTo", + "x": 7025535, + "y": 5222318 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/superior_ethmoid_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/superior_ethmoid_colored_regions.json new file mode 100644 index 00000000..fccc3257 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/superior_ethmoid_colored_regions.json @@ -0,0 +1,194 @@ +{ + "slide_number": 30, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1119", + "path_data": [ + { + "path_width": 514350, + "path_height": 977900, + "commands": [ + { + "type": "moveTo", + "x": 5943600, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 5965825, + "y": 3924300 + }, + { + "type": "lineTo", + "x": 5921375, + "y": 3841750 + }, + { + "type": "cubicBezTo", + "x1": 5920317, + "y1": 3804708, + "x2": 5919258, + "y2": 3767667, + "x": 5918200, + "y": 3730625 + }, + { + "type": "lineTo", + "x": 5934075, + "y": 3606800 + }, + { + "type": "lineTo", + "x": 5934075, + "y": 3552825 + }, + { + "type": "lineTo", + "x": 5918200, + "y": 3454400 + }, + { + "type": "lineTo", + "x": 5880100, + "y": 3330575 + }, + { + "type": "lineTo", + "x": 5832475, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 5775325, + "y": 3140075 + }, + { + "type": "lineTo", + "x": 5715000, + "y": 3070225 + }, + { + "type": "lineTo", + "x": 5692775, + "y": 3114675 + }, + { + "type": "lineTo", + "x": 5661025, + "y": 3086100 + }, + { + "type": "lineTo", + "x": 5610225, + "y": 3133725 + }, + { + "type": "lineTo", + "x": 5553075, + "y": 3213100 + }, + { + "type": "lineTo", + "x": 5511800, + "y": 3317875 + }, + { + "type": "lineTo", + "x": 5502275, + "y": 3419475 + }, + { + "type": "cubicBezTo", + "x1": 5503333, + "y1": 3467100, + "x2": 5504392, + "y2": 3514725, + "x": 5505450, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 5464175, + "y": 3489325 + }, + { + "type": "lineTo", + "x": 5451475, + "y": 3587750 + }, + { + "type": "lineTo", + "x": 5464175, + "y": 3683000 + }, + { + "type": "lineTo", + "x": 5495925, + "y": 3797300 + }, + { + "type": "lineTo", + "x": 5540375, + "y": 3898900 + }, + { + "type": "lineTo", + "x": 5562600, + "y": 4013200 + }, + { + "type": "lineTo", + "x": 5622925, + "y": 3975100 + }, + { + "type": "lineTo", + "x": 5664200, + "y": 3911600 + }, + { + "type": "lineTo", + "x": 5695950, + "y": 3895725 + }, + { + "type": "lineTo", + "x": 5737225, + "y": 3943350 + }, + { + "type": "lineTo", + "x": 5775325, + "y": 3981450 + }, + { + "type": "lineTo", + "x": 5813425, + "y": 4029075 + }, + { + "type": "lineTo", + "x": 5851525, + "y": 4038600 + }, + { + "type": "lineTo", + "x": 5943600, + "y": 4048125 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/superior_frontal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/superior_frontal_colored_regions.json new file mode 100644 index 00000000..45d41a66 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/superior_frontal_colored_regions.json @@ -0,0 +1,711 @@ +{ + "slide_number": 29, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1090", + "path_data": [ + { + "path_width": 4933950, + "path_height": 2378075, + "commands": [ + { + "type": "moveTo", + "x": 5708651, + "y": 3057526 + }, + { + "type": "lineTo", + "x": 5683251, + "y": 3114676 + }, + { + "type": "lineTo", + "x": 5661026, + "y": 3089276 + }, + { + "type": "lineTo", + "x": 5629276, + "y": 3114676 + }, + { + "type": "lineTo", + "x": 5584826, + "y": 3165476 + }, + { + "type": "lineTo", + "x": 5543551, + "y": 3225801 + }, + { + "type": "lineTo", + "x": 5518151, + "y": 3308351 + }, + { + "type": "lineTo", + "x": 5508626, + "y": 3432176 + }, + { + "type": "lineTo", + "x": 5508626, + "y": 3581401 + }, + { + "type": "cubicBezTo", + "x1": 5507568, + "y1": 3623734, + "x2": 5506509, + "y2": 3666068, + "x": 5505451, + "y": 3708401 + }, + { + "type": "lineTo", + "x": 5495926, + "y": 3771901 + }, + { + "type": "lineTo", + "x": 5518151, + "y": 3857626 + }, + { + "type": "lineTo", + "x": 5543551, + "y": 3914776 + }, + { + "type": "lineTo", + "x": 5543551, + "y": 3975101 + }, + { + "type": "lineTo", + "x": 5584826, + "y": 4067176 + }, + { + "type": "lineTo", + "x": 5511801, + "y": 4095751 + }, + { + "type": "lineTo", + "x": 5473701, + "y": 4124326 + }, + { + "type": "lineTo", + "x": 5419726, + "y": 4149726 + }, + { + "type": "lineTo", + "x": 5311776, + "y": 4089401 + }, + { + "type": "lineTo", + "x": 5213351, + "y": 4127501 + }, + { + "type": "lineTo", + "x": 5111751, + "y": 4105276 + }, + { + "type": "lineTo", + "x": 5000626, + "y": 4076701 + }, + { + "type": "lineTo", + "x": 4918076, + "y": 4016376 + }, + { + "type": "lineTo", + "x": 4806951, + "y": 4022726 + }, + { + "type": "lineTo", + "x": 4702176, + "y": 4006851 + }, + { + "type": "lineTo", + "x": 4606926, + "y": 4016376 + }, + { + "type": "lineTo", + "x": 4552951, + "y": 4057651 + }, + { + "type": "lineTo", + "x": 4422776, + "y": 4105276 + }, + { + "type": "lineTo", + "x": 4432301, + "y": 4156076 + }, + { + "type": "lineTo", + "x": 4397376, + "y": 4178301 + }, + { + "type": "lineTo", + "x": 4314826, + "y": 4219576 + }, + { + "type": "lineTo", + "x": 4089401, + "y": 4251326 + }, + { + "type": "lineTo", + "x": 3984626, + "y": 4251326 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 4318001 + }, + { + "type": "lineTo", + "x": 3810001, + "y": 4375151 + }, + { + "type": "lineTo", + "x": 3838576, + "y": 4238626 + }, + { + "type": "lineTo", + "x": 3806826, + "y": 4238626 + }, + { + "type": "lineTo", + "x": 3746501, + "y": 4298951 + }, + { + "type": "lineTo", + "x": 3743326, + "y": 4235451 + }, + { + "type": "lineTo", + "x": 3648076, + "y": 4276726 + }, + { + "type": "lineTo", + "x": 3597276, + "y": 4381501 + }, + { + "type": "lineTo", + "x": 3575051, + "y": 4318001 + }, + { + "type": "lineTo", + "x": 3505201, + "y": 4311651 + }, + { + "type": "lineTo", + "x": 3479801, + "y": 4387851 + }, + { + "type": "lineTo", + "x": 3403601, + "y": 4413251 + }, + { + "type": "lineTo", + "x": 3343276, + "y": 4397376 + }, + { + "type": "lineTo", + "x": 3327401, + "y": 4352926 + }, + { + "type": "lineTo", + "x": 3416301, + "y": 3990976 + }, + { + "type": "lineTo", + "x": 3324226, + "y": 4083051 + }, + { + "type": "lineTo", + "x": 3308351, + "y": 4044951 + }, + { + "type": "lineTo", + "x": 3375026, + "y": 3892551 + }, + { + "type": "lineTo", + "x": 3454401, + "y": 3683001 + }, + { + "type": "lineTo", + "x": 3524251, + "y": 3533776 + }, + { + "type": "lineTo", + "x": 3581401, + "y": 3448051 + }, + { + "type": "lineTo", + "x": 3629026, + "y": 3346451 + }, + { + "type": "lineTo", + "x": 3692526, + "y": 3241676 + }, + { + "type": "lineTo", + "x": 3702051, + "y": 3194051 + }, + { + "type": "lineTo", + "x": 3746501, + "y": 3149601 + }, + { + "type": "lineTo", + "x": 3775076, + "y": 3098801 + }, + { + "type": "lineTo", + "x": 3870326, + "y": 2987676 + }, + { + "type": "lineTo", + "x": 3952876, + "y": 2927351 + }, + { + "type": "lineTo", + "x": 4092576, + "y": 2816226 + }, + { + "type": "lineTo", + "x": 4235451, + "y": 2705101 + }, + { + "type": "lineTo", + "x": 4432301, + "y": 2568576 + }, + { + "type": "lineTo", + "x": 4594226, + "y": 2473326 + }, + { + "type": "lineTo", + "x": 4781551, + "y": 2387601 + }, + { + "type": "lineTo", + "x": 4892676, + "y": 2352676 + }, + { + "type": "lineTo", + "x": 5035551, + "y": 2298701 + }, + { + "type": "lineTo", + "x": 5251451, + "y": 2247901 + }, + { + "type": "lineTo", + "x": 5454651, + "y": 2209801 + }, + { + "type": "lineTo", + "x": 5616576, + "y": 2197101 + }, + { + "type": "lineTo", + "x": 5756276, + "y": 2184401 + }, + { + "type": "lineTo", + "x": 5883276, + "y": 2181226 + }, + { + "type": "lineTo", + "x": 6035676, + "y": 2193926 + }, + { + "type": "lineTo", + "x": 6181726, + "y": 2206626 + }, + { + "type": "lineTo", + "x": 6330951, + "y": 2228851 + }, + { + "type": "lineTo", + "x": 6413501, + "y": 2251076 + }, + { + "type": "lineTo", + "x": 6578601, + "y": 2295526 + }, + { + "type": "lineTo", + "x": 6740526, + "y": 2362201 + }, + { + "type": "lineTo", + "x": 6892926, + "y": 2432051 + }, + { + "type": "lineTo", + "x": 7089776, + "y": 2555876 + }, + { + "type": "lineTo", + "x": 7219951, + "y": 2647951 + }, + { + "type": "lineTo", + "x": 7334251, + "y": 2746376 + }, + { + "type": "lineTo", + "x": 7499351, + "y": 2908301 + }, + { + "type": "lineTo", + "x": 7639051, + "y": 3051176 + }, + { + "type": "lineTo", + "x": 7747001, + "y": 3165476 + }, + { + "type": "lineTo", + "x": 7800976, + "y": 3238501 + }, + { + "type": "lineTo", + "x": 7842251, + "y": 3305176 + }, + { + "type": "lineTo", + "x": 7867651, + "y": 3343276 + }, + { + "type": "lineTo", + "x": 7886701, + "y": 3416301 + }, + { + "type": "lineTo", + "x": 7956551, + "y": 3556001 + }, + { + "type": "lineTo", + "x": 7994651, + "y": 3679826 + }, + { + "type": "lineTo", + "x": 8054976, + "y": 3841751 + }, + { + "type": "lineTo", + "x": 8105776, + "y": 3917951 + }, + { + "type": "lineTo", + "x": 8159751, + "y": 4022726 + }, + { + "type": "lineTo", + "x": 8242301, + "y": 4267201 + }, + { + "type": "lineTo", + "x": 8134351, + "y": 4203701 + }, + { + "type": "lineTo", + "x": 8213726, + "y": 4483101 + }, + { + "type": "lineTo", + "x": 8204201, + "y": 4559301 + }, + { + "type": "lineTo", + "x": 8121651, + "y": 4518026 + }, + { + "type": "lineTo", + "x": 7985126, + "y": 4454526 + }, + { + "type": "lineTo", + "x": 7785101, + "y": 4397376 + }, + { + "type": "lineTo", + "x": 7581901, + "y": 4318001 + }, + { + "type": "lineTo", + "x": 7439026, + "y": 4302126 + }, + { + "type": "lineTo", + "x": 7337426, + "y": 4225926 + }, + { + "type": "cubicBezTo", + "x1": 7263343, + "y1": 4207934, + "x2": 7259109, + "y2": 4224868, + "x": 7185026, + "y": 4206876 + }, + { + "type": "lineTo", + "x": 7108826, + "y": 4197351 + }, + { + "type": "lineTo", + "x": 7054851, + "y": 4210051 + }, + { + "type": "lineTo", + "x": 6981826, + "y": 4162426 + }, + { + "type": "lineTo", + "x": 6931026, + "y": 4117976 + }, + { + "type": "lineTo", + "x": 6845301, + "y": 4114801 + }, + { + "type": "lineTo", + "x": 6788151, + "y": 4137026 + }, + { + "type": "lineTo", + "x": 6743701, + "y": 4083051 + }, + { + "type": "lineTo", + "x": 6667501, + "y": 4092576 + }, + { + "type": "lineTo", + "x": 6572251, + "y": 4051301 + }, + { + "type": "lineTo", + "x": 6454776, + "y": 4076701 + }, + { + "type": "lineTo", + "x": 6378576, + "y": 4114801 + }, + { + "type": "lineTo", + "x": 6270626, + "y": 4108451 + }, + { + "type": "lineTo", + "x": 6235701, + "y": 4064001 + }, + { + "type": "lineTo", + "x": 6175376, + "y": 4102101 + }, + { + "type": "lineTo", + "x": 6080126, + "y": 4102101 + }, + { + "type": "lineTo", + "x": 6022976, + "y": 4076701 + }, + { + "type": "cubicBezTo", + "x1": 6013451, + "y1": 4059768, + "x2": 5965826, + "y2": 4042834, + "x": 5956301, + "y": 4025901 + }, + { + "type": "cubicBezTo", + "x1": 5953126, + "y1": 3980393, + "x2": 5981701, + "y2": 3934884, + "x": 5946776, + "y": 3889376 + }, + { + "type": "lineTo", + "x": 5918201, + "y": 3844926 + }, + { + "type": "cubicBezTo", + "x1": 5915026, + "y1": 3827993, + "x2": 5915025, + "y2": 3807884, + "x": 5911850, + "y": 3790951 + }, + { + "type": "lineTo", + "x": 5927726, + "y": 3660776 + }, + { + "type": "lineTo", + "x": 5937251, + "y": 3546476 + }, + { + "type": "lineTo", + "x": 5911851, + "y": 3435351 + }, + { + "type": "lineTo", + "x": 5873751, + "y": 3314701 + }, + { + "type": "lineTo", + "x": 5826126, + "y": 3213101 + }, + { + "type": "lineTo", + "x": 5784851, + "y": 3146426 + }, + { + "type": "lineTo", + "x": 5708651, + "y": 3057526 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/superior_occipital_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/superior_occipital_colored_regions.json new file mode 100644 index 00000000..2dff4758 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/superior_occipital_colored_regions.json @@ -0,0 +1,936 @@ +{ + "slide_number": 33, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1236", + "path_data": [ + { + "path_width": 3303363, + "path_height": 3581732, + "commands": [ + { + "type": "moveTo", + "x": 3817060, + "y": 2336688 + }, + { + "type": "lineTo", + "x": 3870571, + "y": 2311715 + }, + { + "type": "lineTo", + "x": 3934783, + "y": 2283176 + }, + { + "type": "lineTo", + "x": 4013264, + "y": 2276041 + }, + { + "type": "lineTo", + "x": 4070342, + "y": 2261771 + }, + { + "type": "lineTo", + "x": 4109583, + "y": 2236799 + }, + { + "type": "lineTo", + "x": 4141689, + "y": 2211827 + }, + { + "type": "lineTo", + "x": 4184497, + "y": 2190422 + }, + { + "type": "lineTo", + "x": 4238007, + "y": 2204692 + }, + { + "type": "lineTo", + "x": 4248709, + "y": 2247501 + }, + { + "type": "lineTo", + "x": 4273681, + "y": 2265338 + }, + { + "type": "lineTo", + "x": 4341460, + "y": 2268906 + }, + { + "type": "lineTo", + "x": 4419942, + "y": 2297446 + }, + { + "type": "lineTo", + "x": 4498423, + "y": 2329553 + }, + { + "type": "lineTo", + "x": 4551934, + "y": 2343823 + }, + { + "type": "lineTo", + "x": 4605444, + "y": 2450846 + }, + { + "type": "lineTo", + "x": 4612579, + "y": 2482954 + }, + { + "type": "lineTo", + "x": 4594742, + "y": 2532898 + }, + { + "type": "lineTo", + "x": 4605444, + "y": 2557870 + }, + { + "type": "lineTo", + "x": 4633983, + "y": 2561438 + }, + { + "type": "lineTo", + "x": 4651819, + "y": 2618517 + }, + { + "type": "lineTo", + "x": 4716032, + "y": 2704136 + }, + { + "type": "lineTo", + "x": 4780244, + "y": 2771918 + }, + { + "type": "lineTo", + "x": 4801648, + "y": 2789755 + }, + { + "type": "lineTo", + "x": 4805215, + "y": 2836132 + }, + { + "type": "lineTo", + "x": 4855158, + "y": 2850402 + }, + { + "type": "lineTo", + "x": 4894399, + "y": 2886077 + }, + { + "type": "lineTo", + "x": 4944342, + "y": 2918184 + }, + { + "type": "lineTo", + "x": 4965746, + "y": 2925319 + }, + { + "type": "lineTo", + "x": 4958611, + "y": 2950291 + }, + { + "type": "lineTo", + "x": 4983583, + "y": 2971696 + }, + { + "type": "lineTo", + "x": 5058497, + "y": 3003803 + }, + { + "type": "lineTo", + "x": 5069199, + "y": 3021640 + }, + { + "type": "lineTo", + "x": 5094170, + "y": 3068017 + }, + { + "type": "lineTo", + "x": 5097738, + "y": 3082287 + }, + { + "type": "lineTo", + "x": 5069199, + "y": 3100125 + }, + { + "type": "lineTo", + "x": 5097738, + "y": 3157204 + }, + { + "type": "lineTo", + "x": 5140546, + "y": 3203581 + }, + { + "type": "lineTo", + "x": 5194056, + "y": 3239256 + }, + { + "type": "lineTo", + "x": 5240431, + "y": 3260660 + }, + { + "type": "lineTo", + "x": 5283240, + "y": 3271363 + }, + { + "type": "lineTo", + "x": 5308211, + "y": 3289200 + }, + { + "type": "lineTo", + "x": 5340317, + "y": 3339145 + }, + { + "type": "lineTo", + "x": 5379558, + "y": 3399791 + }, + { + "type": "lineTo", + "x": 5393827, + "y": 3442601 + }, + { + "type": "lineTo", + "x": 5393827, + "y": 3492545 + }, + { + "type": "lineTo", + "x": 5433068, + "y": 3506815 + }, + { + "type": "lineTo", + "x": 5486578, + "y": 3549625 + }, + { + "type": "lineTo", + "x": 5511550, + "y": 3610272 + }, + { + "type": "lineTo", + "x": 5525819, + "y": 3681621 + }, + { + "type": "lineTo", + "x": 5543656, + "y": 3731565 + }, + { + "type": "lineTo", + "x": 5543656, + "y": 3799347 + }, + { + "type": "lineTo", + "x": 5575762, + "y": 3849292 + }, + { + "type": "lineTo", + "x": 5625705, + "y": 3824319 + }, + { + "type": "lineTo", + "x": 5647109, + "y": 3827887 + }, + { + "type": "lineTo", + "x": 5672080, + "y": 3884966 + }, + { + "type": "lineTo", + "x": 5697052, + "y": 3888534 + }, + { + "type": "lineTo", + "x": 5697052, + "y": 3920641 + }, + { + "type": "lineTo", + "x": 5686350, + "y": 3956315 + }, + { + "type": "lineTo", + "x": 5725591, + "y": 4034800 + }, + { + "type": "lineTo", + "x": 5718456, + "y": 4077609 + }, + { + "type": "lineTo", + "x": 5718456, + "y": 4116851 + }, + { + "type": "lineTo", + "x": 5718456, + "y": 4156093 + }, + { + "type": "lineTo", + "x": 5732725, + "y": 4184633 + }, + { + "type": "lineTo", + "x": 5757697, + "y": 4223875 + }, + { + "type": "lineTo", + "x": 5768399, + "y": 4245280 + }, + { + "type": "lineTo", + "x": 5754129, + "y": 4273820 + }, + { + "type": "lineTo", + "x": 5754129, + "y": 4313062 + }, + { + "type": "lineTo", + "x": 5729158, + "y": 4348736 + }, + { + "type": "lineTo", + "x": 5739860, + "y": 4355871 + }, + { + "type": "lineTo", + "x": 5714889, + "y": 4395113 + }, + { + "type": "lineTo", + "x": 5736293, + "y": 4420086 + }, + { + "type": "lineTo", + "x": 5707754, + "y": 4437923 + }, + { + "type": "lineTo", + "x": 5686350, + "y": 4505705 + }, + { + "type": "lineTo", + "x": 5664946, + "y": 4509272 + }, + { + "type": "lineTo", + "x": 5700619, + "y": 4544947 + }, + { + "type": "lineTo", + "x": 5650676, + "y": 4630566 + }, + { + "type": "lineTo", + "x": 5657811, + "y": 4719752 + }, + { + "type": "lineTo", + "x": 5632840, + "y": 4780399 + }, + { + "type": "lineTo", + "x": 5632840, + "y": 4858883 + }, + { + "type": "lineTo", + "x": 5579329, + "y": 4919530 + }, + { + "type": "lineTo", + "x": 5561493, + "y": 4955205 + }, + { + "type": "lineTo", + "x": 5561493, + "y": 4998014 + }, + { + "type": "lineTo", + "x": 5507982, + "y": 5026554 + }, + { + "type": "lineTo", + "x": 5522252, + "y": 5090768 + }, + { + "type": "lineTo", + "x": 5483011, + "y": 5140713 + }, + { + "type": "lineTo", + "x": 5461607, + "y": 5190657 + }, + { + "type": "lineTo", + "x": 5425933, + "y": 5258439 + }, + { + "type": "lineTo", + "x": 5368856, + "y": 5333356 + }, + { + "type": "lineTo", + "x": 5308211, + "y": 5408273 + }, + { + "type": "lineTo", + "x": 5243999, + "y": 5490324 + }, + { + "type": "lineTo", + "x": 5144113, + "y": 5583078 + }, + { + "type": "lineTo", + "x": 5094170, + "y": 5654427 + }, + { + "type": "lineTo", + "x": 5004987, + "y": 5711507 + }, + { + "type": "lineTo", + "x": 4865860, + "y": 5743614 + }, + { + "type": "lineTo", + "x": 4680358, + "y": 5772154 + }, + { + "type": "lineTo", + "x": 4512693, + "y": 5768586 + }, + { + "type": "lineTo", + "x": 4345028, + "y": 5772154 + }, + { + "type": "lineTo", + "x": 4152391, + "y": 5750749 + }, + { + "type": "lineTo", + "x": 4056073, + "y": 5772154 + }, + { + "type": "lineTo", + "x": 3995428, + "y": 5715074 + }, + { + "type": "lineTo", + "x": 3899109, + "y": 5732912 + }, + { + "type": "lineTo", + "x": 3781387, + "y": 5736479 + }, + { + "type": "lineTo", + "x": 3627991, + "y": 5718642 + }, + { + "type": "lineTo", + "x": 3531673, + "y": 5661562 + }, + { + "type": "lineTo", + "x": 3449624, + "y": 5593781 + }, + { + "type": "lineTo", + "x": 3374709, + "y": 5522431 + }, + { + "type": "lineTo", + "x": 3324767, + "y": 5451082 + }, + { + "type": "lineTo", + "x": 3235583, + "y": 5351193 + }, + { + "type": "lineTo", + "x": 3214179, + "y": 5311951 + }, + { + "type": "lineTo", + "x": 3210612, + "y": 5215630 + }, + { + "type": "lineTo", + "x": 3167803, + "y": 5151415 + }, + { + "type": "lineTo", + "x": 3085754, + "y": 5101471 + }, + { + "type": "lineTo", + "x": 2975167, + "y": 5087201 + }, + { + "type": "lineTo", + "x": 2914522, + "y": 4976610 + }, + { + "type": "lineTo", + "x": 2828905, + "y": 4919530 + }, + { + "type": "lineTo", + "x": 2807501, + "y": 4858883 + }, + { + "type": "lineTo", + "x": 2803934, + "y": 4808939 + }, + { + "type": "lineTo", + "x": 2739722, + "y": 4791102 + }, + { + "type": "lineTo", + "x": 2721885, + "y": 4726887 + }, + { + "type": "lineTo", + "x": 2671942, + "y": 4691213 + }, + { + "type": "lineTo", + "x": 2704048, + "y": 4626998 + }, + { + "type": "lineTo", + "x": 2643403, + "y": 4552082 + }, + { + "type": "lineTo", + "x": 2575624, + "y": 4487867 + }, + { + "type": "lineTo", + "x": 2589893, + "y": 4409383 + }, + { + "type": "lineTo", + "x": 2554220, + "y": 4330899 + }, + { + "type": "lineTo", + "x": 2525681, + "y": 4280955 + }, + { + "type": "lineTo", + "x": 2525681, + "y": 4198903 + }, + { + "type": "lineTo", + "x": 2486440, + "y": 4145391 + }, + { + "type": "lineTo", + "x": 2465036, + "y": 4038367 + }, + { + "type": "lineTo", + "x": 2482873, + "y": 3999125 + }, + { + "type": "lineTo", + "x": 2468604, + "y": 3920641 + }, + { + "type": "lineTo", + "x": 2504277, + "y": 3895669 + }, + { + "type": "lineTo", + "x": 2514979, + "y": 3863561 + }, + { + "type": "lineTo", + "x": 2557787, + "y": 3835022 + }, + { + "type": "lineTo", + "x": 2597028, + "y": 3813617 + }, + { + "type": "lineTo", + "x": 2629134, + "y": 3824319 + }, + { + "type": "lineTo", + "x": 2679077, + "y": 3810050 + }, + { + "type": "lineTo", + "x": 2700481, + "y": 3781510 + }, + { + "type": "lineTo", + "x": 2775395, + "y": 3792212 + }, + { + "type": "lineTo", + "x": 2796799, + "y": 3777942 + }, + { + "type": "lineTo", + "x": 2800367, + "y": 3699458 + }, + { + "type": "lineTo", + "x": 2825338, + "y": 3660216 + }, + { + "type": "lineTo", + "x": 2803934, + "y": 3620974 + }, + { + "type": "lineTo", + "x": 2839608, + "y": 3553192 + }, + { + "type": "lineTo", + "x": 2868146, + "y": 3496113 + }, + { + "type": "lineTo", + "x": 2889550, + "y": 3431899 + }, + { + "type": "lineTo", + "x": 2943061, + "y": 3396224 + }, + { + "type": "lineTo", + "x": 2975167, + "y": 3349847 + }, + { + "type": "lineTo", + "x": 2993003, + "y": 3321307 + }, + { + "type": "lineTo", + "x": 3000138, + "y": 3289200 + }, + { + "type": "lineTo", + "x": 3021542, + "y": 3242823 + }, + { + "type": "lineTo", + "x": 3046514, + "y": 3221418 + }, + { + "type": "lineTo", + "x": 3103591, + "y": 3221418 + }, + { + "type": "lineTo", + "x": 3149967, + "y": 3217851 + }, + { + "type": "lineTo", + "x": 3171371, + "y": 3207148 + }, + { + "type": "lineTo", + "x": 3167803, + "y": 3157204 + }, + { + "type": "lineTo", + "x": 3221314, + "y": 3132232 + }, + { + "type": "lineTo", + "x": 3249852, + "y": 3103692 + }, + { + "type": "lineTo", + "x": 3267689, + "y": 3071585 + }, + { + "type": "lineTo", + "x": 3267689, + "y": 3046613 + }, + { + "type": "lineTo", + "x": 3253420, + "y": 3014505 + }, + { + "type": "lineTo", + "x": 3264122, + "y": 2968128 + }, + { + "type": "lineTo", + "x": 3310497, + "y": 2939589 + }, + { + "type": "lineTo", + "x": 3356873, + "y": 2911049 + }, + { + "type": "lineTo", + "x": 3403248, + "y": 2911049 + }, + { + "type": "lineTo", + "x": 3421085, + "y": 2861105 + }, + { + "type": "lineTo", + "x": 3435354, + "y": 2861105 + }, + { + "type": "lineTo", + "x": 3463893, + "y": 2832565 + }, + { + "type": "lineTo", + "x": 3485297, + "y": 2814728 + }, + { + "type": "lineTo", + "x": 3524538, + "y": 2793323 + }, + { + "type": "lineTo", + "x": 3556644, + "y": 2782620 + }, + { + "type": "lineTo", + "x": 3585183, + "y": 2754081 + }, + { + "type": "lineTo", + "x": 3595885, + "y": 2711271 + }, + { + "type": "lineTo", + "x": 3656530, + "y": 2675597 + }, + { + "type": "lineTo", + "x": 3685069, + "y": 2657759 + }, + { + "type": "lineTo", + "x": 3720742, + "y": 2622085 + }, + { + "type": "lineTo", + "x": 3756415, + "y": 2554303 + }, + { + "type": "lineTo", + "x": 3763550, + "y": 2525763 + }, + { + "type": "lineTo", + "x": 3767118, + "y": 2482954 + }, + { + "type": "lineTo", + "x": 3802791, + "y": 2386632 + }, + { + "type": "lineTo", + "x": 3817060, + "y": 2336688 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/superior_sphenoid_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/superior_sphenoid_colored_regions.json new file mode 100644 index 00000000..e418a0f5 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/superior_sphenoid_colored_regions.json @@ -0,0 +1,886 @@ +{ + "slide_number": 31, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1149", + "path_data": [ + { + "path_width": 3940175, + "path_height": 1727200, + "commands": [ + { + "type": "moveTo", + "x": 4197350, + "y": 3508375 + }, + { + "type": "lineTo", + "x": 4143375, + "y": 3584575 + }, + { + "type": "lineTo", + "x": 4089400, + "y": 3657600 + }, + { + "type": "lineTo", + "x": 4029075, + "y": 3727450 + }, + { + "type": "lineTo", + "x": 3943350, + "y": 3771900 + }, + { + "type": "lineTo", + "x": 3813175, + "y": 3721100 + }, + { + "type": "lineTo", + "x": 3727450, + "y": 3746500 + }, + { + "type": "lineTo", + "x": 3600450, + "y": 3727450 + }, + { + "type": "lineTo", + "x": 3451225, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 3362325, + "y": 3654425 + }, + { + "type": "lineTo", + "x": 3225800, + "y": 3638550 + }, + { + "type": "lineTo", + "x": 3124200, + "y": 3644900 + }, + { + "type": "lineTo", + "x": 3028950, + "y": 3702050 + }, + { + "type": "lineTo", + "x": 2930525, + "y": 3733800 + }, + { + "type": "lineTo", + "x": 2940050, + "y": 3784600 + }, + { + "type": "lineTo", + "x": 2898775, + "y": 3797300 + }, + { + "type": "lineTo", + "x": 2892425, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 2679700, + "y": 3860800 + }, + { + "type": "lineTo", + "x": 2501900, + "y": 3879850 + }, + { + "type": "lineTo", + "x": 2393950, + "y": 3952875 + }, + { + "type": "lineTo", + "x": 2311400, + "y": 4006850 + }, + { + "type": "lineTo", + "x": 2308225, + "y": 4048125 + }, + { + "type": "lineTo", + "x": 2343150, + "y": 4051300 + }, + { + "type": "lineTo", + "x": 2355850, + "y": 4102100 + }, + { + "type": "lineTo", + "x": 2387600, + "y": 4121150 + }, + { + "type": "lineTo", + "x": 2387600, + "y": 4203700 + }, + { + "type": "lineTo", + "x": 2441575, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 2457450, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 2492375, + "y": 4219575 + }, + { + "type": "lineTo", + "x": 2492375, + "y": 4264025 + }, + { + "type": "lineTo", + "x": 2552700, + "y": 4270375 + }, + { + "type": "lineTo", + "x": 2552700, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 2597150, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 2625725, + "y": 4375150 + }, + { + "type": "lineTo", + "x": 2606675, + "y": 4448175 + }, + { + "type": "lineTo", + "x": 2676525, + "y": 4467225 + }, + { + "type": "lineTo", + "x": 2740025, + "y": 4464050 + }, + { + "type": "lineTo", + "x": 2692400, + "y": 4518025 + }, + { + "type": "lineTo", + "x": 2717800, + "y": 4537075 + }, + { + "type": "lineTo", + "x": 2774950, + "y": 4514850 + }, + { + "type": "lineTo", + "x": 2730500, + "y": 4581525 + }, + { + "type": "lineTo", + "x": 2743200, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 2816225, + "y": 4556125 + }, + { + "type": "lineTo", + "x": 2854325, + "y": 4606925 + }, + { + "type": "lineTo", + "x": 2816225, + "y": 4632325 + }, + { + "type": "lineTo", + "x": 2892425, + "y": 4638675 + }, + { + "type": "lineTo", + "x": 2914650, + "y": 4673600 + }, + { + "type": "lineTo", + "x": 2936875, + "y": 4699000 + }, + { + "type": "lineTo", + "x": 2924175, + "y": 4740275 + }, + { + "type": "lineTo", + "x": 3041650, + "y": 4721225 + }, + { + "type": "lineTo", + "x": 2990850, + "y": 4797425 + }, + { + "type": "lineTo", + "x": 3067050, + "y": 4797425 + }, + { + "type": "lineTo", + "x": 3063875, + "y": 4870450 + }, + { + "type": "lineTo", + "x": 3143250, + "y": 4816475 + }, + { + "type": "lineTo", + "x": 3111500, + "y": 4889500 + }, + { + "type": "lineTo", + "x": 3076575, + "y": 4959350 + }, + { + "type": "lineTo", + "x": 2946400, + "y": 5064125 + }, + { + "type": "lineTo", + "x": 2847975, + "y": 5153025 + }, + { + "type": "lineTo", + "x": 2921000, + "y": 5181600 + }, + { + "type": "lineTo", + "x": 2981325, + "y": 5162550 + }, + { + "type": "lineTo", + "x": 3057525, + "y": 5178425 + }, + { + "type": "lineTo", + "x": 3089275, + "y": 5216525 + }, + { + "type": "lineTo", + "x": 3149600, + "y": 5111750 + }, + { + "type": "lineTo", + "x": 3225800, + "y": 5057775 + }, + { + "type": "lineTo", + "x": 3314700, + "y": 5048250 + }, + { + "type": "lineTo", + "x": 3422650, + "y": 5029200 + }, + { + "type": "lineTo", + "x": 3565525, + "y": 4991100 + }, + { + "type": "lineTo", + "x": 3540125, + "y": 5035550 + }, + { + "type": "lineTo", + "x": 3594100, + "y": 5022850 + }, + { + "type": "lineTo", + "x": 3641725, + "y": 5060950 + }, + { + "type": "lineTo", + "x": 3698875, + "y": 5092700 + }, + { + "type": "lineTo", + "x": 3752850, + "y": 5099050 + }, + { + "type": "lineTo", + "x": 3775075, + "y": 5153025 + }, + { + "type": "lineTo", + "x": 3775075, + "y": 5203825 + }, + { + "type": "lineTo", + "x": 3867150, + "y": 5172075 + }, + { + "type": "lineTo", + "x": 3930650, + "y": 5137150 + }, + { + "type": "lineTo", + "x": 3997325, + "y": 5127625 + }, + { + "type": "lineTo", + "x": 4086225, + "y": 5127625 + }, + { + "type": "lineTo", + "x": 4127500, + "y": 5105400 + }, + { + "type": "lineTo", + "x": 4152900, + "y": 5102225 + }, + { + "type": "lineTo", + "x": 4162425, + "y": 5127625 + }, + { + "type": "lineTo", + "x": 4219575, + "y": 5127625 + }, + { + "type": "lineTo", + "x": 4241800, + "y": 5108575 + }, + { + "type": "lineTo", + "x": 4314825, + "y": 5108575 + }, + { + "type": "lineTo", + "x": 4346575, + "y": 5130800 + }, + { + "type": "lineTo", + "x": 4441825, + "y": 5143500 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 5153025 + }, + { + "type": "lineTo", + "x": 4594225, + "y": 5187950 + }, + { + "type": "lineTo", + "x": 4645025, + "y": 5140325 + }, + { + "type": "lineTo", + "x": 4686300, + "y": 5124450 + }, + { + "type": "lineTo", + "x": 4638675, + "y": 5102225 + }, + { + "type": "lineTo", + "x": 4625975, + "y": 5070475 + }, + { + "type": "lineTo", + "x": 4711700, + "y": 5095875 + }, + { + "type": "lineTo", + "x": 4765675, + "y": 5057775 + }, + { + "type": "lineTo", + "x": 4854575, + "y": 5064125 + }, + { + "type": "lineTo", + "x": 4940300, + "y": 5054600 + }, + { + "type": "lineTo", + "x": 5073650, + "y": 5102225 + }, + { + "type": "lineTo", + "x": 5194300, + "y": 5184775 + }, + { + "type": "lineTo", + "x": 5267325, + "y": 5229225 + }, + { + "type": "lineTo", + "x": 5359400, + "y": 5200650 + }, + { + "type": "lineTo", + "x": 5489575, + "y": 5235575 + }, + { + "type": "lineTo", + "x": 5505450, + "y": 5184775 + }, + { + "type": "lineTo", + "x": 5524500, + "y": 5143500 + }, + { + "type": "lineTo", + "x": 5505450, + "y": 5114925 + }, + { + "type": "lineTo", + "x": 5476875, + "y": 5114925 + }, + { + "type": "lineTo", + "x": 5426075, + "y": 5073650 + }, + { + "type": "lineTo", + "x": 5391150, + "y": 5051425 + }, + { + "type": "lineTo", + "x": 5391150, + "y": 5051425 + }, + { + "type": "lineTo", + "x": 5378450, + "y": 5067300 + }, + { + "type": "lineTo", + "x": 5346700, + "y": 5029200 + }, + { + "type": "lineTo", + "x": 5327650, + "y": 4991100 + }, + { + "type": "lineTo", + "x": 5346700, + "y": 4965700 + }, + { + "type": "lineTo", + "x": 5410200, + "y": 4994275 + }, + { + "type": "lineTo", + "x": 5410200, + "y": 4949825 + }, + { + "type": "lineTo", + "x": 5470525, + "y": 4940300 + }, + { + "type": "lineTo", + "x": 5403850, + "y": 4911725 + }, + { + "type": "lineTo", + "x": 5435600, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 5435600, + "y": 4806950 + }, + { + "type": "lineTo", + "x": 5489575, + "y": 4791075 + }, + { + "type": "lineTo", + "x": 5499100, + "y": 4778375 + }, + { + "type": "lineTo", + "x": 5546725, + "y": 4797425 + }, + { + "type": "lineTo", + "x": 5610225, + "y": 4829175 + }, + { + "type": "lineTo", + "x": 5622925, + "y": 4803775 + }, + { + "type": "lineTo", + "x": 5661025, + "y": 4800600 + }, + { + "type": "lineTo", + "x": 5654675, + "y": 4746625 + }, + { + "type": "lineTo", + "x": 5676900, + "y": 4667250 + }, + { + "type": "lineTo", + "x": 5616575, + "y": 4594225 + }, + { + "type": "lineTo", + "x": 5702300, + "y": 4584700 + }, + { + "type": "lineTo", + "x": 5651500, + "y": 4549775 + }, + { + "type": "lineTo", + "x": 5699125, + "y": 4498975 + }, + { + "type": "lineTo", + "x": 5737225, + "y": 4448175 + }, + { + "type": "lineTo", + "x": 5829300, + "y": 4445000 + }, + { + "type": "lineTo", + "x": 5911850, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 5956300, + "y": 4346575 + }, + { + "type": "lineTo", + "x": 6010275, + "y": 4321175 + }, + { + "type": "lineTo", + "x": 6165850, + "y": 4308475 + }, + { + "type": "lineTo", + "x": 6194425, + "y": 4257675 + }, + { + "type": "lineTo", + "x": 6232525, + "y": 4203700 + }, + { + "type": "lineTo", + "x": 6248400, + "y": 4137025 + }, + { + "type": "lineTo", + "x": 6242050, + "y": 4111625 + }, + { + "type": "lineTo", + "x": 6216650, + "y": 4095750 + }, + { + "type": "lineTo", + "x": 6188075, + "y": 4057650 + }, + { + "type": "lineTo", + "x": 6149975, + "y": 4060825 + }, + { + "type": "lineTo", + "x": 6137275, + "y": 4019550 + }, + { + "type": "lineTo", + "x": 6105525, + "y": 4019550 + }, + { + "type": "lineTo", + "x": 6051550, + "y": 3946525 + }, + { + "type": "lineTo", + "x": 5972175, + "y": 3924300 + }, + { + "type": "lineTo", + "x": 5918200, + "y": 3911600 + }, + { + "type": "lineTo", + "x": 5838825, + "y": 3848100 + }, + { + "type": "lineTo", + "x": 5689600, + "y": 3829050 + }, + { + "type": "lineTo", + "x": 5619750, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 5534025, + "y": 3832225 + }, + { + "type": "lineTo", + "x": 5419725, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 5292725, + "y": 3749675 + }, + { + "type": "lineTo", + "x": 5216525, + "y": 3708400 + }, + { + "type": "lineTo", + "x": 5149850, + "y": 3721100 + }, + { + "type": "lineTo", + "x": 5076825, + "y": 3679825 + }, + { + "type": "lineTo", + "x": 4968875, + "y": 3702050 + }, + { + "type": "lineTo", + "x": 4908550, + "y": 3733800 + }, + { + "type": "lineTo", + "x": 4879975, + "y": 3749675 + }, + { + "type": "lineTo", + "x": 4829175, + "y": 3733800 + }, + { + "type": "lineTo", + "x": 4797425, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 4743450, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 4679950, + "y": 3727450 + }, + { + "type": "lineTo", + "x": 4587875, + "y": 3727450 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 3698875 + }, + { + "type": "lineTo", + "x": 4438650, + "y": 3663950 + }, + { + "type": "lineTo", + "x": 4362450, + "y": 3660775 + }, + { + "type": "lineTo", + "x": 4327525, + "y": 3644900 + }, + { + "type": "lineTo", + "x": 4276725, + "y": 3587750 + }, + { + "type": "lineTo", + "x": 4241800, + "y": 3546475 + }, + { + "type": "lineTo", + "x": 4197350, + "y": 3508375 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/superior_temporal_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/superior_temporal_colored_regions.json new file mode 100644 index 00000000..764033d5 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/superior_temporal_colored_regions.json @@ -0,0 +1,1387 @@ +{ + "slide_number": 32, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1198", + "path_data": [ + { + "path_width": 2000783, + "path_height": 2468572, + "commands": [ + { + "type": "moveTo", + "x": 5304701, + "y": 3488481 + }, + { + "type": "lineTo", + "x": 5301453, + "y": 3553444 + }, + { + "type": "lineTo", + "x": 5294957, + "y": 3618406 + }, + { + "type": "lineTo", + "x": 5259229, + "y": 3696361 + }, + { + "type": "lineTo", + "x": 5249485, + "y": 3745083 + }, + { + "type": "lineTo", + "x": 5249485, + "y": 3767820 + }, + { + "type": "lineTo", + "x": 5229997, + "y": 3832782 + }, + { + "type": "lineTo", + "x": 5191020, + "y": 3881504 + }, + { + "type": "lineTo", + "x": 5132556, + "y": 3917233 + }, + { + "type": "lineTo", + "x": 5087083, + "y": 3936722 + }, + { + "type": "lineTo", + "x": 5051355, + "y": 3978947 + }, + { + "type": "lineTo", + "x": 5028619, + "y": 4008180 + }, + { + "type": "lineTo", + "x": 4963659, + "y": 4014677 + }, + { + "type": "lineTo", + "x": 4914938, + "y": 4017925 + }, + { + "type": "lineTo", + "x": 4892202, + "y": 4024421 + }, + { + "type": "lineTo", + "x": 4908442, + "y": 4037414 + }, + { + "type": "lineTo", + "x": 4901946, + "y": 4105624 + }, + { + "type": "lineTo", + "x": 4882458, + "y": 4144602 + }, + { + "type": "lineTo", + "x": 4833738, + "y": 4151098 + }, + { + "type": "lineTo", + "x": 4785017, + "y": 4170586 + }, + { + "type": "lineTo", + "x": 4742793, + "y": 4209564 + }, + { + "type": "lineTo", + "x": 4720057, + "y": 4264782 + }, + { + "type": "lineTo", + "x": 4729801, + "y": 4316752 + }, + { + "type": "lineTo", + "x": 4707065, + "y": 4349233 + }, + { + "type": "lineTo", + "x": 4697321, + "y": 4391458 + }, + { + "type": "lineTo", + "x": 4648600, + "y": 4404451 + }, + { + "type": "lineTo", + "x": 4629112, + "y": 4430436 + }, + { + "type": "lineTo", + "x": 4606376, + "y": 4475909 + }, + { + "type": "lineTo", + "x": 4570648, + "y": 4456421 + }, + { + "type": "lineTo", + "x": 4528423, + "y": 4466166 + }, + { + "type": "lineTo", + "x": 4482951, + "y": 4505143 + }, + { + "type": "lineTo", + "x": 4453719, + "y": 4583098 + }, + { + "type": "lineTo", + "x": 4430983, + "y": 4625323 + }, + { + "type": "lineTo", + "x": 4379014, + "y": 4690286 + }, + { + "type": "lineTo", + "x": 4330294, + "y": 4667549 + }, + { + "type": "lineTo", + "x": 4359526, + "y": 4748752 + }, + { + "type": "lineTo", + "x": 4323798, + "y": 4797474 + }, + { + "type": "lineTo", + "x": 4369270, + "y": 4914406 + }, + { + "type": "lineTo", + "x": 4310806, + "y": 4917654 + }, + { + "type": "lineTo", + "x": 4307558, + "y": 4963128 + }, + { + "type": "lineTo", + "x": 4252341, + "y": 4985865 + }, + { + "type": "lineTo", + "x": 4275077, + "y": 5044331 + }, + { + "type": "lineTo", + "x": 4236101, + "y": 5076812 + }, + { + "type": "lineTo", + "x": 4174389, + "y": 5050827 + }, + { + "type": "lineTo", + "x": 4096436, + "y": 5119038 + }, + { + "type": "lineTo", + "x": 4021732, + "y": 5089805 + }, + { + "type": "lineTo", + "x": 4015236, + "y": 5138526 + }, + { + "type": "lineTo", + "x": 3966515, + "y": 5106045 + }, + { + "type": "lineTo", + "x": 3943779, + "y": 5171008 + }, + { + "type": "lineTo", + "x": 3898307, + "y": 5180752 + }, + { + "type": "lineTo", + "x": 3781378, + "y": 5076812 + }, + { + "type": "lineTo", + "x": 3726161, + "y": 5128782 + }, + { + "type": "lineTo", + "x": 3690433, + "y": 5106045 + }, + { + "type": "lineTo", + "x": 3784626, + "y": 4966376 + }, + { + "type": "lineTo", + "x": 3807362, + "y": 4946887 + }, + { + "type": "lineTo", + "x": 3758642, + "y": 4927398 + }, + { + "type": "lineTo", + "x": 3784626, + "y": 4868932 + }, + { + "type": "lineTo", + "x": 3732657, + "y": 4868932 + }, + { + "type": "lineTo", + "x": 3680689, + "y": 4803970 + }, + { + "type": "lineTo", + "x": 3667697, + "y": 4687038 + }, + { + "type": "lineTo", + "x": 3622225, + "y": 4687038 + }, + { + "type": "lineTo", + "x": 3651457, + "y": 4657805 + }, + { + "type": "lineTo", + "x": 3700177, + "y": 4557113 + }, + { + "type": "lineTo", + "x": 3677441, + "y": 4531128 + }, + { + "type": "lineTo", + "x": 3700177, + "y": 4459669 + }, + { + "type": "lineTo", + "x": 3722913, + "y": 4440180 + }, + { + "type": "lineTo", + "x": 3696929, + "y": 4414195 + }, + { + "type": "lineTo", + "x": 3664449, + "y": 4410947 + }, + { + "type": "lineTo", + "x": 3644961, + "y": 4440180 + }, + { + "type": "lineTo", + "x": 3622225, + "y": 4436932 + }, + { + "type": "lineTo", + "x": 3589744, + "y": 4449925 + }, + { + "type": "lineTo", + "x": 3576752, + "y": 4407699 + }, + { + "type": "lineTo", + "x": 3521536, + "y": 4417444 + }, + { + "type": "lineTo", + "x": 3495552, + "y": 4394707 + }, + { + "type": "lineTo", + "x": 3443583, + "y": 4342737 + }, + { + "type": "lineTo", + "x": 3411103, + "y": 4397955 + }, + { + "type": "lineTo", + "x": 3368879, + "y": 4336241 + }, + { + "type": "lineTo", + "x": 3310414, + "y": 4235549 + }, + { + "type": "lineTo", + "x": 3303918, + "y": 4086135 + }, + { + "type": "lineTo", + "x": 3329902, + "y": 3982195 + }, + { + "type": "lineTo", + "x": 3352639, + "y": 3852271 + }, + { + "type": "lineTo", + "x": 3427343, + "y": 3667128 + }, + { + "type": "lineTo", + "x": 3482560, + "y": 3524211 + }, + { + "type": "lineTo", + "x": 3521536, + "y": 3456000 + }, + { + "type": "lineTo", + "x": 3580000, + "y": 3303338 + }, + { + "type": "lineTo", + "x": 3618977, + "y": 3186406 + }, + { + "type": "lineTo", + "x": 3654705, + "y": 3095459 + }, + { + "type": "lineTo", + "x": 3716417, + "y": 2991519 + }, + { + "type": "lineTo", + "x": 3846338, + "y": 2838857 + }, + { + "type": "lineTo", + "x": 3998995, + "y": 2783639 + }, + { + "type": "lineTo", + "x": 4096436, + "y": 2741414 + }, + { + "type": "lineTo", + "x": 4245845, + "y": 2712180 + }, + { + "type": "lineTo", + "x": 4281574, + "y": 2767398 + }, + { + "type": "lineTo", + "x": 4265333, + "y": 2832361 + }, + { + "type": "lineTo", + "x": 4353030, + "y": 2855098 + }, + { + "type": "lineTo", + "x": 4388758, + "y": 2855098 + }, + { + "type": "lineTo", + "x": 4333542, + "y": 2890827 + }, + { + "type": "lineTo", + "x": 4366022, + "y": 2916812 + }, + { + "type": "lineTo", + "x": 4430983, + "y": 2894075 + }, + { + "type": "lineTo", + "x": 4382262, + "y": 2972030 + }, + { + "type": "lineTo", + "x": 4398502, + "y": 2972030 + }, + { + "type": "lineTo", + "x": 4456967, + "y": 2942797 + }, + { + "type": "lineTo", + "x": 4492695, + "y": 2955789 + }, + { + "type": "lineTo", + "x": 4453719, + "y": 3007759 + }, + { + "type": "lineTo", + "x": 4463463, + "y": 3017504 + }, + { + "type": "lineTo", + "x": 4534919, + "y": 3007759 + }, + { + "type": "lineTo", + "x": 4573896, + "y": 3056481 + }, + { + "type": "lineTo", + "x": 4635608, + "y": 3066226 + }, + { + "type": "lineTo", + "x": 4645352, + "y": 3127940 + }, + { + "type": "lineTo", + "x": 4694073, + "y": 3131188 + }, + { + "type": "lineTo", + "x": 4681080, + "y": 3202647 + }, + { + "type": "lineTo", + "x": 4752537, + "y": 3186406 + }, + { + "type": "lineTo", + "x": 4710313, + "y": 3251368 + }, + { + "type": "lineTo", + "x": 4674584, + "y": 3326075 + }, + { + "type": "lineTo", + "x": 4557656, + "y": 3397534 + }, + { + "type": "lineTo", + "x": 4482951, + "y": 3446256 + }, + { + "type": "lineTo", + "x": 4489447, + "y": 3491729 + }, + { + "type": "lineTo", + "x": 4564152, + "y": 3498226 + }, + { + "type": "lineTo", + "x": 4619368, + "y": 3468992 + }, + { + "type": "lineTo", + "x": 4668088, + "y": 3501474 + }, + { + "type": "lineTo", + "x": 4746041, + "y": 3475489 + }, + { + "type": "lineTo", + "x": 4814249, + "y": 3436511 + }, + { + "type": "lineTo", + "x": 4875962, + "y": 3397534 + }, + { + "type": "lineTo", + "x": 4934426, + "y": 3378045 + }, + { + "type": "lineTo", + "x": 5002635, + "y": 3368301 + }, + { + "type": "lineTo", + "x": 5054603, + "y": 3365053 + }, + { + "type": "lineTo", + "x": 5122812, + "y": 3378045 + }, + { + "type": "lineTo", + "x": 5152044, + "y": 3391038 + }, + { + "type": "lineTo", + "x": 5184524, + "y": 3371549 + }, + { + "type": "lineTo", + "x": 5217004, + "y": 3404030 + }, + { + "type": "lineTo", + "x": 5252733, + "y": 3413774 + }, + { + "type": "lineTo", + "x": 5304701, + "y": 3488481 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1199", + "path_data": [ + { + "path_width": 2030015, + "path_height": 2822617, + "commands": [ + { + "type": "moveTo", + "x": 6074483, + "y": 3530708 + }, + { + "type": "lineTo", + "x": 6087475, + "y": 3579430 + }, + { + "type": "lineTo", + "x": 6139443, + "y": 3696362 + }, + { + "type": "lineTo", + "x": 6126451, + "y": 3741836 + }, + { + "type": "lineTo", + "x": 6126451, + "y": 3784061 + }, + { + "type": "lineTo", + "x": 6178420, + "y": 3800302 + }, + { + "type": "lineTo", + "x": 6188164, + "y": 3871760 + }, + { + "type": "lineTo", + "x": 6256372, + "y": 3943219 + }, + { + "type": "lineTo", + "x": 6314837, + "y": 4004933 + }, + { + "type": "lineTo", + "x": 6344069, + "y": 4008181 + }, + { + "type": "lineTo", + "x": 6337573, + "y": 4060151 + }, + { + "type": "lineTo", + "x": 6366805, + "y": 4079640 + }, + { + "type": "lineTo", + "x": 6438262, + "y": 4082888 + }, + { + "type": "lineTo", + "x": 6470742, + "y": 4095881 + }, + { + "type": "lineTo", + "x": 6506470, + "y": 4138106 + }, + { + "type": "lineTo", + "x": 6499974, + "y": 4212813 + }, + { + "type": "lineTo", + "x": 6542198, + "y": 4219309 + }, + { + "type": "lineTo", + "x": 6574679, + "y": 4232302 + }, + { + "type": "lineTo", + "x": 6620151, + "y": 4255039 + }, + { + "type": "lineTo", + "x": 6639639, + "y": 4300512 + }, + { + "type": "lineTo", + "x": 6655879, + "y": 4320001 + }, + { + "type": "lineTo", + "x": 6633143, + "y": 4365475 + }, + { + "type": "lineTo", + "x": 6655879, + "y": 4427189 + }, + { + "type": "lineTo", + "x": 6707848, + "y": 4469415 + }, + { + "type": "lineTo", + "x": 6750072, + "y": 4488903 + }, + { + "type": "lineTo", + "x": 6782552, + "y": 4511640 + }, + { + "type": "lineTo", + "x": 6828024, + "y": 4524633 + }, + { + "type": "lineTo", + "x": 6857257, + "y": 4524633 + }, + { + "type": "lineTo", + "x": 6879993, + "y": 4583099 + }, + { + "type": "lineTo", + "x": 6902729, + "y": 4631821 + }, + { + "type": "lineTo", + "x": 6941705, + "y": 4683790 + }, + { + "type": "lineTo", + "x": 6944953, + "y": 4739009 + }, + { + "type": "lineTo", + "x": 7006666, + "y": 4787730 + }, + { + "type": "lineTo", + "x": 7048890, + "y": 4836452 + }, + { + "type": "lineTo", + "x": 7074874, + "y": 4898166 + }, + { + "type": "lineTo", + "x": 7097610, + "y": 4982618 + }, + { + "type": "lineTo", + "x": 7107355, + "y": 5067069 + }, + { + "type": "lineTo", + "x": 7146331, + "y": 5132031 + }, + { + "type": "lineTo", + "x": 7198299, + "y": 5106046 + }, + { + "type": "lineTo", + "x": 7234027, + "y": 5167760 + }, + { + "type": "lineTo", + "x": 7256764, + "y": 5187249 + }, + { + "type": "lineTo", + "x": 7256764, + "y": 5248963 + }, + { + "type": "lineTo", + "x": 7295740, + "y": 5326918 + }, + { + "type": "lineTo", + "x": 7282748, + "y": 5378888 + }, + { + "type": "lineTo", + "x": 7302236, + "y": 5424362 + }, + { + "type": "lineTo", + "x": 7285996, + "y": 5479580 + }, + { + "type": "lineTo", + "x": 7337964, + "y": 5525054 + }, + { + "type": "lineTo", + "x": 7396429, + "y": 5466587 + }, + { + "type": "lineTo", + "x": 7422413, + "y": 5395129 + }, + { + "type": "lineTo", + "x": 7480877, + "y": 5336663 + }, + { + "type": "lineTo", + "x": 7523102, + "y": 5284693 + }, + { + "type": "lineTo", + "x": 7558830, + "y": 5239219 + }, + { + "type": "lineTo", + "x": 7568574, + "y": 5148272 + }, + { + "type": "lineTo", + "x": 7575070, + "y": 5099550 + }, + { + "type": "lineTo", + "x": 7594558, + "y": 5044332 + }, + { + "type": "lineTo", + "x": 7601054, + "y": 5005354 + }, + { + "type": "lineTo", + "x": 7653023, + "y": 4930648 + }, + { + "type": "lineTo", + "x": 7698495, + "y": 4891670 + }, + { + "type": "lineTo", + "x": 7743967, + "y": 4852693 + }, + { + "type": "lineTo", + "x": 7717983, + "y": 4752001 + }, + { + "type": "lineTo", + "x": 7701743, + "y": 4719520 + }, + { + "type": "lineTo", + "x": 7727727, + "y": 4670798 + }, + { + "type": "lineTo", + "x": 7727727, + "y": 4609084 + }, + { + "type": "lineTo", + "x": 7704991, + "y": 4521384 + }, + { + "type": "lineTo", + "x": 7750463, + "y": 4511640 + }, + { + "type": "lineTo", + "x": 7815424, + "y": 4505144 + }, + { + "type": "lineTo", + "x": 7844656, + "y": 4482407 + }, + { + "type": "lineTo", + "x": 7938849, + "y": 4355730 + }, + { + "type": "lineTo", + "x": 7981073, + "y": 4290768 + }, + { + "type": "lineTo", + "x": 8036289, + "y": 4151099 + }, + { + "type": "lineTo", + "x": 8036289, + "y": 4053655 + }, + { + "type": "lineTo", + "x": 8091506, + "y": 3985445 + }, + { + "type": "lineTo", + "x": 8072018, + "y": 3907490 + }, + { + "type": "lineTo", + "x": 8085010, + "y": 3829535 + }, + { + "type": "lineTo", + "x": 8104498, + "y": 3764572 + }, + { + "type": "lineTo", + "x": 8081762, + "y": 3657384 + }, + { + "type": "lineTo", + "x": 8049282, + "y": 3540452 + }, + { + "type": "lineTo", + "x": 7981073, + "y": 3381294 + }, + { + "type": "lineTo", + "x": 7958337, + "y": 3303339 + }, + { + "type": "lineTo", + "x": 7929105, + "y": 3196151 + }, + { + "type": "lineTo", + "x": 7877136, + "y": 3105204 + }, + { + "type": "lineTo", + "x": 7802432, + "y": 2994768 + }, + { + "type": "lineTo", + "x": 7727727, + "y": 2903821 + }, + { + "type": "lineTo", + "x": 7682255, + "y": 2848603 + }, + { + "type": "lineTo", + "x": 7630286, + "y": 2816121 + }, + { + "type": "lineTo", + "x": 7552334, + "y": 2806377 + }, + { + "type": "lineTo", + "x": 7493869, + "y": 2816121 + }, + { + "type": "lineTo", + "x": 7409421, + "y": 2812873 + }, + { + "type": "lineTo", + "x": 7363948, + "y": 2796633 + }, + { + "type": "lineTo", + "x": 7315228, + "y": 2702437 + }, + { + "type": "lineTo", + "x": 7292492, + "y": 2744663 + }, + { + "type": "lineTo", + "x": 7247020, + "y": 2738166 + }, + { + "type": "lineTo", + "x": 7211291, + "y": 2783640 + }, + { + "type": "lineTo", + "x": 7198299, + "y": 2803129 + }, + { + "type": "lineTo", + "x": 7175563, + "y": 2809625 + }, + { + "type": "lineTo", + "x": 7130091, + "y": 2744663 + }, + { + "type": "lineTo", + "x": 7087866, + "y": 2809625 + }, + { + "type": "lineTo", + "x": 7078122, + "y": 2861595 + }, + { + "type": "lineTo", + "x": 7045642, + "y": 2903821 + }, + { + "type": "lineTo", + "x": 7029402, + "y": 2933054 + }, + { + "type": "lineTo", + "x": 6961193, + "y": 2968783 + }, + { + "type": "lineTo", + "x": 6961193, + "y": 2994768 + }, + { + "type": "lineTo", + "x": 6915721, + "y": 2978527 + }, + { + "type": "lineTo", + "x": 6889737, + "y": 3027249 + }, + { + "type": "lineTo", + "x": 6889737, + "y": 3046738 + }, + { + "type": "lineTo", + "x": 6896233, + "y": 3082467 + }, + { + "type": "lineTo", + "x": 6892985, + "y": 3111700 + }, + { + "type": "lineTo", + "x": 6870249, + "y": 3150678 + }, + { + "type": "lineTo", + "x": 6831272, + "y": 3196151 + }, + { + "type": "lineTo", + "x": 6789048, + "y": 3257866 + }, + { + "type": "lineTo", + "x": 6789048, + "y": 3280603 + }, + { + "type": "lineTo", + "x": 6753320, + "y": 3293595 + }, + { + "type": "lineTo", + "x": 6730584, + "y": 3322828 + }, + { + "type": "lineTo", + "x": 6746824, + "y": 3352061 + }, + { + "type": "lineTo", + "x": 6789048, + "y": 3371550 + }, + { + "type": "lineTo", + "x": 6828024, + "y": 3400783 + }, + { + "type": "lineTo", + "x": 6850761, + "y": 3430016 + }, + { + "type": "lineTo", + "x": 6860505, + "y": 3449505 + }, + { + "type": "lineTo", + "x": 6889737, + "y": 3465745 + }, + { + "type": "lineTo", + "x": 6883241, + "y": 3514467 + }, + { + "type": "lineTo", + "x": 6805288, + "y": 3517715 + }, + { + "type": "cubicBezTo", + "x1": 6791213, + "y1": 3519881, + "x2": 6741411, + "y2": 3486316, + "x": 6727336, + "y": 3488482 + }, + { + "type": "lineTo", + "x": 6720840, + "y": 3537204 + }, + { + "type": "lineTo", + "x": 6662375, + "y": 3537204 + }, + { + "type": "lineTo", + "x": 6587671, + "y": 3491730 + }, + { + "type": "lineTo", + "x": 6506470, + "y": 3449505 + }, + { + "type": "lineTo", + "x": 6441510, + "y": 3423520 + }, + { + "type": "lineTo", + "x": 6370053, + "y": 3404031 + }, + { + "type": "lineTo", + "x": 6301845, + "y": 3397535 + }, + { + "type": "lineTo", + "x": 6272612, + "y": 3391039 + }, + { + "type": "lineTo", + "x": 6220644, + "y": 3391039 + }, + { + "type": "lineTo", + "x": 6188164, + "y": 3413775 + }, + { + "type": "lineTo", + "x": 6142691, + "y": 3423520 + }, + { + "type": "lineTo", + "x": 6090723, + "y": 3413775 + }, + { + "type": "lineTo", + "x": 6084227, + "y": 3478738 + }, + { + "type": "lineTo", + "x": 6074483, + "y": 3530708 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/symphyseal_surface_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/symphyseal_surface_colored_regions.json new file mode 100644 index 00000000..f17be81e --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/symphyseal_surface_colored_regions.json @@ -0,0 +1,47 @@ +{ + "slide_number": 19, + "images": [ + { + "image_name": "pelvis_med_blk.psd", + "width": 4498144, + "height": 3821069, + "colored_regions": [ + { + "region_name": "Symphyseal surface", + "anatomical_name": "Symphyseal surface", + "color": "008000", + "color_name": "green", + "opacity": 0.35, + "fill": true, + "path_data": [ + { + "path_width": 1027854, + "path_height": 821805, + "commands": [ + {"type": "moveTo", "x": 1027854, "y": 808222}, + {"type": "lineTo", "x": 878440, "y": 624843}, + {"type": "lineTo", "x": 674693, "y": 461841}, + {"type": "lineTo", "x": 457362, "y": 285254}, + {"type": "lineTo", "x": 328323, "y": 183378}, + {"type": "cubicBezTo", "x1": 289837, "y1": 151683, "x2": 258143, "y2": 65654, "x": 219657, "y": 33959}, + {"type": "lineTo", "x": 124575, "y": 0}, + {"type": "lineTo", "x": 0, "y": 28775}, + {"type": "lineTo", "x": 7151, "y": 130651}, + {"type": "lineTo", "x": 63451, "y": 251296}, + {"type": "lineTo", "x": 124575, "y": 407506}, + {"type": "lineTo", "x": 267198, "y": 489008}, + {"type": "lineTo", "x": 423405, "y": 652011}, + {"type": "lineTo", "x": 654318, "y": 781054}, + {"type": "lineTo", "x": 824107, "y": 821805}, + {"type": "lineTo", "x": 1027854, "y": 808222}, + {"type": "close"} + ] + } + ], + "offset_x": 0, + "offset_y": 0 + } + ] + } + ] +} diff --git a/boneset-api/data/annotations/ColoredRegions/thoracic_articular_surfaces.json b/boneset-api/data/annotations/ColoredRegions/thoracic_articular_surfaces.json new file mode 100644 index 00000000..35ea7cf0 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/thoracic_articular_surfaces.json @@ -0,0 +1,456 @@ +{ + "slide_number": 37, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1212", + "path_data": [ + { + "path_width": 196850, + "path_height": 527050, + "commands": [ + { + "type": "moveTo", + "x": 7007225, + "y": 2854325 + }, + { + "type": "lineTo", + "x": 7013575, + "y": 2959100 + }, + { + "type": "lineTo", + "x": 7013575, + "y": 3054350 + }, + { + "type": "lineTo", + "x": 6985000, + "y": 3146425 + }, + { + "type": "lineTo", + "x": 6918325, + "y": 3244850 + }, + { + "type": "lineTo", + "x": 6877050, + "y": 3286125 + }, + { + "type": "lineTo", + "x": 6816725, + "y": 3241675 + }, + { + "type": "lineTo", + "x": 6838950, + "y": 3197225 + }, + { + "type": "lineTo", + "x": 6848475, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 6854825, + "y": 3009900 + }, + { + "type": "lineTo", + "x": 6873875, + "y": 2908300 + }, + { + "type": "lineTo", + "x": 6886575, + "y": 2841625 + }, + { + "type": "lineTo", + "x": 6924675, + "y": 2774950 + }, + { + "type": "lineTo", + "x": 6946900, + "y": 2759075 + }, + { + "type": "lineTo", + "x": 6985000, + "y": 2784475 + }, + { + "type": "lineTo", + "x": 7007225, + "y": 2854325 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1213", + "path_data": [ + { + "path_width": 111125, + "path_height": 384175, + "commands": [ + { + "type": "moveTo", + "x": 6969126, + "y": 3886201 + }, + { + "type": "lineTo", + "x": 6940551, + "y": 3949701 + }, + { + "type": "lineTo", + "x": 6886576, + "y": 4076701 + }, + { + "type": "lineTo", + "x": 6886576, + "y": 4143376 + }, + { + "type": "lineTo", + "x": 6892926, + "y": 4232276 + }, + { + "type": "lineTo", + "x": 6902451, + "y": 4270376 + }, + { + "type": "lineTo", + "x": 6950076, + "y": 4267201 + }, + { + "type": "lineTo", + "x": 6972301, + "y": 4203701 + }, + { + "type": "lineTo", + "x": 6997701, + "y": 4089401 + }, + { + "type": "lineTo", + "x": 6997701, + "y": 3981451 + }, + { + "type": "lineTo", + "x": 6969126, + "y": 3886201 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1214", + "path_data": [ + { + "path_width": 304800, + "path_height": 111125, + "commands": [ + { + "type": "moveTo", + "x": 4213225, + "y": 2235201 + }, + { + "type": "lineTo", + "x": 4060825, + "y": 2279651 + }, + { + "type": "lineTo", + "x": 3930650, + "y": 2339976 + }, + { + "type": "lineTo", + "x": 3908425, + "y": 2339976 + }, + { + "type": "lineTo", + "x": 3917950, + "y": 2308226 + }, + { + "type": "lineTo", + "x": 4041775, + "y": 2257426 + }, + { + "type": "lineTo", + "x": 4121150, + "y": 2228851 + }, + { + "type": "lineTo", + "x": 4213225, + "y": 2235201 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1215", + "path_data": [ + { + "path_width": 222250, + "path_height": 63500, + "commands": [ + { + "type": "moveTo", + "x": 4683125, + "y": 2311400 + }, + { + "type": "lineTo", + "x": 4740275, + "y": 2305050 + }, + { + "type": "lineTo", + "x": 4810125, + "y": 2305050 + }, + { + "type": "lineTo", + "x": 4905375, + "y": 2368550 + }, + { + "type": "lineTo", + "x": 4819650, + "y": 2355850 + }, + { + "type": "lineTo", + "x": 4683125, + "y": 2311400 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1216", + "path_data": [ + { + "path_width": 295275, + "path_height": 120650, + "commands": [ + { + "type": "moveTo", + "x": 4089401, + "y": 4864100 + }, + { + "type": "lineTo", + "x": 4013201, + "y": 4841875 + }, + { + "type": "lineTo", + "x": 3949701, + "y": 4838700 + }, + { + "type": "lineTo", + "x": 3870326, + "y": 4854575 + }, + { + "type": "lineTo", + "x": 3822701, + "y": 4895850 + }, + { + "type": "lineTo", + "x": 3794126, + "y": 4943475 + }, + { + "type": "lineTo", + "x": 3841751, + "y": 4949825 + }, + { + "type": "lineTo", + "x": 3911601, + "y": 4959350 + }, + { + "type": "lineTo", + "x": 3965576, + "y": 4959350 + }, + { + "type": "lineTo", + "x": 4019551, + "y": 4949825 + }, + { + "type": "lineTo", + "x": 4057651, + "y": 4930775 + }, + { + "type": "lineTo", + "x": 4089401, + "y": 4864100 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1217", + "path_data": [ + { + "path_width": 276225, + "path_height": 139700, + "commands": [ + { + "type": "moveTo", + "x": 4470401, + "y": 4959350 + }, + { + "type": "lineTo", + "x": 4562476, + "y": 4994275 + }, + { + "type": "lineTo", + "x": 4619626, + "y": 5010150 + }, + { + "type": "lineTo", + "x": 4673601, + "y": 5029200 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 5038725 + }, + { + "type": "lineTo", + "x": 4724401, + "y": 5026025 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 4994275 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 4962525 + }, + { + "type": "lineTo", + "x": 4629151, + "y": 4921250 + }, + { + "type": "lineTo", + "x": 4594226, + "y": 4908550 + }, + { + "type": "lineTo", + "x": 4552951, + "y": 4902200 + }, + { + "type": "lineTo", + "x": 4518026, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 4464051, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 4454526, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 4448176, + "y": 4899025 + }, + { + "type": "lineTo", + "x": 4470401, + "y": 4959350 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/thoracic_body.json b/boneset-api/data/annotations/ColoredRegions/thoracic_body.json new file mode 100644 index 00000000..e8d407fd --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/thoracic_body.json @@ -0,0 +1,825 @@ +{ + "slide_number": 32, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1060", + "path_data": [ + { + "path_width": 990600, + "path_height": 990600, + "commands": [ + { + "type": "moveTo", + "x": 3971925, + "y": 2486025 + }, + { + "type": "lineTo", + "x": 3911600, + "y": 2619375 + }, + { + "type": "lineTo", + "x": 3876675, + "y": 2794000 + }, + { + "type": "lineTo", + "x": 3892550, + "y": 2898775 + }, + { + "type": "lineTo", + "x": 3898900, + "y": 3057525 + }, + { + "type": "lineTo", + "x": 3921125, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 3911600, + "y": 3165475 + }, + { + "type": "lineTo", + "x": 3946525, + "y": 3241675 + }, + { + "type": "lineTo", + "x": 3978275, + "y": 3311525 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 3314700 + }, + { + "type": "lineTo", + "x": 4038600, + "y": 3365500 + }, + { + "type": "lineTo", + "x": 4105275, + "y": 3413125 + }, + { + "type": "lineTo", + "x": 4181475, + "y": 3457575 + }, + { + "type": "lineTo", + "x": 4267200, + "y": 3473450 + }, + { + "type": "lineTo", + "x": 4365625, + "y": 3473450 + }, + { + "type": "lineTo", + "x": 4448175, + "y": 3438525 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 3416300 + }, + { + "type": "lineTo", + "x": 4584700, + "y": 3359150 + }, + { + "type": "lineTo", + "x": 4670425, + "y": 3270250 + }, + { + "type": "lineTo", + "x": 4714875, + "y": 3197225 + }, + { + "type": "lineTo", + "x": 4772025, + "y": 3092450 + }, + { + "type": "lineTo", + "x": 4803775, + "y": 2971800 + }, + { + "type": "lineTo", + "x": 4832350, + "y": 2838450 + }, + { + "type": "lineTo", + "x": 4841875, + "y": 2746375 + }, + { + "type": "lineTo", + "x": 4867275, + "y": 2644775 + }, + { + "type": "lineTo", + "x": 4864100, + "y": 2600325 + }, + { + "type": "lineTo", + "x": 4819650, + "y": 2530475 + }, + { + "type": "lineTo", + "x": 4794250, + "y": 2527300 + }, + { + "type": "lineTo", + "x": 4772025, + "y": 2482850 + }, + { + "type": "lineTo", + "x": 4756150, + "y": 2524125 + }, + { + "type": "lineTo", + "x": 4695825, + "y": 2568575 + }, + { + "type": "lineTo", + "x": 4629150, + "y": 2568575 + }, + { + "type": "lineTo", + "x": 4568825, + "y": 2524125 + }, + { + "type": "lineTo", + "x": 4518025, + "y": 2571750 + }, + { + "type": "lineTo", + "x": 4460875, + "y": 2597150 + }, + { + "type": "lineTo", + "x": 4435475, + "y": 2609850 + }, + { + "type": "lineTo", + "x": 4381500, + "y": 2622550 + }, + { + "type": "lineTo", + "x": 4321175, + "y": 2619375 + }, + { + "type": "lineTo", + "x": 4254500, + "y": 2584450 + }, + { + "type": "lineTo", + "x": 4203700, + "y": 2559050 + }, + { + "type": "lineTo", + "x": 4137025, + "y": 2571750 + }, + { + "type": "lineTo", + "x": 4057650, + "y": 2559050 + }, + { + "type": "lineTo", + "x": 3971925, + "y": 2486025 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1061", + "path_data": [ + { + "path_width": 955675, + "path_height": 906841, + "commands": [ + { + "type": "moveTo", + "x": 4578351, + "y": 5187951 + }, + { + "type": "cubicBezTo", + "x1": 4555068, + "y1": 5180013, + "x2": 4527022, + "y2": 5198534, + "x": 4505326, + "y": 5200651 + }, + { + "type": "lineTo", + "x": 4448176, + "y": 5200651 + }, + { + "type": "lineTo", + "x": 4422776, + "y": 5207001 + }, + { + "type": "lineTo", + "x": 4397376, + "y": 5207001 + }, + { + "type": "lineTo", + "x": 4359276, + "y": 5213351 + }, + { + "type": "lineTo", + "x": 4327526, + "y": 5232401 + }, + { + "type": "lineTo", + "x": 4298951, + "y": 5245101 + }, + { + "type": "lineTo", + "x": 4254501, + "y": 5254626 + }, + { + "type": "lineTo", + "x": 4187826, + "y": 5245101 + }, + { + "type": "lineTo", + "x": 4117976, + "y": 5219701 + }, + { + "type": "lineTo", + "x": 4070351, + "y": 5213351 + }, + { + "type": "lineTo", + "x": 3975101, + "y": 5203826 + }, + { + "type": "cubicBezTo", + "x1": 3950759, + "y1": 5202239, + "x2": 3950759, + "y2": 5192714, + "x": 3924301, + "y": 5203826 + }, + { + "type": "cubicBezTo", + "x1": 3897843, + "y1": 5214939, + "x2": 3842280, + "y2": 5243514, + "x": 3816351, + "y": 5270501 + }, + { + "type": "lineTo", + "x": 3768726, + "y": 5365751 + }, + { + "type": "lineTo", + "x": 3762376, + "y": 5457826 + }, + { + "type": "lineTo", + "x": 3771901, + "y": 5572126 + }, + { + "type": "lineTo", + "x": 3787776, + "y": 5689601 + }, + { + "type": "lineTo", + "x": 3841751, + "y": 5791201 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 5876926 + }, + { + "type": "lineTo", + "x": 4006851, + "y": 5956301 + }, + { + "type": "lineTo", + "x": 4067176, + "y": 5997576 + }, + { + "type": "lineTo", + "x": 4130676, + "y": 6038851 + }, + { + "type": "lineTo", + "x": 4191001, + "y": 6061076 + }, + { + "type": "lineTo", + "x": 4244976, + "y": 6070601 + }, + { + "type": "lineTo", + "x": 4273551, + "y": 6092826 + }, + { + "type": "lineTo", + "x": 4346576, + "y": 6089651 + }, + { + "type": "lineTo", + "x": 4413251, + "y": 6064251 + }, + { + "type": "lineTo", + "x": 4470401, + "y": 6051551 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 6035676 + }, + { + "type": "lineTo", + "x": 4562476, + "y": 5994401 + }, + { + "type": "lineTo", + "x": 4562476, + "y": 5994401 + }, + { + "type": "lineTo", + "x": 4616451, + "y": 5940426 + }, + { + "type": "lineTo", + "x": 4641851, + "y": 5883276 + }, + { + "type": "lineTo", + "x": 4657726, + "y": 5870576 + }, + { + "type": "lineTo", + "x": 4667251, + "y": 5749926 + }, + { + "type": "lineTo", + "x": 4692651, + "y": 5708651 + }, + { + "type": "lineTo", + "x": 4683126, + "y": 5638801 + }, + { + "type": "lineTo", + "x": 4702176, + "y": 5562601 + }, + { + "type": "lineTo", + "x": 4711701, + "y": 5502276 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 5486401 + }, + { + "type": "lineTo", + "x": 4718051, + "y": 5416551 + }, + { + "type": "lineTo", + "x": 4689476, + "y": 5330826 + }, + { + "type": "lineTo", + "x": 4645026, + "y": 5248276 + }, + { + "type": "cubicBezTo", + "x1": 4626505, + "y1": 5224464, + "x2": 4601634, + "y2": 5195889, + "x": 4578351, + "y": 5187951 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1062", + "path_data": [ + { + "path_width": 1066800, + "path_height": 1054100, + "commands": [ + { + "type": "moveTo", + "x": 8312149, + "y": 3657600 + }, + { + "type": "cubicBezTo", + "x1": 8314266, + "y1": 3639608, + "x2": 8306858, + "y2": 3602567, + "x": 8308975, + "y": 3584575 + }, + { + "type": "lineTo", + "x": 8315324, + "y": 3543300 + }, + { + "type": "lineTo", + "x": 8340724, + "y": 3460750 + }, + { + "type": "lineTo", + "x": 8366124, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 8416924, + "y": 3387725 + }, + { + "type": "lineTo", + "x": 8445499, + "y": 3327400 + }, + { + "type": "lineTo", + "x": 8442324, + "y": 3311525 + }, + { + "type": "lineTo", + "x": 8413749, + "y": 3295650 + }, + { + "type": "lineTo", + "x": 8350249, + "y": 3279775 + }, + { + "type": "lineTo", + "x": 8235949, + "y": 3263900 + }, + { + "type": "lineTo", + "x": 8083549, + "y": 3244850 + }, + { + "type": "lineTo", + "x": 7873999, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 7762874, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 7712074, + "y": 3232150 + }, + { + "type": "lineTo", + "x": 7607299, + "y": 3219450 + }, + { + "type": "lineTo", + "x": 7505699, + "y": 3219450 + }, + { + "type": "lineTo", + "x": 7439024, + "y": 3235325 + }, + { + "type": "lineTo", + "x": 7426324, + "y": 3235325 + }, + { + "type": "lineTo", + "x": 7404099, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 7467599, + "y": 3295650 + }, + { + "type": "lineTo", + "x": 7543799, + "y": 3327400 + }, + { + "type": "lineTo", + "x": 7553324, + "y": 3371850 + }, + { + "type": "lineTo", + "x": 7521574, + "y": 3429000 + }, + { + "type": "lineTo", + "x": 7486649, + "y": 3511550 + }, + { + "type": "lineTo", + "x": 7432674, + "y": 3575050 + }, + { + "type": "lineTo", + "x": 7400924, + "y": 3638550 + }, + { + "type": "lineTo", + "x": 7381874, + "y": 3740150 + }, + { + "type": "lineTo", + "x": 7400924, + "y": 3775075 + }, + { + "type": "lineTo", + "x": 7439024, + "y": 3829050 + }, + { + "type": "lineTo", + "x": 7512049, + "y": 3892550 + }, + { + "type": "lineTo", + "x": 7585074, + "y": 3943350 + }, + { + "type": "lineTo", + "x": 7619999, + "y": 3978275 + }, + { + "type": "lineTo", + "x": 7654924, + "y": 4032250 + }, + { + "type": "lineTo", + "x": 7680324, + "y": 4133850 + }, + { + "type": "lineTo", + "x": 7680324, + "y": 4168775 + }, + { + "type": "lineTo", + "x": 7642224, + "y": 4194175 + }, + { + "type": "lineTo", + "x": 7600949, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 7651749, + "y": 4254500 + }, + { + "type": "lineTo", + "x": 7724774, + "y": 4273550 + }, + { + "type": "lineTo", + "x": 7772399, + "y": 4257675 + }, + { + "type": "lineTo", + "x": 7864474, + "y": 4235450 + }, + { + "type": "lineTo", + "x": 7927974, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 8023224, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 8118474, + "y": 4229100 + }, + { + "type": "lineTo", + "x": 8197849, + "y": 4225925 + }, + { + "type": "lineTo", + "x": 8318499, + "y": 4203700 + }, + { + "type": "lineTo", + "x": 8372474, + "y": 4184650 + }, + { + "type": "lineTo", + "x": 8426449, + "y": 4168775 + }, + { + "type": "lineTo", + "x": 8448674, + "y": 4121150 + }, + { + "type": "lineTo", + "x": 8448674, + "y": 4079875 + }, + { + "type": "lineTo", + "x": 8423274, + "y": 4041775 + }, + { + "type": "lineTo", + "x": 8378824, + "y": 4019550 + }, + { + "type": "lineTo", + "x": 8340724, + "y": 4019550 + }, + { + "type": "lineTo", + "x": 8321674, + "y": 3978275 + }, + { + "type": "lineTo", + "x": 8302624, + "y": 3930650 + }, + { + "type": "lineTo", + "x": 8302624, + "y": 3844925 + }, + { + "type": "lineTo", + "x": 8315324, + "y": 3768725 + }, + { + "type": "lineTo", + "x": 8308974, + "y": 3717925 + }, + { + "type": "lineTo", + "x": 8312149, + "y": 3657600 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/thoracic_costal_facets.json b/boneset-api/data/annotations/ColoredRegions/thoracic_costal_facets.json new file mode 100644 index 00000000..bf8e2b47 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/thoracic_costal_facets.json @@ -0,0 +1,776 @@ +{ + "slide_number": 34, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1116", + "path_data": [ + { + "path_width": 226778, + "path_height": 239750, + "commands": [ + { + "type": "moveTo", + "x": 5340344, + "y": 1937444 + }, + { + "type": "lineTo", + "x": 5210757, + "y": 1950403 + }, + { + "type": "lineTo", + "x": 5139484, + "y": 1995761 + }, + { + "type": "lineTo", + "x": 5165402, + "y": 2092958 + }, + { + "type": "lineTo", + "x": 5197798, + "y": 2164235 + }, + { + "type": "lineTo", + "x": 5249633, + "y": 2177194 + }, + { + "type": "lineTo", + "x": 5275551, + "y": 2164235 + }, + { + "type": "lineTo", + "x": 5333865, + "y": 2092958 + }, + { + "type": "lineTo", + "x": 5353303, + "y": 2047599 + }, + { + "type": "lineTo", + "x": 5366262, + "y": 2008721 + }, + { + "type": "lineTo", + "x": 5340344, + "y": 1937444 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1117", + "path_data": [ + { + "path_width": 247650, + "path_height": 304800, + "commands": [ + { + "type": "moveTo", + "x": 3527425, + "y": 2187575 + }, + { + "type": "lineTo", + "x": 3581400, + "y": 2108200 + }, + { + "type": "lineTo", + "x": 3590925, + "y": 2047875 + }, + { + "type": "lineTo", + "x": 3581400, + "y": 2000250 + }, + { + "type": "lineTo", + "x": 3527425, + "y": 1955800 + }, + { + "type": "lineTo", + "x": 3508375, + "y": 1930400 + }, + { + "type": "lineTo", + "x": 3492500, + "y": 1911350 + }, + { + "type": "lineTo", + "x": 3403600, + "y": 1882775 + }, + { + "type": "lineTo", + "x": 3365500, + "y": 1943100 + }, + { + "type": "lineTo", + "x": 3343275, + "y": 1990725 + }, + { + "type": "lineTo", + "x": 3346450, + "y": 2009775 + }, + { + "type": "lineTo", + "x": 3371850, + "y": 2038350 + }, + { + "type": "lineTo", + "x": 3403600, + "y": 2063750 + }, + { + "type": "lineTo", + "x": 3444875, + "y": 2105025 + }, + { + "type": "lineTo", + "x": 3460750, + "y": 2130425 + }, + { + "type": "lineTo", + "x": 3460750, + "y": 2152650 + }, + { + "type": "lineTo", + "x": 3527425, + "y": 2187575 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1118", + "path_data": [ + { + "path_width": 88900, + "path_height": 215900, + "commands": [ + { + "type": "moveTo", + "x": 3987800, + "y": 2495550 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 2549525 + }, + { + "type": "lineTo", + "x": 4010025, + "y": 2613025 + }, + { + "type": "lineTo", + "x": 3984625, + "y": 2689225 + }, + { + "type": "lineTo", + "x": 3952875, + "y": 2711450 + }, + { + "type": "lineTo", + "x": 3940175, + "y": 2711450 + }, + { + "type": "lineTo", + "x": 3921125, + "y": 2682875 + }, + { + "type": "lineTo", + "x": 3921125, + "y": 2651125 + }, + { + "type": "lineTo", + "x": 3921125, + "y": 2619375 + }, + { + "type": "lineTo", + "x": 3943350, + "y": 2584450 + }, + { + "type": "lineTo", + "x": 3987800, + "y": 2495550 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1119", + "path_data": [ + { + "path_width": 155575, + "path_height": 180975, + "commands": [ + { + "type": "moveTo", + "x": 4768851, + "y": 2559051 + }, + { + "type": "lineTo", + "x": 4689476, + "y": 2574926 + }, + { + "type": "lineTo", + "x": 4702176, + "y": 2654301 + }, + { + "type": "lineTo", + "x": 4746626, + "y": 2711451 + }, + { + "type": "lineTo", + "x": 4787901, + "y": 2740026 + }, + { + "type": "lineTo", + "x": 4841876, + "y": 2740026 + }, + { + "type": "lineTo", + "x": 4845051, + "y": 2714626 + }, + { + "type": "lineTo", + "x": 4803776, + "y": 2651126 + }, + { + "type": "lineTo", + "x": 4768851, + "y": 2559051 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1120", + "path_data": [ + { + "path_width": 425450, + "path_height": 539750, + "commands": [ + { + "type": "moveTo", + "x": 6407150, + "y": 3197225 + }, + { + "type": "lineTo", + "x": 6350000, + "y": 3340100 + }, + { + "type": "lineTo", + "x": 6365875, + "y": 3467100 + }, + { + "type": "lineTo", + "x": 6429375, + "y": 3556000 + }, + { + "type": "lineTo", + "x": 6480175, + "y": 3622675 + }, + { + "type": "lineTo", + "x": 6572250, + "y": 3679825 + }, + { + "type": "lineTo", + "x": 6689725, + "y": 3692525 + }, + { + "type": "lineTo", + "x": 6746875, + "y": 3654425 + }, + { + "type": "lineTo", + "x": 6775450, + "y": 3609975 + }, + { + "type": "cubicBezTo", + "x1": 6774392, + "y1": 3570817, + "x2": 6773333, + "y2": 3531658, + "x": 6772275, + "y": 3492500 + }, + { + "type": "lineTo", + "x": 6737350, + "y": 3352800 + }, + { + "type": "lineTo", + "x": 6689725, + "y": 3282950 + }, + { + "type": "lineTo", + "x": 6642100, + "y": 3213100 + }, + { + "type": "lineTo", + "x": 6597650, + "y": 3165475 + }, + { + "type": "lineTo", + "x": 6537325, + "y": 3152775 + }, + { + "type": "lineTo", + "x": 6483350, + "y": 3152775 + }, + { + "type": "lineTo", + "x": 6407150, + "y": 3197225 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1121", + "path_data": [ + { + "path_width": 355600, + "path_height": 276225, + "commands": [ + { + "type": "moveTo", + "x": 7623175, + "y": 4178301 + }, + { + "type": "lineTo", + "x": 7534275, + "y": 4203701 + }, + { + "type": "lineTo", + "x": 7454900, + "y": 4197351 + }, + { + "type": "lineTo", + "x": 7410450, + "y": 4200526 + }, + { + "type": "lineTo", + "x": 7356475, + "y": 4194176 + }, + { + "type": "lineTo", + "x": 7327900, + "y": 4171951 + }, + { + "type": "lineTo", + "x": 7308850, + "y": 4133851 + }, + { + "type": "lineTo", + "x": 7296150, + "y": 4079876 + }, + { + "type": "lineTo", + "x": 7296150, + "y": 3990976 + }, + { + "type": "lineTo", + "x": 7343775, + "y": 3937001 + }, + { + "type": "lineTo", + "x": 7407275, + "y": 3927476 + }, + { + "type": "lineTo", + "x": 7486650, + "y": 3937001 + }, + { + "type": "lineTo", + "x": 7569200, + "y": 3971926 + }, + { + "type": "lineTo", + "x": 7616825, + "y": 4035426 + }, + { + "type": "lineTo", + "x": 7651750, + "y": 4133851 + }, + { + "type": "lineTo", + "x": 7623175, + "y": 4178301 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1122", + "path_data": [ + { + "path_width": 352425, + "path_height": 285750, + "commands": [ + { + "type": "moveTo", + "x": 7569201, + "y": 3365500 + }, + { + "type": "lineTo", + "x": 7512051, + "y": 3422650 + }, + { + "type": "lineTo", + "x": 7477126, + "y": 3448050 + }, + { + "type": "lineTo", + "x": 7426326, + "y": 3498850 + }, + { + "type": "lineTo", + "x": 7391401, + "y": 3530600 + }, + { + "type": "lineTo", + "x": 7337426, + "y": 3543300 + }, + { + "type": "lineTo", + "x": 7270751, + "y": 3533775 + }, + { + "type": "lineTo", + "x": 7248526, + "y": 3495675 + }, + { + "type": "lineTo", + "x": 7219951, + "y": 3435350 + }, + { + "type": "lineTo", + "x": 7216776, + "y": 3371850 + }, + { + "type": "lineTo", + "x": 7223126, + "y": 3324225 + }, + { + "type": "lineTo", + "x": 7270751, + "y": 3273425 + }, + { + "type": "lineTo", + "x": 7343776, + "y": 3257550 + }, + { + "type": "lineTo", + "x": 7439026, + "y": 3302000 + }, + { + "type": "lineTo", + "x": 7505701, + "y": 3308350 + }, + { + "type": "lineTo", + "x": 7569201, + "y": 3365500 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1123", + "path_data": [ + { + "path_width": 184150, + "path_height": 257175, + "commands": [ + { + "type": "moveTo", + "x": 3895725, + "y": 5165726 + }, + { + "type": "lineTo", + "x": 3851275, + "y": 5137151 + }, + { + "type": "lineTo", + "x": 3778250, + "y": 5181601 + }, + { + "type": "lineTo", + "x": 3724275, + "y": 5245101 + }, + { + "type": "lineTo", + "x": 3711575, + "y": 5321301 + }, + { + "type": "lineTo", + "x": 3717925, + "y": 5387976 + }, + { + "type": "lineTo", + "x": 3768725, + "y": 5394326 + }, + { + "type": "lineTo", + "x": 3829050, + "y": 5356226 + }, + { + "type": "lineTo", + "x": 3873500, + "y": 5299076 + }, + { + "type": "lineTo", + "x": 3889375, + "y": 5232401 + }, + { + "type": "lineTo", + "x": 3895725, + "y": 5165726 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1124", + "path_data": [ + { + "path_width": 276225, + "path_height": 269875, + "commands": [ + { + "type": "moveTo", + "x": 4654551, + "y": 5194301 + }, + { + "type": "lineTo", + "x": 4568826, + "y": 5200651 + }, + { + "type": "lineTo", + "x": 4518026, + "y": 5210176 + }, + { + "type": "lineTo", + "x": 4530726, + "y": 5273676 + }, + { + "type": "lineTo", + "x": 4584701, + "y": 5330826 + }, + { + "type": "lineTo", + "x": 4651376, + "y": 5391151 + }, + { + "type": "lineTo", + "x": 4721226, + "y": 5432426 + }, + { + "type": "lineTo", + "x": 4762501, + "y": 5464176 + }, + { + "type": "lineTo", + "x": 4794251, + "y": 5419726 + }, + { + "type": "lineTo", + "x": 4778376, + "y": 5381626 + }, + { + "type": "lineTo", + "x": 4756151, + "y": 5314951 + }, + { + "type": "lineTo", + "x": 4737101, + "y": 5267326 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 5232401 + }, + { + "type": "lineTo", + "x": 4654551, + "y": 5194301 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/thoracic_spinous_process.json b/boneset-api/data/annotations/ColoredRegions/thoracic_spinous_process.json new file mode 100644 index 00000000..72ad3db9 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/thoracic_spinous_process.json @@ -0,0 +1,505 @@ +{ + "slide_number": 36, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1185", + "path_data": [ + { + "path_width": 927100, + "path_height": 1038225, + "commands": [ + { + "type": "moveTo", + "x": 6330950, + "y": 3908426 + }, + { + "type": "lineTo", + "x": 6292850, + "y": 3962401 + }, + { + "type": "lineTo", + "x": 6254750, + "y": 4038601 + }, + { + "type": "lineTo", + "x": 6169025, + "y": 4168776 + }, + { + "type": "lineTo", + "x": 6089650, + "y": 4264026 + }, + { + "type": "lineTo", + "x": 6013450, + "y": 4365626 + }, + { + "type": "lineTo", + "x": 5969000, + "y": 4410076 + }, + { + "type": "lineTo", + "x": 5930900, + "y": 4445001 + }, + { + "type": "lineTo", + "x": 5895975, + "y": 4495801 + }, + { + "type": "lineTo", + "x": 5873750, + "y": 4552951 + }, + { + "type": "lineTo", + "x": 5870575, + "y": 4648201 + }, + { + "type": "lineTo", + "x": 5886450, + "y": 4702176 + }, + { + "type": "lineTo", + "x": 5915025, + "y": 4740276 + }, + { + "type": "lineTo", + "x": 5949950, + "y": 4775201 + }, + { + "type": "lineTo", + "x": 5988050, + "y": 4800601 + }, + { + "type": "lineTo", + "x": 6051550, + "y": 4778376 + }, + { + "type": "lineTo", + "x": 6111875, + "y": 4737101 + }, + { + "type": "lineTo", + "x": 6169025, + "y": 4695826 + }, + { + "type": "lineTo", + "x": 6276975, + "y": 4641851 + }, + { + "type": "lineTo", + "x": 6327775, + "y": 4619626 + }, + { + "type": "lineTo", + "x": 6413500, + "y": 4521201 + }, + { + "type": "lineTo", + "x": 6502400, + "y": 4445001 + }, + { + "type": "lineTo", + "x": 6550025, + "y": 4384676 + }, + { + "type": "lineTo", + "x": 6584950, + "y": 4324351 + }, + { + "type": "lineTo", + "x": 6604000, + "y": 4311651 + }, + { + "type": "lineTo", + "x": 6664325, + "y": 4295776 + }, + { + "type": "lineTo", + "x": 6677025, + "y": 4267201 + }, + { + "type": "lineTo", + "x": 6756400, + "y": 4156076 + }, + { + "type": "lineTo", + "x": 6797675, + "y": 4060826 + }, + { + "type": "lineTo", + "x": 6781800, + "y": 3959226 + }, + { + "type": "lineTo", + "x": 6727825, + "y": 3895726 + }, + { + "type": "lineTo", + "x": 6677025, + "y": 3806826 + }, + { + "type": "lineTo", + "x": 6667500, + "y": 3762376 + }, + { + "type": "lineTo", + "x": 6623050, + "y": 3781426 + }, + { + "type": "lineTo", + "x": 6550025, + "y": 3778251 + }, + { + "type": "lineTo", + "x": 6524625, + "y": 3787776 + }, + { + "type": "lineTo", + "x": 6489700, + "y": 3816351 + }, + { + "type": "lineTo", + "x": 6461125, + "y": 3844926 + }, + { + "type": "lineTo", + "x": 6423025, + "y": 3889376 + }, + { + "type": "lineTo", + "x": 6403975, + "y": 3905251 + }, + { + "type": "lineTo", + "x": 6330950, + "y": 3908426 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1186", + "path_data": [ + { + "path_width": 193675, + "path_height": 307975, + "commands": [ + { + "type": "moveTo", + "x": 4381500, + "y": 2025649 + }, + { + "type": "lineTo", + "x": 4422775, + "y": 2009774 + }, + { + "type": "lineTo", + "x": 4416425, + "y": 1946274 + }, + { + "type": "lineTo", + "x": 4422775, + "y": 1876424 + }, + { + "type": "lineTo", + "x": 4435475, + "y": 1819274 + }, + { + "type": "lineTo", + "x": 4435475, + "y": 1790699 + }, + { + "type": "lineTo", + "x": 4422775, + "y": 1755774 + }, + { + "type": "lineTo", + "x": 4391025, + "y": 1730374 + }, + { + "type": "lineTo", + "x": 4359275, + "y": 1720849 + }, + { + "type": "lineTo", + "x": 4314825, + "y": 1736724 + }, + { + "type": "lineTo", + "x": 4295775, + "y": 1755774 + }, + { + "type": "lineTo", + "x": 4292600, + "y": 1793874 + }, + { + "type": "lineTo", + "x": 4289425, + "y": 1851024 + }, + { + "type": "lineTo", + "x": 4289425, + "y": 1904999 + }, + { + "type": "lineTo", + "x": 4273550, + "y": 1946274 + }, + { + "type": "lineTo", + "x": 4254500, + "y": 1971674 + }, + { + "type": "lineTo", + "x": 4241800, + "y": 2000249 + }, + { + "type": "lineTo", + "x": 4267200, + "y": 2009774 + }, + { + "type": "lineTo", + "x": 4295775, + "y": 2019299 + }, + { + "type": "lineTo", + "x": 4330700, + "y": 2028824 + }, + { + "type": "lineTo", + "x": 4381500, + "y": 2025649 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1187", + "path_data": [ + { + "path_width": 317500, + "path_height": 571500, + "commands": [ + { + "type": "moveTo", + "x": 4165600, + "y": 4584699 + }, + { + "type": "lineTo", + "x": 4089400, + "y": 4629149 + }, + { + "type": "lineTo", + "x": 4127500, + "y": 4556124 + }, + { + "type": "lineTo", + "x": 4143375, + "y": 4460874 + }, + { + "type": "lineTo", + "x": 4127500, + "y": 4391024 + }, + { + "type": "lineTo", + "x": 4137025, + "y": 4305299 + }, + { + "type": "lineTo", + "x": 4114800, + "y": 4156074 + }, + { + "type": "lineTo", + "x": 4114800, + "y": 4108449 + }, + { + "type": "lineTo", + "x": 4156075, + "y": 4067174 + }, + { + "type": "lineTo", + "x": 4200525, + "y": 4057649 + }, + { + "type": "lineTo", + "x": 4251325, + "y": 4067174 + }, + { + "type": "lineTo", + "x": 4286250, + "y": 4095749 + }, + { + "type": "lineTo", + "x": 4292600, + "y": 4124324 + }, + { + "type": "lineTo", + "x": 4295775, + "y": 4213224 + }, + { + "type": "lineTo", + "x": 4302125, + "y": 4251324 + }, + { + "type": "lineTo", + "x": 4298950, + "y": 4302124 + }, + { + "type": "lineTo", + "x": 4298950, + "y": 4346574 + }, + { + "type": "lineTo", + "x": 4305300, + "y": 4403724 + }, + { + "type": "lineTo", + "x": 4324350, + "y": 4454524 + }, + { + "type": "lineTo", + "x": 4337050, + "y": 4479924 + }, + { + "type": "lineTo", + "x": 4362450, + "y": 4511674 + }, + { + "type": "lineTo", + "x": 4391025, + "y": 4537074 + }, + { + "type": "lineTo", + "x": 4394200, + "y": 4556124 + }, + { + "type": "lineTo", + "x": 4406900, + "y": 4581524 + }, + { + "type": "lineTo", + "x": 4286250, + "y": 4556124 + }, + { + "type": "lineTo", + "x": 4225925, + "y": 4556124 + }, + { + "type": "lineTo", + "x": 4165600, + "y": 4584699 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/thoracic_transverse_process.json b/boneset-api/data/annotations/ColoredRegions/thoracic_transverse_process.json new file mode 100644 index 00000000..d59a2f97 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/thoracic_transverse_process.json @@ -0,0 +1,955 @@ +{ + "slide_number": 33, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1087", + "path_data": [ + { + "path_width": 746125, + "path_height": 676275, + "commands": [ + { + "type": "moveTo", + "x": 4083051, + "y": 2114551 + }, + { + "type": "lineTo", + "x": 4070351, + "y": 2184401 + }, + { + "type": "lineTo", + "x": 4038601, + "y": 2260601 + }, + { + "type": "lineTo", + "x": 3924301, + "y": 2295526 + }, + { + "type": "lineTo", + "x": 3892551, + "y": 2324101 + }, + { + "type": "lineTo", + "x": 3886201, + "y": 2352676 + }, + { + "type": "lineTo", + "x": 3902076, + "y": 2387601 + }, + { + "type": "lineTo", + "x": 3943351, + "y": 2390776 + }, + { + "type": "lineTo", + "x": 3968751, + "y": 2390776 + }, + { + "type": "lineTo", + "x": 3997326, + "y": 2406651 + }, + { + "type": "lineTo", + "x": 3975101, + "y": 2486026 + }, + { + "type": "lineTo", + "x": 3908426, + "y": 2444751 + }, + { + "type": "lineTo", + "x": 3819526, + "y": 2368551 + }, + { + "type": "lineTo", + "x": 3711576, + "y": 2295526 + }, + { + "type": "lineTo", + "x": 3638551, + "y": 2238376 + }, + { + "type": "lineTo", + "x": 3581401, + "y": 2241551 + }, + { + "type": "lineTo", + "x": 3521076, + "y": 2219326 + }, + { + "type": "lineTo", + "x": 3451226, + "y": 2152651 + }, + { + "type": "lineTo", + "x": 3451226, + "y": 2124076 + }, + { + "type": "lineTo", + "x": 3378201, + "y": 2041526 + }, + { + "type": "lineTo", + "x": 3340101, + "y": 2016126 + }, + { + "type": "lineTo", + "x": 3336926, + "y": 1978026 + }, + { + "type": "lineTo", + "x": 3340101, + "y": 1898651 + }, + { + "type": "lineTo", + "x": 3349626, + "y": 1863726 + }, + { + "type": "lineTo", + "x": 3400426, + "y": 1835151 + }, + { + "type": "lineTo", + "x": 3479801, + "y": 1825626 + }, + { + "type": "lineTo", + "x": 3505201, + "y": 1809751 + }, + { + "type": "lineTo", + "x": 3584576, + "y": 1835151 + }, + { + "type": "lineTo", + "x": 3657601, + "y": 1854201 + }, + { + "type": "lineTo", + "x": 3708401, + "y": 1889126 + }, + { + "type": "lineTo", + "x": 3756026, + "y": 1930401 + }, + { + "type": "lineTo", + "x": 3838576, + "y": 1987551 + }, + { + "type": "lineTo", + "x": 3898901, + "y": 2025651 + }, + { + "type": "lineTo", + "x": 3965576, + "y": 2060576 + }, + { + "type": "lineTo", + "x": 3984626, + "y": 2073276 + }, + { + "type": "lineTo", + "x": 4032251, + "y": 2095501 + }, + { + "type": "lineTo", + "x": 4083051, + "y": 2114551 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1088", + "path_data": [ + { + "path_width": 803275, + "path_height": 517525, + "commands": [ + { + "type": "moveTo", + "x": 4584701, + "y": 2120901 + }, + { + "type": "cubicBezTo", + "x1": 4596343, + "y1": 2145243, + "x2": 4604809, + "y2": 2172759, + "x": 4616451, + "y": 2197101 + }, + { + "type": "lineTo", + "x": 4667251, + "y": 2241551 + }, + { + "type": "lineTo", + "x": 4699001, + "y": 2282826 + }, + { + "type": "cubicBezTo", + "x1": 4719109, + "y1": 2293409, + "x2": 4748743, + "y2": 2291293, + "x": 4768851, + "y": 2301876 + }, + { + "type": "lineTo", + "x": 4851401, + "y": 2330451 + }, + { + "type": "lineTo", + "x": 4914901, + "y": 2371726 + }, + { + "type": "lineTo", + "x": 5026026, + "y": 2301876 + }, + { + "type": "lineTo", + "x": 5140326, + "y": 2241551 + }, + { + "type": "lineTo", + "x": 5216526, + "y": 2206626 + }, + { + "type": "lineTo", + "x": 5276851, + "y": 2181226 + }, + { + "type": "lineTo", + "x": 5314951, + "y": 2139951 + }, + { + "type": "lineTo", + "x": 5372101, + "y": 2044701 + }, + { + "type": "lineTo", + "x": 5387976, + "y": 1971676 + }, + { + "type": "lineTo", + "x": 5362576, + "y": 1901826 + }, + { + "type": "lineTo", + "x": 5321301, + "y": 1873251 + }, + { + "type": "lineTo", + "x": 5273676, + "y": 1854201 + }, + { + "type": "lineTo", + "x": 5210176, + "y": 1854201 + }, + { + "type": "lineTo", + "x": 5149851, + "y": 1873251 + }, + { + "type": "lineTo", + "x": 5118101, + "y": 1895476 + }, + { + "type": "lineTo", + "x": 5099051, + "y": 1917701 + }, + { + "type": "lineTo", + "x": 5035551, + "y": 1958976 + }, + { + "type": "lineTo", + "x": 4987926, + "y": 2000251 + }, + { + "type": "lineTo", + "x": 4902201, + "y": 2044701 + }, + { + "type": "lineTo", + "x": 4835526, + "y": 2070101 + }, + { + "type": "lineTo", + "x": 4772026, + "y": 2101851 + }, + { + "type": "lineTo", + "x": 4584701, + "y": 2120901 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1089", + "path_data": [ + { + "path_width": 768350, + "path_height": 863600, + "commands": [ + { + "type": "moveTo", + "x": 6950075, + "y": 3625850 + }, + { + "type": "lineTo", + "x": 6915150, + "y": 3660775 + }, + { + "type": "lineTo", + "x": 6842125, + "y": 3702050 + }, + { + "type": "cubicBezTo", + "x1": 6823604, + "y1": 3713163, + "x2": 6806142, + "y2": 3686175, + "x": 6804025, + "y": 3727450 + }, + { + "type": "lineTo", + "x": 6762750, + "y": 3771900 + }, + { + "type": "lineTo", + "x": 6661150, + "y": 3762375 + }, + { + "type": "lineTo", + "x": 6613525, + "y": 3768725 + }, + { + "type": "lineTo", + "x": 6553200, + "y": 3765550 + }, + { + "type": "lineTo", + "x": 6524625, + "y": 3800475 + }, + { + "type": "lineTo", + "x": 6470650, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 6457950, + "y": 3863975 + }, + { + "type": "lineTo", + "x": 6413500, + "y": 3908425 + }, + { + "type": "lineTo", + "x": 6337300, + "y": 3917950 + }, + { + "type": "lineTo", + "x": 6283325, + "y": 3889375 + }, + { + "type": "lineTo", + "x": 6261100, + "y": 3844925 + }, + { + "type": "lineTo", + "x": 6261100, + "y": 3816350 + }, + { + "type": "lineTo", + "x": 6207125, + "y": 3752850 + }, + { + "type": "lineTo", + "x": 6188075, + "y": 3667125 + }, + { + "type": "cubicBezTo", + "x1": 6189133, + "y1": 3623733, + "x2": 6190192, + "y2": 3580342, + "x": 6191250, + "y": 3536950 + }, + { + "type": "lineTo", + "x": 6223000, + "y": 3435350 + }, + { + "type": "lineTo", + "x": 6232525, + "y": 3406775 + }, + { + "type": "lineTo", + "x": 6254750, + "y": 3286125 + }, + { + "type": "lineTo", + "x": 6267450, + "y": 3248025 + }, + { + "type": "lineTo", + "x": 6337300, + "y": 3171825 + }, + { + "type": "lineTo", + "x": 6407150, + "y": 3076575 + }, + { + "type": "lineTo", + "x": 6483350, + "y": 3054350 + }, + { + "type": "lineTo", + "x": 6499225, + "y": 3057525 + }, + { + "type": "lineTo", + "x": 6524625, + "y": 3095625 + }, + { + "type": "lineTo", + "x": 6569075, + "y": 3098800 + }, + { + "type": "lineTo", + "x": 6629400, + "y": 3111500 + }, + { + "type": "lineTo", + "x": 6673850, + "y": 3121025 + }, + { + "type": "lineTo", + "x": 6724650, + "y": 3168650 + }, + { + "type": "lineTo", + "x": 6769100, + "y": 3203575 + }, + { + "type": "lineTo", + "x": 6797675, + "y": 3219450 + }, + { + "type": "lineTo", + "x": 6845300, + "y": 3222625 + }, + { + "type": "lineTo", + "x": 6918325, + "y": 3305175 + }, + { + "type": "lineTo", + "x": 6940550, + "y": 3444875 + }, + { + "type": "lineTo", + "x": 6950075, + "y": 3511550 + }, + { + "type": "lineTo", + "x": 6956425, + "y": 3562350 + }, + { + "type": "lineTo", + "x": 6950075, + "y": 3625850 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1090", + "path_data": [ + { + "path_width": 685800, + "path_height": 561975, + "commands": [ + { + "type": "moveTo", + "x": 4619625, + "y": 4819651 + }, + { + "type": "lineTo", + "x": 4676775, + "y": 4857751 + }, + { + "type": "lineTo", + "x": 4733925, + "y": 4899026 + }, + { + "type": "lineTo", + "x": 4746625, + "y": 4946651 + }, + { + "type": "lineTo", + "x": 4756150, + "y": 5010151 + }, + { + "type": "lineTo", + "x": 4708525, + "y": 5038726 + }, + { + "type": "lineTo", + "x": 4613275, + "y": 5016501 + }, + { + "type": "lineTo", + "x": 4546600, + "y": 4994276 + }, + { + "type": "lineTo", + "x": 4533900, + "y": 5006976 + }, + { + "type": "lineTo", + "x": 4511675, + "y": 5029201 + }, + { + "type": "lineTo", + "x": 4610100, + "y": 5175251 + }, + { + "type": "lineTo", + "x": 4667250, + "y": 5149851 + }, + { + "type": "lineTo", + "x": 4768850, + "y": 5086351 + }, + { + "type": "lineTo", + "x": 4848225, + "y": 5035551 + }, + { + "type": "lineTo", + "x": 4914900, + "y": 4987926 + }, + { + "type": "lineTo", + "x": 4953000, + "y": 4981576 + }, + { + "type": "lineTo", + "x": 4991100, + "y": 4981576 + }, + { + "type": "lineTo", + "x": 5102225, + "y": 4905376 + }, + { + "type": "lineTo", + "x": 5092700, + "y": 4873626 + }, + { + "type": "lineTo", + "x": 5159375, + "y": 4816476 + }, + { + "type": "lineTo", + "x": 5197475, + "y": 4784726 + }, + { + "type": "lineTo", + "x": 5181600, + "y": 4730751 + }, + { + "type": "lineTo", + "x": 5153025, + "y": 4692651 + }, + { + "type": "lineTo", + "x": 5114925, + "y": 4664076 + }, + { + "type": "lineTo", + "x": 5060950, + "y": 4625976 + }, + { + "type": "lineTo", + "x": 5026025, + "y": 4613276 + }, + { + "type": "lineTo", + "x": 4949825, + "y": 4635501 + }, + { + "type": "lineTo", + "x": 4899025, + "y": 4645026 + }, + { + "type": "lineTo", + "x": 4860925, + "y": 4695826 + }, + { + "type": "lineTo", + "x": 4826000, + "y": 4727576 + }, + { + "type": "lineTo", + "x": 4768850, + "y": 4762501 + }, + { + "type": "lineTo", + "x": 4702175, + "y": 4784726 + }, + { + "type": "lineTo", + "x": 4619625, + "y": 4819651 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1091", + "path_data": [ + { + "path_width": 558800, + "path_height": 542925, + "commands": [ + { + "type": "moveTo", + "x": 3883025, + "y": 4791076 + }, + { + "type": "lineTo", + "x": 3800475, + "y": 4759326 + }, + { + "type": "lineTo", + "x": 3749675, + "y": 4730751 + }, + { + "type": "lineTo", + "x": 3670300, + "y": 4679951 + }, + { + "type": "lineTo", + "x": 3603625, + "y": 4629151 + }, + { + "type": "lineTo", + "x": 3559175, + "y": 4578351 + }, + { + "type": "lineTo", + "x": 3492500, + "y": 4568826 + }, + { + "type": "lineTo", + "x": 3441700, + "y": 4584701 + }, + { + "type": "lineTo", + "x": 3441700, + "y": 4584701 + }, + { + "type": "lineTo", + "x": 3403600, + "y": 4632326 + }, + { + "type": "lineTo", + "x": 3397250, + "y": 4657726 + }, + { + "type": "lineTo", + "x": 3406775, + "y": 4683126 + }, + { + "type": "lineTo", + "x": 3397250, + "y": 4711701 + }, + { + "type": "lineTo", + "x": 3403600, + "y": 4768851 + }, + { + "type": "lineTo", + "x": 3432175, + "y": 4838701 + }, + { + "type": "lineTo", + "x": 3457575, + "y": 4864101 + }, + { + "type": "lineTo", + "x": 3524250, + "y": 4899026 + }, + { + "type": "lineTo", + "x": 3590925, + "y": 4937126 + }, + { + "type": "lineTo", + "x": 3676650, + "y": 4981576 + }, + { + "type": "lineTo", + "x": 3784600, + "y": 5045076 + }, + { + "type": "lineTo", + "x": 3838575, + "y": 5067301 + }, + { + "type": "lineTo", + "x": 3898900, + "y": 5111751 + }, + { + "type": "lineTo", + "x": 3933825, + "y": 5060951 + }, + { + "type": "lineTo", + "x": 3956050, + "y": 5010151 + }, + { + "type": "lineTo", + "x": 3937000, + "y": 4949826 + }, + { + "type": "lineTo", + "x": 3841750, + "y": 4965701 + }, + { + "type": "lineTo", + "x": 3797300, + "y": 4962526 + }, + { + "type": "lineTo", + "x": 3771900, + "y": 4949826 + }, + { + "type": "lineTo", + "x": 3759200, + "y": 4902201 + }, + { + "type": "lineTo", + "x": 3771900, + "y": 4870451 + }, + { + "type": "lineTo", + "x": 3822700, + "y": 4826001 + }, + { + "type": "lineTo", + "x": 3883025, + "y": 4791076 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/thoracic_vertebral_notch.json b/boneset-api/data/annotations/ColoredRegions/thoracic_vertebral_notch.json new file mode 100644 index 00000000..e72d52a2 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/thoracic_vertebral_notch.json @@ -0,0 +1,405 @@ +{ + "slide_number": 35, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1145", + "path_data": [ + { + "path_width": 2564676, + "path_height": 2032759, + "commands": [ + { + "type": "moveTo", + "x": 7865743, + "y": 5919122 + }, + { + "type": "lineTo", + "x": 7882575, + "y": 5729424 + }, + { + "type": "cubicBezTo", + "x1": 7897922, + "y1": 5653051, + "x2": 7895855, + "y2": 5607887, + "x": 7892852, + "y": 5556633 + }, + { + "type": "cubicBezTo", + "x1": 7889849, + "y1": 5505379, + "x2": 7898485, + "y2": 5419352, + "x": 7906396, + "y": 5384486 + }, + { + "type": "cubicBezTo", + "x1": 7907200, + "y1": 5322964, + "x2": 7908005, + "y2": 5261443, + "x": 7908809, + "y": 5199921 + }, + { + "type": "cubicBezTo", + "x1": 7902107, + "y1": 5169841, + "x2": 7878212, + "y2": 5071115, + "x": 7821837, + "y": 5049148 + }, + { + "type": "cubicBezTo", + "x1": 7765462, + "y1": 5027181, + "x2": 7627053, + "y2": 5043922, + "x": 7532406, + "y": 5039488 + }, + { + "type": "cubicBezTo", + "x1": 7437759, + "y1": 5035054, + "x2": 7324511, + "y2": 5031365, + "x": 7253954, + "y": 5022545 + }, + { + "type": "lineTo", + "x": 6962814, + "y": 5006023 + }, + { + "type": "lineTo", + "x": 6717660, + "y": 5014103 + }, + { + "type": "lineTo", + "x": 6505241, + "y": 5001223 + }, + { + "type": "lineTo", + "x": 6183437, + "y": 4886433 + }, + { + "type": "lineTo", + "x": 6021033, + "y": 4727389 + }, + { + "type": "lineTo", + "x": 5836180, + "y": 4721153 + }, + { + "type": "lineTo", + "x": 5633002, + "y": 4606350 + }, + { + "type": "cubicBezTo", + "x1": 5604391, + "y1": 4530485, + "x2": 5580539, + "y2": 4488013, + "x": 5551928, + "y": 4412148 + }, + { + "type": "lineTo", + "x": 5524244, + "y": 4150025 + }, + { + "type": "cubicBezTo", + "x1": 5483502, + "y1": 4042937, + "x2": 5452128, + "y2": 3820528, + "x": 5344133, + "y": 3905162 + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1146", + "path_data": [ + { + "path_width": 370423, + "path_height": 866552, + "commands": [ + { + "type": "moveTo", + "x": 5350036, + "y": 3931986 + }, + { + "type": "lineTo", + "x": 5277274, + "y": 3984905 + }, + { + "type": "lineTo", + "x": 5257430, + "y": 4117203 + }, + { + "type": "lineTo", + "x": 5244201, + "y": 4275961 + }, + { + "type": "lineTo", + "x": 5230971, + "y": 4428103 + }, + { + "type": "lineTo", + "x": 5191283, + "y": 4553787 + }, + { + "type": "lineTo", + "x": 5171439, + "y": 4613321 + }, + { + "type": "lineTo", + "x": 5125136, + "y": 4672855 + }, + { + "type": "lineTo", + "x": 5052374, + "y": 4725774 + }, + { + "type": "lineTo", + "x": 4979613, + "y": 4798538 + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "1147", + "path_data": [ + { + "path_width": 1157573, + "path_height": 1250217, + "commands": [ + { + "type": "moveTo", + "x": 4967574, + "y": 4799570 + }, + { + "type": "lineTo", + "x": 4901427, + "y": 4826030 + }, + { + "type": "lineTo", + "x": 4795592, + "y": 4925254 + }, + { + "type": "lineTo", + "x": 4696371, + "y": 5044322 + }, + { + "type": "lineTo", + "x": 4656683, + "y": 5103856 + }, + { + "type": "lineTo", + "x": 4511159, + "y": 5255999 + }, + { + "type": "lineTo", + "x": 4405324, + "y": 5335377 + }, + { + "type": "lineTo", + "x": 4239957, + "y": 5533825 + }, + { + "type": "lineTo", + "x": 3902607, + "y": 5725657 + }, + { + "type": "lineTo", + "x": 3829845, + "y": 5838110 + }, + { + "type": "lineTo", + "x": 3823230, + "y": 5977023 + }, + { + "type": "lineTo", + "x": 3823230, + "y": 6049787 + }, + { + "type": "lineTo", + "x": 3810001, + "y": 6036557 + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "1148", + "path_data": [ + { + "path_width": 549020, + "path_height": 873167, + "commands": [ + { + "type": "moveTo", + "x": 5902933, + "y": 4511364 + }, + { + "type": "lineTo", + "x": 5843567, + "y": 4372451 + }, + { + "type": "lineTo", + "x": 5831694, + "y": 4299688 + }, + { + "type": "lineTo", + "x": 5784202, + "y": 4266613 + }, + { + "type": "lineTo", + "x": 5724836, + "y": 4207079 + }, + { + "type": "lineTo", + "x": 5689217, + "y": 4074781 + }, + { + "type": "lineTo", + "x": 5641724, + "y": 3896178 + }, + { + "type": "lineTo", + "x": 5606105, + "y": 3830029 + }, + { + "type": "lineTo", + "x": 5612042, + "y": 3770496 + }, + { + "type": "lineTo", + "x": 5517057, + "y": 3730806 + }, + { + "type": "lineTo", + "x": 5410200, + "y": 3777110 + }, + { + "type": "lineTo", + "x": 5439883, + "y": 3942483 + }, + { + "type": "lineTo", + "x": 5505184, + "y": 4127700 + }, + { + "type": "lineTo", + "x": 5552677, + "y": 4312917 + }, + { + "type": "lineTo", + "x": 5594233, + "y": 4445215 + }, + { + "type": "lineTo", + "x": 5653598, + "y": 4551054 + }, + { + "type": "lineTo", + "x": 5754519, + "y": 4603973 + }, + { + "type": "lineTo", + "x": 5837631, + "y": 4603973 + }, + { + "type": "lineTo", + "x": 5837631, + "y": 4603973 + }, + { + "type": "lineTo", + "x": 5902933, + "y": 4511364 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/typical_rib_body_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/typical_rib_body_colored_regions.json new file mode 100644 index 00000000..a7808156 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/typical_rib_body_colored_regions.json @@ -0,0 +1,468 @@ +{ + "slide_number": 22, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "679", + "path_data": [ + { + "path_width": 1500959, + "path_height": 3712693, + "commands": [ + { + "type": "moveTo", + "x": 4750759, + "y": 1871538 + }, + { + "type": "lineTo", + "x": 4866217, + "y": 2035602 + }, + { + "type": "lineTo", + "x": 4531996, + "y": 2157130 + }, + { + "type": "lineTo", + "x": 4361846, + "y": 2272582 + }, + { + "type": "lineTo", + "x": 4149160, + "y": 2479181 + }, + { + "type": "lineTo", + "x": 3991164, + "y": 2704008 + }, + { + "type": "lineTo", + "x": 3942550, + "y": 2783002 + }, + { + "type": "lineTo", + "x": 3906090, + "y": 2892377 + }, + { + "type": "lineTo", + "x": 3754171, + "y": 3196198 + }, + { + "type": "lineTo", + "x": 3638712, + "y": 3445331 + }, + { + "type": "lineTo", + "x": 3571868, + "y": 3767382 + }, + { + "type": "lineTo", + "x": 3590098, + "y": 4004362 + }, + { + "type": "lineTo", + "x": 3608329, + "y": 4198808 + }, + { + "type": "lineTo", + "x": 3693403, + "y": 4447941 + }, + { + "type": "lineTo", + "x": 3802785, + "y": 4678845 + }, + { + "type": "lineTo", + "x": 3966857, + "y": 4915825 + }, + { + "type": "lineTo", + "x": 4039778, + "y": 5019124 + }, + { + "type": "lineTo", + "x": 4191697, + "y": 5140653 + }, + { + "type": "lineTo", + "x": 4295002, + "y": 5231799 + }, + { + "type": "lineTo", + "x": 4452998, + "y": 5316869 + }, + { + "type": "lineTo", + "x": 4604917, + "y": 5395862 + }, + { + "type": "lineTo", + "x": 4665684, + "y": 5462703 + }, + { + "type": "lineTo", + "x": 4635301, + "y": 5517391 + }, + { + "type": "lineTo", + "x": 4574533, + "y": 5566002 + }, + { + "type": "lineTo", + "x": 4525919, + "y": 5584231 + }, + { + "type": "lineTo", + "x": 4483382, + "y": 5529544 + }, + { + "type": "lineTo", + "x": 4276772, + "y": 5389786 + }, + { + "type": "lineTo", + "x": 4015471, + "y": 5177111 + }, + { + "type": "lineTo", + "x": 3875706, + "y": 5043430 + }, + { + "type": "lineTo", + "x": 3663019, + "y": 4721380 + }, + { + "type": "lineTo", + "x": 3498947, + "y": 4375024 + }, + { + "type": "lineTo", + "x": 3389565, + "y": 3973980 + }, + { + "type": "lineTo", + "x": 3365258, + "y": 3585089 + }, + { + "type": "lineTo", + "x": 3407796, + "y": 3342032 + }, + { + "type": "lineTo", + "x": 3492870, + "y": 3098975 + }, + { + "type": "lineTo", + "x": 3565791, + "y": 2959218 + }, + { + "type": "lineTo", + "x": 3723787, + "y": 2685779 + }, + { + "type": "lineTo", + "x": 3887859, + "y": 2442722 + }, + { + "type": "lineTo", + "x": 4112699, + "y": 2236124 + }, + { + "type": "lineTo", + "x": 4264618, + "y": 2102442 + }, + { + "type": "lineTo", + "x": 4398307, + "y": 1999143 + }, + { + "type": "lineTo", + "x": 4513765, + "y": 1962685 + }, + { + "type": "lineTo", + "x": 4750759, + "y": 1871538 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "680", + "path_data": [ + { + "path_width": 1276119, + "path_height": 3694464, + "commands": [ + { + "type": "moveTo", + "x": 6901931, + "y": 1707474 + }, + { + "type": "lineTo", + "x": 6835087, + "y": 1743933 + }, + { + "type": "lineTo", + "x": 6829010, + "y": 1871537 + }, + { + "type": "lineTo", + "x": 6829010, + "y": 1895843 + }, + { + "type": "lineTo", + "x": 7090310, + "y": 1901920 + }, + { + "type": "lineTo", + "x": 7345534, + "y": 1956607 + }, + { + "type": "lineTo", + "x": 7497453, + "y": 2035601 + }, + { + "type": "lineTo", + "x": 7618988, + "y": 2175359 + }, + { + "type": "lineTo", + "x": 7710140, + "y": 2369804 + }, + { + "type": "lineTo", + "x": 7764830, + "y": 2576402 + }, + { + "type": "lineTo", + "x": 7776984, + "y": 2855918 + }, + { + "type": "lineTo", + "x": 7752677, + "y": 3092898 + }, + { + "type": "lineTo", + "x": 7758754, + "y": 3299496 + }, + { + "type": "lineTo", + "x": 7764830, + "y": 3591164 + }, + { + "type": "lineTo", + "x": 7716216, + "y": 3949673 + }, + { + "type": "lineTo", + "x": 7667602, + "y": 4271724 + }, + { + "type": "lineTo", + "x": 7625065, + "y": 4472245 + }, + { + "type": "lineTo", + "x": 7564297, + "y": 4703149 + }, + { + "type": "lineTo", + "x": 7473146, + "y": 4952283 + }, + { + "type": "lineTo", + "x": 7388071, + "y": 5092040 + }, + { + "type": "lineTo", + "x": 7315150, + "y": 5213569 + }, + { + "type": "lineTo", + "x": 7236153, + "y": 5298639 + }, + { + "type": "lineTo", + "x": 7205769, + "y": 5335097 + }, + { + "type": "lineTo", + "x": 7290843, + "y": 5401938 + }, + { + "type": "lineTo", + "x": 7418455, + "y": 5365479 + }, + { + "type": "lineTo", + "x": 7558221, + "y": 5310791 + }, + { + "type": "lineTo", + "x": 7612911, + "y": 5310791 + }, + { + "type": "lineTo", + "x": 7697986, + "y": 5134575 + }, + { + "type": "lineTo", + "x": 7837751, + "y": 4715302 + }, + { + "type": "lineTo", + "x": 7959287, + "y": 4296029 + }, + { + "type": "lineTo", + "x": 7995747, + "y": 4107660 + }, + { + "type": "lineTo", + "x": 8038284, + "y": 3822068 + }, + { + "type": "lineTo", + "x": 8092975, + "y": 3384566 + }, + { + "type": "lineTo", + "x": 8105129, + "y": 3105051 + }, + { + "type": "lineTo", + "x": 8105129, + "y": 2868070 + }, + { + "type": "lineTo", + "x": 8068668, + "y": 2637166 + }, + { + "type": "lineTo", + "x": 7995747, + "y": 2424492 + }, + { + "type": "lineTo", + "x": 7855982, + "y": 2151053 + }, + { + "type": "lineTo", + "x": 7667602, + "y": 1986989 + }, + { + "type": "lineTo", + "x": 7442762, + "y": 1835079 + }, + { + "type": "lineTo", + "x": 7193615, + "y": 1768238 + }, + { + "type": "lineTo", + "x": 6901931, + "y": 1707474 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/typical_rib_head_and_neck_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/typical_rib_head_and_neck_colored_regions.json new file mode 100644 index 00000000..620b31b0 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/typical_rib_head_and_neck_colored_regions.json @@ -0,0 +1,349 @@ +{ + "slide_number": 20, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "625", + "path_data": [ + { + "path_width": 393911, + "path_height": 354868, + "commands": [ + { + "type": "moveTo", + "x": 5103158, + "y": 1663986 + }, + { + "type": "lineTo", + "x": 5062409, + "y": 1697945 + }, + { + "type": "lineTo", + "x": 5205032, + "y": 1772655 + }, + { + "type": "lineTo", + "x": 5279739, + "y": 1888115 + }, + { + "type": "lineTo", + "x": 5286531, + "y": 1969616 + }, + { + "type": "lineTo", + "x": 5381613, + "y": 1989992 + }, + { + "type": "lineTo", + "x": 5422362, + "y": 1989992 + }, + { + "type": "lineTo", + "x": 5442737, + "y": 1989992 + }, + { + "type": "lineTo", + "x": 5456320, + "y": 1922074 + }, + { + "type": "lineTo", + "x": 5456320, + "y": 1820197 + }, + { + "type": "lineTo", + "x": 5374821, + "y": 1704737 + }, + { + "type": "lineTo", + "x": 5272948, + "y": 1650403 + }, + { + "type": "cubicBezTo", + "x1": 5244616, + "y1": 1650602, + "x2": 5216283, + "y2": 1634926, + "x": 5187951, + "y": 1635125 + }, + { + "type": "lineTo", + "x": 5103158, + "y": 1663986 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "626", + "path_data": [ + { + "path_width": 406438, + "path_height": 342900, + "commands": [ + { + "type": "moveTo", + "x": 5902326, + "y": 1812925 + }, + { + "type": "lineTo", + "x": 5902326, + "y": 1812925 + }, + { + "type": "lineTo", + "x": 5883276, + "y": 1889125 + }, + { + "type": "lineTo", + "x": 5864226, + "y": 1955800 + }, + { + "type": "lineTo", + "x": 5842001, + "y": 2000250 + }, + { + "type": "lineTo", + "x": 5842001, + "y": 2000250 + }, + { + "type": "lineTo", + "x": 5924551, + "y": 2044700 + }, + { + "type": "lineTo", + "x": 5988051, + "y": 2035175 + }, + { + "type": "lineTo", + "x": 6051551, + "y": 2012950 + }, + { + "type": "lineTo", + "x": 6096001, + "y": 2000250 + }, + { + "type": "lineTo", + "x": 6248401, + "y": 1920875 + }, + { + "type": "cubicBezTo", + "x1": 6249459, + "y1": 1883833, + "x2": 6228293, + "y2": 1853142, + "x": 6229351, + "y": 1816100 + }, + { + "type": "lineTo", + "x": 6229351, + "y": 1701800 + }, + { + "type": "lineTo", + "x": 6108701, + "y": 1724025 + }, + { + "type": "lineTo", + "x": 6000751, + "y": 1765300 + }, + { + "type": "lineTo", + "x": 5902326, + "y": 1812925 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "627", + "path_data": [ + { + "path_width": 339725, + "path_height": 292100, + "commands": [ + { + "type": "moveTo", + "x": 5054601, + "y": 1704975 + }, + { + "type": "lineTo", + "x": 5203826, + "y": 1768475 + }, + { + "type": "lineTo", + "x": 5270501, + "y": 1876425 + }, + { + "type": "lineTo", + "x": 5276851, + "y": 1971675 + }, + { + "type": "lineTo", + "x": 5165726, + "y": 1997075 + }, + { + "type": "lineTo", + "x": 5118101, + "y": 1949450 + }, + { + "type": "lineTo", + "x": 5057776, + "y": 1860550 + }, + { + "type": "lineTo", + "x": 4968876, + "y": 1816100 + }, + { + "type": "lineTo", + "x": 4937126, + "y": 1806575 + }, + { + "type": "lineTo", + "x": 5019676, + "y": 1762125 + }, + { + "type": "lineTo", + "x": 5054601, + "y": 1704975 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "628", + "path_data": [ + { + "path_width": 320675, + "path_height": 241300, + "commands": [ + { + "type": "moveTo", + "x": 6556376, + "y": 1730375 + }, + { + "type": "lineTo", + "x": 6499226, + "y": 1851025 + }, + { + "type": "lineTo", + "x": 6480176, + "y": 1914525 + }, + { + "type": "lineTo", + "x": 6334126, + "y": 1924050 + }, + { + "type": "lineTo", + "x": 6257926, + "y": 1930400 + }, + { + "type": "lineTo", + "x": 6242051, + "y": 1851025 + }, + { + "type": "cubicBezTo", + "x1": 6240993, + "y1": 1813983, + "x2": 6239934, + "y2": 1776942, + "x": 6238876, + "y": 1739900 + }, + { + "type": "lineTo", + "x": 6235701, + "y": 1689100 + }, + { + "type": "lineTo", + "x": 6416676, + "y": 1714500 + }, + { + "type": "lineTo", + "x": 6464301, + "y": 1743075 + }, + { + "type": "lineTo", + "x": 6556376, + "y": 1730375 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/typical_rib_tubercle_colored_regions.json b/boneset-api/data/annotations/ColoredRegions/typical_rib_tubercle_colored_regions.json new file mode 100644 index 00000000..d4a881e0 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/typical_rib_tubercle_colored_regions.json @@ -0,0 +1,123 @@ +{ + "slide_number": 21, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "650", + "path_data": [ + { + "path_width": 284530, + "path_height": 104093, + "commands": [ + { + "type": "moveTo", + "x": 5132675, + "y": 1977770 + }, + { + "type": "lineTo", + "x": 4993880, + "y": 1998588 + }, + { + "type": "lineTo", + "x": 4848145, + "y": 2033286 + }, + { + "type": "lineTo", + "x": 4959181, + "y": 2074923 + }, + { + "type": "lineTo", + "x": 5049398, + "y": 2081863 + }, + { + "type": "lineTo", + "x": 5132675, + "y": 1977770 + }, + { + "type": "close" + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "651", + "path_data": [ + { + "path_width": 360867, + "path_height": 215125, + "commands": [ + { + "type": "moveTo", + "x": 6555326, + "y": 1776523 + }, + { + "type": "lineTo", + "x": 6534507, + "y": 1866737 + }, + { + "type": "lineTo", + "x": 6638603, + "y": 1901435 + }, + { + "type": "lineTo", + "x": 6777399, + "y": 1908374 + }, + { + "type": "lineTo", + "x": 6832917, + "y": 1825100 + }, + { + "type": "lineTo", + "x": 6888435, + "y": 1797342 + }, + { + "type": "lineTo", + "x": 6895374, + "y": 1700188 + }, + { + "type": "lineTo", + "x": 6763519, + "y": 1693249 + }, + { + "type": "lineTo", + "x": 6638603, + "y": 1734886 + }, + { + "type": "lineTo", + "x": 6555326, + "y": 1776523 + }, + { + "type": "close" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/ColoredRegions/vertebrae.json b/boneset-api/data/annotations/ColoredRegions/vertebrae.json new file mode 100644 index 00000000..093b4ab7 --- /dev/null +++ b/boneset-api/data/annotations/ColoredRegions/vertebrae.json @@ -0,0 +1,436 @@ +{ + "slide_number": 2, + "image_dimensions": { + "width": 12192000, + "height": 6858000 + }, + "colored_regions": [ + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "124", + "path_data": [ + { + "path_width": 461194, + "path_height": 848554, + "commands": [ + { + "type": "moveTo", + "x": 5765342, + "y": 1501325 + }, + { + "type": "cubicBezTo", + "x1": 5769752, + "y1": 1507940, + "x2": 5775220, + "y2": 1554594, + "x": 5775396, + "y": 1587844 + }, + { + "type": "cubicBezTo", + "x1": 5775573, + "y1": 1621094, + "x2": 5774879, + "y2": 1658548, + "x": 5766401, + "y": 1700824 + }, + { + "type": "cubicBezTo", + "x1": 5757923, + "y1": 1743100, + "x2": 5755175, + "y2": 1791887, + "x": 5724527, + "y": 1841499 + }, + { + "type": "cubicBezTo", + "x1": 5725629, + "y1": 1891111, + "x2": 5682957, + "y2": 1920249, + "x": 5658715, + "y": 1957219 + }, + { + "type": "cubicBezTo", + "x1": 5634473, + "y1": 1994189, + "x2": 5609988, + "y2": 2026629, + "x": 5579076, + "y": 2063319 + }, + { + "type": "cubicBezTo", + "x1": 5548164, + "y1": 2100009, + "x2": 5504816, + "y2": 2143843, + "x": 5473242, + "y": 2177358 + }, + { + "type": "cubicBezTo", + "x1": 5441668, + "y1": 2210873, + "x2": 5401938, + "y2": 2252102, + "x": 5389633, + "y": 2264407 + }, + { + "type": "cubicBezTo", + "x1": 5348843, + "y1": 2297394, + "x2": 5343163, + "y2": 2329427, + "x": 5314224, + "y": 2349879 + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "125", + "path_data": [ + { + "path_width": 144464, + "path_height": 1475388, + "commands": [ + { + "type": "moveTo", + "x": 5215007, + "y": 2480588 + }, + { + "type": "cubicBezTo", + "x1": 5202789, + "y1": 2493818, + "x2": 5190573, + "y2": 2501536, + "x": 5178356, + "y": 2520278 + }, + { + "type": "cubicBezTo", + "x1": 5166138, + "y1": 2539020, + "x2": 5155448, + "y2": 2565480, + "x": 5141704, + "y": 2593042 + }, + { + "type": "cubicBezTo", + "x1": 5127960, + "y1": 2620604, + "x2": 5109167, + "y2": 2653590, + "x": 5095891, + "y": 2685650 + }, + { + "type": "cubicBezTo", + "x1": 5082616, + "y1": 2717710, + "x2": 5073862, + "y2": 2749463, + "x": 5062053, + "y": 2785404 + }, + { + "type": "cubicBezTo", + "x1": 5050244, + "y1": 2821345, + "x2": 5032207, + "y2": 2863239, + "x": 5025040, + "y": 2901297 + }, + { + "type": "cubicBezTo", + "x1": 5017873, + "y1": 2939355, + "x2": 5019460, + "y2": 2978030, + "x": 5019051, + "y": 3013750 + }, + { + "type": "cubicBezTo", + "x1": 5018643, + "y1": 3049470, + "x2": 5016740, + "y2": 3049029, + "x": 5022588, + "y": 3115619 + }, + { + "type": "cubicBezTo", + "x1": 5028436, + "y1": 3182209, + "x2": 5040743, + "y2": 3325091, + "x": 5054143, + "y": 3413290 + }, + { + "type": "cubicBezTo", + "x1": 5067544, + "y1": 3501489, + "x2": 5082979, + "y2": 3570945, + "x": 5102994, + "y": 3644811 + }, + { + "type": "cubicBezTo", + "x1": 5123009, + "y1": 3718677, + "x2": 5154979, + "y2": 3804626, + "x": 5174237, + "y": 3856487 + }, + { + "type": "cubicBezTo", + "x1": 5193496, + "y1": 3908348, + "x2": 5201375, + "y2": 3925989, + "x": 5218544, + "y": 3955976 + } + ] + } + ] + }, + { + "anatomical_name": "Ischium", + "color": "FF00E6", + "color_name": "magenta", + "shape_id": "126", + "path_data": [ + { + "path_width": 161998, + "path_height": 971163, + "commands": [ + { + "type": "moveTo", + "x": 5285914, + "y": 4035886 + }, + { + "type": "cubicBezTo", + "x1": 5296939, + "y1": 4050294, + "x2": 5313652, + "y2": 4092312, + "x": 5328513, + "y": 4117211 + }, + { + "type": "cubicBezTo", + "x1": 5343374, + "y1": 4142110, + "x2": 5360881, + "y2": 4153334, + "x": 5375081, + "y": 4185280 + }, + { + "type": "cubicBezTo", + "x1": 5389281, + "y1": 4217225, + "x2": 5413710, + "y2": 4263857, + "x": 5413710, + "y": 4308883 + }, + { + "type": "cubicBezTo", + "x1": 5421151, + "y1": 4355345, + "x2": 5411039, + "y2": 4427324, + "x": 5410201, + "y": 4483101 + }, + { + "type": "cubicBezTo", + "x1": 5409616, + "y1": 4514782, + "x2": 5403574, + "y2": 4488110, + "x": 5397500, + "y": 4514850 + }, + { + "type": "cubicBezTo", + "x1": 5391426, + "y1": 4541590, + "x2": 5366426, + "y2": 4606043, + "x": 5351532, + "y": 4643543 + }, + { + "type": "cubicBezTo", + "x1": 5336638, + "y1": 4681044, + "x2": 5324323, + "y2": 4708920, + "x": 5308139, + "y": 4739854 + }, + { + "type": "cubicBezTo", + "x1": 5291955, + "y1": 4770787, + "x2": 5269587, + "y2": 4814511, + "x": 5254428, + "y": 4829145 + } + ] + } + ] + }, + { + "anatomical_name": "Pubis_and_Obturator_foramen", + "color": "008000", + "color_name": "green_variant", + "shape_id": "127", + "path_data": [ + { + "path_width": 162546, + "path_height": 1117297, + "commands": [ + { + "type": "moveTo", + "x": 5215393, + "y": 4972051 + }, + { + "type": "cubicBezTo", + "x1": 5212097, + "y1": 4984142, + "x2": 5190023, + "y2": 4999484, + "x": 5177340, + "y": 5023742 + }, + { + "type": "cubicBezTo", + "x1": 5164657, + "y1": 5048000, + "x2": 5149752, + "y2": 5085293, + "x": 5139289, + "y": 5117599 + }, + { + "type": "cubicBezTo", + "x1": 5128826, + "y1": 5149906, + "x2": 5115439, + "y2": 5184163, + "x": 5114555, + "y": 5217585 + }, + { + "type": "cubicBezTo", + "x1": 5113670, + "y1": 5251006, + "x2": 5120781, + "y2": 5297928, + "x": 5121275, + "y": 5327650 + }, + { + "type": "cubicBezTo", + "x1": 5121770, + "y1": 5357372, + "x2": 5131030, + "y2": 5389787, + "x": 5133400, + "y": 5430839 + }, + { + "type": "cubicBezTo", + "x1": 5135770, + "y1": 5471892, + "x2": 5160343, + "y2": 5511075, + "x": 5173598, + "y": 5545392 + }, + { + "type": "cubicBezTo", + "x1": 5186852, + "y1": 5579709, + "x2": 5198335, + "y2": 5606003, + "x": 5212931, + "y": 5636741 + }, + { + "type": "cubicBezTo", + "x1": 5227526, + "y1": 5667479, + "x2": 5246045, + "y2": 5704011, + "x": 5261171, + "y": 5729820 + }, + { + "type": "cubicBezTo", + "x1": 5276296, + "y1": 5755629, + "x2": 5290038, + "y2": 5769508, + "x": 5303677, + "y": 5791593 + }, + { + "type": "cubicBezTo", + "x1": 5317317, + "y1": 5813679, + "x2": 5328096, + "y2": 5836657, + "x": 5343007, + "y": 5862336 + }, + { + "type": "cubicBezTo", + "x1": 5357919, + "y1": 5888015, + "x2": 5371455, + "y2": 5912161, + "x": 5393143, + "y": 5945665 + }, + { + "type": "cubicBezTo", + "x1": 5414830, + "y1": 5979170, + "x2": 5460827, + "y2": 6066087, + "x": 5473135, + "y": 6063363 + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/bony_pelvis.json b/boneset-api/data/annotations/bony_pelvis.json new file mode 100644 index 00000000..c3f84c0f --- /dev/null +++ b/boneset-api/data/annotations/bony_pelvis.json @@ -0,0 +1,139 @@ +[ + { + "text": "", + "position": { + "x": 2743200, + "y": 1299410, + "width": 5943600, + "height": 4952999 + } + }, + { + "text": "Right Pelvis (lateral aspect)", + "position": { + "x": 3579863, + "y": 6251729, + "width": 1323299, + "height": 215444 + } + }, + { + "text": "Ilium", + "position": { + "x": 5586937, + "y": 2083816, + "width": 393457, + "height": 215444 + } + }, + { + "text": "", + "position": { + "x": 3873661, + "y": 4149666, + "width": 1134543, + "height": 1310358 + }, + "color": "C133AD" + }, + { + "text": "", + "position": { + "x": 4562474, + "y": 3962400, + "width": 1014265, + "height": 1060450 + }, + "color": "2F8E29" + }, + { + "text": "Pubis", + "position": { + "x": 5682077, + "y": 4259252, + "width": 419318, + "height": 215444 + } + }, + { + "text": "Ischium", + "position": { + "x": 5446767, + "y": 5263629, + "width": 507320, + "height": 215444 + } + }, + { + "text": "Acetabulum", + "position": { + "x": 5450756, + "y": 3572102, + "width": 692939, + "height": 215444 + } + }, + { + "shape": "line", + "position": { + "x": 4267200, + "y": 2191538, + "width": 1319736, + "height": 0 + } + }, + { + "shape": "line", + "position": { + "x": 5980394, + "y": 2191538, + "width": 1411007, + "height": 0 + } + }, + { + "shape": "line", + "position": { + "x": 5954088, + "y": 5371351, + "width": 961063, + "height": 0 + } + }, + { + "shape": "line", + "position": { + "x": 4495801, + "y": 5371351, + "width": 950967, + "height": 0 + } + }, + { + "shape": "line", + "position": { + "x": 5105401, + "y": 4366974, + "width": 576677, + "height": 0 + } + }, + { + "shape": "line", + "position": { + "x": 5171505, + "y": 3679824, + "width": 279250, + "height": 0 + } + }, + { + "shape": "line", + "position": { + "x": 4562474, + "y": 3679825, + "width": 609031, + "height": 495300 + } + } +] diff --git a/boneset-api/data/annotations/rotations annotations/bony_pelvis_metadata.json b/boneset-api/data/annotations/rotations annotations/bony_pelvis_metadata.json new file mode 100644 index 00000000..33691689 --- /dev/null +++ b/boneset-api/data/annotations/rotations annotations/bony_pelvis_metadata.json @@ -0,0 +1,179 @@ +{ + "slides": [ + { + "slide": 4, + "bone_set": "Bony Pelvis", + "left_media": "rId12", + "right_media": "rId13", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 5, + "bone_set": "Bony Pelvis", + "left_media": "rId10", + "right_media": "rId11", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 6, + "bone_set": "Bony Pelvis", + "left_media": "rId10", + "right_media": "rId11", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 7, + "bone_set": "Bony Pelvis", + "left_media": "rId10", + "right_media": "rId11", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 9, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 10, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 11, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 12, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 13, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 14, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 15, + "bone_set": "Bony Pelvis", + "left_media": "rId11", + "right_media": "rId12", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 16, + "bone_set": "Bony Pelvis", + "left_media": "rId13", + "right_media": "rId7", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + }, + { + "slide": 17, + "bone_set": "Bony Pelvis", + "left_media": "rId7", + "right_media": "rId8", + "subbone": null, + "sub_subbone": null, + "left_media_target": "../media/image1.jpg", + "right_media_target": "../media/image3.jpg", + "left_media_path": "data_extraction/fixtures/media/image1.jpg", + "right_media_path": "data_extraction/fixtures/media/image3.jpg" + } + ], + "audit": { + "tolerance": 0.05, + "verified_slides": [ + 4, + 5, + 6, + 7, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17 + ], + "failed_slides": [] + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/rotations annotations/rotations.json b/boneset-api/data/annotations/rotations annotations/rotations.json new file mode 100644 index 00000000..a663c0e1 --- /dev/null +++ b/boneset-api/data/annotations/rotations annotations/rotations.json @@ -0,0 +1,18 @@ +{ + "bone_set": "Bony Pelvis", + "display_format": "side-by-side", + "left_image_rotation": { + "rotation_degree": -16.999, + "rotation_emu": -1019938.0 + }, + "right_image_rotation": { + "rotation_degree": 0.0, + "rotation_emu": 0 + }, + "extracted_from_slide": 2, + "applies_to_all_slides_with_format": true, + "verified_slides": [ + 2, + 3 + ] +} \ No newline at end of file diff --git a/boneset-api/data/annotations/rotations annotations/template_bony_pelvis.json b/boneset-api/data/annotations/rotations annotations/template_bony_pelvis.json new file mode 100644 index 00000000..02b36189 --- /dev/null +++ b/boneset-api/data/annotations/rotations annotations/template_bony_pelvis.json @@ -0,0 +1,29 @@ +{ + "bone_set": "Bony Pelvis", + "display_format": "side-by-side", + "extracted_from_slide": 2, + "normalized_geometry": { + "layout": "side-by-side", + "left": { + "normX": 0.0, + "normY": 0.026786097711103796, + "normW": 0.4252635273707576, + "normH": 0.9732139022888963, + "rot_deg": -16.998966666666668, + "rot_emu": -1019938.0, + "flipH": false, + "flipV": false + }, + "right": { + "normX": 0.5142368858079116, + "normY": 0.0, + "normW": 0.48576311419208834, + "normH": 0.9439343204498732, + "rot_deg": 0.0, + "rot_emu": 0.0, + "flipH": false, + "flipV": false + }, + "norm_basis": "two-image-union" + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_and_posterior_tubercles_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_and_posterior_tubercles_text_annotations.json new file mode 100644 index 00000000..c70993bd --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_and_posterior_tubercles_text_annotations.json @@ -0,0 +1,213 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): inferior aspect", + "text_content": "Atlas (CV1): inferior aspect", + "text_box": { + "x": 2895600.0, + "y": 4038600.0, + "width": 1357313.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "246" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): superior aspect", + "text_content": "Atlas (CV1): superior aspect", + "text_box": { + "x": 2820639.0, + "y": 1401143.0, + "width": 1447801.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "248" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior tubercle", + "text_content": "Anterior tubercle", + "text_box": { + "x": 6972300.0, + "y": 3732125.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "250" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6972300.0, + "y": 3839847.0 + }, + "end_point": { + "x": 6127500.0, + "y": 3839847.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "251", + "bbox": { + "x": 6127500.0, + "y": 3839847.0, + "width": 844800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5715000.0, + "y": 3604873.0 + }, + "end_point": { + "x": 6127596.0, + "y": 3839848.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "253", + "bbox": { + "x": 5715000.0, + "y": 3604873.0, + "width": 412596.0, + "height": 234975.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 3608000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior tubercle", + "text_content": "Posterior tubercle", + "text_box": { + "x": 6248400.0, + "y": 1566966.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "254" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 6248400.0, + "y": 1674688.0 + }, + "end_point": { + "x": 5755200.0, + "y": 1674688.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "256", + "bbox": { + "x": 5755200.0, + "y": 1674688.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5752000.0, + "y": 1672000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior tubercle", + "text_content": "Posterior tubercle", + "text_box": { + "x": 6477000.0, + "y": 5912078.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "255" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 6477000.0, + "y": 6019800.0 + }, + "end_point": { + "x": 5960100.0, + "y": 6019800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "257", + "bbox": { + "x": 5960100.0, + "y": 6019800.0, + "width": 516900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5960000.0, + "y": 6016000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_frontal_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_frontal_bone_text_annotations.json new file mode 100644 index 00000000..770f38eb --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_frontal_bone_text_annotations.json @@ -0,0 +1,274 @@ +{ + "slide_number": 5, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Glabella", + "text_content": "Glabella", + "text_box": { + "x": 7799990.0, + "y": 3538283.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "221" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7799990.0, + "y": 3646005.0 + }, + "end_point": { + "x": 5721290.0, + "y": 3646005.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "223", + "bbox": { + "x": 5721290.0, + "y": 3646005.0, + "width": 2078700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5720000.0, + "y": 3648000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Supraorbital foramen", + "text_content": "Supraorbital foramen", + "text_box": { + "x": 2750422.0, + "y": 2327600.0, + "width": 952500.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "222" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3702922.0, + "y": 2435322.0 + }, + "end_point": { + "x": 3883522.0, + "y": 2435322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "224", + "bbox": { + "x": 3702922.0, + "y": 2435322.0, + "width": 180600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 3880000.0, + "y": 2432000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 7772400.0, + "y": 3896818.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "228" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7772400.0, + "y": 4004540.0 + }, + "end_point": { + "x": 7391400.0, + "y": 4004540.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "229", + "bbox": { + "x": 7391400.0, + "y": 4004540.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 4008000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Nasion", + "text_content": "Nasion", + "text_box": { + "x": 2895600.0, + "y": 3334768.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "230" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 3276600.0, + "y": 3442490.0 + }, + "end_point": { + "x": 3429000.0, + "y": 3442490.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "231", + "bbox": { + "x": 3276600.0, + "y": 3442490.0, + "width": 152400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 3429000.0, + "y": 3442490.0 + }, + "end_point": { + "x": 5721300.0, + "y": 3872390.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "232", + "bbox": { + "x": 3429000.0, + "y": 3442490.0, + "width": 2292300.0, + "height": 429900.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5720000.0, + "y": 3872000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Superciliary arches", + "text_content": "Superciliary arches", + "text_box": { + "x": 7375211.0, + "y": 1996834.0, + "width": 609600.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "234" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 7375211.0, + "y": 2166111.0 + }, + "end_point": { + "x": 7089611.0, + "y": 2166111.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "235", + "bbox": { + "x": 7089611.0, + "y": 2166111.0, + "width": 285600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7088000.0, + "y": 2168000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_mandible_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_mandible_text_annotations.json new file mode 100644 index 00000000..73780c4b --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_mandible_text_annotations.json @@ -0,0 +1,250 @@ +{ + "slide_number": 10, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Ramus", + "text_content": "Ramus", + "text_box": { + "x": 7924801.0, + "y": 2895600.0, + "width": 342899.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "364" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7924801.0, + "y": 3003322.0 + }, + "end_point": { + "x": 7512601.0, + "y": 3003322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "369", + "bbox": { + "x": 7512601.0, + "y": 3003322.0, + "width": 412200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7512000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 7791450.0, + "y": 4191000.0, + "width": 266700.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "365" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7791450.0, + "y": 4298722.0 + }, + "end_point": { + "x": 7296150.0, + "y": 4298722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "370", + "bbox": { + "x": 7296150.0, + "y": 4298722.0, + "width": 495300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7296000.0, + "y": 4296000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental foramen", + "text_content": "Mental foramen", + "text_box": { + "x": 7677150.0, + "y": 4605038.0, + "width": 762000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "366" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7677150.0, + "y": 4712760.0 + }, + "end_point": { + "x": 7037850.0, + "y": 4712760.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "371", + "bbox": { + "x": 7037850.0, + "y": 4712760.0, + "width": 639300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7040000.0, + "y": 4712000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental protuberance", + "text_content": "Mental protuberance", + "text_box": { + "x": 7448409.0, + "y": 5226278.0, + "width": 952500.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "367" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7448409.0, + "y": 5334000.0 + }, + "end_point": { + "x": 5810109.0, + "y": 5334000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "372", + "bbox": { + "x": 5810109.0, + "y": 5334000.0, + "width": 1638300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5808000.0, + "y": 5336000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental tubercle", + "text_content": "Mental tubercle", + "text_box": { + "x": 3581400.0, + "y": 5739596.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "373" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 5029200.0, + "y": 5847318.0 + }, + "end_point": { + "x": 4419600.0, + "y": 5847318.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "374", + "bbox": { + "x": 4419600.0, + "y": 5847318.0, + "width": 609600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5032000.0, + "y": 5848000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_maxilla_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_maxilla_text_annotations.json new file mode 100644 index 00000000..95ee0ebb --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_maxilla_text_annotations.json @@ -0,0 +1,172 @@ +{ + "slide_number": 9, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal process", + "text_content": "Frontal process", + "text_box": { + "x": 2895601.0, + "y": 2452463.0, + "width": 685799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "335" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5486400.0, + "y": 2560185.0 + }, + "end_point": { + "x": 3581400.0, + "y": 2560185.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "338", + "bbox": { + "x": 3581400.0, + "y": 2560185.0, + "width": 1905000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5488000.0, + "y": 2560000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Infraorbital foramen", + "text_content": "Infraorbital foramen", + "text_box": { + "x": 7810905.0, + "y": 2809470.0, + "width": 883833.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "340" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Alveolar process", + "text_content": "Alveolar process", + "text_box": { + "x": 7467600.0, + "y": 4887469.0, + "width": 762000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "342" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7467600.0, + "y": 4995191.0 + }, + "end_point": { + "x": 6554400.0, + "y": 4995191.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "341", + "bbox": { + "x": 6554400.0, + "y": 4995191.0, + "width": 913200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6552000.0, + "y": 4992000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 2734934.0, + "y": 3936639.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "337" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 4182734.0, + "y": 4044361.0 + }, + "end_point": { + "x": 3535034.0, + "y": 4044361.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "336", + "bbox": { + "x": 3535034.0, + "y": 4044361.0, + "width": 647700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4184000.0, + "y": 4048000.0 + } + ] + } + ], + "total_text_annotations": 4, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_sphenoid_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_sphenoid_bone_text_annotations.json new file mode 100644 index 00000000..db9469e4 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_sphenoid_bone_text_annotations.json @@ -0,0 +1,142 @@ +{ + "slide_number": 6, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser wing", + "text_content": "Lesser wing", + "text_box": { + "x": 8092412.0, + "y": 2716860.0, + "width": 533400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "257" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 8092412.0, + "y": 3029180.0, + "width": 594388.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "258" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior orbital fissure", + "text_content": "Superior orbital fissure", + "text_box": { + "x": 2715798.0, + "y": 1534000.0, + "width": 713202.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "260" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 3429000.0, + "y": 1703277.0 + }, + "end_point": { + "x": 4800600.0, + "y": 3657477.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "266", + "bbox": { + "x": 3429000.0, + "y": 1703277.0, + "width": 1371600.0, + "height": 1954200.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4800000.0, + "y": 3656000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Optic canal", + "text_content": "Optic canal", + "text_box": { + "x": 3810000.0, + "y": 1536462.0, + "width": 544826.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "261" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4354826.0, + "y": 1644184.0 + }, + "end_point": { + "x": 5121326.0, + "y": 3692584.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "265", + "bbox": { + "x": 4354826.0, + "y": 1644184.0, + "width": 766500.0, + "height": 2048400.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5120000.0, + "y": 3696000.0 + } + ] + } + ], + "total_text_annotations": 4, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_view_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_view_text_annotations.json new file mode 100644 index 00000000..e797d1a5 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_view_text_annotations.json @@ -0,0 +1,1078 @@ +{ + "slide_number": 3, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal bone", + "text_content": "Frontal bone", + "text_box": { + "x": 7391400.0, + "y": 1905000.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "127" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId9", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7391400.0, + "y": 2012722.0 + }, + "end_point": { + "x": 5715000.0, + "y": 2012722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "128", + "bbox": { + "x": 5715000.0, + "y": 2012722.0, + "width": 1676400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 2016000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Glabella", + "text_content": "Glabella", + "text_box": { + "x": 7581900.0, + "y": 2057400.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "129" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId10", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 7581900.0, + "y": 2165122.0 + }, + "end_point": { + "x": 7196400.0, + "y": 2165122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "170", + "bbox": { + "x": 7196400.0, + "y": 2165122.0, + "width": 385500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7200000.0, + "y": 2168000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Supraorbital foramen", + "text_content": "Supraorbital foramen", + "text_box": { + "x": 7581900.0, + "y": 2209800.0, + "width": 952500.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "130" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId11", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 7581900.0, + "y": 2317522.0 + }, + "end_point": { + "x": 7196400.0, + "y": 2317522.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "171", + "bbox": { + "x": 7196400.0, + "y": 2317522.0, + "width": 385500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7200000.0, + "y": 2320000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Nasal bone", + "text_content": "Nasal bone", + "text_box": { + "x": 3048001.0, + "y": 3000869.0, + "width": 524221.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "133" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId12", + "target": "/ppt/slides/slide7.xml", + "target_slide": 7 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5486522.0, + "y": 3108591.0 + }, + "end_point": { + "x": 3572222.0, + "y": 3108591.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "134", + "bbox": { + "x": 3572222.0, + "y": 3108591.0, + "width": 1914300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5488000.0, + "y": 3112000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Parietal bone", + "text_content": "Parietal bone", + "text_box": { + "x": 3048000.0, + "y": 2339575.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "135" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4343400.0, + "y": 2447297.0 + }, + "end_point": { + "x": 3657600.0, + "y": 2447297.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "136", + "bbox": { + "x": 3657600.0, + "y": 2447297.0, + "width": 685800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4344000.0, + "y": 2448000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic bone", + "text_content": "Zygomatic bone", + "text_box": { + "x": 7391400.0, + "y": 3133595.0, + "width": 748479.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "137" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal process", + "text_content": "Frontal process", + "text_box": { + "x": 7543800.0, + "y": 3273010.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "138" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_24", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 3380732.0 + }, + "end_point": { + "x": 6934200.0, + "y": 3380732.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "176", + "bbox": { + "x": 6934200.0, + "y": 3380732.0, + "width": 609600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6936000.0, + "y": 3384000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Temporal process", + "text_content": "Temporal process", + "text_box": { + "x": 7543800.0, + "y": 3621310.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "139" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_22", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 3729032.0 + }, + "end_point": { + "x": 7196400.0, + "y": 3729032.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "174", + "bbox": { + "x": 7196400.0, + "y": 3729032.0, + "width": 347400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7200000.0, + "y": 3728000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomaticofacial foramen", + "text_content": "Zygomaticofacial foramen", + "text_box": { + "x": 7543800.0, + "y": 3442156.0, + "width": 1143000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "140" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 3549878.0 + }, + "end_point": { + "x": 7196400.0, + "y": 3549878.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "175", + "bbox": { + "x": 7196400.0, + "y": 3549878.0, + "width": 347400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7200000.0, + "y": 3552000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Maxilla", + "text_content": "Maxilla", + "text_box": { + "x": 3048001.0, + "y": 3601093.0, + "width": 358927.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "143" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 3206737.0, + "y": 3917693.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "144" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [ + { + "line_id": "line_29", + "kind": "connector", + "start_point": { + "x": 4191037.0, + "y": 4025415.0 + }, + "end_point": { + "x": 4006837.0, + "y": 4025415.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "181", + "bbox": { + "x": 4006837.0, + "y": 4025415.0, + "width": 184200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 4024000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal process", + "text_content": "Frontal process", + "text_box": { + "x": 3200402.0, + "y": 3763037.0, + "width": 685799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "145" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [ + { + "line_id": "line_28", + "kind": "connector", + "start_point": { + "x": 4191001.0, + "y": 3870759.0 + }, + "end_point": { + "x": 3886201.0, + "y": 3870759.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "180", + "bbox": { + "x": 3886201.0, + "y": 3870759.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 3872000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Infraorbital foramen", + "text_content": "Infraorbital foramen", + "text_box": { + "x": 3206738.0, + "y": 4079563.0, + "width": 883833.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "148" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [ + { + "line_id": "line_30", + "kind": "connector", + "start_point": { + "x": 4191071.0, + "y": 4187285.0 + }, + "end_point": { + "x": 4090571.0, + "y": 4187285.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "182", + "bbox": { + "x": 4090571.0, + "y": 4187285.0, + "width": 100500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 4184000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Alveolar process", + "text_content": "Alveolar process", + "text_box": { + "x": 3200400.0, + "y": 4222522.0, + "width": 762000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "150" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 5257800.0, + "y": 4502405.0 + }, + "end_point": { + "x": 4191000.0, + "y": 4330246.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "151", + "bbox": { + "x": 4191000.0, + "y": 4330246.0, + "width": 1066800.0, + "height": 172159.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_31", + "kind": "connector", + "start_point": { + "x": 4191000.0, + "y": 4330244.0 + }, + "end_point": { + "x": 3962400.0, + "y": 4330244.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "183", + "bbox": { + "x": 3962400.0, + "y": 4330244.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5256000.0, + "y": 4504000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Sphenoid bone", + "text_content": "Sphenoid bone", + "text_box": { + "x": 7391400.0, + "y": 2473998.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "152" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser wing", + "text_content": "Lesser wing", + "text_box": { + "x": 7543801.0, + "y": 2635478.0, + "width": 533400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "153" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 6324601.0, + "y": 2317522.0 + }, + "end_point": { + "x": 7196311.0, + "y": 2743200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "132", + "bbox": { + "x": 6324601.0, + "y": 2317522.0, + "width": 871710.0, + "height": 425678.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_21", + "kind": "connector", + "start_point": { + "x": 7543801.0, + "y": 2743200.0 + }, + "end_point": { + "x": 7196401.0, + "y": 2743200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "173", + "bbox": { + "x": 7196401.0, + "y": 2743200.0, + "width": 347400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6328000.0, + "y": 2320000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 7545491.0, + "y": 2787878.0, + "width": 594388.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "154" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 7545491.0, + "y": 2895600.0 + }, + "end_point": { + "x": 7196291.0, + "y": 2895600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "172", + "bbox": { + "x": 7196291.0, + "y": 2895600.0, + "width": 349200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7200000.0, + "y": 2896000.0 + } + ] + }, + { + "annotation_id": "annot_18", + "bone_name": "Bony Pelvis", + "subbone_name": "Mandible", + "text_content": "Mandible", + "text_box": { + "x": 7391400.0, + "y": 4360161.0, + "width": 457200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "157" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_19", + "bone_name": "Bony Pelvis", + "subbone_name": "Ramus", + "text_content": "Ramus", + "text_box": { + "x": 7581902.0, + "y": 4502404.0, + "width": 342899.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "158" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId26", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 7581902.0, + "y": 4610126.0 + }, + "end_point": { + "x": 6629402.0, + "y": 4610126.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "162", + "bbox": { + "x": 6629402.0, + "y": 4610126.0, + "width": 952500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6632000.0, + "y": 4608000.0 + } + ] + }, + { + "annotation_id": "annot_20", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 7581901.0, + "y": 4648200.0, + "width": 266700.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "159" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId27", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_25", + "kind": "connector", + "start_point": { + "x": 7208701.0, + "y": 4755922.0 + }, + "end_point": { + "x": 7581901.0, + "y": 4760122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "177", + "bbox": { + "x": 7208701.0, + "y": 4755922.0, + "width": 373200.0, + "height": 4200.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7208000.0, + "y": 4752000.0 + } + ] + }, + { + "annotation_id": "annot_21", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental foramen", + "text_content": "Mental foramen", + "text_box": { + "x": 7573537.0, + "y": 4801558.0, + "width": 762000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "160" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId28", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_26", + "kind": "connector", + "start_point": { + "x": 7573537.0, + "y": 4909280.0 + }, + "end_point": { + "x": 7208737.0, + "y": 4909280.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "178", + "bbox": { + "x": 7208737.0, + "y": 4909280.0, + "width": 364800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7208000.0, + "y": 4912000.0 + } + ] + }, + { + "annotation_id": "annot_22", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental protuberance", + "text_content": "Mental protuberance", + "text_box": { + "x": 7581900.0, + "y": 4954916.0, + "width": 952500.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "161" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId29", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_27", + "kind": "connector", + "start_point": { + "x": 7581900.0, + "y": 5062638.0 + }, + "end_point": { + "x": 7196400.0, + "y": 5062638.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "179", + "bbox": { + "x": 7196400.0, + "y": 5062638.0, + "width": 385500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7200000.0, + "y": 5064000.0 + } + ] + } + ], + "total_text_annotations": 22, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/anterior_zygomatic_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/anterior_zygomatic_bone_text_annotations.json new file mode 100644 index 00000000..abb019ae --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/anterior_zygomatic_bone_text_annotations.json @@ -0,0 +1,166 @@ +{ + "slide_number": 8, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal process", + "text_content": "Frontal process", + "text_box": { + "x": 7963946.0, + "y": 2948950.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "306" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7963946.0, + "y": 3056672.0 + }, + "end_point": { + "x": 7620146.0, + "y": 3056672.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "309", + "bbox": { + "x": 7620146.0, + "y": 3056672.0, + "width": 343800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7624000.0, + "y": 3056000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Temporal process", + "text_content": "Temporal process", + "text_box": { + "x": 8077723.0, + "y": 3733800.0, + "width": 456154.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "307" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 8077723.0, + "y": 3903077.0 + }, + "end_point": { + "x": 7848223.0, + "y": 3903077.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "310", + "bbox": { + "x": 7848223.0, + "y": 3903077.0, + "width": 229500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7848000.0, + "y": 3904000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomaticofacial foramen", + "text_content": "Zygomaticofacial foramen", + "text_box": { + "x": 7890527.0, + "y": 3335923.0, + "width": 784320.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "308" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7890527.0, + "y": 3505200.0 + }, + "end_point": { + "x": 7619927.0, + "y": 3505200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "311", + "bbox": { + "x": 7619927.0, + "y": 3505200.0, + "width": 270600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7616000.0, + "y": 3504000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/atlas_arches_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/atlas_arches_text_annotations.json new file mode 100644 index 00000000..9239a1bb --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/atlas_arches_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): inferior aspect", + "text_content": "Atlas (CV1): inferior aspect", + "text_box": { + "x": 2895600.0, + "y": 4038600.0, + "width": 1357313.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "306" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): superior aspect", + "text_content": "Atlas (CV1): superior aspect", + "text_box": { + "x": 2820639.0, + "y": 1401143.0, + "width": 1447801.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "308" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/atlas_articular_surfaces_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/atlas_articular_surfaces_text_annotations.json new file mode 100644 index 00000000..343959f0 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/atlas_articular_surfaces_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): inferior aspect", + "text_content": "Atlas (CV1): inferior aspect", + "text_box": { + "x": 2895600.0, + "y": 4038600.0, + "width": 1357313.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "403" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): superior aspect", + "text_content": "Atlas (CV1): superior aspect", + "text_box": { + "x": 2820639.0, + "y": 1401143.0, + "width": 1447801.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "405" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/atlas_groove_for_vertebral_artery_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/atlas_groove_for_vertebral_artery_text_annotations.json new file mode 100644 index 00000000..1a5f396b --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/atlas_groove_for_vertebral_artery_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior", + "text_content": "Anterior", + "text_box": { + "x": 5507545.0, + "y": 5775552.0, + "width": 550092.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "334" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior", + "text_content": "Posterior", + "text_box": { + "x": 5469938.0, + "y": 1388088.0, + "width": 550092.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "335" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/atlas_lateral_mass_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/atlas_lateral_mass_text_annotations.json new file mode 100644 index 00000000..c09d0466 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/atlas_lateral_mass_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): inferior aspect", + "text_content": "Atlas (CV1): inferior aspect", + "text_box": { + "x": 2895600.0, + "y": 4038600.0, + "width": 1357313.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "377" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): superior aspect", + "text_content": "Atlas (CV1): superior aspect", + "text_box": { + "x": 2820639.0, + "y": 1401143.0, + "width": 1447801.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "379" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/atlas_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/atlas_text_annotations.json new file mode 100644 index 00000000..8056f58f --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/atlas_text_annotations.json @@ -0,0 +1,925 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): inferior aspect", + "text_content": "Atlas (CV1): inferior aspect", + "text_box": { + "x": 2895600.0, + "y": 4038600.0, + "width": 1357313.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "158" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): superior aspect", + "text_content": "Atlas (CV1): superior aspect", + "text_box": { + "x": 2820639.0, + "y": 1401143.0, + "width": 1447801.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "160" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior tubercle", + "text_content": "Anterior tubercle", + "text_box": { + "x": 6972300.0, + "y": 3732125.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "165" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6972300.0, + "y": 3839847.0 + }, + "end_point": { + "x": 6127500.0, + "y": 3839847.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "166", + "bbox": { + "x": 6127500.0, + "y": 3839847.0, + "width": 844800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5715000.0, + "y": 3604872.0 + }, + "end_point": { + "x": 6127500.0, + "y": 3839772.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "168", + "bbox": { + "x": 5715000.0, + "y": 3604872.0, + "width": 412500.0, + "height": 234900.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 3608000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse process", + "text_content": "Transverse process", + "text_box": { + "x": 7747310.0, + "y": 2676984.0, + "width": 897635.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "169" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7747310.0, + "y": 2784706.0 + }, + "end_point": { + "x": 7543910.0, + "y": 2784706.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "170", + "bbox": { + "x": 7543910.0, + "y": 2784706.0, + "width": 203400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7544000.0, + "y": 2784000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse process", + "text_content": "Transverse process", + "text_box": { + "x": 7774320.0, + "y": 4763038.0, + "width": 897635.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "171" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7774320.0, + "y": 4870760.0 + }, + "end_point": { + "x": 7543920.0, + "y": 4870760.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "172", + "bbox": { + "x": 7543920.0, + "y": 4870760.0, + "width": 230400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7544000.0, + "y": 4872000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse foramen", + "text_content": "Transverse foramen", + "text_box": { + "x": 2895600.0, + "y": 5130882.0, + "width": 990600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "173" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4134900.0, + "y": 5238604.0 + }, + "end_point": { + "x": 3886200.0, + "y": 5238604.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "174", + "bbox": { + "x": 3886200.0, + "y": 5238604.0, + "width": 248700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4136000.0, + "y": 5240000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse foramen", + "text_content": "Transverse foramen", + "text_box": { + "x": 2742542.0, + "y": 3020758.0, + "width": 990600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "176" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 3981842.0, + "y": 3128480.0 + }, + "end_point": { + "x": 3733142.0, + "y": 3128480.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "177", + "bbox": { + "x": 3733142.0, + "y": 3128480.0, + "width": 248700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3984000.0, + "y": 3128000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Groove for vertebral artery", + "text_content": "Groove for vertebral artery", + "text_box": { + "x": 7315201.0, + "y": 2165122.0, + "width": 1219199.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "179" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 7315201.0, + "y": 2272844.0 + }, + "end_point": { + "x": 6705601.0, + "y": 2272844.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "180", + "bbox": { + "x": 6705601.0, + "y": 2272844.0, + "width": 609600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6704000.0, + "y": 2272000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior tubercle", + "text_content": "Posterior tubercle", + "text_box": { + "x": 6248400.0, + "y": 1566966.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "181" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 6248400.0, + "y": 1674688.0 + }, + "end_point": { + "x": 5755200.0, + "y": 1674688.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "183", + "bbox": { + "x": 5755200.0, + "y": 1674688.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5752000.0, + "y": 1672000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior tubercle", + "text_content": "Posterior tubercle", + "text_box": { + "x": 6477000.0, + "y": 5912078.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "182" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 6477000.0, + "y": 6019800.0 + }, + "end_point": { + "x": 5960100.0, + "y": 6019800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "184", + "bbox": { + "x": 5960100.0, + "y": 6019800.0, + "width": 516900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5960000.0, + "y": 6016000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Lateral mass", + "text_content": "Lateral mass", + "text_box": { + "x": 3124200.0, + "y": 5531078.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "185" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 4134900.0, + "y": 5638800.0 + }, + "end_point": { + "x": 3810000.0, + "y": 5638800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "186", + "bbox": { + "x": 3810000.0, + "y": 5638800.0, + "width": 324900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4136000.0, + "y": 5640000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Lateral mass", + "text_content": "Lateral mass", + "text_box": { + "x": 7543800.0, + "y": 3236202.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "188" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 3343924.0 + }, + "end_point": { + "x": 7311900.0, + "y": 3343924.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "189", + "bbox": { + "x": 7311900.0, + "y": 3343924.0, + "width": 231900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 7315202.0, + "y": 3343924.0 + }, + "end_point": { + "x": 6934201.0, + "y": 3128480.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "190", + "bbox": { + "x": 6934201.0, + "y": 3128480.0, + "width": 381001.0, + "height": 215444.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6936000.0, + "y": 3128000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior articular surface", + "text_content": "Inferior articular surface", + "text_box": { + "x": 2895600.0, + "y": 4419600.0, + "width": 1086203.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "191" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId26", + "target": "/ppt/slides/slide11.xml", + "target_slide": 11 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 4953000.0, + "y": 4870760.0 + }, + "end_point": { + "x": 4343400.0, + "y": 4527322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "192", + "bbox": { + "x": 4343400.0, + "y": 4527322.0, + "width": 609600.0, + "height": 343438.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 4343303.0, + "y": 4527322.0 + }, + "end_point": { + "x": 3981803.0, + "y": 4527322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "193", + "bbox": { + "x": 3981803.0, + "y": 4527322.0, + "width": 361500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4952000.0, + "y": 4872000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior articular surface", + "text_content": "Superior articular surface", + "text_box": { + "x": 2820640.0, + "y": 2057400.0, + "width": 1141761.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "194" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId27", + "target": "/ppt/slides/slide11.xml", + "target_slide": 11 + }, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 4878040.0, + "y": 2590800.0 + }, + "end_point": { + "x": 4268440.0, + "y": 2165122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "195", + "bbox": { + "x": 4268440.0, + "y": 2165122.0, + "width": 609600.0, + "height": 425678.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 4268401.0, + "y": 2165122.0 + }, + "end_point": { + "x": 3962401.0, + "y": 2165122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "196", + "bbox": { + "x": 3962401.0, + "y": 2165122.0, + "width": 306000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 2592000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Articular facet for dens", + "text_content": "Articular facet for dens", + "text_box": { + "x": 7160738.0, + "y": 4204156.0, + "width": 1068862.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "197" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId28", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [ + { + "line_id": "line_21", + "kind": "connector", + "start_point": { + "x": 7160738.0, + "y": 4311878.0 + }, + "end_point": { + "x": 6315938.0, + "y": 4311878.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "198", + "bbox": { + "x": 6315938.0, + "y": 4311878.0, + "width": 844800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6312000.0, + "y": 4312000.0 + } + ] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Outline for dens of axis", + "text_content": "Outline for dens of axis", + "text_box": { + "x": 3124201.0, + "y": 3343924.0, + "width": 1040329.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "201" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 4571930.0, + "y": 3451646.0 + }, + "end_point": { + "x": 4164530.0, + "y": 3451646.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "202", + "bbox": { + "x": 4164530.0, + "y": 3451646.0, + "width": 407400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4568000.0, + "y": 3448000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Outline for transverse ligament of atlas", + "text_content": "Outline for transverse ligament of atlas", + "text_box": { + "x": 7467601.0, + "y": 5346326.0, + "width": 990600.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "204" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_25", + "kind": "connector", + "start_point": { + "x": 7467601.0, + "y": 5515603.0 + }, + "end_point": { + "x": 7081201.0, + "y": 5515603.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "205", + "bbox": { + "x": 7081201.0, + "y": 5515603.0, + "width": 386400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_26", + "kind": "connector", + "start_point": { + "x": 7081247.0, + "y": 5515604.0 + }, + "end_point": { + "x": 6016547.0, + "y": 4965104.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "206", + "bbox": { + "x": 6016547.0, + "y": 4965104.0, + "width": 1064700.0, + "height": 550500.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6016000.0, + "y": 4968000.0 + } + ] + } + ], + "total_text_annotations": 17, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/atlas_transverse_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/atlas_transverse_process_text_annotations.json new file mode 100644 index 00000000..2dea7e7c --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/atlas_transverse_process_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): inferior aspect", + "text_content": "Atlas (CV1): inferior aspect", + "text_box": { + "x": 2895600.0, + "y": 4038600.0, + "width": 1357313.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "280" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas (CV1): superior aspect", + "text_content": "Atlas (CV1): superior aspect", + "text_box": { + "x": 2820639.0, + "y": 1401143.0, + "width": 1447801.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "282" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_articular_surfaces_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_articular_surfaces_text_annotations.json new file mode 100644 index 00000000..b1408c6d --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_articular_surfaces_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 2758980.0, + "y": 3865149.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "676" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 2782228.0, + "y": 1393731.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "677" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 7077131.0, + "y": 2133600.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "678" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_body_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_body_text_annotations.json new file mode 100644 index 00000000..38164ce4 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_body_text_annotations.json @@ -0,0 +1,245 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 3485252.0, + "y": 5257800.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "505" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 6553201.0, + "y": 5257800.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "506" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Dens", + "text_content": "Dens", + "text_box": { + "x": 5681896.0, + "y": 2330677.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "508" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6629255.0, + "y": 2438399.0 + }, + "end_point": { + "x": 5983055.0, + "y": 2438399.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "509", + "bbox": { + "x": 5983055.0, + "y": 2438399.0, + "width": 646200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5029096.0, + "y": 2438399.0 + }, + "end_point": { + "x": 5681896.0, + "y": 2438399.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "511", + "bbox": { + "x": 5029096.0, + "y": 2438399.0, + "width": 652800.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7943740.0, + "y": 3003323.0 + }, + "end_point": { + "x": 6629401.0, + "y": 2438400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "517", + "bbox": { + "x": 6629401.0, + "y": 2438400.0, + "width": 1314339.0, + "height": 564923.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5032000.0, + "y": 2440000.0 + }, + { + "x": 7944000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 5681896.0, + "y": 3003322.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "510" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 6400655.0, + "y": 3111044.0 + }, + "end_point": { + "x": 5983055.0, + "y": 3111044.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "513", + "bbox": { + "x": 5983055.0, + "y": 3111044.0, + "width": 417600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5681896.0, + "y": 3111044.0 + }, + "end_point": { + "x": 4267096.0, + "y": 3111044.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "516", + "bbox": { + "x": 4267096.0, + "y": 3111044.0, + "width": 1414800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 8116654.0, + "y": 4343400.0 + }, + "end_point": { + "x": 6400800.0, + "y": 3111044.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "519", + "bbox": { + "x": 6400800.0, + "y": 3111044.0, + "width": 1715854.0, + "height": 1232356.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 3112000.0 + }, + { + "x": 8120000.0, + "y": 4344000.0 + } + ] + } + ], + "total_text_annotations": 4, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_lamina_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_lamina_text_annotations.json new file mode 100644 index 00000000..7482e619 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_lamina_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 2758980.0, + "y": 3865149.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "620" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 2782228.0, + "y": 1393731.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "621" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 7077131.0, + "y": 2133600.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "622" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_pedicle_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_pedicle_text_annotations.json new file mode 100644 index 00000000..d5803d5c --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_pedicle_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 6553201.0, + "y": 2057400.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "593" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 3429000.0, + "y": 2057400.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "594" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_spinous_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_spinous_process_text_annotations.json new file mode 100644 index 00000000..b2dae288 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_spinous_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 2758980.0, + "y": 3865149.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "649" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 2782228.0, + "y": 1393731.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "650" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 7077131.0, + "y": 2133600.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "651" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_text_annotations.json new file mode 100644 index 00000000..61bb4a5a --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_text_annotations.json @@ -0,0 +1,723 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 2758980.0, + "y": 3865149.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "431" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 2782228.0, + "y": 1393731.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "432" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 7077131.0, + "y": 2133600.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "433" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 5086350.0, + "y": 1609175.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "434" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide19.xml", + "target_slide": 19 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5086350.0, + "y": 1716897.0 + }, + "end_point": { + "x": 4593150.0, + "y": 1716897.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "435", + "bbox": { + "x": 4593150.0, + "y": 1716897.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4592000.0, + "y": 1720000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse process", + "text_content": "Transverse process", + "text_box": { + "x": 5713079.0, + "y": 5401281.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "436" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide15.xml", + "target_slide": 15 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5713079.0, + "y": 5509003.0 + }, + "end_point": { + "x": 5255879.0, + "y": 5509003.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "437", + "bbox": { + "x": 5255879.0, + "y": 5509003.0, + "width": 457200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5256000.0, + "y": 5512000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior articular surface", + "text_content": "Superior articular surface", + "text_box": { + "x": 5508530.0, + "y": 3200400.0, + "width": 1172737.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "438" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5508530.0, + "y": 3308122.0 + }, + "end_point": { + "x": 5155430.0, + "y": 3308122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "439", + "bbox": { + "x": 5155430.0, + "y": 3308122.0, + "width": 353100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7162767.0, + "y": 3308122.0 + }, + "end_point": { + "x": 6681267.0, + "y": 3308122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "440", + "bbox": { + "x": 6681267.0, + "y": 3308122.0, + "width": 481500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 3657600.0 + }, + "end_point": { + "x": 7162800.0, + "y": 3308122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "441", + "bbox": { + "x": 7162800.0, + "y": 3308122.0, + "width": 914400.0, + "height": 349478.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5152000.0, + "y": 3312000.0 + }, + { + "x": 8080000.0, + "y": 3656000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior articular surface", + "text_content": "Inferior articular surface", + "text_box": { + "x": 5577600.0, + "y": 4789421.0, + "width": 1172737.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "442" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 5577600.0, + "y": 4897143.0 + }, + "end_point": { + "x": 5257800.0, + "y": 4897143.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "443", + "bbox": { + "x": 5257800.0, + "y": 4897143.0, + "width": 319800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 6750337.0, + "y": 4897143.0 + }, + "end_point": { + "x": 7010437.0, + "y": 4897143.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "444", + "bbox": { + "x": 6750337.0, + "y": 4897143.0, + "width": 260100.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7008000.0, + "y": 4896000.0 + }, + { + "x": 5256000.0, + "y": 4896000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Dens", + "text_content": "Dens", + "text_box": { + "x": 7010401.0, + "y": 2740234.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "446" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 3124200.0 + }, + "end_point": { + "x": 7696202.0, + "y": 2847956.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "447", + "bbox": { + "x": 7696202.0, + "y": 2847956.0, + "width": 380999.0, + "height": 276244.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 7696160.0, + "y": 2847956.0 + }, + "end_point": { + "x": 7311560.0, + "y": 2847956.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "448", + "bbox": { + "x": 7311560.0, + "y": 2847956.0, + "width": 384600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 8080000.0, + "y": 3128000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Dens", + "text_content": "Dens", + "text_box": { + "x": 2782230.0, + "y": 3549878.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "449" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 4267189.0, + "y": 3657600.0 + }, + "end_point": { + "x": 3083389.0, + "y": 3657600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "450", + "bbox": { + "x": 3083389.0, + "y": 3657600.0, + "width": 1183800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 3656000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 2809024.0, + "y": 3001666.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "451" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [ + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 4419683.0, + "y": 3109388.0 + }, + "end_point": { + "x": 3110183.0, + "y": 3109388.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "452", + "bbox": { + "x": 3110183.0, + "y": 3109388.0, + "width": 1309500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4416000.0, + "y": 3112000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse foramen", + "text_content": "Transverse foramen", + "text_box": { + "x": 5577600.0, + "y": 5769125.0, + "width": 899401.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "453" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 5577600.0, + "y": 5876847.0 + }, + "end_point": { + "x": 5408400.0, + "y": 5876847.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "454", + "bbox": { + "x": 5408400.0, + "y": 5876847.0, + "width": 169200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 5408278.0, + "y": 5876847.0 + }, + "end_point": { + "x": 5029200.0, + "y": 5616725.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "455", + "bbox": { + "x": 5029200.0, + "y": 5616725.0, + "width": 379078.0, + "height": 260122.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5032000.0, + "y": 5616000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse foramen", + "text_content": "Transverse foramen", + "text_box": { + "x": 6560700.0, + "y": 5029200.0, + "width": 899401.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "456" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 7460101.0, + "y": 5136922.0 + }, + "end_point": { + "x": 7772401.0, + "y": 5136922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "457", + "bbox": { + "x": 7460101.0, + "y": 5136922.0, + "width": 312300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7776000.0, + "y": 5136000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 5008228.0, + "y": 3950702.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "459" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide19.xml", + "target_slide": 19 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 5008228.0, + "y": 4058424.0 + }, + "end_point": { + "x": 4515028.0, + "y": 4058424.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "460", + "bbox": { + "x": 4515028.0, + "y": 4058424.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 6096028.0, + "y": 4058424.0 + }, + "end_point": { + "x": 5808328.0, + "y": 4058424.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "461", + "bbox": { + "x": 5808328.0, + "y": 4058424.0, + "width": 287700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6096000.0, + "y": 4056000.0 + }, + { + "x": 4512000.0, + "y": 4056000.0 + } + ] + } + ], + "total_text_annotations": 13, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_transverse_foramen_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_transverse_foramen_text_annotations.json new file mode 100644 index 00000000..11560c7e --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_transverse_foramen_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 3657601.0, + "y": 2022697.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "568" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 6705601.0, + "y": 2026821.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "569" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/axis_transverse_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/axis_transverse_process_text_annotations.json new file mode 100644 index 00000000..52b4f79c --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/axis_transverse_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): inferior aspect", + "text_content": "Axis (CV2): inferior aspect", + "text_box": { + "x": 2758980.0, + "y": 3865149.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "540" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): superior aspect", + "text_content": "Axis (CV2): superior aspect", + "text_box": { + "x": 2782228.0, + "y": 1393731.0, + "width": 1408772.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "541" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis (CV2): lateral aspect", + "text_content": "Axis (CV2): lateral aspect", + "text_box": { + "x": 7077131.0, + "y": 2133600.0, + "width": 1390539.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "542" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/bony_pelvis_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/bony_pelvis_text_annotations.json new file mode 100644 index 00000000..9df90ec4 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/bony_pelvis_text_annotations.json @@ -0,0 +1,363 @@ +{ + "slide_number": 2, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Ilium", + "text_content": "Ilium", + "text_box": { + "x": 6926937.0, + "y": 621816.0, + "width": 393457.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "107" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId8", + "target": "/ppt/slides/slide3.xml", + "target_slide": 3 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6117237.0, + "y": 729538.0 + }, + "end_point": { + "x": 6926937.0, + "y": 729538.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "108", + "bbox": { + "x": 4267237.0, + "y": 2191538.0, + "width": 1319700.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 6420000.0, + "y": 2626738.0 + }, + "end_point": { + "x": 6651000.0, + "y": 2626738.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "109", + "bbox": { + "x": 5331394.0, + "y": 2191538.0, + "width": 1410900.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 2192000.0 + }, + { + "x": 7392000.0, + "y": 2192000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Pubis", + "text_content": "Pubis", + "text_box": { + "x": 6652077.0, + "y": 3309000.0, + "width": 419318.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "115" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId12", + "target": "/ppt/slides/slide15.xml", + "target_slide": 15 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7071395.0, + "y": 3416722.0 + }, + "end_point": { + "x": 7675595.0, + "y": 3416722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "119", + "bbox": { + "x": 7071395.0, + "y": 3416722.0, + "width": 604200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 6075477.0, + "y": 3416722.0 + }, + "end_point": { + "x": 6652077.0, + "y": 3416722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "120", + "bbox": { + "x": 6075477.0, + "y": 3416722.0, + "width": 576600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7674000.0, + "y": 3417748.0 + }, + { + "x": 6074000.0, + "y": 3417748.0 + } + ] + }, + + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Ischium", + "text_content": "Ischium", + "text_box": { + "x": 6500000.0, + "y": 4300000.0, + "width": 507320.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "116" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide9.xml", + "target_slide": 9 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7800000.0, + "y": 4400000.0 + }, + "end_point": { + "x": 7060000.0, + "y": 4400000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "117", + "bbox": { + "x": 6500000.0, + "y": 4400000.0, + "width": 560000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5600000.0, + "y": 4400000.0 + }, + "end_point": { + "x": 6500000.0, + "y": 4400000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "118", + "bbox": { + "x": 4845767.0, + "y": 4570000.0, + "width": 951000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { "x": 7800000.0, "y": 4400000.0 }, + "end_point": { "x": 8100000.0, "y": 4250000.0 }, + "style": { "width": 9525, "arrow_head": "none" }, + "shape_id": "124", + "bbox": { + "x": 7800000.0, + "y": 4250000.0, + "width": 521000.0, + "height": 150000.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6912000.0, + "y": 4968000.0 + }, + { + "x": 4496000.0, + "y": 4968000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Acetabulum", + "text_content": "Acetabulum", + "text_box": { + "x": 6709756.0, + "y": 2562102.0, + "width": 692939.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "122" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 6421000.0, + "y": 2629824.0 + }, + "end_point": { + "x": 5870000.0, + "y": 3100824.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "123", + "bbox": { + "x": 5171456.0, + "y": 3679824.0, + "width": 279300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5168000.0, + "y": 3680000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Obturator foramen", + "text_content": "Obturator\nforamen", + "text_box": { + "x": 8600000.0, + "y": 4168445.0, + "width": 300000.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "125" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 7893920.0, + "y": 3826202.0 + }, + "end_point": { + "x": 8435480.0, + "y": 4265000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "126", + "bbox": { + "x": 7893920.0, + "y": 4026202.0, + "width": 529560.0, + "height": 233640.0, + "rotation_emu": 0.0 + } + } + ], + + "target_regions": [ + { + "x": 7714949.0, + "y": 3948000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_body_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_body_text_annotations.json new file mode 100644 index 00000000..8c4955d8 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_body_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: inferior aspect", + "text_content": "CV3: inferior aspect", + "text_box": { + "x": 2731949.0, + "y": 3739375.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "781" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 2731949.0, + "y": 1330154.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "782" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: right lateral aspect", + "text_content": "CV3: right lateral aspect", + "text_box": { + "x": 7010400.0, + "y": 1868994.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "783" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_lamina_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_lamina_text_annotations.json new file mode 100644 index 00000000..e218561e --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_lamina_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: inferior aspect", + "text_content": "CV3: inferior aspect", + "text_box": { + "x": 2731949.0, + "y": 3739375.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "864" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 2731949.0, + "y": 1330154.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "865" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: right lateral aspect", + "text_content": "CV3: right lateral aspect", + "text_box": { + "x": 7010400.0, + "y": 1868994.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "866" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_pedicle_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_pedicle_text_annotations.json new file mode 100644 index 00000000..af5d14f6 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_pedicle_text_annotations.json @@ -0,0 +1,45 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: inferior aspect", + "text_content": "CV3: inferior aspect", + "text_box": { + "x": 6479176.0, + "y": 1907628.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "806" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 3657600.0, + "y": 1907628.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "807" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_spinous_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_spinous_process_text_annotations.json new file mode 100644 index 00000000..6b7aef7b --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_spinous_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: inferior aspect", + "text_content": "CV3: inferior aspect", + "text_box": { + "x": 2731949.0, + "y": 3739375.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "893" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 2731949.0, + "y": 1330154.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "894" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: right lateral aspect", + "text_content": "CV3: right lateral aspect", + "text_box": { + "x": 7010400.0, + "y": 1868994.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "895" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_text_annotations.json new file mode 100644 index 00000000..88e54c39 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_text_annotations.json @@ -0,0 +1,699 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: inferior aspect", + "text_content": "CV3: inferior aspect", + "text_box": { + "x": 2731949.0, + "y": 3739375.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "706" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 2731949.0, + "y": 1330154.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "707" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: right lateral aspect", + "text_content": "CV3: right lateral aspect", + "text_box": { + "x": 7010400.0, + "y": 1868994.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "708" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse process", + "text_content": "Transverse process", + "text_box": { + "x": 5577600.0, + "y": 5131561.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "709" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5577600.0, + "y": 5239283.0 + }, + "end_point": { + "x": 5120400.0, + "y": 5239283.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "710", + "bbox": { + "x": 5120400.0, + "y": 5239283.0, + "width": 457200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5120000.0, + "y": 5240000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior articular surface", + "text_content": "Superior articular surface", + "text_box": { + "x": 5655929.0, + "y": 2590800.0, + "width": 1172737.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "711" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5655929.0, + "y": 2698522.0 + }, + "end_point": { + "x": 5302829.0, + "y": 2698522.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "712", + "bbox": { + "x": 5302829.0, + "y": 2698522.0, + "width": 353100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 6828666.0, + "y": 2698522.0 + }, + "end_point": { + "x": 7467666.0, + "y": 3003322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "724", + "bbox": { + "x": 6828666.0, + "y": 2698522.0, + "width": 639000.0, + "height": 304800.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5304000.0, + "y": 2696000.0 + }, + { + "x": 7464000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior articular surface", + "text_content": "Inferior articular surface", + "text_box": { + "x": 5491217.0, + "y": 4633536.0, + "width": 1172737.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "713" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5491217.0, + "y": 4741258.0 + }, + "end_point": { + "x": 5257817.0, + "y": 4741258.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "714", + "bbox": { + "x": 5257817.0, + "y": 4741258.0, + "width": 233400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 6934254.0, + "y": 4741258.0 + }, + "end_point": { + "x": 6663954.0, + "y": 4741258.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "726", + "bbox": { + "x": 6663954.0, + "y": 4741258.0, + "width": 270300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5256000.0, + "y": 4744000.0 + }, + { + "x": 6936000.0, + "y": 4744000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 2778902.0, + "y": 3109388.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "715" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide23.xml", + "target_slide": 23 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 4267161.0, + "y": 3217110.0 + }, + "end_point": { + "x": 3080061.0, + "y": 3217110.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "716", + "bbox": { + "x": 3080061.0, + "y": 3217110.0, + "width": 1187100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 3216000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse foramen", + "text_content": "Transverse foramen", + "text_box": { + "x": 5577600.0, + "y": 5535954.0, + "width": 899401.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "717" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 5370000.0, + "y": 5643676.0 + }, + "end_point": { + "x": 5577600.0, + "y": 5643676.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "718", + "bbox": { + "x": 5370000.0, + "y": 5643676.0, + "width": 207600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 5370088.0, + "y": 5643678.0 + }, + "end_point": { + "x": 4953001.0, + "y": 5486400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "728", + "bbox": { + "x": 4953001.0, + "y": 5486400.0, + "width": 417087.0, + "height": 157278.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4952000.0, + "y": 5488000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 4777499.0, + "y": 3950702.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "719" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide27.xml", + "target_slide": 27 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4777499.0, + "y": 4058424.0 + }, + "end_point": { + "x": 4284299.0, + "y": 4058424.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "720", + "bbox": { + "x": 4284299.0, + "y": 4058424.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 5960099.0, + "y": 4058424.0 + }, + "end_point": { + "x": 5577599.0, + "y": 4058424.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "723", + "bbox": { + "x": 5577599.0, + "y": 4058424.0, + "width": 382500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5960000.0, + "y": 4056000.0 + }, + { + "x": 4288000.0, + "y": 4056000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 4855828.0, + "y": 1736725.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "721" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide27.xml", + "target_slide": 27 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 4855828.0, + "y": 1844447.0 + }, + "end_point": { + "x": 4362628.0, + "y": 1844447.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "722", + "bbox": { + "x": 4362628.0, + "y": 1844447.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4360000.0, + "y": 1848000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Lamina", + "text_content": "Lamina", + "text_box": { + "x": 3019471.0, + "y": 2099826.0, + "width": 361859.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "729" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 4038630.0, + "y": 2209948.0 + }, + "end_point": { + "x": 3381330.0, + "y": 2207548.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "730", + "bbox": { + "x": 3381330.0, + "y": 2207548.0, + "width": 657300.0, + "height": 2400.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 2208000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Vertebral foramen", + "text_content": "Vertebral foramen", + "text_box": { + "x": 2731950.0, + "y": 4370043.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "731" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide29.xml", + "target_slide": 29 + }, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 3798875.0, + "y": 4477765.0 + }, + "end_point": { + "x": 3605075.0, + "y": 4477765.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "732", + "bbox": { + "x": 3605075.0, + "y": 4477765.0, + "width": 193800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 3798750.0, + "y": 4477765.0 + }, + "end_point": { + "x": 4191001.0, + "y": 4895751.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "733", + "bbox": { + "x": 3798750.0, + "y": 4477765.0, + "width": 392251.0, + "height": 417986.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 4896000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Pedicle", + "text_content": "Pedicle", + "text_box": { + "x": 2895601.0, + "y": 5838292.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "734" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 3429001.0, + "y": 5946014.0 + }, + "end_point": { + "x": 3276601.0, + "y": 5946014.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "735", + "bbox": { + "x": 3276601.0, + "y": 5946014.0, + "width": 152400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3432000.0, + "y": 5944000.0 + } + ] + } + ], + "total_text_annotations": 13, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_transverse_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_transverse_process_text_annotations.json new file mode 100644 index 00000000..f811185d --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_transverse_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: inferior aspect", + "text_content": "CV3: inferior aspect", + "text_box": { + "x": 2731949.0, + "y": 3739375.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "835" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 2731949.0, + "y": 1330154.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "836" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: right lateral aspect", + "text_content": "CV3: right lateral aspect", + "text_box": { + "x": 7010400.0, + "y": 1868994.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "837" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_vertebral_arch_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_vertebral_arch_text_annotations.json new file mode 100644 index 00000000..45528988 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_vertebral_arch_text_annotations.json @@ -0,0 +1,27 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 5105400.0, + "y": 1401908.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "918" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/cervical_vertebral_foramen_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/cervical_vertebral_foramen_text_annotations.json new file mode 100644 index 00000000..cf16575d --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/cervical_vertebral_foramen_text_annotations.json @@ -0,0 +1,27 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "CV3: superior aspect", + "text_content": "CV3: superior aspect", + "text_box": { + "x": 5105400.0, + "y": 1529737.0, + "width": 1219200.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "939" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/clavicle_acromial_end_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/clavicle_acromial_end_text_annotations.json new file mode 100644 index 00000000..e87b372d --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/clavicle_acromial_end_text_annotations.json @@ -0,0 +1,46 @@ +{ + "slide_number": 11, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (superior aspect)", + "text_content": "Clavicle (superior aspect)", + "text_box": { + "x": 4968787.0, + "y": 3001418.0, + "width": 1237037.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "374" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (inferior aspect)", + "text_content": "Clavicle (inferior aspect)", + "text_box": { + "x": 5145025.0, + "y": 5453087.0, + "width": 1197864.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "379" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/clavicle_shaft_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/clavicle_shaft_text_annotations.json new file mode 100644 index 00000000..e19d89f9 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/clavicle_shaft_text_annotations.json @@ -0,0 +1,238 @@ +{ + "slide_number": 10, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (superior aspect)", + "text_content": "Clavicle (superior aspect)", + "text_box": { + "x": 4968787.0, + "y": 3001418.0, + "width": 1237037.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "335" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (inferior aspect)", + "text_content": "Clavicle (inferior aspect)", + "text_box": { + "x": 5124988.0, + "y": 5633469.0, + "width": 1197864.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "336" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Subclavian groove", + "text_content": "Subclavian groove", + "text_box": { + "x": 5562332.0, + "y": 3886200.0, + "width": 760520.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "341" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5334032.0, + "y": 3993922.0 + }, + "end_point": { + "x": 5562332.0, + "y": 3993922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "343", + "bbox": { + "x": 5334032.0, + "y": 3993922.0, + "width": 228300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5336000.0, + "y": 3992000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Trapezoid line", + "text_content": "Trapezoid line", + "text_box": { + "x": 4116280.0, + "y": 4052249.0, + "width": 760520.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "344" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 3962380.0, + "y": 4159971.0 + }, + "end_point": { + "x": 4116280.0, + "y": 4159971.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "345", + "bbox": { + "x": 3962380.0, + "y": 4159971.0, + "width": 153900.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 3960000.0, + "y": 4160000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Conoid tubercle", + "text_content": "Conoid tubercle", + "text_box": { + "x": 2971215.0, + "y": 5429830.0, + "width": 760520.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "348" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 3731735.0, + "y": 5537552.0 + }, + "end_point": { + "x": 3936935.0, + "y": 5537552.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "349", + "bbox": { + "x": 3731735.0, + "y": 5537552.0, + "width": 205200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 3936000.0, + "y": 5536000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Impression for costoclavicular ligament", + "text_content": "Impression for costoclavicular ligament", + "text_box": { + "x": 6199353.0, + "y": 4677141.0, + "width": 760520.0, + "height": 461665.0, + "rotation_emu": 0.0, + "shape_id": "353" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 6959873.0, + "y": 4907974.0 + }, + "end_point": { + "x": 7086473.0, + "y": 4907974.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "354", + "bbox": { + "x": 6959873.0, + "y": 4907974.0, + "width": 126600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7088000.0, + "y": 4904000.0 + } + ] + } + ], + "total_text_annotations": 6, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/clavicle_sternal_end_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/clavicle_sternal_end_text_annotations.json new file mode 100644 index 00000000..8335d961 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/clavicle_sternal_end_text_annotations.json @@ -0,0 +1,46 @@ +{ + "slide_number": 12, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (superior aspect)", + "text_content": "Clavicle (superior aspect)", + "text_box": { + "x": 4968787.0, + "y": 3001418.0, + "width": 1237037.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "398" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (inferior aspect)", + "text_content": "Clavicle (inferior aspect)", + "text_box": { + "x": 5124988.0, + "y": 5441722.0, + "width": 1197864.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "403" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/clavicle_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/clavicle_text_annotations.json new file mode 100644 index 00000000..67fe32b0 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/clavicle_text_annotations.json @@ -0,0 +1,46 @@ +{ + "slide_number": 9, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (superior aspect)", + "text_content": "Clavicle (superior aspect)", + "text_box": { + "x": 4968787.0, + "y": 3001418.0, + "width": 1237037.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "315" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (inferior aspect)", + "text_content": "Clavicle (inferior aspect)", + "text_box": { + "x": 5124988.0, + "y": 5441722.0, + "width": 1197864.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "316" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/clavicle_view_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/clavicle_view_text_annotations.json new file mode 100644 index 00000000..ae7bc826 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/clavicle_view_text_annotations.json @@ -0,0 +1,350 @@ +{ + "slide_number": 8, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (superior aspect)", + "text_content": "Clavicle (superior aspect)", + "text_box": { + "x": 4968787.0, + "y": 3001418.0, + "width": 1237037.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "279" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle (inferior aspect)", + "text_content": "Clavicle (inferior aspect)", + "text_box": { + "x": 5124988.0, + "y": 5441722.0, + "width": 1197864.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "280" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Acromial end", + "text_content": "Acromial end", + "text_box": { + "x": 4158854.0, + "y": 3640039.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "281" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide11.xml", + "target_slide": 11 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3701654.0, + "y": 3747761.0 + }, + "end_point": { + "x": 4158854.0, + "y": 3747761.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "282", + "bbox": { + "x": 3701654.0, + "y": 3747761.0, + "width": 457200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3701654.0, + "y": 3747762.0 + }, + "end_point": { + "x": 3429000.0, + "y": 2895600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "283", + "bbox": { + "x": 3429000.0, + "y": 2895600.0, + "width": 272654.0, + "height": 852162.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3432000.0, + "y": 2896000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Sternal end", + "text_content": "Sternal end", + "text_box": { + "x": 6858000.0, + "y": 3352800.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "285" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7467600.0, + "y": 3460522.0 + }, + "end_point": { + "x": 7848600.0, + "y": 3460522.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "286", + "bbox": { + "x": 7467600.0, + "y": 3460522.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 7848600.0, + "y": 3460522.0 + }, + "end_point": { + "x": 8153400.0, + "y": 4343400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "288", + "bbox": { + "x": 7848600.0, + "y": 3460522.0, + "width": 304800.0, + "height": 882878.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 8152000.0, + "y": 4344000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Subclavian groove", + "text_content": "Subclavian groove", + "text_box": { + "x": 5562333.0, + "y": 3918446.0, + "width": 760520.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "289" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 5334033.0, + "y": 4026168.0 + }, + "end_point": { + "x": 5562333.0, + "y": 4026168.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "291", + "bbox": { + "x": 5334033.0, + "y": 4026168.0, + "width": 228300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5336000.0, + "y": 4024000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 5757969.0, + "y": 1839988.0, + "width": 306548.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "292" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide10.xml", + "target_slide": 10 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 6248793.0, + "y": 1947710.0 + }, + "end_point": { + "x": 6585950.0, + "y": 2338154.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "293", + "bbox": { + "x": 6248793.0, + "y": 1947710.0, + "width": 337157.0, + "height": 390444.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 6064517.0, + "y": 1947710.0 + }, + "end_point": { + "x": 6248717.0, + "y": 1947710.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "294", + "bbox": { + "x": 6064517.0, + "y": 1947710.0, + "width": 184200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 5757969.0, + "y": 1947710.0 + }, + "end_point": { + "x": 5562369.0, + "y": 1947710.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "295", + "bbox": { + "x": 5562369.0, + "y": 1947710.0, + "width": 195600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5560000.0, + "y": 1944000.0 + }, + { + "x": 6584000.0, + "y": 2336000.0 + } + ] + } + ], + "total_text_annotations": 6, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/first_rib_grooves_for_subclavian_vessels_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/first_rib_grooves_for_subclavian_vessels_text_annotations.json new file mode 100644 index 00000000..1fc142d8 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/first_rib_grooves_for_subclavian_vessels_text_annotations.json @@ -0,0 +1,82 @@ +{ + "slide_number": 17, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Scalene tubercle", + "text_content": "Scalene tubercle", + "text_box": { + "x": 4343400.0, + "y": 3168748.0, + "width": 753172.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "534" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5096572.0, + "y": 3276470.0 + }, + "end_point": { + "x": 5333872.0, + "y": 3276470.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "535", + "bbox": { + "x": 5096572.0, + "y": 3276470.0, + "width": 237300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5334000.0, + "y": 3276470.0 + }, + "end_point": { + "x": 5791200.0, + "y": 3918446.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "536", + "bbox": { + "x": 5334000.0, + "y": 3276470.0, + "width": 457200.0, + "height": 641976.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5792000.0, + "y": 3920000.0 + } + ] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/first_rib_head_and_neck_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/first_rib_head_and_neck_text_annotations.json new file mode 100644 index 00000000..273d4362 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/first_rib_head_and_neck_text_annotations.json @@ -0,0 +1,46 @@ +{ + "slide_number": 15, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (superior aspect)", + "text_content": "1st Right rib (superior aspect)", + "text_box": { + "x": 7239000.0, + "y": 3220656.0, + "width": 1401696.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "478" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (inferior aspect)", + "text_content": "1st Right rib (inferior aspect)", + "text_box": { + "x": 7239000.0, + "y": 6032955.0, + "width": 1362522.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "479" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/first_rib_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/first_rib_text_annotations.json new file mode 100644 index 00000000..0d851c02 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/first_rib_text_annotations.json @@ -0,0 +1,434 @@ +{ + "slide_number": 13, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (superior aspect)", + "text_content": "1st Right rib (superior aspect)", + "text_box": { + "x": 7239000.0, + "y": 3220656.0, + "width": 1401696.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "423" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (inferior aspect)", + "text_content": "1st Right rib (inferior aspect)", + "text_box": { + "x": 7239000.0, + "y": 6032955.0, + "width": 1362522.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "424" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Head", + "text_content": "Head", + "text_box": { + "x": 7924800.0, + "y": 4077395.0, + "width": 304800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "425" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide15.xml", + "target_slide": 15 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7391400.0, + "y": 4185117.0 + }, + "end_point": { + "x": 7924800.0, + "y": 4193817.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "426", + "bbox": { + "x": 7391400.0, + "y": 4185117.0, + "width": 533400.0, + "height": 8700.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 4184000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Head", + "text_content": "Head", + "text_box": { + "x": 5029200.0, + "y": 1524000.0, + "width": 304800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "427" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide15.xml", + "target_slide": 15 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4800900.0, + "y": 1631722.0 + }, + "end_point": { + "x": 5029200.0, + "y": 1631722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "428", + "bbox": { + "x": 4800900.0, + "y": 1631722.0, + "width": 228300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4800000.0, + "y": 1632000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Neck", + "text_content": "Neck", + "text_box": { + "x": 3548959.0, + "y": 1738513.0, + "width": 304800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "429" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide15.xml", + "target_slide": 15 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 3853759.0, + "y": 1846235.0 + }, + "end_point": { + "x": 4267159.0, + "y": 1846235.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "430", + "bbox": { + "x": 3853759.0, + "y": 1846235.0, + "width": 413400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 1848000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Grooves for subclavian vessels", + "text_content": "Grooves for subclavian vessels", + "text_box": { + "x": 6705600.0, + "y": 1569236.0, + "width": 838200.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "431" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 6324600.0, + "y": 1738513.0 + }, + "end_point": { + "x": 6705600.0, + "y": 1738513.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "432", + "bbox": { + "x": 6324600.0, + "y": 1738513.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 6324600.0, + "y": 1739444.0 + }, + "end_point": { + "x": 6400800.0, + "y": 2590800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "433", + "bbox": { + "x": 6324600.0, + "y": 1739444.0, + "width": 76200.0, + "height": 851356.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6400000.0, + "y": 2592000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Scalene tubercle", + "text_content": "Scalene tubercle", + "text_box": { + "x": 7391400.0, + "y": 2635478.0, + "width": 753172.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "435" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide16.xml", + "target_slide": 16 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 5867400.0, + "y": 2743200.0 + }, + "end_point": { + "x": 7391400.0, + "y": 2743200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "436", + "bbox": { + "x": 5867400.0, + "y": 2743200.0, + "width": 1524000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5864000.0, + "y": 2744000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Tubercle", + "text_content": "Tubercle", + "text_box": { + "x": 3124201.0, + "y": 2380917.0, + "width": 424759.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "437" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide16.xml", + "target_slide": 16 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 3548960.0, + "y": 2488639.0 + }, + "end_point": { + "x": 3962360.0, + "y": 2488639.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "438", + "bbox": { + "x": 3548960.0, + "y": 2488639.0, + "width": 413400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 3960000.0, + "y": 2488000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Tubercle", + "text_content": "Tubercle", + "text_box": { + "x": 8017221.0, + "y": 5093383.0, + "width": 424759.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "439" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide16.xml", + "target_slide": 16 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 8017221.0, + "y": 5201105.0 + }, + "end_point": { + "x": 7620021.0, + "y": 5201105.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "440", + "bbox": { + "x": 7620021.0, + "y": 5201105.0, + "width": 397200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7624000.0, + "y": 5200000.0 + } + ] + } + ], + "total_text_annotations": 9, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/first_rib_tubercles_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/first_rib_tubercles_text_annotations.json new file mode 100644 index 00000000..677bda2e --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/first_rib_tubercles_text_annotations.json @@ -0,0 +1,46 @@ +{ + "slide_number": 16, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (superior aspect)", + "text_content": "1st Right rib (superior aspect)", + "text_box": { + "x": 7239000.0, + "y": 3220656.0, + "width": 1401696.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "504" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (inferior aspect)", + "text_content": "1st Right rib (inferior aspect)", + "text_box": { + "x": 7239000.0, + "y": 6032955.0, + "width": 1362522.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "505" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/first_rib_view_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/first_rib_view_text_annotations.json new file mode 100644 index 00000000..26171599 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/first_rib_view_text_annotations.json @@ -0,0 +1,46 @@ +{ + "slide_number": 14, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (superior aspect)", + "text_content": "1st Right rib (superior aspect)", + "text_box": { + "x": 7239000.0, + "y": 3220656.0, + "width": 1401696.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "458" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "1st Right rib (inferior aspect)", + "text_content": "1st Right rib (inferior aspect)", + "text_box": { + "x": 7239000.0, + "y": 6032955.0, + "width": 1362522.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "459" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ilium_anterior_spines_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ilium_anterior_spines_text_annotations.json new file mode 100644 index 00000000..6c994d77 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ilium_anterior_spines_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 6, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ilium_auricular_surface_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ilium_auricular_surface_text_annotations.json new file mode 100644 index 00000000..9cff11b1 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ilium_auricular_surface_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 8, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ilium_crest_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ilium_crest_text_annotations.json new file mode 100644 index 00000000..dd19f430 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ilium_crest_text_annotations.json @@ -0,0 +1,106 @@ +{ + "slide_number": 5, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Internal lip", + "text_content": "Internal lip", + "text_box": { + "x": 5841064.0, + "y": 2125464.0, + "width": 636362.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "206" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6477426.0, + "y": 2233186.0 + }, + "end_point": { + "x": 7060626.0, + "y": 2233186.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "207", + "bbox": { + "x": 6477426.0, + "y": 2233186.0, + "width": 583200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7064000.0, + "y": 2232000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "External lip", + "text_content": "External lip", + "text_box": { + "x": 5021812.0, + "y": 2125464.0, + "width": 651140.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "208" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4505812.0, + "y": 2233186.0 + }, + "end_point": { + "x": 5021812.0, + "y": 2233186.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "209", + "bbox": { + "x": 4505812.0, + "y": 2233186.0, + "width": 516000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4504000.0, + "y": 2232000.0 + } + ] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ilium_image_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ilium_image_text_annotations.json new file mode 100644 index 00000000..5cf0ac59 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ilium_image_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 4, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ilium_posterior_spines_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ilium_posterior_spines_text_annotations.json new file mode 100644 index 00000000..d1b82d49 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ilium_posterior_spines_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 7, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ilium_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ilium_text_annotations.json new file mode 100644 index 00000000..b4d6b2c2 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ilium_text_annotations.json @@ -0,0 +1,351 @@ +{ + "slide_number": 3, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Iliac Crest", + "text_content": "Iliac Crest", + "text_box": { + "x": 6581116, + "y": 370000, + "width": 595035, + "height": 215444, + "rotation": 0, + "shape_id": "148" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "line_type": "straight_arrow", + "start_point": { + "x": 5700000, + "y": 477722 + }, + "end_point": { + "x": 6581116, + "y": 477722 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "149" + }, + { + "line_id": "line_2", + "line_type": "straight_arrow", + "start_point": { + "x": 7176151, + "y": 477722 + }, + "end_point": { + "x": 8130000, + "y": 477722 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "150" + } + ], + "target_regions": [ + { + "x": 6581116, + "y": 477722 + }, + { + "x": 8389051, + "y": 477722 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior Superior Iliac Spine", + "text_content": "Anterior Superior Iliac Spine", + "text_box": { + "x": 6557752, + "y": 1400000, + "width": 766897, + "height": 461665, + "rotation": 0, + "shape_id": "151" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "line_type": "straight_arrow", + "start_point": { + "x": 6300000, + "y": 1400000 + }, + "end_point": { + "x": 6680000, + "y": 1400000 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "152" + } + ], + "target_regions": [ + { + "x": 6557752, + "y": 1109320 + }, + { + "x": 6421485, + "y": 1747672 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior Inferior Iliac Spine", + "text_content": "Anterior Inferior Iliac Spine", + "text_box": { + "x": 6531485, + "y": 2050000, + "width": 766897, + "height": 461665, + "rotation": 0, + "shape_id": "153" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "line_type": "straight_arrow", + "start_point": { + "x": 6230000, + "y": 2150000 + }, + "end_point": { + "x": 6450000, + "y": 2150000 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "154" + } + ], + "target_regions": [ + { + "x": 6421485, + "y": 1747672 + }, + { + "x": 6557752, + "y": 1109320 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior Inferior Iliac Spine", + "text_content": "Posterior Inferior Iliac Spine", + "text_box": { + "x": 8537969, + "y": 3000000, + "width": 766897, + "height": 461665, + "rotation": 0, + "shape_id": "155" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide7.xml", + "target_slide": 7 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "line_type": "straight_arrow", + "start_point": { + "x": 9303518, + "y": 1792983 + }, + "end_point": { + "x": 9421418, + "y": 2104383 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "156" + } + ], + "target_regions": [ + { + "x": 9421418, + "y": 2104383 + }, + { + "x": 9531990, + "y": 1340019 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior Superior Iliac Spine", + "text_content": "Posterior Superior Iliac Spine", + "text_box": { + "x": 8500000, + "y": 10000, + "width": 766897, + "height": 461665, + "rotation": 0, + "shape_id": "157" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide7.xml", + "target_slide": 7 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "line_type": "straight_arrow", + "start_point": { + "x": 9750000, + "y": 950000 + }, + "end_point": { + "x": 9750000, + "y": 1950000 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "158" + }, + { + "line_id": "line_7", + "line_type": "straight_arrow", + "start_point": { + "x": 8822440, + "y": 716000 + }, + "end_point": { + "x": 8922440, + "y": 1992000 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "160" + } + ], + "target_regions": [ + { + "x": 9531990, + "y": 1340019 + }, + { + "x": 8922440, + "y": 1411877 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Auricular surface", + "text_content": "Auricular surface", + "text_box": { + "x": 7850000, + "y": 10000, + "width": 624749, + "height": 338554, + "rotation": 0, + "shape_id": "159" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "line_type": "straight_arrow", + "start_point": { + "x": 8289051, + "y": 500000 + }, + "end_point": { + "x": 8500000, + "y": 1800000 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "160" + }, + { + "line_id": "line_2", + "line_type": "straight_arrow", + "start_point": { + "x": 8589051, + "y": 2300000 + }, + "end_point": { + "x": 8789051, + "y": 2800000 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "150" + } + ], + "target_regions": [ + { + "x": 8922440, + "y": 1411877 + }, + { + "x": 8389051, + "y": 307722 + } + ] + } + ], + "total_text_annotations": 6 +} diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_maxilla_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_maxilla_text_annotations.json new file mode 100644 index 00000000..e9c12df9 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_maxilla_text_annotations.json @@ -0,0 +1,298 @@ +{ + "slide_number": 21, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Incisive foramen", + "text_content": "Incisive foramen", + "text_box": { + "x": 7543800.0, + "y": 2393019.0, + "width": 752390.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "751" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 2500741.0 + }, + "end_point": { + "x": 5943600.0, + "y": 2500741.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "752", + "bbox": { + "x": 5943600.0, + "y": 2500741.0, + "width": 1600200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5944000.0, + "y": 2504000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Palatine process", + "text_content": "Palatine process", + "text_box": { + "x": 7543800.0, + "y": 2895600.0, + "width": 752390.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "753" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 3003322.0 + }, + "end_point": { + "x": 6324600.0, + "y": 3003322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "754", + "bbox": { + "x": 6324600.0, + "y": 3003322.0, + "width": 1219200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6328000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Median palatine suture", + "text_content": "Median palatine suture", + "text_box": { + "x": 7543800.0, + "y": 2667907.0, + "width": 1066800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "755" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 2775629.0 + }, + "end_point": { + "x": 5867400.0, + "y": 2775629.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "756", + "bbox": { + "x": 5867400.0, + "y": 2775629.0, + "width": 1676400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5864000.0, + "y": 2776000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 2743200.0, + "y": 2789662.0, + "width": 895350.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "757" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 3867150.0, + "y": 2897384.0 + }, + "end_point": { + "x": 3638550.0, + "y": 2897384.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "758", + "bbox": { + "x": 3638550.0, + "y": 2897384.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4213226.0, + "y": 3184526.0 + }, + "end_point": { + "x": 3867026.0, + "y": 2897426.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "759", + "bbox": { + "x": 3867026.0, + "y": 2897426.0, + "width": 346200.0, + "height": 287100.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4216000.0, + "y": 3184000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse palatine suture", + "text_content": "Transverse palatine suture", + "text_box": { + "x": 2768788.0, + "y": 2194818.0, + "width": 1193612.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "760" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4213226.0, + "y": 2302541.0 + }, + "end_point": { + "x": 5740526.0, + "y": 3540041.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "761", + "bbox": { + "x": 4213226.0, + "y": 2302541.0, + "width": 1527300.0, + "height": 1237500.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 3962400.0, + "y": 2302540.0 + }, + "end_point": { + "x": 4213200.0, + "y": 2302540.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "762", + "bbox": { + "x": 3962400.0, + "y": 2302540.0, + "width": 250800.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5744000.0, + "y": 3544000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_occipital_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_occipital_bone_text_annotations.json new file mode 100644 index 00000000..2adcfadb --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_occipital_bone_text_annotations.json @@ -0,0 +1,370 @@ +{ + "slide_number": 26, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen magnum", + "text_content": "Foramen magnum", + "text_box": { + "x": 7769923.0, + "y": 5255480.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "942" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7769923.0, + "y": 5363202.0 + }, + "end_point": { + "x": 7222723.0, + "y": 5363202.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "943", + "bbox": { + "x": 7222723.0, + "y": 5363202.0, + "width": 547200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 5791201.0, + "y": 3505200.0 + }, + "end_point": { + "x": 7222734.0, + "y": 5363202.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "959", + "bbox": { + "x": 5791201.0, + "y": 3505200.0, + "width": 1431533.0, + "height": 1858002.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5792000.0, + "y": 3504000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen lacerum", + "text_content": "Foramen lacerum", + "text_box": { + "x": 7846931.0, + "y": 4835299.0, + "width": 761193.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "944" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 7846931.0, + "y": 4943021.0 + }, + "end_point": { + "x": 7465031.0, + "y": 4943021.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "953", + "bbox": { + "x": 7465031.0, + "y": 4943021.0, + "width": 381900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 6248400.0, + "y": 2438401.0 + }, + "end_point": { + "x": 7465122.0, + "y": 4943022.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "954", + "bbox": { + "x": 6248400.0, + "y": 2438401.0, + "width": 1216722.0, + "height": 2504621.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6248000.0, + "y": 2440000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Occipital condyle", + "text_content": "Occipital condyle", + "text_box": { + "x": 2743200.0, + "y": 5704063.0, + "width": 790002.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "945" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 3961602.0, + "y": 5812985.0 + }, + "end_point": { + "x": 3533202.0, + "y": 5811785.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "950", + "bbox": { + "x": 3533202.0, + "y": 5811785.0, + "width": 428400.0, + "height": 1200.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3960000.0, + "y": 5816000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Hypoglossal canal", + "text_content": "Hypoglossal canal", + "text_box": { + "x": 2744633.0, + "y": 5470924.0, + "width": 835723.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "946" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3811356.0, + "y": 5578646.0 + }, + "end_point": { + "x": 3580356.0, + "y": 5578646.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "949", + "bbox": { + "x": 3580356.0, + "y": 5578646.0, + "width": 231000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3808000.0, + "y": 5576000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Basilar part", + "text_content": "Basilar part", + "text_box": { + "x": 8053389.0, + "y": 5050743.0, + "width": 554735.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "947" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 8053389.0, + "y": 5158465.0 + }, + "end_point": { + "x": 7389789.0, + "y": 5158465.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "952", + "bbox": { + "x": 7389789.0, + "y": 5158465.0, + "width": 663600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 5791200.0, + "y": 2514601.0 + }, + "end_point": { + "x": 7389730.0, + "y": 5158466.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "957", + "bbox": { + "x": 5791200.0, + "y": 2514601.0, + "width": 1598530.0, + "height": 2643865.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5792000.0, + "y": 2512000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Jugular foramen", + "text_content": "Jugular foramen", + "text_box": { + "x": 2744634.0, + "y": 5255480.0, + "width": 788569.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "948" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 3733903.0, + "y": 5363202.0 + }, + "end_point": { + "x": 3533203.0, + "y": 5363202.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "951", + "bbox": { + "x": 3533203.0, + "y": 5363202.0, + "width": 200700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3736000.0, + "y": 5360000.0 + } + ] + } + ], + "total_text_annotations": 6, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_palatine_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_palatine_bone_text_annotations.json new file mode 100644 index 00000000..7582ee5e --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_palatine_bone_text_annotations.json @@ -0,0 +1,178 @@ +{ + "slide_number": 23, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Horizontal plate", + "text_content": "Horizontal plate", + "text_box": { + "x": 2936419.0, + "y": 1752600.0, + "width": 721182.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "835" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3994201.0, + "y": 1860322.0 + }, + "end_point": { + "x": 3657601.0, + "y": 1860322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "836", + "bbox": { + "x": 3657601.0, + "y": 1860322.0, + "width": 336600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 3994248.0, + "y": 1860322.0 + }, + "end_point": { + "x": 5372101.0, + "y": 3200400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "847", + "bbox": { + "x": 3994248.0, + "y": 1860322.0, + "width": 1377853.0, + "height": 1340078.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5376000.0, + "y": 3200000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater palatine foramen", + "text_content": "Greater palatine foramen", + "text_box": { + "x": 7451042.0, + "y": 1654192.0, + "width": 1143000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "837" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7451042.0, + "y": 1761914.0 + }, + "end_point": { + "x": 7070042.0, + "y": 1761914.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "839", + "bbox": { + "x": 7070042.0, + "y": 1761914.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7072000.0, + "y": 1760000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser palatine foramen", + "text_content": "Lesser palatine foramen", + "text_box": { + "x": 7523210.0, + "y": 1957365.0, + "width": 1107980.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "838" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7523210.0, + "y": 2065087.0 + }, + "end_point": { + "x": 7363010.0, + "y": 2065087.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "840", + "bbox": { + "x": 7363010.0, + "y": 2065087.0, + "width": 160200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7360000.0, + "y": 2064000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_sphenoid_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_sphenoid_bone_text_annotations.json new file mode 100644 index 00000000..dd9c0ad9 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_sphenoid_bone_text_annotations.json @@ -0,0 +1,556 @@ +{ + "slide_number": 22, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Pterygoid process", + "text_content": "Pterygoid process", + "text_box": { + "x": 4797530.0, + "y": 1356472.0, + "width": 895141.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "787" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 2764788.0, + "y": 2841228.0, + "width": 633315.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "788" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 3822603.0, + "y": 2948950.0 + }, + "end_point": { + "x": 3398103.0, + "y": 2948950.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "792", + "bbox": { + "x": 3398103.0, + "y": 2948950.0, + "width": 424500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4724400.0, + "y": 3886200.0 + }, + "end_point": { + "x": 3822616.0, + "y": 2948952.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "794", + "bbox": { + "x": 3822616.0, + "y": 2948952.0, + "width": 901784.0, + "height": 937248.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4728000.0, + "y": 3888000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen ovale", + "text_content": "Foramen ovale", + "text_box": { + "x": 2764787.0, + "y": 3137918.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "786" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3822587.0, + "y": 3247140.0 + }, + "end_point": { + "x": 3450587.0, + "y": 3245640.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "785", + "bbox": { + "x": 3450587.0, + "y": 3245640.0, + "width": 372000.0, + "height": 1500.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 5181600.0, + "y": 4572000.0 + }, + "end_point": { + "x": 3822616.0, + "y": 3245640.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "798", + "bbox": { + "x": 3822616.0, + "y": 3245640.0, + "width": 1358984.0, + "height": 1326360.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5184000.0, + "y": 4576000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen spinosum", + "text_content": "Foramen spinosum", + "text_box": { + "x": 2759394.0, + "y": 3465515.0, + "width": 868853.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "789" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 3817247.0, + "y": 3573237.0 + }, + "end_point": { + "x": 3628247.0, + "y": 3573237.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "793", + "bbox": { + "x": 3628247.0, + "y": 3573237.0, + "width": 189000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4876800.0, + "y": 4689477.0 + }, + "end_point": { + "x": 3817222.0, + "y": 3573238.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "795", + "bbox": { + "x": 3817222.0, + "y": 3573238.0, + "width": 1059578.0, + "height": 1116239.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 4688000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Hamulus", + "text_content": "Hamulus", + "text_box": { + "x": 5062884.0, + "y": 1700192.0, + "width": 451992.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "791" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 6068076.0, + "y": 1807914.0 + }, + "end_point": { + "x": 5514876.0, + "y": 1807914.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "790", + "bbox": { + "x": 5514876.0, + "y": 1807914.0, + "width": 553200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6072000.0, + "y": 1808000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Medial plate", + "text_content": "Medial plate", + "text_box": { + "x": 5027226.0, + "y": 2171631.0, + "width": 600456.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "802" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 5869482.0, + "y": 2279353.0 + }, + "end_point": { + "x": 5627682.0, + "y": 2279353.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "805", + "bbox": { + "x": 5627682.0, + "y": 2279353.0, + "width": 241800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5872000.0, + "y": 2280000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Pterygoid fossa", + "text_content": "Pterygoid fossa", + "text_box": { + "x": 5029200.0, + "y": 1852111.0, + "width": 712658.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "803" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 5993858.0, + "y": 1964633.0 + }, + "end_point": { + "x": 5741858.0, + "y": 1959833.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "806", + "bbox": { + "x": 5741858.0, + "y": 1959833.0, + "width": 252000.0, + "height": 4800.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 6949545.0, + "y": 4114801.0 + }, + "end_point": { + "x": 5993894.0, + "y": 1964766.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "813", + "bbox": { + "x": 5993894.0, + "y": 1964766.0, + "width": 955651.0, + "height": 2150035.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6952000.0, + "y": 4112000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Lateral plate", + "text_content": "Lateral plate", + "text_box": { + "x": 5029200.0, + "y": 1538366.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "804" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 7162800.0, + "y": 3886200.0 + }, + "end_point": { + "x": 6248400.0, + "y": 1646088.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "796", + "bbox": { + "x": 6248400.0, + "y": 1646088.0, + "width": 914400.0, + "height": 2240112.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 6248400.0, + "y": 1646088.0 + }, + "end_point": { + "x": 5638800.0, + "y": 1646088.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "807", + "bbox": { + "x": 5638800.0, + "y": 1646088.0, + "width": 609600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7160000.0, + "y": 3888000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Scaphoid fossa", + "text_content": "Scaphoid fossa", + "text_box": { + "x": 5029200.0, + "y": 2013360.0, + "width": 712658.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "811" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 6858001.0, + "y": 4343401.0 + }, + "end_point": { + "x": 5943602.0, + "y": 2121084.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "810", + "bbox": { + "x": 5943602.0, + "y": 2121084.0, + "width": 914399.0, + "height": 2222317.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 5943458.0, + "y": 2121082.0 + }, + "end_point": { + "x": 5741858.0, + "y": 2121082.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "812", + "bbox": { + "x": 5741858.0, + "y": 2121082.0, + "width": 201600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6856000.0, + "y": 4344000.0 + } + ] + } + ], + "total_text_annotations": 9, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_temporal_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_temporal_bone_text_annotations.json new file mode 100644 index 00000000..e18cdbca --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_temporal_bone_text_annotations.json @@ -0,0 +1,466 @@ +{ + "slide_number": 24, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 2765492.0, + "y": 2434768.0, + "width": 843455.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "870" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 3971347.0, + "y": 2548790.0 + }, + "end_point": { + "x": 3608947.0, + "y": 2542490.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "896", + "bbox": { + "x": 3608947.0, + "y": 2542490.0, + "width": 362400.0, + "height": 6300.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3968000.0, + "y": 2552000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Carotid canal", + "text_content": "Carotid canal", + "text_box": { + "x": 2768239.0, + "y": 3056672.0, + "width": 614855.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "871" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 3770394.0, + "y": 3164394.0 + }, + "end_point": { + "x": 3383094.0, + "y": 3164394.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "890", + "bbox": { + "x": 3383094.0, + "y": 3164394.0, + "width": 387300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 4886139.0, + "y": 3502186.0 + }, + "end_point": { + "x": 3770345.0, + "y": 3164395.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "892", + "bbox": { + "x": 3770345.0, + "y": 3164395.0, + "width": 1115794.0, + "height": 337791.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4888000.0, + "y": 3504000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Styloid process", + "text_content": "Styloid process", + "text_box": { + "x": 2762473.0, + "y": 3299924.0, + "width": 694772.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "872" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 3770445.0, + "y": 3407646.0 + }, + "end_point": { + "x": 3457245.0, + "y": 3407646.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "883", + "bbox": { + "x": 3457245.0, + "y": 3407646.0, + "width": 313200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 4572000.0, + "y": 3619502.0 + }, + "end_point": { + "x": 3765830.0, + "y": 3407647.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "891", + "bbox": { + "x": 3765830.0, + "y": 3407647.0, + "width": 806170.0, + "height": 211855.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4576000.0, + "y": 3616000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Stylomastoid foramen", + "text_content": "Stylomastoid foramen", + "text_box": { + "x": 2762473.0, + "y": 3657600.0, + "width": 981628.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "873" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 4483001.0, + "y": 3765322.0 + }, + "end_point": { + "x": 3744101.0, + "y": 3765322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "884", + "bbox": { + "x": 3744101.0, + "y": 3765322.0, + "width": 738900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4480000.0, + "y": 3768000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Mastoid process", + "text_content": "Mastoid process", + "text_box": { + "x": 2768239.0, + "y": 4005148.0, + "width": 744055.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "874" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3962294.0, + "y": 4112870.0 + }, + "end_point": { + "x": 3512294.0, + "y": 4112870.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "876", + "bbox": { + "x": 3512294.0, + "y": 4112870.0, + "width": 450000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3960000.0, + "y": 4112000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Mastoid air cells (exposed)", + "text_content": "Mastoid air cells (exposed)", + "text_box": { + "x": 2821867.0, + "y": 4343400.0, + "width": 744055.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "875" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7620122.0, + "y": 4512677.0 + }, + "end_point": { + "x": 3565922.0, + "y": 4512677.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "877", + "bbox": { + "x": 3565922.0, + "y": 4512677.0, + "width": 4054200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7620002.0, + "y": 4220592.0 + }, + "end_point": { + "x": 8229601.0, + "y": 4512678.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "878", + "bbox": { + "x": 7620002.0, + "y": 4220592.0, + "width": 609599.0, + "height": 292086.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7620002.0, + "y": 4512678.0 + }, + "end_point": { + "x": 8229601.0, + "y": 4512679.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "880", + "bbox": { + "x": 7620002.0, + "y": 4512678.0, + "width": 609599.0, + "height": 1.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7624000.0, + "y": 4224000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Petrotympanic fissure", + "text_content": "Petrotympanic fissure", + "text_box": { + "x": 2762474.0, + "y": 2769249.0, + "width": 1003357.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "893" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 3946431.0, + "y": 2876971.0 + }, + "end_point": { + "x": 3765831.0, + "y": 2876971.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "894", + "bbox": { + "x": 3765831.0, + "y": 2876971.0, + "width": 180600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 4774139.0, + "y": 3362147.0 + }, + "end_point": { + "x": 3946439.0, + "y": 2877047.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "895", + "bbox": { + "x": 3946439.0, + "y": 2877047.0, + "width": 827700.0, + "height": 485100.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4776000.0, + "y": 3360000.0 + } + ] + } + ], + "total_text_annotations": 7, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_view_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_view_text_annotations.json new file mode 100644 index 00000000..d311395a --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_view_text_annotations.json @@ -0,0 +1,1520 @@ +{ + "slide_number": 19, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Occipital bone", + "text_content": "Occipital bone", + "text_box": { + "x": 7333796.0, + "y": 3610736.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "647" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId9", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Sphenoid bone", + "text_content": "Sphenoid bone", + "text_box": { + "x": 2828372.0, + "y": 2240954.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "650" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId10", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Temporal bone", + "text_content": "Temporal bone", + "text_box": { + "x": 2819400.0, + "y": 3299924.0, + "width": 723900.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "651" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId11", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Parietal bone", + "text_content": "Parietal bone", + "text_box": { + "x": 2819400.0, + "y": 5193552.0, + "width": 679904.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "652" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4267304.0, + "y": 5301274.0 + }, + "end_point": { + "x": 3499304.0, + "y": 5301274.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "659", + "bbox": { + "x": 3499304.0, + "y": 5301274.0, + "width": 768000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 5304000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Maxilla", + "text_content": "Maxilla", + "text_box": { + "x": 7315200.0, + "y": 1808950.0, + "width": 381002.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "653" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId12", + "target": "/ppt/slides/slide21.xml", + "target_slide": 21 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Palatine bone", + "text_content": "Palatine bone", + "text_box": { + "x": 7315671.0, + "y": 2660659.0, + "width": 679904.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "654" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide23.xml", + "target_slide": 23 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Vomer", + "text_content": "Vomer", + "text_box": { + "x": 7315671.0, + "y": 3299924.0, + "width": 383478.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "655" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide25.xml", + "target_slide": 25 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 7315671.0, + "y": 3407646.0 + }, + "end_point": { + "x": 5714871.0, + "y": 3407646.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "667", + "bbox": { + "x": 5714871.0, + "y": 3407646.0, + "width": 1600800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 3408000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Incisive foramen", + "text_content": "Incisive foramen", + "text_box": { + "x": 7401010.0, + "y": 1971091.0, + "width": 752390.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "656" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide21.xml", + "target_slide": 21 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7401010.0, + "y": 2078813.0 + }, + "end_point": { + "x": 5791210.0, + "y": 2078813.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "660", + "bbox": { + "x": 5791210.0, + "y": 2078813.0, + "width": 1609800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5792000.0, + "y": 2080000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Palatine process", + "text_content": "Palatine process", + "text_box": { + "x": 7403485.0, + "y": 2133232.0, + "width": 752390.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "657" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide21.xml", + "target_slide": 21 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7403485.0, + "y": 2240954.0 + }, + "end_point": { + "x": 5943685.0, + "y": 2240954.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "661", + "bbox": { + "x": 5943685.0, + "y": 2240954.0, + "width": 1459800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5944000.0, + "y": 2240000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 7405960.0, + "y": 2295373.0, + "width": 823640.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "658" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide21.xml", + "target_slide": 21 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7405960.0, + "y": 2403095.0 + }, + "end_point": { + "x": 7256860.0, + "y": 2403095.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "662", + "bbox": { + "x": 7256860.0, + "y": 2403095.0, + "width": 149100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7256000.0, + "y": 2400000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater palatine foramen", + "text_content": "Greater palatine foramen", + "text_box": { + "x": 7409366.0, + "y": 2813059.0, + "width": 1125034.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "663" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 7409366.0, + "y": 2920781.0 + }, + "end_point": { + "x": 6172166.0, + "y": 2920781.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "665", + "bbox": { + "x": 6172166.0, + "y": 2920781.0, + "width": 1237200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6176000.0, + "y": 2920000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser palatine foramen", + "text_content": "Lesser palatine foramen", + "text_box": { + "x": 7409366.0, + "y": 2973874.0, + "width": 1079314.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "664" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 7409366.0, + "y": 3081596.0 + }, + "end_point": { + "x": 6172166.0, + "y": 3056696.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "666", + "bbox": { + "x": 6172166.0, + "y": 3056696.0, + "width": 1237200.0, + "height": 24900.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6176000.0, + "y": 3056000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Occipital condyle", + "text_content": "Occipital condyle", + "text_box": { + "x": 7409997.0, + "y": 4191000.0, + "width": 790002.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "649" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7409997.0, + "y": 4298722.0 + }, + "end_point": { + "x": 6209997.0, + "y": 4298722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "648", + "bbox": { + "x": 6209997.0, + "y": 4298722.0, + "width": 1200000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6208000.0, + "y": 4296000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen magnum", + "text_content": "Foramen magnum", + "text_box": { + "x": 7419039.0, + "y": 4353463.0, + "width": 835725.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "668" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_30", + "kind": "connector", + "start_point": { + "x": 7419039.0, + "y": 4461185.0 + }, + "end_point": { + "x": 5827839.0, + "y": 4444685.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "702", + "bbox": { + "x": 5827839.0, + "y": 4444685.0, + "width": 1591200.0, + "height": 16500.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5824000.0, + "y": 4448000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Hypoglossal canal", + "text_content": "Hypoglossal canal", + "text_box": { + "x": 7397297.0, + "y": 4049546.0, + "width": 835723.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "669" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_29", + "kind": "connector", + "start_point": { + "x": 7397297.0, + "y": 4157268.0 + }, + "end_point": { + "x": 6400697.0, + "y": 4157268.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "701", + "bbox": { + "x": 6400697.0, + "y": 4157268.0, + "width": 996600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6400000.0, + "y": 4160000.0 + } + ] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Pterygoid process", + "text_content": "Pterygoid process", + "text_box": { + "x": 2980773.0, + "y": 2393354.0, + "width": 834483.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "673" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 4038456.0, + "y": 2501076.0 + }, + "end_point": { + "x": 3815256.0, + "y": 2501076.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "676", + "bbox": { + "x": 3815256.0, + "y": 2501076.0, + "width": 223200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 5105400.0, + "y": 3124201.0 + }, + "end_point": { + "x": 4038600.0, + "y": 2501078.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "679", + "bbox": { + "x": 4038600.0, + "y": 2501078.0, + "width": 1066800.0, + "height": 623123.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5104000.0, + "y": 3128000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 2980773.0, + "y": 2552937.0, + "width": 633315.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "674" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 4038588.0, + "y": 2660659.0 + }, + "end_point": { + "x": 3614088.0, + "y": 2660659.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "677", + "bbox": { + "x": 3614088.0, + "y": 2660659.0, + "width": 424500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 4876800.0, + "y": 3339645.0 + }, + "end_point": { + "x": 4038600.0, + "y": 2660660.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "680", + "bbox": { + "x": 4038600.0, + "y": 2660660.0, + "width": 838200.0, + "height": 678985.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 3336000.0 + } + ] + }, + { + "annotation_id": "annot_18", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen ovale", + "text_content": "Foramen ovale", + "text_box": { + "x": 2980772.0, + "y": 2712520.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "672" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 4038572.0, + "y": 2821742.0 + }, + "end_point": { + "x": 3666572.0, + "y": 2820242.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "671", + "bbox": { + "x": 3666572.0, + "y": 2820242.0, + "width": 372000.0, + "height": 1500.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 5029200.0, + "y": 3657600.0 + }, + "end_point": { + "x": 4038600.0, + "y": 2821610.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "681", + "bbox": { + "x": 4038600.0, + "y": 2821610.0, + "width": 990600.0, + "height": 835990.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5032000.0, + "y": 3656000.0 + } + ] + }, + { + "annotation_id": "annot_19", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen spinosum", + "text_content": "Foramen spinosum", + "text_box": { + "x": 2980772.0, + "y": 2864920.0, + "width": 868853.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "675" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 4038625.0, + "y": 2972642.0 + }, + "end_point": { + "x": 3849625.0, + "y": 2972642.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "678", + "bbox": { + "x": 3849625.0, + "y": 2972642.0, + "width": 189000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 4800600.0, + "y": 3733802.0 + }, + "end_point": { + "x": 4038600.0, + "y": 2972643.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "682", + "bbox": { + "x": 4038600.0, + "y": 2972643.0, + "width": 762000.0, + "height": 761159.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4800000.0, + "y": 3736000.0 + } + ] + }, + { + "annotation_id": "annot_20", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 2971801.0, + "y": 3452324.0, + "width": 843455.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "683" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [ + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 4190856.0, + "y": 3560046.0 + }, + "end_point": { + "x": 3815256.0, + "y": 3560046.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "688", + "bbox": { + "x": 3815256.0, + "y": 3560046.0, + "width": 375600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 3560000.0 + } + ] + }, + { + "annotation_id": "annot_21", + "bone_name": "Bony Pelvis", + "subbone_name": "Carotid canal", + "text_content": "Carotid canal", + "text_box": { + "x": 2971801.0, + "y": 3608697.0, + "width": 614855.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "684" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId26", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 4038456.0, + "y": 3716419.0 + }, + "end_point": { + "x": 3586656.0, + "y": 3716419.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "689", + "bbox": { + "x": 3586656.0, + "y": 3716419.0, + "width": 451800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_25", + "kind": "connector", + "start_point": { + "x": 4876800.0, + "y": 3980515.0 + }, + "end_point": { + "x": 4038600.0, + "y": 3716419.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "695", + "bbox": { + "x": 4038600.0, + "y": 3716419.0, + "width": 838200.0, + "height": 264096.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 3984000.0 + } + ] + }, + { + "annotation_id": "annot_22", + "bone_name": "Bony Pelvis", + "subbone_name": "Styloid process", + "text_content": "Styloid process", + "text_box": { + "x": 2971800.0, + "y": 3765070.0, + "width": 694772.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "685" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId27", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [ + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 4038572.0, + "y": 3872792.0 + }, + "end_point": { + "x": 3666572.0, + "y": 3872792.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "690", + "bbox": { + "x": 3666572.0, + "y": 3872792.0, + "width": 372000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_24", + "kind": "connector", + "start_point": { + "x": 4572000.0, + "y": 3980515.0 + }, + "end_point": { + "x": 4038602.0, + "y": 3872794.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "694", + "bbox": { + "x": 4038602.0, + "y": 3872794.0, + "width": 533398.0, + "height": 107721.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4576000.0, + "y": 3984000.0 + } + ] + }, + { + "annotation_id": "annot_23", + "bone_name": "Bony Pelvis", + "subbone_name": "Stylomastoid foramen", + "text_content": "Stylomastoid foramen", + "text_box": { + "x": 2980772.0, + "y": 3932013.0, + "width": 981628.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "686" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId28", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [ + { + "line_id": "line_22", + "kind": "connector", + "start_point": { + "x": 4191000.0, + "y": 4039735.0 + }, + "end_point": { + "x": 3962400.0, + "y": 4039735.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "692", + "bbox": { + "x": 3962400.0, + "y": 4039735.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 4495800.0, + "y": 4147457.0 + }, + "end_point": { + "x": 4191000.0, + "y": 4039735.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "693", + "bbox": { + "x": 4191000.0, + "y": 4039735.0, + "width": 304800.0, + "height": 107722.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4496000.0, + "y": 4144000.0 + } + ] + }, + { + "annotation_id": "annot_24", + "bone_name": "Bony Pelvis", + "subbone_name": "Mastoid process", + "text_content": "Mastoid process", + "text_box": { + "x": 2989746.0, + "y": 4098956.0, + "width": 744055.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "687" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId29", + "target": "/ppt/slides/slide24.xml", + "target_slide": 24 + }, + "pointer_lines": [ + { + "line_id": "line_21", + "kind": "connector", + "start_point": { + "x": 3962401.0, + "y": 4206678.0 + }, + "end_point": { + "x": 3733801.0, + "y": 4206678.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "691", + "bbox": { + "x": 3733801.0, + "y": 4206678.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_26", + "kind": "connector", + "start_point": { + "x": 4267200.0, + "y": 4314400.0 + }, + "end_point": { + "x": 3962400.0, + "y": 4206678.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "696", + "bbox": { + "x": 3962400.0, + "y": 4206678.0, + "width": 304800.0, + "height": 107722.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 4312000.0 + } + ] + }, + { + "annotation_id": "annot_25", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen lacerum", + "text_content": "Foramen lacerum", + "text_box": { + "x": 7409366.0, + "y": 3765070.0, + "width": 826580.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "697" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId30", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_27", + "kind": "connector", + "start_point": { + "x": 7409366.0, + "y": 3872792.0 + }, + "end_point": { + "x": 6019766.0, + "y": 3872792.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "699", + "bbox": { + "x": 6019766.0, + "y": 3872792.0, + "width": 1389600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6016000.0, + "y": 3872000.0 + } + ] + }, + { + "annotation_id": "annot_26", + "bone_name": "Bony Pelvis", + "subbone_name": "Basilar part", + "text_content": "Basilar part", + "text_box": { + "x": 7409998.0, + "y": 3899356.0, + "width": 554735.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "698" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId31", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_28", + "kind": "connector", + "start_point": { + "x": 7409998.0, + "y": 4007078.0 + }, + "end_point": { + "x": 5714998.0, + "y": 4007078.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "700", + "bbox": { + "x": 5714998.0, + "y": 4007078.0, + "width": 1695000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 4008000.0 + } + ] + }, + { + "annotation_id": "annot_27", + "bone_name": "Bony Pelvis", + "subbone_name": "Jugular foramen", + "text_content": "Jugular foramen", + "text_box": { + "x": 7411226.0, + "y": 4505863.0, + "width": 742174.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "707" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId39", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_31", + "kind": "connector", + "start_point": { + "x": 7411226.0, + "y": 4613585.0 + }, + "end_point": { + "x": 5818826.0, + "y": 4613585.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "708", + "bbox": { + "x": 5818826.0, + "y": 4613585.0, + "width": 1592400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_32", + "kind": "connector", + "start_point": { + "x": 4953001.0, + "y": 4157269.0 + }, + "end_point": { + "x": 5818840.0, + "y": 4613586.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "709", + "bbox": { + "x": 4953001.0, + "y": 4157269.0, + "width": 865839.0, + "height": 456317.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4952000.0, + "y": 4160000.0 + } + ] + }, + { + "annotation_id": "annot_28", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior nuchal line", + "text_content": "Superior nuchal line", + "text_box": { + "x": 7419038.0, + "y": 4658263.0, + "width": 886762.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "710" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId40", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_33", + "kind": "connector", + "start_point": { + "x": 7419038.0, + "y": 4765985.0 + }, + "end_point": { + "x": 6781838.0, + "y": 4765985.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "711", + "bbox": { + "x": 6781838.0, + "y": 4765985.0, + "width": 637200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6784000.0, + "y": 4768000.0 + } + ] + } + ], + "total_text_annotations": 28, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/inferior_vomer_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/inferior_vomer_text_annotations.json new file mode 100644 index 00000000..77ea1f7f --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/inferior_vomer_text_annotations.json @@ -0,0 +1,82 @@ +{ + "slide_number": 25, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Choanae", + "text_content": "Choanae", + "text_box": { + "x": 8153401.0, + "y": 3577040.0, + "width": 457199.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "917" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 8153401.0, + "y": 3684762.0 + }, + "end_point": { + "x": 6324601.0, + "y": 3684762.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "918", + "bbox": { + "x": 6324601.0, + "y": 3684762.0, + "width": 1828800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 6324601.0, + "y": 3684764.0 + }, + "end_point": { + "x": 5105402.0, + "y": 3684762.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "919", + "bbox": { + "x": 5105402.0, + "y": 3684762.0, + "width": 1219199.0, + "height": 2.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5104000.0, + "y": 3688000.0 + } + ] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ischial_spine_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ischial_spine_text_annotations.json new file mode 100644 index 00000000..385fc066 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ischial_spine_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 13, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ischial_tuberosity_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ischial_tuberosity_text_annotations.json new file mode 100644 index 00000000..7ba3c83c --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ischial_tuberosity_text_annotations.json @@ -0,0 +1,154 @@ +{ + "slide_number": 12, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 8700000.0, + "y": 4000000.0, + "width": 409452.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "386" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 8459700.0, + "y": 4107722.0 + }, + "end_point": { + "x": 8700000.0, + "y": 4107722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "387", + "bbox": { + "x": 8459700.0, + "y": 4107722.0, + "width": 240300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 8288000.0, + "y": 3738390.0 + }, + "end_point": { + "x": 8459714.0, + "y": 4107722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "388", + "bbox": { + "x": 8138000.0, + "y": 3738390.0, + "width": 521714.0, + "height": 369332.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7934800.0, + "y": 3735694.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 5990624.0, + "y": 4597694.0, + "width": 409452.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "389" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5750324.0, + "y": 4705416.0 + }, + "end_point": { + "x": 5990624.0, + "y": 4705416.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "390", + "bbox": { + "x": 5750324.0, + "y": 4705416.0, + "width": 240300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5542400.0, + "y": 4277092.0 + }, + "end_point": { + "x": 5750338.0, + "y": 4705416.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "391", + "bbox": { + "x": 5442400.0, + "y": 4377092.0, + "width": 307938.0, + "height": 328324.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5438800.0, + "y": 4375694.0 + } + ] +} + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} diff --git a/boneset-api/data/annotations/text_label_annotations/ischium_image_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ischium_image_text_annotations.json new file mode 100644 index 00000000..5e498200 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ischium_image_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 10, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ischium_ramus_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ischium_ramus_text_annotations.json new file mode 100644 index 00000000..4a84d95d --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ischium_ramus_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 11, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ischium_sciatic_notches_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ischium_sciatic_notches_text_annotations.json new file mode 100644 index 00000000..012b1ef1 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ischium_sciatic_notches_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 14, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/ischium_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/ischium_text_annotations.json new file mode 100644 index 00000000..23f405db --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/ischium_text_annotations.json @@ -0,0 +1,434 @@ +{ + "slide_number": 9, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Ramus", + "text_content": "Ramus", + "text_box": { + "x": 6505000.0, + "y": 4100000.0, + "width": 490123.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "299" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId9", + "target": "/ppt/slides/slide11.xml", + "target_slide": 11 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 6188271.0, + "y": 4246884.0 + }, + "end_point": { + "x": 6495000.0, + "y": 4246884.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "302", + "bbox": { + "x": 5688271.0, + "y": 4246884.0, + "width": 616729.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5687594.0, + "y": 4249764.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Ischial tuberosity", + "text_content": "Ischial tuberosity", + "text_box": { + "x": 4600000.0, + "y": 4655964.0, + "width": 902811.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "300" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId10", + "target": "/ppt/slides/slide12.xml", + "target_slide": 12 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5480000.0, + "y": 4655964.0 + }, + "end_point": { + "x": 5730000.0, + "y": 4343686.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "301", + "bbox": { + "x": 6584840.0, + "y": 4543686.0, + "width": 341400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6927594.0, + "y": 4545764.0 + } + ] +}, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Ischial spine", + "text_content": "Ischial spine", + "text_box": { + "x": 4600000.0, + "y": 3392738.0, + "width": 689862.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "298" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5300000.0, + "y": 3500460.0 + }, + "end_point": { + "x": 5560000.0, + "y": 3500460.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "297", + "bbox": { + "x": 6369639.0, + "y": 3500460.0, + "width": 399000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6767594.0, + "y": 3497764.0 + } + ] +}, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater sciatic notch", + "text_content": "Greater sciatic notch", + "text_box": { + "x": 8528804.0, + "y": 2530964.0, + "width": 745591.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "307" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 8583704.0, + "y": 2800000.0 + }, + "end_point": { + "x": 8728804.0, + "y": 2800000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "308", + "bbox": { + "x": 8583704.0, + "y": 2700241.0, + "width": 245100.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 8355194.0, + "y": 2607165.0 + }, + "end_point": { + "x": 8583794.0, + "y": 2800000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "309", + "bbox": { + "x": 8355194.0, + "y": 2607165.0, + "width": 228600.0, + "height": 93077.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 8351594.0, + "y": 2609764.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser sciatic notch", + "text_content": "Lesser sciatic notch", + "text_box": { + "x": 8500000.0, + "y": 3450000.0, + "width": 702534.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "310" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 8300000.0, + "y": 3500000.0 + }, + "end_point": { + "x": 8500000.0, + "y": 3500000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "311", + "bbox": { + "x": 7648486.0, + "y": 4366974.0, + "width": 288000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7648000.0, + "y": 4368000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 8660000.0, + "y": 4450000.0, + "width": 409452.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "313" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 8419700.0, + "y": 4557722.0 + }, + "end_point": { + "x": 8650000.0, + "y": 4557722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "314", + "bbox": { + "x": 8419700.0, + "y": 4557722.0, + "width": 240300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 8272794.0, + "y": 3900460.0 + }, + "end_point": { + "x": 8419700.0, + "y": 4557722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "315", + "bbox": { + "x": 8202794.0, + "y": 3500460.0, + "width": 216906.0, + "height": 1057262.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 8199594.0, + "y": 3497764.0 + } + ] +}, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 6350000.0, + "y": 4500000.0, + "width": 409452.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "316" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 6109700.0, + "y": 4607722.0 + }, + "end_point": { + "x": 6350000.0, + "y": 4607722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "317", + "bbox": { + "x": 6109700.0, + "y": 4607722.0, + "width": 240300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 5871776.0, + "y": 4279398.0 + }, + "end_point": { + "x": 6109714.0, + "y": 4607722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "318", + "bbox": { + "x": 5801776.0, + "y": 4279398.0, + "width": 307938.0, + "height": 328324.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5303594.0, + "y": 4137764.0 + } + ] +} + ], + "total_text_annotations": 7, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lateral_lacrimal_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lateral_lacrimal_bone_text_annotations.json new file mode 100644 index 00000000..97753087 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lateral_lacrimal_bone_text_annotations.json @@ -0,0 +1,106 @@ +{ + "slide_number": 16, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Fossa for lacrimal sac", + "text_content": "Fossa for lacrimal sac", + "text_box": { + "x": 7715154.0, + "y": 2648178.0, + "width": 990600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "558" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7715154.0, + "y": 2755900.0 + }, + "end_point": { + "x": 7467654.0, + "y": 2755900.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "559", + "bbox": { + "x": 7467654.0, + "y": 2755900.0, + "width": 247500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7464000.0, + "y": 2752000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal process of maxilla", + "text_content": "Frontal process of maxilla", + "text_box": { + "x": 7848600.0, + "y": 2073092.0, + "width": 857154.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "561" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7848600.0, + "y": 2242369.0 + }, + "end_point": { + "x": 7620000.0, + "y": 2242369.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "562", + "bbox": { + "x": 7620000.0, + "y": 2242369.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7616000.0, + "y": 2240000.0 + } + ] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lateral_mandible_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lateral_mandible_text_annotations.json new file mode 100644 index 00000000..aaaaea52 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lateral_mandible_text_annotations.json @@ -0,0 +1,346 @@ +{ + "slide_number": 18, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Head of condylar process", + "text_content": "Head of condylar process", + "text_box": { + "x": 2743200.0, + "y": 3087654.0, + "width": 825638.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "618" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 4191038.0, + "y": 3256931.0 + }, + "end_point": { + "x": 3568838.0, + "y": 3256931.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "622", + "bbox": { + "x": 3568838.0, + "y": 3256931.0, + "width": 622200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 3256000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Coronoid process", + "text_content": "Coronoid process", + "text_box": { + "x": 3359082.0, + "y": 3810000.0, + "width": 831919.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "619" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5638801.0, + "y": 3917722.0 + }, + "end_point": { + "x": 4191001.0, + "y": 3917722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "623", + "bbox": { + "x": 4191001.0, + "y": 3917722.0, + "width": 1447800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5640000.0, + "y": 3920000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 3782473.0, + "y": 4979312.0, + "width": 304799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "620" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 6449472.0, + "y": 5087034.0 + }, + "end_point": { + "x": 4087272.0, + "y": 5087034.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "624", + "bbox": { + "x": 4087272.0, + "y": 5087034.0, + "width": 2362200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6448000.0, + "y": 5088000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental foramen", + "text_content": "Mental foramen", + "text_box": { + "x": 7946862.0, + "y": 5410200.0, + "width": 755719.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "621" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7238862.0, + "y": 5194822.0 + }, + "end_point": { + "x": 7946862.0, + "y": 5517922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "625", + "bbox": { + "x": 7238862.0, + "y": 5194822.0, + "width": 708000.0, + "height": 323100.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 5192000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Mandibular notch", + "text_content": "Mandibular notch", + "text_box": { + "x": 2996202.0, + "y": 3594556.0, + "width": 831919.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "628" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 5170921.0, + "y": 3702278.0 + }, + "end_point": { + "x": 3828121.0, + "y": 3702278.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "629", + "bbox": { + "x": 3828121.0, + "y": 3702278.0, + "width": 1342800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5168000.0, + "y": 3704000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Ramus", + "text_content": "Ramus", + "text_box": { + "x": 3144205.0, + "y": 4406444.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "627" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 5232805.0, + "y": 4514166.0 + }, + "end_point": { + "x": 3525205.0, + "y": 4514166.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "626", + "bbox": { + "x": 3525205.0, + "y": 4514166.0, + "width": 1707600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5232000.0, + "y": 4512000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Angle", + "text_content": "Angle", + "text_box": { + "x": 3630074.0, + "y": 5302478.0, + "width": 304799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "630" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 4876873.0, + "y": 5410200.0 + }, + "end_point": { + "x": 3934873.0, + "y": 5410200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "631", + "bbox": { + "x": 3934873.0, + "y": 5410200.0, + "width": 942000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 5408000.0 + } + ] + } + ], + "total_text_annotations": 7, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lateral_temporal_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lateral_temporal_bone_text_annotations.json new file mode 100644 index 00000000..4288d642 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lateral_temporal_bone_text_annotations.json @@ -0,0 +1,298 @@ +{ + "slide_number": 17, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "External acoustic meatus", + "text_content": "External acoustic meatus", + "text_box": { + "x": 2743200.0, + "y": 4586645.0, + "width": 779495.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "584" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 4756295.0, + "y": 4755922.0 + }, + "end_point": { + "x": 3522695.0, + "y": 4755922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "585", + "bbox": { + "x": 3522695.0, + "y": 4755922.0, + "width": 1233600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4760000.0, + "y": 4752000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Mastoid process", + "text_content": "Mastoid process", + "text_box": { + "x": 2754415.0, + "y": 5029200.0, + "width": 768281.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "586" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4419696.0, + "y": 5136922.0 + }, + "end_point": { + "x": 3522696.0, + "y": 5136922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "588", + "bbox": { + "x": 3522696.0, + "y": 5136922.0, + "width": 897000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4416000.0, + "y": 5136000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 2754414.0, + "y": 3945523.0, + "width": 522186.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "587" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4191000.0, + "y": 4114800.0 + }, + "end_point": { + "x": 3276600.0, + "y": 4114800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "589", + "bbox": { + "x": 3276600.0, + "y": 4114800.0, + "width": 914400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 5638800.0, + "y": 4648200.0 + }, + "end_point": { + "x": 4191000.0, + "y": 4114800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "593", + "bbox": { + "x": 4191000.0, + "y": 4114800.0, + "width": 1447800.0, + "height": 533400.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5640000.0, + "y": 4648000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Mandibular fossa", + "text_content": "Mandibular fossa", + "text_box": { + "x": 3044860.0, + "y": 5486400.0, + "width": 768281.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "590" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 4267341.0, + "y": 5594122.0 + }, + "end_point": { + "x": 3813141.0, + "y": 5594122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "591", + "bbox": { + "x": 3813141.0, + "y": 5594122.0, + "width": 454200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 5592000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Squamous part", + "text_content": "Squamous part", + "text_box": { + "x": 2783766.0, + "y": 3238369.0, + "width": 522186.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "594" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 4114752.0, + "y": 3407646.0 + }, + "end_point": { + "x": 3305952.0, + "y": 3407646.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "595", + "bbox": { + "x": 3305952.0, + "y": 3407646.0, + "width": 808800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 4876800.0, + "y": 3505201.0 + }, + "end_point": { + "x": 4114800.0, + "y": 3407648.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "596", + "bbox": { + "x": 4114800.0, + "y": 3407648.0, + "width": 762000.0, + "height": 97553.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 3504000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lateral_view_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lateral_view_text_annotations.json new file mode 100644 index 00000000..32bc20a8 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lateral_view_text_annotations.json @@ -0,0 +1,1196 @@ +{ + "slide_number": 11, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal bone", + "text_content": "Frontal bone", + "text_box": { + "x": 7543800.0, + "y": 2612749.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "392" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Glabella", + "text_content": "Glabella", + "text_box": { + "x": 7696200.0, + "y": 2845712.0, + "width": 457200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "393" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7696200.0, + "y": 2953434.0 + }, + "end_point": { + "x": 7467600.0, + "y": 2953434.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "395", + "bbox": { + "x": 7467600.0, + "y": 2953434.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7464000.0, + "y": 2952000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Supraorbital foramen", + "text_content": "Supraorbital foramen", + "text_box": { + "x": 7696200.0, + "y": 3061156.0, + "width": 990600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "394" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7696200.0, + "y": 3168878.0 + }, + "end_point": { + "x": 7389300.0, + "y": 3168878.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "396", + "bbox": { + "x": 7389300.0, + "y": 3168878.0, + "width": 306900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 3168000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Parietal bone", + "text_content": "Parietal bone", + "text_box": { + "x": 2788964.0, + "y": 1994356.0, + "width": 640036.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "397" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId9", + "target": "/ppt/slides/slide13.xml", + "target_slide": 13 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 3886500.0, + "y": 2102078.0 + }, + "end_point": { + "x": 3429000.0, + "y": 2102078.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "398", + "bbox": { + "x": 3429000.0, + "y": 2102078.0, + "width": 457500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3888000.0, + "y": 2104000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Coronal suture", + "text_content": "Coronal suture", + "text_box": { + "x": 5791200.0, + "y": 1348755.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "399" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Maxilla", + "text_content": "Maxilla", + "text_box": { + "x": 7919505.0, + "y": 4486358.0, + "width": 411436.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "402" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 7285005.0, + "y": 4594080.0 + }, + "end_point": { + "x": 7919505.0, + "y": 4606980.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "433", + "bbox": { + "x": 7285005.0, + "y": 4594080.0, + "width": 634500.0, + "height": 12900.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7288000.0, + "y": 4592000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Nasal bone", + "text_content": "Nasal bone", + "text_box": { + "x": 7846628.0, + "y": 3661382.0, + "width": 533400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "403" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 7846628.0, + "y": 3769104.0 + }, + "end_point": { + "x": 7389428.0, + "y": 3769104.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "427", + "bbox": { + "x": 7389428.0, + "y": 3769104.0, + "width": 457200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_26", + "kind": "connector", + "start_point": { + "x": 7389428.0, + "y": 3769104.0 + }, + "end_point": { + "x": 6781800.0, + "y": 3515368.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "444", + "bbox": { + "x": 6781800.0, + "y": 3515368.0, + "width": 607628.0, + "height": 253736.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6784000.0, + "y": 3512000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Mandible", + "text_content": "Mandible", + "text_box": { + "x": 3558518.0, + "y": 4997678.0, + "width": 510518.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "404" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId10", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Head of condylar process", + "text_content": "Head of condylar process", + "text_box": { + "x": 3701980.0, + "y": 5125315.0, + "width": 870020.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "405" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId11", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 4984800.0, + "y": 5294592.0 + }, + "end_point": { + "x": 4572000.0, + "y": 5294592.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "417", + "bbox": { + "x": 4572000.0, + "y": 5294592.0, + "width": 412800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4984000.0, + "y": 5296000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Temporal bone", + "text_content": "Temporal bone", + "text_box": { + "x": 2788964.0, + "y": 4114800.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "406" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId12", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "External acoustic meatus", + "text_content": "External acoustic meatus", + "text_box": { + "x": 2971800.0, + "y": 4442926.0, + "width": 1097236.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "407" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4984936.0, + "y": 4550648.0 + }, + "end_point": { + "x": 4069036.0, + "y": 4550648.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "408", + "bbox": { + "x": 4069036.0, + "y": 4550648.0, + "width": 915900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4984000.0, + "y": 4552000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Mastoid process", + "text_content": "Mastoid process", + "text_box": { + "x": 2971801.0, + "y": 4594080.0, + "width": 768281.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "409" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4724382.0, + "y": 4701802.0 + }, + "end_point": { + "x": 3740082.0, + "y": 4701802.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "411", + "bbox": { + "x": 3740082.0, + "y": 4701802.0, + "width": 984300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4728000.0, + "y": 4704000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Zygomatic process", + "text_content": "Zygomatic process", + "text_box": { + "x": 2971800.0, + "y": 4291515.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "410" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 5334000.0, + "y": 4399237.0 + }, + "end_point": { + "x": 3810000.0, + "y": 4399237.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "412", + "bbox": { + "x": 3810000.0, + "y": 4399237.0, + "width": 1524000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5336000.0, + "y": 4400000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Coronoid process", + "text_content": "Coronoid process", + "text_box": { + "x": 3733801.0, + "y": 5594275.0, + "width": 831919.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "413" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 4984820.0, + "y": 5701997.0 + }, + "end_point": { + "x": 4565720.0, + "y": 5701997.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "418", + "bbox": { + "x": 4565720.0, + "y": 5701997.0, + "width": 419100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 4984862.0, + "y": 5701998.0 + }, + "end_point": { + "x": 6248400.0, + "y": 5996971.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "438", + "bbox": { + "x": 4984862.0, + "y": 5701998.0, + "width": 1263538.0, + "height": 294973.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6248000.0, + "y": 6000000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Ramus", + "text_content": "Ramus", + "text_box": { + "x": 3733800.0, + "y": 5751575.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "414" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 4984800.0, + "y": 5859297.0 + }, + "end_point": { + "x": 4114800.0, + "y": 5859297.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "421", + "bbox": { + "x": 4114800.0, + "y": 5859297.0, + "width": 870000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4984000.0, + "y": 5856000.0 + } + ] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 3733801.0, + "y": 5889248.0, + "width": 304799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "415" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 4984800.0, + "y": 5996970.0 + }, + "end_point": { + "x": 4038600.0, + "y": 5996970.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "419", + "bbox": { + "x": 4038600.0, + "y": 5996970.0, + "width": 946200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4984000.0, + "y": 6000000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Mental foramen", + "text_content": "Mental foramen", + "text_box": { + "x": 3740082.0, + "y": 6032955.0, + "width": 755719.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "416" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 4984801.0, + "y": 6140677.0 + }, + "end_point": { + "x": 4495801.0, + "y": 6140677.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "420", + "bbox": { + "x": 4495801.0, + "y": 6140677.0, + "width": 489000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4984000.0, + "y": 6144000.0 + } + ] + }, + { + "annotation_id": "annot_18", + "bone_name": "Bony Pelvis", + "subbone_name": "Mandibular notch", + "text_content": "Mandibular notch", + "text_box": { + "x": 3740082.0, + "y": 5416241.0, + "width": 831919.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "422" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 4984801.0, + "y": 5523963.0 + }, + "end_point": { + "x": 4572001.0, + "y": 5523963.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "423", + "bbox": { + "x": 4572001.0, + "y": 5523963.0, + "width": 412800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4984000.0, + "y": 5520000.0 + } + ] + }, + { + "annotation_id": "annot_19", + "bone_name": "Bony Pelvis", + "subbone_name": "Occipital bone", + "text_content": "Occipital bone", + "text_box": { + "x": 2743200.0, + "y": 3854678.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "424" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 3810000.0, + "y": 3962400.0 + }, + "end_point": { + "x": 3429000.0, + "y": 3962400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "425", + "bbox": { + "x": 3429000.0, + "y": 3962400.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3808000.0, + "y": 3960000.0 + } + ] + }, + { + "annotation_id": "annot_20", + "bone_name": "Bony Pelvis", + "subbone_name": "Sphenoid bone", + "text_content": "Sphenoid bone", + "text_box": { + "x": 2743200.0, + "y": 3471978.0, + "width": 723900.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "426" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_21", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 2809778.0, + "y": 3641035.0, + "width": 664987.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "428" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide14.xml", + "target_slide": 14 + }, + "pointer_lines": [ + { + "line_id": "line_28", + "kind": "connector", + "start_point": { + "x": 6019665.0, + "y": 3748757.0 + }, + "end_point": { + "x": 3474765.0, + "y": 3748757.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "446", + "bbox": { + "x": 3474765.0, + "y": 3748757.0, + "width": 2544900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6016000.0, + "y": 3752000.0 + } + ] + }, + { + "annotation_id": "annot_22", + "bone_name": "Bony Pelvis", + "subbone_name": "Lacrimal bone", + "text_content": "Lacrimal bone", + "text_box": { + "x": 7543801.0, + "y": 3991401.0, + "width": 685801.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "429" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide16.xml", + "target_slide": 16 + }, + "pointer_lines": [ + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 7543801.0, + "y": 4099123.0 + }, + "end_point": { + "x": 7389301.0, + "y": 4099123.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "430", + "bbox": { + "x": 7389301.0, + "y": 4099123.0, + "width": 154500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_25", + "kind": "connector", + "start_point": { + "x": 6858000.0, + "y": 3962401.0 + }, + "end_point": { + "x": 7389428.0, + "y": 4099124.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "443", + "bbox": { + "x": 6858000.0, + "y": 3962401.0, + "width": 531428.0, + "height": 136723.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6856000.0, + "y": 3960000.0 + } + ] + }, + { + "annotation_id": "annot_23", + "bone_name": "Bony Pelvis", + "subbone_name": "Ethmoid bone", + "text_content": "Ethmoid bone", + "text_box": { + "x": 7543800.0, + "y": 3407646.0, + "width": 694332.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "431" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide15.xml", + "target_slide": 15 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 3515368.0 + }, + "end_point": { + "x": 7389300.0, + "y": 3515368.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "432", + "bbox": { + "x": 7389300.0, + "y": 3515368.0, + "width": 154500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 3512000.0 + } + ] + }, + { + "annotation_id": "annot_24", + "bone_name": "Bony Pelvis", + "subbone_name": "Pterion", + "text_content": "Pterion", + "text_box": { + "x": 2885096.0, + "y": 3256534.0, + "width": 380999.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "449" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_29", + "kind": "connector", + "start_point": { + "x": 5791195.0, + "y": 3364256.0 + }, + "end_point": { + "x": 3266095.0, + "y": 3364256.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "450", + "bbox": { + "x": 3266095.0, + "y": 3364256.0, + "width": 2525100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5792000.0, + "y": 3368000.0 + } + ] + }, + { + "annotation_id": "annot_25", + "bone_name": "Bony Pelvis", + "subbone_name": "Temporal fossa", + "text_content": "Temporal fossa", + "text_box": { + "x": 7696201.0, + "y": 1778912.0, + "width": 680505.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "451" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_30", + "kind": "connector", + "start_point": { + "x": 7696201.0, + "y": 1886634.0 + }, + "end_point": { + "x": 7389301.0, + "y": 1886634.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "452", + "bbox": { + "x": 7389301.0, + "y": 1886634.0, + "width": 306900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 1888000.0 + } + ] + } + ], + "total_text_annotations": 25, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_accessory_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_accessory_process_text_annotations.json new file mode 100644 index 00000000..3c47d144 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_accessory_process_text_annotations.json @@ -0,0 +1,27 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: posterior aspect", + "text_content": "LV3: posterior aspect", + "text_box": { + "x": 5163015.0, + "y": 1422034.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1403" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_articular_surfaces_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_articular_surfaces_text_annotations.json new file mode 100644 index 00000000..c82ed282 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_articular_surfaces_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: lateral aspect", + "text_content": "LV3: lateral aspect", + "text_box": { + "x": 6935624.0, + "y": 2099354.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1450" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: inferior aspect", + "text_content": "LV3: inferior aspect", + "text_box": { + "x": 2724615.0, + "y": 3748353.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1451" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: superior aspect", + "text_content": "LV3: superior aspect", + "text_box": { + "x": 2743201.0, + "y": 1299409.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1452" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_body_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_body_text_annotations.json new file mode 100644 index 00000000..68903b8e --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_body_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: lateral aspect", + "text_content": "LV3: lateral aspect", + "text_box": { + "x": 6935624.0, + "y": 2099354.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1323" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: inferior aspect", + "text_content": "LV3: inferior aspect", + "text_box": { + "x": 2724615.0, + "y": 3748353.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1324" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: superior aspect", + "text_content": "LV3: superior aspect", + "text_box": { + "x": 2743201.0, + "y": 1299409.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1325" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_mammillary_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_mammillary_process_text_annotations.json new file mode 100644 index 00000000..7e2e45f6 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_mammillary_process_text_annotations.json @@ -0,0 +1,27 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: posterior aspect", + "text_content": "LV3: posterior aspect", + "text_box": { + "x": 5163015.0, + "y": 1422034.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1426" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_spinous_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_spinous_process_text_annotations.json new file mode 100644 index 00000000..8ad2f85b --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_spinous_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: lateral aspect", + "text_content": "LV3: lateral aspect", + "text_box": { + "x": 6935624.0, + "y": 2099354.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1379" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: inferior aspect", + "text_content": "LV3: inferior aspect", + "text_box": { + "x": 2724615.0, + "y": 3748353.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1380" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: superior aspect", + "text_content": "LV3: superior aspect", + "text_box": { + "x": 2743201.0, + "y": 1299409.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1381" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_text_annotations.json new file mode 100644 index 00000000..80ab5f74 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_text_annotations.json @@ -0,0 +1,963 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: lateral aspect", + "text_content": "LV3: lateral aspect", + "text_box": { + "x": 6935624.0, + "y": 2099354.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1238" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: inferior aspect", + "text_content": "LV3: inferior aspect", + "text_box": { + "x": 2724615.0, + "y": 3748353.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1239" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: superior aspect", + "text_content": "LV3: superior aspect", + "text_box": { + "x": 2743201.0, + "y": 1299409.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1240" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse process", + "text_content": "Transverse process", + "text_box": { + "x": 5583238.0, + "y": 1867881.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1241" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide41.xml", + "target_slide": 41 + }, + "pointer_lines": [ + { + "line_id": "line_21", + "kind": "connector", + "start_point": { + "x": 5583238.0, + "y": 1975603.0 + }, + "end_point": { + "x": 5211238.0, + "y": 1975603.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1275", + "bbox": { + "x": 5211238.0, + "y": 1975603.0, + "width": 372000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5208000.0, + "y": 1976000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior articular surface", + "text_content": "Superior articular surface", + "text_box": { + "x": 5317584.0, + "y": 2164692.0, + "width": 1172737.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1242" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide45.xml", + "target_slide": 45 + }, + "pointer_lines": [ + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 4724401.0, + "y": 1828801.0 + }, + "end_point": { + "x": 5106238.0, + "y": 2272416.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1271", + "bbox": { + "x": 4724401.0, + "y": 1828801.0, + "width": 381837.0, + "height": 443615.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_22", + "kind": "connector", + "start_point": { + "x": 5317584.0, + "y": 2272414.0 + }, + "end_point": { + "x": 5106384.0, + "y": 2272414.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1276", + "bbox": { + "x": 5106384.0, + "y": 2272414.0, + "width": 211200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4728000.0, + "y": 1832000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior articular surface", + "text_content": "Inferior articular surface", + "text_box": { + "x": 5211214.0, + "y": 4219092.0, + "width": 1090154.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1243" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide45.xml", + "target_slide": 45 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5211214.0, + "y": 4326814.0 + }, + "end_point": { + "x": 4571914.0, + "y": 4326814.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1244", + "bbox": { + "x": 4571914.0, + "y": 4326814.0, + "width": 639300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 6546468.0, + "y": 4326814.0 + }, + "end_point": { + "x": 6301368.0, + "y": 4326814.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1264", + "bbox": { + "x": 6301368.0, + "y": 4326814.0, + "width": 245100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6544000.0, + "y": 4328000.0 + }, + { + "x": 4568000.0, + "y": 4328000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 2778902.0, + "y": 2891393.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1245" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide40.xml", + "target_slide": 40 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4267161.0, + "y": 2999115.0 + }, + "end_point": { + "x": 3080061.0, + "y": 2999115.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1246", + "bbox": { + "x": 3080061.0, + "y": 2999115.0, + "width": 1187100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 4879023.0, + "y": 3481878.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1247" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide42.xml", + "target_slide": 42 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 6172323.0, + "y": 3589600.0 + }, + "end_point": { + "x": 5679123.0, + "y": 3589600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1250", + "bbox": { + "x": 5679123.0, + "y": 3589600.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6176000.0, + "y": 3592000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 4811164.0, + "y": 1396216.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1248" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide42.xml", + "target_slide": 42 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4811164.0, + "y": 1503938.0 + }, + "end_point": { + "x": 4317964.0, + "y": 1503938.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1249", + "bbox": { + "x": 4317964.0, + "y": 1503938.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4320000.0, + "y": 1504000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Lamina", + "text_content": "Lamina", + "text_box": { + "x": 2788937.0, + "y": 4126010.0, + "width": 361859.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1251" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 3581296.0, + "y": 4233732.0 + }, + "end_point": { + "x": 3150796.0, + "y": 4233732.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1252", + "bbox": { + "x": 3150796.0, + "y": 4233732.0, + "width": 430500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 3886201.0, + "y": 4495800.0 + }, + "end_point": { + "x": 3581402.0, + "y": 4233732.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1263", + "bbox": { + "x": 3581402.0, + "y": 4233732.0, + "width": 304799.0, + "height": 262068.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3888000.0, + "y": 4496000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Vertebral foramen", + "text_content": "Vertebral foramen", + "text_box": { + "x": 2743201.0, + "y": 2164692.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1253" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4267326.0, + "y": 2272414.0 + }, + "end_point": { + "x": 3616326.0, + "y": 2272414.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1254", + "bbox": { + "x": 3616326.0, + "y": 2272414.0, + "width": 651000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 2272000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Pedicle", + "text_content": "Pedicle", + "text_box": { + "x": 2895600.0, + "y": 4737556.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1255" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 3781500.0, + "y": 4849478.0 + }, + "end_point": { + "x": 3276600.0, + "y": 4845278.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1256", + "bbox": { + "x": 3276600.0, + "y": 4845278.0, + "width": 504900.0, + "height": 4200.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3784000.0, + "y": 4848000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior vertebral notch", + "text_content": "Inferior vertebral notch", + "text_box": { + "x": 7360893.0, + "y": 4487465.0, + "width": 1104900.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1257" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 7360893.0, + "y": 4595187.0 + }, + "end_point": { + "x": 7162893.0, + "y": 4595187.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1260", + "bbox": { + "x": 7162893.0, + "y": 4595187.0, + "width": 198000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 7162800.0, + "y": 4595188.0 + }, + "end_point": { + "x": 7010400.0, + "y": 3823144.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1268", + "bbox": { + "x": 7010400.0, + "y": 3823144.0, + "width": 152400.0, + "height": 772044.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7008000.0, + "y": 3824000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 8231421.0, + "y": 4038748.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1258" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide40.xml", + "target_slide": 40 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 8231421.0, + "y": 4146470.0 + }, + "end_point": { + "x": 8039721.0, + "y": 4146470.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1259", + "bbox": { + "x": 8039721.0, + "y": 4146470.0, + "width": 191700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 7690876.0, + "y": 3823144.0 + }, + "end_point": { + "x": 8039595.0, + "y": 4146470.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1266", + "bbox": { + "x": 7690876.0, + "y": 3823144.0, + "width": 348719.0, + "height": 323326.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7688000.0, + "y": 3824000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior vertebral notch", + "text_content": "Superior vertebral notch", + "text_box": { + "x": 7589494.0, + "y": 2560185.0, + "width": 1113087.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1261" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 7589494.0, + "y": 2667907.0 + }, + "end_point": { + "x": 7360894.0, + "y": 2667907.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1262", + "bbox": { + "x": 7360894.0, + "y": 2667907.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7360000.0, + "y": 2664000.0 + } + ] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Mammillary process", + "text_content": "Mammillary process", + "text_box": { + "x": 5317583.0, + "y": 1652669.0, + "width": 919172.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1269" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId26", + "target": "/ppt/slides/slide44.xml", + "target_slide": 44 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 5317583.0, + "y": 1760391.0 + }, + "end_point": { + "x": 4953083.0, + "y": 1760391.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1270", + "bbox": { + "x": 4953083.0, + "y": 1760391.0, + "width": 364500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4952000.0, + "y": 1760000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Accessory process", + "text_content": "Accessory process", + "text_box": { + "x": 5029200.0, + "y": 3210907.0, + "width": 874752.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1272" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 6172152.0, + "y": 3318629.0 + }, + "end_point": { + "x": 5903952.0, + "y": 3318629.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1273", + "bbox": { + "x": 5903952.0, + "y": 3318629.0, + "width": 268200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 6629401.0, + "y": 3481879.0 + }, + "end_point": { + "x": 6172202.0, + "y": 3318630.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1274", + "bbox": { + "x": 6172202.0, + "y": 3318630.0, + "width": 457199.0, + "height": 163249.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6632000.0, + "y": 3480000.0 + } + ] + }, + { + "annotation_id": "annot_18", + "bone_name": "Bony Pelvis", + "subbone_name": "Accessory process", + "text_content": "Accessory process", + "text_box": { + "x": 5178944.0, + "y": 4393270.0, + "width": 808587.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1277" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 5178944.0, + "y": 4500992.0 + }, + "end_point": { + "x": 4648244.0, + "y": 4500992.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1278", + "bbox": { + "x": 4648244.0, + "y": 4500992.0, + "width": 530700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4648000.0, + "y": 4504000.0 + } + ] + } + ], + "total_text_annotations": 18, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/lumbar_transverse_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/lumbar_transverse_process_text_annotations.json new file mode 100644 index 00000000..0434a251 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/lumbar_transverse_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: lateral aspect", + "text_content": "LV3: lateral aspect", + "text_box": { + "x": 6935624.0, + "y": 2099354.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1350" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: inferior aspect", + "text_content": "LV3: inferior aspect", + "text_box": { + "x": 2724615.0, + "y": 3748353.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1351" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "LV3: superior aspect", + "text_content": "LV3: superior aspect", + "text_box": { + "x": 2743201.0, + "y": 1299409.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1352" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/pectineal_line_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/pectineal_line_text_annotations.json new file mode 100644 index 00000000..2ce233fd --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/pectineal_line_text_annotations.json @@ -0,0 +1,58 @@ +{ + "slide_number": 18, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 3200401.0, + "y": 5181600.0, + "width": 418819.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "549" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3780620.0, + "y": 5289322.0 + }, + "end_point": { + "x": 3619220.0, + "y": 5289322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "550", + "bbox": { + "x": 3619220.0, + "y": 5289322.0, + "width": 161400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3784000.0, + "y": 5288000.0 + } + ] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/pubic_rami_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/pubic_rami_text_annotations.json new file mode 100644 index 00000000..bf0fd7d7 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/pubic_rami_text_annotations.json @@ -0,0 +1,86 @@ +{ + "slide_number": 17, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 5526097.0, + "y": 4769542.0, + "width": 452089.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "526" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6490886.0, + "y": 4877264.0 + }, + "end_point": { + "x": 5978186.0, + "y": 4851464.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "525", + "bbox": { + "x": 5978186.0, + "y": 4851464.0, + "width": 512700.0, + "height": 25800.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5277397.0, + "y": 4719464.0 + }, + "end_point": { + "x": 5526097.0, + "y": 4877264.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "527", + "bbox": { + "x": 5277397.0, + "y": 4719464.0, + "width": 248700.0, + "height": 157800.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5280000.0, + "y": 4720000.0 + }, + { + "x": 6488000.0, + "y": 4880000.0 + } + ] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/pubic_tubercle_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/pubic_tubercle_text_annotations.json new file mode 100644 index 00000000..cd28b10c --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/pubic_tubercle_text_annotations.json @@ -0,0 +1,82 @@ +{ + "slide_number": 20, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Pubic crest", + "text_content": "Pubic crest", + "text_box": { + "x": 8300000.0, + "y": 2150000.0, + "width": 643768.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "592" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 8000000.0, + "y": 2250000.0 + }, + "end_point": { + "x": 8300000.0, + "y": 2250000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "593", + "bbox": { + "x": 8250000.0, + "y": 2150000.0, + "width": 194400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7500000.0, + "y": 2700000.0 + }, + "end_point": { + "x": 8000000.0, + "y": 2250000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "594", + "bbox": { + "x": 7700600.0, + "y": 2150000.0, + "width": 549400.0, + "height": 534678.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7352000.0, + "y": 3768000.0 + } + ] + } + ], + "total_text_annotations": 1, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} diff --git a/boneset-api/data/annotations/text_label_annotations/pubis_image_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/pubis_image_text_annotations.json new file mode 100644 index 00000000..21180e11 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/pubis_image_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 16, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/pubis_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/pubis_text_annotations.json new file mode 100644 index 00000000..29562f9a --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/pubis_text_annotations.json @@ -0,0 +1,443 @@ +{ + "slide_number": 15, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior ramus", + "text_content": "Inferior ramus", + "text_box": { + "x": 6712713.0, + "y": 4300000.0, + "width": 549293.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "461" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6444813.0, + "y": 4469277.0 + }, + "end_point": { + "x": 6712713.0, + "y": 4469277.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "460", + "bbox": { + "x": 6444813.0, + "y": 4469277.0, + "width": 267900.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 6444960.0, + "y": 3870341.0 + }, + "end_point": { + "x": 6444960.0, + "y": 4469277.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "470", + "bbox": { + "x": 6444960.0, + "y": 3870341.0, + "width": 0.0, + "height": 598936.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6441401.0, + "y": 3448000.0 + } + ] + }, + + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior ramus", + "text_content": "Superior ramus", + "text_box": { + "x": 6400000.0, + "y": 2400000.0, + "width": 549293.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "462" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide17.xml", + "target_slide": 17 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 6320000.0, + "y": 2903077.0 + }, + "end_point": { + "x": 6500000.0, + "y": 2603077.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "463", + "bbox": { + "x": 6200000.0, + "y": 2703077.0, + "width": 200000.0, + "height": 200000.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6200000.0, + "y": 2900000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Pubic tubercle", + "text_content": "Pubic tubercle", + "text_box": { + "x": 6765697.0, + "y": 2890000.0, + "width": 549293.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "464" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide20.xml", + "target_slide": 20 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 6715697.0, + "y": 3400000.0 + }, + "end_point": { + "x": 6859897.0, + "y": 2969176.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "469", + "bbox": { + "x": 6859897.0, + "y": 2969176.0, + "width": 205800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6857401.0, + "y": 2968000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Symphyseal surface", + "text_content": "Symphyseal surface", + "text_box": { + "x": 7850000.0, + "y": 4600000.0, + "width": 701693.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "466" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide19.xml", + "target_slide": 19 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7537897.0, + "y": 4650000.0 + }, + "end_point": { + "x": 7826197.0, + "y": 4650000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "467", + "bbox": { + "x": 7537897.0, + "y": 4650000.0, + "width": 288300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7300000.0, + "y": 4195000.0 + }, + "end_point": { + "x": 7537897.0, + "y": 4650000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "468", + "bbox": { + "x": 7300000.0, + "y": 4400000.0, + "width": 237897.0, + "height": 250000.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7641401.0, + "y": 4360000.0 + } + ] +}, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Pectineal line", + "text_content": "Pectineal line", + "text_box": { + "x": 6600000.0, + "y": 1899869.0, + "width": 625948.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "472" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 7370000.0, + "y": 2100000.0 + }, + "end_point": { + "x": 7100000.0, + "y": 2100000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "473", + "bbox": { + "x": 7225948.0, + "y": 2100000.0, + "width": 246600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 7600000.0, + "y": 3190000.0 + }, + "end_point": { + "x": 7370000.0, + "y": 2100000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "474", + "bbox": { + "x": 7469603.0, + "y": 2069146.0, + "width": 380999.0, + "height": 1097828.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7849401.0, + "y": 3168000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 6777129.0, + "y": 3500000.0, + "width": 418819.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "477" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 6539229.0, + "y": 3607722.0 + }, + "end_point": { + "x": 6807129.0, + "y": 3607722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "476", + "bbox": { + "x": 6539229.0, + "y": 3607722.0, + "width": 267900.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 7287348.0, + "y": 3607722.0 + }, + "end_point": { + "x": 7155948.0, + "y": 3607722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "478", + "bbox": { + "x": 7225948.0, + "y": 3607722.0, + "width": 161400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 7453301.0, + "y": 3944020.0 + }, + "end_point": { + "x": 7287348.0, + "y": 3607722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "479", + "bbox": { + "x": 7387355.0, + "y": 3607722.0, + "width": 365946.0, + "height": 336298.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6537401.0, + "y": 3606248.0 + }, + { + "x": 7753401.0, + "y": 3942248.0 + } + ] + } + ], + "total_text_annotations": 6, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/sacrum_and_coccyx_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/sacrum_and_coccyx_text_annotations.json new file mode 100644 index 00000000..d83a7b63 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/sacrum_and_coccyx_text_annotations.json @@ -0,0 +1,625 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Sacral promontory", + "text_content": "Sacral promontory", + "text_box": { + "x": 2760663.0, + "y": 1810406.0, + "width": 879475.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1480" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide48.xml", + "target_slide": 48 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3809938.0, + "y": 1918128.0 + }, + "end_point": { + "x": 3640138.0, + "y": 1918128.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1481", + "bbox": { + "x": 3640138.0, + "y": 1918128.0, + "width": 169800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4038601.0, + "y": 2209801.0 + }, + "end_point": { + "x": 3810002.0, + "y": 1918130.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1482", + "bbox": { + "x": 3810002.0, + "y": 1918130.0, + "width": 228599.0, + "height": 291671.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 2208000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior articular process", + "text_content": "Superior articular process", + "text_box": { + "x": 7734527.0, + "y": 1673929.0, + "width": 838200.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "1483" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide49.xml", + "target_slide": 49 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7734527.0, + "y": 1843206.0 + }, + "end_point": { + "x": 7467527.0, + "y": 1843206.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1484", + "bbox": { + "x": 7467527.0, + "y": 1843206.0, + "width": 267000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7464000.0, + "y": 1840000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Coccyx", + "text_content": "Coccyx", + "text_box": { + "x": 5524500.0, + "y": 5289322.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1487" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide54.xml", + "target_slide": 54 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 5524500.0, + "y": 5397044.0 + }, + "end_point": { + "x": 4221300.0, + "y": 5397044.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1488", + "bbox": { + "x": 4221300.0, + "y": 5397044.0, + "width": 1303200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 7086600.0, + "y": 5397044.0 + }, + "end_point": { + "x": 5905500.0, + "y": 5397044.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1489", + "bbox": { + "x": 5905500.0, + "y": 5397044.0, + "width": 1181100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7088000.0, + "y": 5400000.0 + }, + { + "x": 4224000.0, + "y": 5400000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior sacral foramen", + "text_content": "Anterior sacral foramen", + "text_box": { + "x": 4972050.0, + "y": 4648200.0, + "width": 1047750.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1490" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide50.xml", + "target_slide": 50 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 4972050.0, + "y": 4755922.0 + }, + "end_point": { + "x": 4800750.0, + "y": 4755922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1491", + "bbox": { + "x": 4800750.0, + "y": 4755922.0, + "width": 171300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 4572000.0, + "y": 4267200.0 + }, + "end_point": { + "x": 4800600.0, + "y": 4755924.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1492", + "bbox": { + "x": 4572000.0, + "y": 4267200.0, + "width": 228600.0, + "height": 488724.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 4495800.0, + "y": 3886200.0 + }, + "end_point": { + "x": 4800600.0, + "y": 4755922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1493", + "bbox": { + "x": 4495800.0, + "y": 3886200.0, + "width": 304800.0, + "height": 869722.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 4572000.0, + "y": 3505200.0 + }, + "end_point": { + "x": 4800600.0, + "y": 4755922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1494", + "bbox": { + "x": 4572000.0, + "y": 3505200.0, + "width": 228600.0, + "height": 1250722.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 4623196.0, + "y": 3003322.0 + }, + "end_point": { + "x": 4800601.0, + "y": 4755922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1495", + "bbox": { + "x": 4623196.0, + "y": 3003322.0, + "width": 177405.0, + "height": 1752600.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4576000.0, + "y": 4264000.0 + }, + { + "x": 4496000.0, + "y": 3888000.0 + }, + { + "x": 4576000.0, + "y": 3504000.0 + }, + { + "x": 4624000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior sacral foramen", + "text_content": "Posterior sacral foramen", + "text_box": { + "x": 5181601.0, + "y": 4343400.0, + "width": 1057275.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1496" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide50.xml", + "target_slide": 50 + }, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 6400876.0, + "y": 4451122.0 + }, + "end_point": { + "x": 6238876.0, + "y": 4451122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1497", + "bbox": { + "x": 6238876.0, + "y": 4451122.0, + "width": 162000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6400000.0, + "y": 4448000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Sacral hiatus", + "text_content": "Sacral hiatus", + "text_box": { + "x": 7861860.0, + "y": 4565402.0, + "width": 635830.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1502" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 7861860.0, + "y": 4673124.0 + }, + "end_point": { + "x": 7315260.0, + "y": 4673124.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1503", + "bbox": { + "x": 7315260.0, + "y": 4673124.0, + "width": 546600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 7315200.0, + "y": 4673126.0 + }, + "end_point": { + "x": 7260992.0, + "y": 4146323.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1511", + "bbox": { + "x": 7260992.0, + "y": 4146323.0, + "width": 54208.0, + "height": 526803.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7264000.0, + "y": 4144000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Articular surface for ilium", + "text_content": "Articular surface for ilium", + "text_box": { + "x": 4903251.0, + "y": 1779486.0, + "width": 800408.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "1504" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 6024959.0, + "y": 1948763.0 + }, + "end_point": { + "x": 5703659.0, + "y": 1948763.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1505", + "bbox": { + "x": 5703659.0, + "y": 1948763.0, + "width": 321300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6024000.0, + "y": 1952000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Median sacral crest", + "text_content": "Median sacral crest", + "text_box": { + "x": 7772400.0, + "y": 4346679.0, + "width": 914400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1507" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide51.xml", + "target_slide": 51 + }, + "pointer_lines": [ + { + "line_id": "line_21", + "kind": "connector", + "start_point": { + "x": 7772400.0, + "y": 4454401.0 + }, + "end_point": { + "x": 7483800.0, + "y": 4454401.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1509", + "bbox": { + "x": 7483800.0, + "y": 4454401.0, + "width": 288600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_22", + "kind": "connector", + "start_point": { + "x": 7483802.0, + "y": 4454402.0 + }, + "end_point": { + "x": 7260992.0, + "y": 3505201.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1510", + "bbox": { + "x": 7260992.0, + "y": 3505201.0, + "width": 222810.0, + "height": 949201.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7264000.0, + "y": 3504000.0 + } + ] + } + ], + "total_text_annotations": 8, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/scapula_body_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/scapula_body_text_annotations.json new file mode 100644 index 00000000..3137426a --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/scapula_body_text_annotations.json @@ -0,0 +1,346 @@ +{ + "slide_number": 25, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Vertebral (medial) border", + "text_content": "Vertebral (medial) border", + "text_box": { + "x": 3124200.0, + "y": 3530756.0, + "width": 838200.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "770" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3962400.0, + "y": 3700033.0 + }, + "end_point": { + "x": 4198800.0, + "y": 3700033.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "771", + "bbox": { + "x": 3962400.0, + "y": 3700033.0, + "width": 236400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4200000.0, + "y": 3704000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior angle", + "text_content": "Superior angle", + "text_box": { + "x": 3208274.0, + "y": 1735723.0, + "width": 677926.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "772" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3886200.0, + "y": 1843445.0 + }, + "end_point": { + "x": 4046400.0, + "y": 1843445.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "773", + "bbox": { + "x": 3886200.0, + "y": 1843445.0, + "width": 160200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4046474.0, + "y": 1843445.0 + }, + "end_point": { + "x": 4637208.0, + "y": 2127759.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "774", + "bbox": { + "x": 4046474.0, + "y": 1843445.0, + "width": 590734.0, + "height": 284314.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4640000.0, + "y": 2128000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior angle", + "text_content": "Inferior angle", + "text_box": { + "x": 3208274.0, + "y": 5575918.0, + "width": 677926.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "775" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 3886200.0, + "y": 5683640.0 + }, + "end_point": { + "x": 4046400.0, + "y": 5683640.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "776", + "bbox": { + "x": 3886200.0, + "y": 5683640.0, + "width": 160200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4048000.0, + "y": 5680000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Axillary (lateral) border", + "text_content": "Axillary (lateral) border", + "text_box": { + "x": 6324600.0, + "y": 4190107.0, + "width": 838200.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "778" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 6019800.0, + "y": 4359384.0 + }, + "end_point": { + "x": 6324600.0, + "y": 4359384.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "779", + "bbox": { + "x": 6019800.0, + "y": 4359384.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 6019800.0, + "y": 4359385.0 + }, + "end_point": { + "x": 5715000.0, + "y": 4190108.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "780", + "bbox": { + "x": 5715000.0, + "y": 4190108.0, + "width": 304800.0, + "height": 169277.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 4192000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Suprascapular notch", + "text_content": "Suprascapular notch", + "text_box": { + "x": 6019801.0, + "y": 1561074.0, + "width": 613223.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "781" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 5791201.0, + "y": 1730351.0 + }, + "end_point": { + "x": 6019801.0, + "y": 1730351.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "782", + "bbox": { + "x": 5791201.0, + "y": 1730351.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5792000.0, + "y": 1728000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Lateral angle", + "text_content": "Lateral angle", + "text_box": { + "x": 6989195.0, + "y": 3276600.0, + "width": 677926.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "784" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 6651095.0, + "y": 3384322.0 + }, + "end_point": { + "x": 6989195.0, + "y": 3384322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "785", + "bbox": { + "x": 6651095.0, + "y": 3384322.0, + "width": 338100.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6648000.0, + "y": 3384000.0 + } + ] + } + ], + "total_text_annotations": 6, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/scapula_fossae_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/scapula_fossae_text_annotations.json new file mode 100644 index 00000000..8f1089f5 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/scapula_fossae_text_annotations.json @@ -0,0 +1,130 @@ +{ + "slide_number": 27, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Infraglenoid tubercle", + "text_content": "Infraglenoid tubercle", + "text_box": { + "x": 6265898.0, + "y": 5191126.0, + "width": 668303.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "835" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6934201.0, + "y": 5360403.0 + }, + "end_point": { + "x": 7239001.0, + "y": 5360403.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "836", + "bbox": { + "x": 6934201.0, + "y": 5360403.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 5360000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Supraglenoid tubercle", + "text_content": "Supraglenoid tubercle", + "text_box": { + "x": 6904849.0, + "y": 3644972.0, + "width": 668303.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "838" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7573152.0, + "y": 3814249.0 + }, + "end_point": { + "x": 7772352.0, + "y": 3814249.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "839", + "bbox": { + "x": 7573152.0, + "y": 3814249.0, + "width": 199200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7772400.0, + "y": 3814249.0 + }, + "end_point": { + "x": 7950300.0, + "y": 4441849.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "840", + "bbox": { + "x": 7772400.0, + "y": 3814249.0, + "width": 177900.0, + "height": 627600.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7952000.0, + "y": 4440000.0 + } + ] + } + ], + "total_text_annotations": 2, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/scapula_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/scapula_text_annotations.json new file mode 100644 index 00000000..cc1d4e3b --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/scapula_text_annotations.json @@ -0,0 +1,598 @@ +{ + "slide_number": 23, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Infraspinous fossa", + "text_content": "Infraspinous fossa", + "text_box": { + "x": 7787264.0, + "y": 3987969.0, + "width": 613223.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "705" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide27.xml", + "target_slide": 27 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7543664.0, + "y": 4157246.0 + }, + "end_point": { + "x": 7787264.0, + "y": 4157246.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "706", + "bbox": { + "x": 7543664.0, + "y": 4157246.0, + "width": 243600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7543800.0, + "y": 4157246.0 + }, + "end_point": { + "x": 6781800.0, + "y": 3733800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "707", + "bbox": { + "x": 6781800.0, + "y": 3733800.0, + "width": 762000.0, + "height": 423446.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6784000.0, + "y": 3736000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Supraspinous fossa", + "text_content": "Supraspinous fossa", + "text_box": { + "x": 5312963.0, + "y": 1858129.0, + "width": 613223.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "708" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide27.xml", + "target_slide": 27 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5926186.0, + "y": 2027406.0 + }, + "end_point": { + "x": 6151186.0, + "y": 2027406.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "709", + "bbox": { + "x": 5926186.0, + "y": 2027406.0, + "width": 225000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6152000.0, + "y": 2024000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Subscapular fossa", + "text_content": "Subscapular fossa", + "text_box": { + "x": 2971801.0, + "y": 4312741.0, + "width": 613223.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "711" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide27.xml", + "target_slide": 27 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 3585024.0, + "y": 4482018.0 + }, + "end_point": { + "x": 3810024.0, + "y": 4482018.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "712", + "bbox": { + "x": 3585024.0, + "y": 4482018.0, + "width": 225000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 3808000.0, + "y": 4480000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Coracoid process", + "text_content": "Coracoid process", + "text_box": { + "x": 4076700.0, + "y": 1750407.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "714" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide28.xml", + "target_slide": 28 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 3886200.0, + "y": 1858129.0 + }, + "end_point": { + "x": 4076700.0, + "y": 1858129.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "715", + "bbox": { + "x": 3886200.0, + "y": 1858129.0, + "width": 190500.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 3888000.0, + "y": 1856000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Acromion process", + "text_content": "Acromion process", + "text_box": { + "x": 6949063.0, + "y": 1815619.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "717" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide28.xml", + "target_slide": 28 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 7787263.0, + "y": 1923341.0 + }, + "end_point": { + "x": 8000863.0, + "y": 1923341.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "718", + "bbox": { + "x": 7787263.0, + "y": 1923341.0, + "width": 213600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 8001001.0, + "y": 1923342.0 + }, + "end_point": { + "x": 8386460.0, + "y": 2286001.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "719", + "bbox": { + "x": 8001001.0, + "y": 1923342.0, + "width": 385459.0, + "height": 362659.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 8384000.0, + "y": 2288000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Spine", + "text_content": "Spine", + "text_box": { + "x": 5467175.0, + "y": 2483078.0, + "width": 304799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "720" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide26.xml", + "target_slide": 26 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 5771974.0, + "y": 2590800.0 + }, + "end_point": { + "x": 5924374.0, + "y": 2590800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "721", + "bbox": { + "x": 5771974.0, + "y": 2590800.0, + "width": 152400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 5924374.0, + "y": 2590801.0 + }, + "end_point": { + "x": 6928479.0, + "y": 2942472.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "722", + "bbox": { + "x": 5924374.0, + "y": 2590801.0, + "width": 1004105.0, + "height": 351671.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6928000.0, + "y": 2944000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Glenoid fossa", + "text_content": "Glenoid fossa", + "text_box": { + "x": 8138108.0, + "y": 3124200.0, + "width": 399485.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "723" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide27.xml", + "target_slide": 27 + }, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 7862108.0, + "y": 3293477.0 + }, + "end_point": { + "x": 8138108.0, + "y": 3293477.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "724", + "bbox": { + "x": 7862108.0, + "y": 3293477.0, + "width": 276000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7864000.0, + "y": 3296000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Suprascapular notch", + "text_content": "Suprascapular notch", + "text_box": { + "x": 5844551.0, + "y": 1512243.0, + "width": 613223.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "725" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 6457774.0, + "y": 1681520.0 + }, + "end_point": { + "x": 6625774.0, + "y": 1681520.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "726", + "bbox": { + "x": 6457774.0, + "y": 1681520.0, + "width": 168000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 6625778.0, + "y": 1681520.0 + }, + "end_point": { + "x": 7086601.0, + "y": 2590800.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "727", + "bbox": { + "x": 6625778.0, + "y": 1681520.0, + "width": 460823.0, + "height": 909280.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7088000.0, + "y": 2592000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 5539752.0, + "y": 4049524.0, + "width": 304799.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "728" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide25.xml", + "target_slide": 25 + }, + "pointer_lines": [ + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 5844551.0, + "y": 4157246.0 + }, + "end_point": { + "x": 6320951.0, + "y": 4157246.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "729", + "bbox": { + "x": 5844551.0, + "y": 4157246.0, + "width": 476400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 5539752.0, + "y": 4157246.0 + }, + "end_point": { + "x": 4914852.0, + "y": 4157246.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "730", + "bbox": { + "x": 4914852.0, + "y": 4157246.0, + "width": 624900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6320000.0, + "y": 4160000.0 + }, + { + "x": 4912000.0, + "y": 4160000.0 + } + ] + } + ], + "total_text_annotations": 9, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/skull_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/skull_text_annotations.json new file mode 100644 index 00000000..ffc7f8af --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/skull_text_annotations.json @@ -0,0 +1,98 @@ +{ + "slide_number": 2, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior view", + "text_content": "Anterior view", + "text_box": { + "x": 3779892.0, + "y": 3429000.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "108" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide3.xml", + "target_slide": 3 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior view(cranial cavity)", + "text_content": "Superior view(cranial cavity)", + "text_box": { + "x": 7086600.0, + "y": 5955787.0, + "width": 685800.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "109" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide19.xml", + "target_slide": 19 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior view (cranial base)", + "text_content": "Inferior view (cranial base)", + "text_box": { + "x": 3795482.0, + "y": 5938580.0, + "width": 685800.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "110" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide19.xml", + "target_slide": 19 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Lateral view", + "text_content": "Lateral view", + "text_box": { + "x": 7058463.0, + "y": 3407646.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "111" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide11.xml", + "target_slide": 11 + }, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 4, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/sternum_manubrium_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/sternum_manubrium_text_annotations.json new file mode 100644 index 00000000..17775ee6 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/sternum_manubrium_text_annotations.json @@ -0,0 +1,230 @@ +{ + "slide_number": 5, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Sternal angle", + "text_content": "Sternal angle", + "text_box": { + "x": 5101135.0, + "y": 2841228.0, + "width": 618131.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "202" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 4190935.0, + "y": 2948950.0 + }, + "end_point": { + "x": 5101135.0, + "y": 2948950.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "203", + "bbox": { + "x": 4190935.0, + "y": 2948950.0, + "width": 910200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 2952000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Jugular notch", + "text_content": "Jugular notch", + "text_box": { + "x": 6019996.0, + "y": 1566619.0, + "width": 694331.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "204" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 6714327.0, + "y": 1668941.0 + }, + "end_point": { + "x": 7010727.0, + "y": 1674341.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "205", + "bbox": { + "x": 6714327.0, + "y": 1668941.0, + "width": 296400.0, + "height": 5400.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7315200.0, + "y": 1897425.0 + }, + "end_point": { + "x": 7010402.0, + "y": 1674341.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "206", + "bbox": { + "x": 7010402.0, + "y": 1674341.0, + "width": 304798.0, + "height": 223084.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7312000.0, + "y": 1896000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicular notches", + "text_content": "Clavicular notches", + "text_box": { + "x": 3733800.0, + "y": 1502844.0, + "width": 762000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "209" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 4648200.0, + "y": 1610566.0 + }, + "end_point": { + "x": 4495800.0, + "y": 1610566.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "210", + "bbox": { + "x": 4495800.0, + "y": 1610566.0, + "width": 152400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 3578773.0, + "y": 1600200.0 + }, + "end_point": { + "x": 3733801.0, + "y": 1600200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "211", + "bbox": { + "x": 3578773.0, + "y": 1600200.0, + "width": 155028.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4724401.0, + "y": 1947710.0 + }, + "end_point": { + "x": 4648202.0, + "y": 1610566.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "212", + "bbox": { + "x": 4648202.0, + "y": 1610566.0, + "width": 76199.0, + "height": 337144.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3576000.0, + "y": 1600000.0 + }, + { + "x": 4728000.0, + "y": 1944000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/sternum_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/sternum_text_annotations.json new file mode 100644 index 00000000..588013c2 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/sternum_text_annotations.json @@ -0,0 +1,406 @@ +{ + "slide_number": 3, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Manubrium", + "text_content": "Manubrium", + "text_box": { + "x": 5410201.0, + "y": 2362200.0, + "width": 618131.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "145" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7239132.0, + "y": 2469922.0 + }, + "end_point": { + "x": 6028332.0, + "y": 2469922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "146", + "bbox": { + "x": 6028332.0, + "y": 2469922.0, + "width": 1210800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4114801.0, + "y": 2469922.0 + }, + "end_point": { + "x": 5410201.0, + "y": 2469922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "147", + "bbox": { + "x": 4114801.0, + "y": 2469922.0, + "width": 1295400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 2472000.0 + }, + { + "x": 4112000.0, + "y": 2472000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 5486400.0, + "y": 3703002.0, + "width": 381001.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "148" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide6.xml", + "target_slide": 6 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7239001.0, + "y": 3810724.0 + }, + "end_point": { + "x": 5867401.0, + "y": 3810724.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "149", + "bbox": { + "x": 5867401.0, + "y": 3810724.0, + "width": 1371600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 4114800.0, + "y": 3810724.0 + }, + "end_point": { + "x": 5486400.0, + "y": 3810724.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "150", + "bbox": { + "x": 4114800.0, + "y": 3810724.0, + "width": 1371600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 3808000.0 + }, + { + "x": 4112000.0, + "y": 3808000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Xiphoid process", + "text_content": "Xiphoid process", + "text_box": { + "x": 5266333.0, + "y": 5441722.0, + "width": 761999.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "151" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide7.xml", + "target_slide": 7 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7391532.0, + "y": 5549444.0 + }, + "end_point": { + "x": 6028332.0, + "y": 5549444.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "152", + "bbox": { + "x": 6028332.0, + "y": 5549444.0, + "width": 1363200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4191133.0, + "y": 5549444.0 + }, + "end_point": { + "x": 5266333.0, + "y": 5549444.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "153", + "bbox": { + "x": 4191133.0, + "y": 5549444.0, + "width": 1075200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 5552000.0 + }, + { + "x": 7392000.0, + "y": 5552000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Sternal angle", + "text_content": "Sternal angle", + "text_box": { + "x": 5101135.0, + "y": 2841228.0, + "width": 618131.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "154" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 4190935.0, + "y": 2948950.0 + }, + "end_point": { + "x": 5101135.0, + "y": 2948950.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "155", + "bbox": { + "x": 4190935.0, + "y": 2948950.0, + "width": 910200.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4192000.0, + "y": 2952000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Jugular notch", + "text_content": "Jugular notch", + "text_box": { + "x": 5334001.0, + "y": 1616904.0, + "width": 694331.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "156" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide5.xml", + "target_slide": 5 + }, + "pointer_lines": [ + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 7010532.0, + "y": 1724626.0 + }, + "end_point": { + "x": 6028332.0, + "y": 1724626.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "157", + "bbox": { + "x": 6028332.0, + "y": 1724626.0, + "width": 982200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 4343401.0, + "y": 1724626.0 + }, + "end_point": { + "x": 5334001.0, + "y": 1724626.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "158", + "bbox": { + "x": 4343401.0, + "y": 1724626.0, + "width": 990600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 7315200.0, + "y": 1947710.0 + }, + "end_point": { + "x": 7010402.0, + "y": 1724626.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "160", + "bbox": { + "x": 7010402.0, + "y": 1724626.0, + "width": 304798.0, + "height": 223084.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4344000.0, + "y": 1728000.0 + }, + { + "x": 7312000.0, + "y": 1944000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/superior_cranial_cavity_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/superior_cranial_cavity_text_annotations.json new file mode 100644 index 00000000..83c670eb --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/superior_cranial_cavity_text_annotations.json @@ -0,0 +1,1620 @@ +{ + "slide_number": 27, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Ethmoid bone", + "text_content": "Ethmoid bone", + "text_box": { + "x": 2819400.0, + "y": 1752600.0, + "width": 640080.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "976" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId9", + "target": "/ppt/slides/slide30.xml", + "target_slide": 30 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Frontal bone", + "text_content": "Frontal bone", + "text_box": { + "x": 2819400.0, + "y": 1330154.0, + "width": 583791.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "979" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId10", + "target": "/ppt/slides/slide29.xml", + "target_slide": 29 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Sphenoid bone", + "text_content": "Sphenoid bone", + "text_box": { + "x": 2819400.0, + "y": 2469922.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "980" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId11", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Temporal bone", + "text_content": "Temporal bone", + "text_box": { + "x": 2819400.0, + "y": 3823156.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "981" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId12", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Parietal bone", + "text_content": "Parietal bone", + "text_box": { + "x": 2819400.0, + "y": 4979312.0, + "width": 618131.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "982" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_46", + "kind": "connector", + "start_point": { + "x": 4114931.0, + "y": 5087034.0 + }, + "end_point": { + "x": 3437531.0, + "y": 5087034.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1051", + "bbox": { + "x": 3437531.0, + "y": 5087034.0, + "width": 677400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4112000.0, + "y": 5088000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Occipital bone", + "text_content": "Occipital bone", + "text_box": { + "x": 2819400.0, + "y": 5194756.0, + "width": 657350.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "983" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide33.xml", + "target_slide": 33 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Cribiform plate", + "text_content": "Cribiform plate", + "text_box": { + "x": 2971798.0, + "y": 2008247.0, + "width": 716381.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "978" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide30.xml", + "target_slide": 30 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5638779.0, + "y": 2115969.0 + }, + "end_point": { + "x": 3688179.0, + "y": 2115969.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "977", + "bbox": { + "x": 3688179.0, + "y": 2115969.0, + "width": 1950600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5640000.0, + "y": 2112000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Crista galli", + "text_content": "Crista galli", + "text_box": { + "x": 2971799.0, + "y": 2150163.0, + "width": 533401.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "984" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide30.xml", + "target_slide": 30 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5715000.0, + "y": 2257885.0 + }, + "end_point": { + "x": 3505200.0, + "y": 2257885.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "985", + "bbox": { + "x": 3505200.0, + "y": 2257885.0, + "width": 2209800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 2256000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Orbital plate", + "text_content": "Orbital plate", + "text_box": { + "x": 2971799.0, + "y": 1451212.0, + "width": 602079.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "986" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide29.xml", + "target_slide": 29 + }, + "pointer_lines": [ + { + "line_id": "line_32", + "kind": "connector", + "start_point": { + "x": 5257801.0, + "y": 1816334.0 + }, + "end_point": { + "x": 4191000.0, + "y": 1558934.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1028", + "bbox": { + "x": 4191000.0, + "y": 1558934.0, + "width": 1066801.0, + "height": 257400.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4190978.0, + "y": 1558934.0 + }, + "end_point": { + "x": 3573878.0, + "y": 1558934.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "987", + "bbox": { + "x": 3573878.0, + "y": 1558934.0, + "width": 617100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5256000.0, + "y": 1816000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser wing", + "text_content": "Lesser wing", + "text_box": { + "x": 2971797.0, + "y": 2599279.0, + "width": 583792.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "988" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 4343389.0, + "y": 2707001.0 + }, + "end_point": { + "x": 3555589.0, + "y": 2707001.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1014", + "bbox": { + "x": 3555589.0, + "y": 2707001.0, + "width": 787800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_31", + "kind": "connector", + "start_point": { + "x": 4343401.0, + "y": 2707001.0 + }, + "end_point": { + "x": 5123690.0, + "y": 2707001.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1027", + "bbox": { + "x": 4343401.0, + "y": 2707001.0, + "width": 780289.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5120000.0, + "y": 2704000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Optic canal", + "text_content": "Optic canal", + "text_box": { + "x": 2971796.0, + "y": 2743200.0, + "width": 560837.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "989" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 4343533.0, + "y": 2850922.0 + }, + "end_point": { + "x": 3532633.0, + "y": 2850922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1015", + "bbox": { + "x": 3532633.0, + "y": 2850922.0, + "width": 810900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_30", + "kind": "connector", + "start_point": { + "x": 4343400.0, + "y": 2850922.0 + }, + "end_point": { + "x": 5486400.0, + "y": 2895600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1026", + "bbox": { + "x": 4343400.0, + "y": 2850922.0, + "width": 1143000.0, + "height": 44678.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5488000.0, + "y": 2896000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen cecum", + "text_content": "Foramen cecum", + "text_box": { + "x": 2971799.0, + "y": 1882100.0, + "width": 762003.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "990" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide30.xml", + "target_slide": 30 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5675402.0, + "y": 1989821.9999999998 + }, + "end_point": { + "x": 3733802.0, + "y": 1989822.0000000002 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "991", + "bbox": { + "x": 3733802.0, + "y": 1989822.0, + "width": 1941600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5672000.0, + "y": 1992000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen rotundum", + "text_content": "Foramen rotundum", + "text_box": { + "x": 2971795.0, + "y": 2895600.0, + "width": 902213.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "992" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 4343508.0, + "y": 3003322.0 + }, + "end_point": { + "x": 3874008.0, + "y": 3003322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1016", + "bbox": { + "x": 3874008.0, + "y": 3003322.0, + "width": 469500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_29", + "kind": "connector", + "start_point": { + "x": 4343400.0, + "y": 3003322.0 + }, + "end_point": { + "x": 5317236.0, + "y": 3048000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1025", + "bbox": { + "x": 4343400.0, + "y": 3003322.0, + "width": 973836.0, + "height": 44678.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5320000.0, + "y": 3048000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 2971796.0, + "y": 3048000.0, + "width": 646181.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "993" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_21", + "kind": "connector", + "start_point": { + "x": 4343377.0, + "y": 3155722.0 + }, + "end_point": { + "x": 3617977.0, + "y": 3155722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1017", + "bbox": { + "x": 3617977.0, + "y": 3155722.0, + "width": 725400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_28", + "kind": "connector", + "start_point": { + "x": 4343400.0, + "y": 3155722.0 + }, + "end_point": { + "x": 5029200.0, + "y": 3155722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1024", + "bbox": { + "x": 4343400.0, + "y": 3155722.0, + "width": 685800.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5032000.0, + "y": 3152000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen ovale", + "text_content": "Foramen ovale", + "text_box": { + "x": 2971796.0, + "y": 3200400.0, + "width": 716383.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "994" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_22", + "kind": "connector", + "start_point": { + "x": 4343379.0, + "y": 3308122.0 + }, + "end_point": { + "x": 3688179.0, + "y": 3308122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1018", + "bbox": { + "x": 3688179.0, + "y": 3308122.0, + "width": 655200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_27", + "kind": "connector", + "start_point": { + "x": 4343400.0, + "y": 3308122.0 + }, + "end_point": { + "x": 5105400.0, + "y": 3308122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1023", + "bbox": { + "x": 4343400.0, + "y": 3308122.0, + "width": 762000.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5104000.0, + "y": 3312000.0 + } + ] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen spinosum", + "text_content": "Foramen spinosum", + "text_box": { + "x": 2971794.0, + "y": 3352800.0, + "width": 896118.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "995" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 4343412.0, + "y": 3460522.0 + }, + "end_point": { + "x": 3867912.0, + "y": 3460522.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1019", + "bbox": { + "x": 3867912.0, + "y": 3460522.0, + "width": 475500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4344000.0, + "y": 3464000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen lacerum", + "text_content": "Foramen lacerum", + "text_box": { + "x": 2971795.0, + "y": 3505200.0, + "width": 838205.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "996" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide31.xml", + "target_slide": 31 + }, + "pointer_lines": [ + { + "line_id": "line_24", + "kind": "connector", + "start_point": { + "x": 4343400.0, + "y": 3612922.0 + }, + "end_point": { + "x": 3810000.0, + "y": 3612922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1020", + "bbox": { + "x": 3810000.0, + "y": 3612922.0, + "width": 533400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4344000.0, + "y": 3616000.0 + } + ] + }, + { + "annotation_id": "annot_18", + "bone_name": "Bony Pelvis", + "subbone_name": "Middle cranial fossa", + "text_content": "Middle cranial fossa", + "text_box": { + "x": 8077200.0, + "y": 3214883.0, + "width": 457200.0, + "height": 461665.0, + "rotation_emu": 0.0, + "shape_id": "997" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 3445716.0 + }, + "end_point": { + "x": 8077200.0, + "y": 4267116.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1000", + "bbox": { + "x": 8077200.0, + "y": 3445716.0, + "width": 0.0, + "height": 821400.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 2814816.0 + }, + "end_point": { + "x": 8077200.0, + "y": 3445716.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1001", + "bbox": { + "x": 8077200.0, + "y": 2814816.0, + "width": 0.0, + "height": 630900.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 2819400.0 + }, + "end_point": { + "x": 7679272.0, + "y": 2819400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "998", + "bbox": { + "x": 7679272.0, + "y": 2819400.0, + "width": 397929.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 4267200.0 + }, + "end_point": { + "x": 7679272.0, + "y": 4267200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "999", + "bbox": { + "x": 7679272.0, + "y": 4267200.0, + "width": 397929.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7680000.0, + "y": 2816000.0 + }, + { + "x": 7680000.0, + "y": 4264000.0 + } + ] + }, + { + "annotation_id": "annot_19", + "bone_name": "Bony Pelvis", + "subbone_name": "Anterior cranial fossa", + "text_content": "Anterior cranial fossa", + "text_box": { + "x": 8077200.0, + "y": 1816335.0, + "width": 457200.0, + "height": 461665.0, + "rotation_emu": 0.0, + "shape_id": "1002" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 2047168.0 + }, + "end_point": { + "x": 8077200.0, + "y": 2743168.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1008", + "bbox": { + "x": 8077200.0, + "y": 2047168.0, + "width": 0.0, + "height": 696000.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 1371568.0 + }, + "end_point": { + "x": 8077200.0, + "y": 2047168.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1009", + "bbox": { + "x": 8077200.0, + "y": 1371568.0, + "width": 0.0, + "height": 675600.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 2743200.0 + }, + "end_point": { + "x": 7679272.0, + "y": 2743200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1010", + "bbox": { + "x": 7679272.0, + "y": 2743200.0, + "width": 397929.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 1371600.0 + }, + "end_point": { + "x": 7679272.0, + "y": 1371600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1011", + "bbox": { + "x": 7679272.0, + "y": 1371600.0, + "width": 397929.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7680000.0, + "y": 1368000.0 + }, + { + "x": 7680000.0, + "y": 2744000.0 + } + ] + }, + { + "annotation_id": "annot_20", + "bone_name": "Bony Pelvis", + "subbone_name": "Posterior cranial fossa", + "text_content": "Posterior cranial fossa", + "text_box": { + "x": 8077200.0, + "y": 4876801.0, + "width": 457200.0, + "height": 461665.0, + "rotation_emu": 0.0, + "shape_id": "1003" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 4343534.0 + }, + "end_point": { + "x": 8077200.0, + "y": 5107634.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1004", + "bbox": { + "x": 8077200.0, + "y": 4343534.0, + "width": 0.0, + "height": 764100.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 8077200.0, + "y": 5107634.0 + }, + "end_point": { + "x": 8077200.0, + "y": 5943734.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1005", + "bbox": { + "x": 8077200.0, + "y": 5107634.0, + "width": 0.0, + "height": 836100.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 4343400.0 + }, + "end_point": { + "x": 7679272.0, + "y": 4343400.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1006", + "bbox": { + "x": 7679272.0, + "y": 4343400.0, + "width": 397929.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 8077201.0, + "y": 5943600.0 + }, + "end_point": { + "x": 7679272.0, + "y": 5943600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1007", + "bbox": { + "x": 7679272.0, + "y": 5943600.0, + "width": 397929.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7680000.0, + "y": 4344000.0 + }, + { + "x": 7680000.0, + "y": 5944000.0 + } + ] + }, + { + "annotation_id": "annot_21", + "bone_name": "Bony Pelvis", + "subbone_name": "Arcuate eminence", + "text_content": "Arcuate eminence", + "text_box": { + "x": 2971799.0, + "y": 4127956.0, + "width": 819912.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1013" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 4038611.0, + "y": 4235678.0 + }, + "end_point": { + "x": 3791711.0, + "y": 4235678.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1012", + "bbox": { + "x": 3791711.0, + "y": 4235678.0, + "width": 246900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 4232000.0 + } + ] + }, + { + "annotation_id": "annot_22", + "bone_name": "Bony Pelvis", + "subbone_name": "Petrous part", + "text_content": "Petrous part", + "text_box": { + "x": 2971795.0, + "y": 4309646.0, + "width": 574651.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1029" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId26", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [ + { + "line_id": "line_33", + "kind": "connector", + "start_point": { + "x": 4038746.0, + "y": 4417368.0 + }, + "end_point": { + "x": 3546446.0, + "y": 4417368.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1031", + "bbox": { + "x": 3546446.0, + "y": 4417368.0, + "width": 492300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 4416000.0 + } + ] + }, + { + "annotation_id": "annot_23", + "bone_name": "Bony Pelvis", + "subbone_name": "Internal acoustic meatus", + "text_content": "Internal acoustic meatus", + "text_box": { + "x": 2971801.0, + "y": 4462046.0, + "width": 725425.0, + "height": 338554.0, + "rotation_emu": 0.0, + "shape_id": "1030" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId27", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [ + { + "line_id": "line_34", + "kind": "connector", + "start_point": { + "x": 4038626.0, + "y": 4631323.0 + }, + "end_point": { + "x": 3697226.0, + "y": 4631323.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1032", + "bbox": { + "x": 3697226.0, + "y": 4631323.0, + "width": 341400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 4632000.0 + } + ] + }, + { + "annotation_id": "annot_24", + "bone_name": "Bony Pelvis", + "subbone_name": "Jugular foramen", + "text_content": "Jugular foramen", + "text_box": { + "x": 2971800.0, + "y": 5347156.0, + "width": 762001.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1036" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId28", + "target": "/ppt/slides/slide33.xml", + "target_slide": 33 + }, + "pointer_lines": [ + { + "line_id": "line_38", + "kind": "connector", + "start_point": { + "x": 4038601.0, + "y": 5454878.0 + }, + "end_point": { + "x": 3733801.0, + "y": 5454878.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1039", + "bbox": { + "x": 3733801.0, + "y": 5454878.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 5456000.0 + } + ] + }, + { + "annotation_id": "annot_25", + "bone_name": "Bony Pelvis", + "subbone_name": "Hypoglossal canal", + "text_content": "Hypoglossal canal", + "text_box": { + "x": 2971801.0, + "y": 5499556.0, + "width": 819911.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1037" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId29", + "target": "/ppt/slides/slide33.xml", + "target_slide": 33 + }, + "pointer_lines": [ + { + "line_id": "line_39", + "kind": "connector", + "start_point": { + "x": 4038612.0, + "y": 5607278.0 + }, + "end_point": { + "x": 3791712.0, + "y": 5607278.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1040", + "bbox": { + "x": 3791712.0, + "y": 5607278.0, + "width": 246900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 5608000.0 + } + ] + }, + { + "annotation_id": "annot_26", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen magnum", + "text_content": "Foramen magnum", + "text_box": { + "x": 2971802.0, + "y": 5651956.0, + "width": 838199.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1038" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId30", + "target": "/ppt/slides/slide33.xml", + "target_slide": 33 + }, + "pointer_lines": [ + { + "line_id": "line_40", + "kind": "connector", + "start_point": { + "x": 4038601.0, + "y": 5759678.0 + }, + "end_point": { + "x": 3810001.0, + "y": 5759678.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1041", + "bbox": { + "x": 3810001.0, + "y": 5759678.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 5760000.0 + } + ] + }, + { + "annotation_id": "annot_27", + "bone_name": "Bony Pelvis", + "subbone_name": "Squamous part", + "text_content": "Squamous part", + "text_box": { + "x": 2971800.0, + "y": 3975556.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1045" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId31", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [ + { + "line_id": "line_44", + "kind": "connector", + "start_point": { + "x": 4038600.0, + "y": 4083278.0 + }, + "end_point": { + "x": 3657600.0, + "y": 4083278.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1046", + "bbox": { + "x": 3657600.0, + "y": 4083278.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 4080000.0 + } + ] + } + ], + "total_text_annotations": 27, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/superior_ethmoid_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/superior_ethmoid_bone_text_annotations.json new file mode 100644 index 00000000..efaa77b1 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/superior_ethmoid_bone_text_annotations.json @@ -0,0 +1,202 @@ +{ + "slide_number": 30, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Cribiform plate", + "text_content": "Cribiform plate", + "text_box": { + "x": 2895601.0, + "y": 2438400.0, + "width": 694331.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1120" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3962532.0, + "y": 2546122.0 + }, + "end_point": { + "x": 3589932.0, + "y": 2546122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1121", + "bbox": { + "x": 3589932.0, + "y": 2546122.0, + "width": 372600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 5505451.0, + "y": 3562350.0 + }, + "end_point": { + "x": 3962551.0, + "y": 2546250.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1128", + "bbox": { + "x": 3962551.0, + "y": 2546250.0, + "width": 1542900.0, + "height": 1016100.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5504000.0, + "y": 3560000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen cecum", + "text_content": "Foramen cecum", + "text_box": { + "x": 3395166.0, + "y": 2025878.0, + "width": 719635.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1122" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4343401.0, + "y": 2133600.0 + }, + "end_point": { + "x": 4114801.0, + "y": 2133600.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1123", + "bbox": { + "x": 4114801.0, + "y": 2133600.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 5692775.0, + "y": 3114675.0 + }, + "end_point": { + "x": 4343375.0, + "y": 2133675.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1127", + "bbox": { + "x": 4343375.0, + "y": 2133675.0, + "width": 1349400.0, + "height": 981000.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5696000.0, + "y": 3112000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Crista galli", + "text_content": "Crista galli", + "text_box": { + "x": 7239000.0, + "y": 1918156.0, + "width": 533400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1124" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7239000.0, + "y": 2025878.0 + }, + "end_point": { + "x": 6705600.0, + "y": 2025878.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1125", + "bbox": { + "x": 6705600.0, + "y": 2025878.0, + "width": 533400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6704000.0, + "y": 2024000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/superior_frontal_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/superior_frontal_bone_text_annotations.json new file mode 100644 index 00000000..b0b9c1bd --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/superior_frontal_bone_text_annotations.json @@ -0,0 +1,202 @@ +{ + "slide_number": 29, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Orbital plate", + "text_content": "Orbital plate", + "text_box": { + "x": 2971801.0, + "y": 2438400.0, + "width": 618131.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1091" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3962532.0, + "y": 2546122.0 + }, + "end_point": { + "x": 3589932.0, + "y": 2546122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1092", + "bbox": { + "x": 3589932.0, + "y": 2546122.0, + "width": 372600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4800601.0, + "y": 3276600.0 + }, + "end_point": { + "x": 3962402.0, + "y": 2546122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1093", + "bbox": { + "x": 3962402.0, + "y": 2546122.0, + "width": 838199.0, + "height": 730478.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4800000.0, + "y": 3280000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Groove for superior sagittal sinus", + "text_content": "Groove for superior sagittal sinus", + "text_box": { + "x": 7086601.0, + "y": 1752600.0, + "width": 1447801.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1094" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7086601.0, + "y": 1860322.0 + }, + "end_point": { + "x": 6477001.0, + "y": 1860322.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1095", + "bbox": { + "x": 6477001.0, + "y": 1860322.0, + "width": 609600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6480000.0, + "y": 1864000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Groove for anterior meningeal vessels", + "text_content": "Groove for anterior meningeal vessels", + "text_box": { + "x": 2743200.0, + "y": 1857717.0, + "width": 1676400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1097" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4724400.0, + "y": 1965439.0 + }, + "end_point": { + "x": 4419600.0, + "y": 1965439.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1098", + "bbox": { + "x": 4419600.0, + "y": 1965439.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 5486400.0, + "y": 3056673.0 + }, + "end_point": { + "x": 4724400.0, + "y": 1968046.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1099", + "bbox": { + "x": 4724400.0, + "y": 1968046.0, + "width": 762000.0, + "height": 1088627.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5488000.0, + "y": 3056000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/superior_occipital_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/superior_occipital_bone_text_annotations.json new file mode 100644 index 00000000..6449623f --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/superior_occipital_bone_text_annotations.json @@ -0,0 +1,154 @@ +{ + "slide_number": 33, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen magnum", + "text_content": "Foramen magnum", + "text_box": { + "x": 2816104.0, + "y": 5050529.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1238" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3959104.0, + "y": 5158251.0 + }, + "end_point": { + "x": 3654304.0, + "y": 5158251.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1239", + "bbox": { + "x": 3654304.0, + "y": 5158251.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3960000.0, + "y": 5160000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Jugular foramen", + "text_content": "Jugular foramen", + "text_box": { + "x": 2813494.0, + "y": 4738739.0, + "width": 765296.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1241" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3810090.0, + "y": 4846461.0 + }, + "end_point": { + "x": 3578790.0, + "y": 4846461.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1240", + "bbox": { + "x": 3578790.0, + "y": 4846461.0, + "width": 231300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3808000.0, + "y": 4848000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Hypoglossal canal", + "text_content": "Hypoglossal canal", + "text_box": { + "x": 2813494.0, + "y": 5372077.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1244" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4099294.0, + "y": 5479799.0 + }, + "end_point": { + "x": 3651694.0, + "y": 5479799.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1245", + "bbox": { + "x": 3651694.0, + "y": 5479799.0, + "width": 447600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4096000.0, + "y": 5480000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/superior_sphenoid_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/superior_sphenoid_bone_text_annotations.json new file mode 100644 index 00000000..f491b846 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/superior_sphenoid_bone_text_annotations.json @@ -0,0 +1,490 @@ +{ + "slide_number": 31, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Lesser wing", + "text_content": "Lesser wing", + "text_box": { + "x": 2819401.0, + "y": 2019744.0, + "width": 589847.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1152" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3781848.0, + "y": 2127466.0 + }, + "end_point": { + "x": 3409248.0, + "y": 2127466.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1153", + "bbox": { + "x": 3409248.0, + "y": 2127466.0, + "width": 372600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 4572001.0, + "y": 3276601.0 + }, + "end_point": { + "x": 3781717.0, + "y": 2127465.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1157", + "bbox": { + "x": 3781717.0, + "y": 2127465.0, + "width": 790284.0, + "height": 1149136.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4576000.0, + "y": 3280000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Greater wing", + "text_content": "Greater wing", + "text_box": { + "x": 2757780.0, + "y": 5302478.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1154" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3643980.0, + "y": 5410200.0 + }, + "end_point": { + "x": 3367380.0, + "y": 5410200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1155", + "bbox": { + "x": 3367380.0, + "y": 5410200.0, + "width": 276600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3640000.0, + "y": 5408000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Optic canal", + "text_content": "Optic canal", + "text_box": { + "x": 7391400.0, + "y": 1804299.0, + "width": 533400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1158" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7391400.0, + "y": 1912021.0 + }, + "end_point": { + "x": 7010400.0, + "y": 1912021.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1159", + "bbox": { + "x": 7010400.0, + "y": 1912021.0, + "width": 381000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7008000.0, + "y": 1912000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen rotundum", + "text_content": "Foramen rotundum", + "text_box": { + "x": 7764415.0, + "y": 2019743.0, + "width": 889387.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1161" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 7764415.0, + "y": 2127465.0 + }, + "end_point": { + "x": 7391515.0, + "y": 2127465.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1162", + "bbox": { + "x": 7391515.0, + "y": 2127465.0, + "width": 372900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 2128000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen ovale", + "text_content": "Foramen ovale", + "text_box": { + "x": 7865100.0, + "y": 5332642.0, + "width": 729001.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1164" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 7865100.0, + "y": 5440364.0 + }, + "end_point": { + "x": 7543800.0, + "y": 5440364.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1166", + "bbox": { + "x": 7543800.0, + "y": 5440364.0, + "width": 321300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 6629400.0, + "y": 4343400.0 + }, + "end_point": { + "x": 7543800.0, + "y": 5440364.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1172", + "bbox": { + "x": 6629400.0, + "y": 4343400.0, + "width": 914400.0, + "height": 1096964.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6632000.0, + "y": 4344000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen spinosum", + "text_content": "Foramen spinosum", + "text_box": { + "x": 2819400.0, + "y": 5659265.0, + "width": 914400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1165" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 4038600.0, + "y": 5766987.0 + }, + "end_point": { + "x": 3733800.0, + "y": 5766987.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1167", + "bbox": { + "x": 3733800.0, + "y": 5766987.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 5768000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Sella turcica", + "text_content": "Sella turcica", + "text_box": { + "x": 3272888.0, + "y": 1794557.0, + "width": 613313.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1173" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 4191001.0, + "y": 1902279.0 + }, + "end_point": { + "x": 3886201.0, + "y": 1902279.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1174", + "bbox": { + "x": 3886201.0, + "y": 1902279.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 5638801.0, + "y": 3886201.0 + }, + "end_point": { + "x": 4191002.0, + "y": 1902280.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1175", + "bbox": { + "x": 4191002.0, + "y": 1902280.0, + "width": 1447799.0, + "height": 1983921.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5640000.0, + "y": 3888000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Foramen lacerum", + "text_content": "Foramen lacerum", + "text_box": { + "x": 7652998.0, + "y": 5659265.0, + "width": 805202.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1176" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 7391398.0, + "y": 5766987.0 + }, + "end_point": { + "x": 7652998.0, + "y": 5766987.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1177", + "bbox": { + "x": 7391398.0, + "y": 5766987.0, + "width": 261600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 6351552.0, + "y": 4424101.0 + }, + "end_point": { + "x": 7391352.0, + "y": 5766901.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1178", + "bbox": { + "x": 6351552.0, + "y": 4424101.0, + "width": 1039800.0, + "height": 1342800.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 6352000.0, + "y": 4424000.0 + } + ] + } + ], + "total_text_annotations": 8, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/superior_temporal_bone_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/superior_temporal_bone_text_annotations.json new file mode 100644 index 00000000..16e47b51 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/superior_temporal_bone_text_annotations.json @@ -0,0 +1,322 @@ +{ + "slide_number": 32, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Squamous part", + "text_content": "Squamous part", + "text_box": { + "x": 2743200.0, + "y": 1871265.0, + "width": 762000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1200" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 3733800.0, + "y": 1978987.0 + }, + "end_point": { + "x": 3505200.0, + "y": 1978987.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1201", + "bbox": { + "x": 3505200.0, + "y": 1978987.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 4038600.0, + "y": 3048000.0 + }, + "end_point": { + "x": 3733800.0, + "y": 1978988.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1202", + "bbox": { + "x": 3733800.0, + "y": 1978988.0, + "width": 304800.0, + "height": 1069012.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 3048000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Petrous part", + "text_content": "Petrous part", + "text_box": { + "x": 2819400.0, + "y": 1653411.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1203" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4038600.0, + "y": 1761133.0 + }, + "end_point": { + "x": 3429000.0, + "y": 1761133.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1204", + "bbox": { + "x": 3429000.0, + "y": 1761133.0, + "width": 609600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4038602.0, + "y": 1763544.0 + }, + "end_point": { + "x": 4572001.0, + "y": 3886200.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1207", + "bbox": { + "x": 4038602.0, + "y": 1763544.0, + "width": 533399.0, + "height": 2122656.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4576000.0, + "y": 3888000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Internal acoustic meatus", + "text_content": "Internal acoustic meatus", + "text_box": { + "x": 7469951.0, + "y": 1653411.0, + "width": 1143000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1206" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 7469951.0, + "y": 1761133.0 + }, + "end_point": { + "x": 7238951.0, + "y": 1761133.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1208", + "bbox": { + "x": 7238951.0, + "y": 1761133.0, + "width": 231000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 1760000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Arcuate eminence", + "text_content": "Arcuate eminence", + "text_box": { + "x": 7772400.0, + "y": 1913533.0, + "width": 840551.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1209" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 7772400.0, + "y": 2021255.0 + }, + "end_point": { + "x": 7470000.0, + "y": 2021255.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1210", + "bbox": { + "x": 7470000.0, + "y": 2021255.0, + "width": 302400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7472000.0, + "y": 2024000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Petrous ridge", + "text_content": "Petrous ridge", + "text_box": { + "x": 7598416.0, + "y": 5715000.0, + "width": 840551.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1213" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 7598416.0, + "y": 5822722.0 + }, + "end_point": { + "x": 7296016.0, + "y": 5822722.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1214", + "bbox": { + "x": 7296016.0, + "y": 5822722.0, + "width": 302400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 7295968.0, + "y": 5822723.0 + }, + "end_point": { + "x": 6836417.0, + "y": 4114802.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1215", + "bbox": { + "x": 6836417.0, + "y": 4114802.0, + "width": 459551.0, + "height": 1707921.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6840000.0, + "y": 4112000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/symphyseal_surface_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/symphyseal_surface_text_annotations.json new file mode 100644 index 00000000..d1367583 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/symphyseal_surface_text_annotations.json @@ -0,0 +1,9 @@ +{ + "slide_number": 19, + "text_annotations": [], + "total_text_annotations": 0, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_articular_surfaces_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_articular_surfaces_text_annotations.json new file mode 100644 index 00000000..f4dc320c --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_articular_surfaces_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: superior aspect", + "text_content": "TV5: superior aspect", + "text_box": { + "x": 2731950.0, + "y": 1306570.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1208" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: inferior aspect", + "text_content": "TV5: inferior aspect", + "text_box": { + "x": 2731950.0, + "y": 3735983.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1209" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 6843550.0, + "y": 1537402.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1210" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_body_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_body_text_annotations.json new file mode 100644 index 00000000..8d07191e --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_body_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: superior aspect", + "text_content": "TV5: superior aspect", + "text_box": { + "x": 2731950.0, + "y": 1306570.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1056" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: inferior aspect", + "text_content": "TV5: inferior aspect", + "text_box": { + "x": 2731950.0, + "y": 3735983.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1057" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 6843550.0, + "y": 1537402.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1058" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_costal_facets_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_costal_facets_text_annotations.json new file mode 100644 index 00000000..d07e12f3 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_costal_facets_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: superior aspect", + "text_content": "TV5: superior aspect", + "text_box": { + "x": 2731950.0, + "y": 1306570.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1112" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: inferior aspect", + "text_content": "TV5: inferior aspect", + "text_box": { + "x": 2731950.0, + "y": 3735983.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1113" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 6843550.0, + "y": 1537402.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1114" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_spinous_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_spinous_process_text_annotations.json new file mode 100644 index 00000000..150fe117 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_spinous_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: superior aspect", + "text_content": "TV5: superior aspect", + "text_box": { + "x": 2731950.0, + "y": 1306570.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1181" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: inferior aspect", + "text_content": "TV5: inferior aspect", + "text_box": { + "x": 2731950.0, + "y": 3735983.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1182" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 6843550.0, + "y": 1537402.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1183" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_text_annotations.json new file mode 100644 index 00000000..0aed72d1 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_text_annotations.json @@ -0,0 +1,1147 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: superior aspect", + "text_content": "TV5: superior aspect", + "text_box": { + "x": 2731950.0, + "y": 1306570.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "962" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: inferior aspect", + "text_content": "TV5: inferior aspect", + "text_box": { + "x": 2731950.0, + "y": 3735983.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "963" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 6843550.0, + "y": 1537402.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "964" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse process", + "text_content": "Transverse process", + "text_box": { + "x": 5943447.0, + "y": 1855173.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "965" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide33.xml", + "target_slide": 33 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5943447.0, + "y": 1962895.0 + }, + "end_point": { + "x": 5373447.0, + "y": 1962895.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "966", + "bbox": { + "x": 5373447.0, + "y": 1962895.0, + "width": 570000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5376000.0, + "y": 1960000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior articular surface", + "text_content": "Superior articular surface", + "text_box": { + "x": 5373588.0, + "y": 2380136.0, + "width": 1172737.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "967" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 5373588.0, + "y": 2487858.0 + }, + "end_point": { + "x": 5211288.0, + "y": 2487858.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "968", + "bbox": { + "x": 5211288.0, + "y": 2487858.0, + "width": 162300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 4777500.0, + "y": 2315270.0 + }, + "end_point": { + "x": 5211215.0, + "y": 2487858.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "985", + "bbox": { + "x": 4777500.0, + "y": 2315270.0, + "width": 433715.0, + "height": 172588.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 6708625.0, + "y": 2487858.0 + }, + "end_point": { + "x": 6546325.0, + "y": 2487858.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "986", + "bbox": { + "x": 6546325.0, + "y": 2487858.0, + "width": 162300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 6934200.0, + "y": 2895600.0 + }, + "end_point": { + "x": 6708698.0, + "y": 2487858.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "987", + "bbox": { + "x": 6708698.0, + "y": 2487858.0, + "width": 225502.0, + "height": 407742.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6936000.0, + "y": 2896000.0 + }, + { + "x": 4776000.0, + "y": 2312000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior articular surface", + "text_content": "Inferior articular surface", + "text_box": { + "x": 5211214.0, + "y": 4889490.0, + "width": 1090154.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "969" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5211214.0, + "y": 4997212.0 + }, + "end_point": { + "x": 4571914.0, + "y": 4997212.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "970", + "bbox": { + "x": 4571914.0, + "y": 4997212.0, + "width": 639300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 6571668.0, + "y": 4997212.0 + }, + "end_point": { + "x": 6301368.0, + "y": 4997212.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "978", + "bbox": { + "x": 6301368.0, + "y": 4997212.0, + "width": 270300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6568000.0, + "y": 5000000.0 + }, + { + "x": 4568000.0, + "y": 5000000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 2778902.0, + "y": 3109388.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "971" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 4267161.0, + "y": 3217110.0 + }, + "end_point": { + "x": 3080061.0, + "y": 3217110.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "972", + "bbox": { + "x": 3080061.0, + "y": 3217110.0, + "width": 1187100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4264000.0, + "y": 3216000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 4720349.0, + "y": 4038588.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "973" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide36.xml", + "target_slide": 36 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 4720349.0, + "y": 4146310.0 + }, + "end_point": { + "x": 4227149.0, + "y": 4146310.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "974", + "bbox": { + "x": 4227149.0, + "y": 4146310.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 6172349.0, + "y": 4146310.0 + }, + "end_point": { + "x": 5520449.0, + "y": 4146310.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "977", + "bbox": { + "x": 5520449.0, + "y": 4146310.0, + "width": 651900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4224000.0, + "y": 4144000.0 + }, + { + "x": 6176000.0, + "y": 4144000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Spinous process", + "text_content": "Spinous process", + "text_box": { + "x": 4857750.0, + "y": 1639729.0, + "width": 800100.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "975" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide36.xml", + "target_slide": 36 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4857750.0, + "y": 1747451.0 + }, + "end_point": { + "x": 4364550.0, + "y": 1747451.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "976", + "bbox": { + "x": 4364550.0, + "y": 1747451.0, + "width": 493200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4368000.0, + "y": 1744000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Lamina", + "text_content": "Lamina", + "text_box": { + "x": 2788937.0, + "y": 4126010.0, + "width": 361859.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "979" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 3581296.0, + "y": 4233732.0 + }, + "end_point": { + "x": 3150796.0, + "y": 4233732.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "980", + "bbox": { + "x": 3150796.0, + "y": 4233732.0, + "width": 430500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 4038601.0, + "y": 4648200.0 + }, + "end_point": { + "x": 3581402.0, + "y": 4233732.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "989", + "bbox": { + "x": 3581402.0, + "y": 4233732.0, + "width": 457199.0, + "height": 414468.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 4648000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Vertebral foramen", + "text_content": "Vertebral foramen", + "text_box": { + "x": 2778902.0, + "y": 2380136.0, + "width": 873125.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "981" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_10", + "kind": "connector", + "start_point": { + "x": 4364527.0, + "y": 2487858.0 + }, + "end_point": { + "x": 3652027.0, + "y": 2487858.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "982", + "bbox": { + "x": 3652027.0, + "y": 2487858.0, + "width": 712500.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4368000.0, + "y": 2488000.0 + } + ] + }, + { + "annotation_id": "annot_12", + "bone_name": "Bony Pelvis", + "subbone_name": "Pedicle", + "text_content": "Pedicle", + "text_box": { + "x": 3000329.0, + "y": 5019690.0, + "width": 381000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "983" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 3886229.0, + "y": 5131612.0 + }, + "end_point": { + "x": 3381329.0, + "y": 5127412.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "984", + "bbox": { + "x": 3381329.0, + "y": 5127412.0, + "width": 504900.0, + "height": 4200.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 3888000.0, + "y": 5128000.0 + } + ] + }, + { + "annotation_id": "annot_13", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse costal facet", + "text_content": "Transverse costal facet", + "text_box": { + "x": 5677152.0, + "y": 2099826.0, + "width": 1031547.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "990" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide34.xml", + "target_slide": 34 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 5677152.0, + "y": 2207548.0 + }, + "end_point": { + "x": 5520552.0, + "y": 2207548.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "991", + "bbox": { + "x": 5520552.0, + "y": 2207548.0, + "width": 156600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_18", + "kind": "connector", + "start_point": { + "x": 5520450.0, + "y": 2207549.0 + }, + "end_point": { + "x": 5211215.0, + "y": 2070618.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "992", + "bbox": { + "x": 5211215.0, + "y": 2070618.0, + "width": 309235.0, + "height": 136931.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5208000.0, + "y": 2072000.0 + } + ] + }, + { + "annotation_id": "annot_14", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior vertebral notch", + "text_content": "Superior vertebral notch", + "text_box": { + "x": 5334001.0, + "y": 2738183.0, + "width": 1143000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "993" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_19", + "kind": "connector", + "start_point": { + "x": 6616201.0, + "y": 2845905.0 + }, + "end_point": { + "x": 6477001.0, + "y": 2845905.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "994", + "bbox": { + "x": 6477001.0, + "y": 2845905.0, + "width": 139200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_20", + "kind": "connector", + "start_point": { + "x": 6816572.0, + "y": 3217110.0 + }, + "end_point": { + "x": 6616105.0, + "y": 2845906.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "995", + "bbox": { + "x": 6616105.0, + "y": 2845906.0, + "width": 200467.0, + "height": 371204.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6816000.0, + "y": 3216000.0 + } + ] + }, + { + "annotation_id": "annot_15", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior vertebral notch", + "text_content": "Inferior vertebral notch", + "text_box": { + "x": 5562600.0, + "y": 5145114.0, + "width": 1104900.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "996" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_25", + "kind": "connector", + "start_point": { + "x": 6816600.0, + "y": 5252836.0 + }, + "end_point": { + "x": 6667500.0, + "y": 5252836.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1002", + "bbox": { + "x": 6667500.0, + "y": 5252836.0, + "width": 149100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_26", + "kind": "connector", + "start_point": { + "x": 5211214.0, + "y": 5252836.0 + }, + "end_point": { + "x": 4572000.0, + "y": 5145114.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1003", + "bbox": { + "x": 4572000.0, + "y": 5145114.0, + "width": 639214.0, + "height": 107722.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_22", + "kind": "connector", + "start_point": { + "x": 5562600.0, + "y": 5252836.0 + }, + "end_point": { + "x": 5211300.0, + "y": 5252836.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "998", + "bbox": { + "x": 5211300.0, + "y": 5252836.0, + "width": 351300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6816000.0, + "y": 5256000.0 + }, + { + "x": 4576000.0, + "y": 5144000.0 + } + ] + }, + { + "annotation_id": "annot_16", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 8214371.0, + "y": 2893944.0, + "width": 301159.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "999" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId24", + "target": "/ppt/slides/slide32.xml", + "target_slide": 32 + }, + "pointer_lines": [ + { + "line_id": "line_23", + "kind": "connector", + "start_point": { + "x": 8214371.0, + "y": 3001666.0 + }, + "end_point": { + "x": 8077271.0, + "y": 3001666.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1000", + "bbox": { + "x": 8077271.0, + "y": 3001666.0, + "width": 137100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 8080000.0, + "y": 3000000.0 + } + ] + }, + { + "annotation_id": "annot_17", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior costal facet", + "text_content": "Inferior costal facet", + "text_box": { + "x": 7758758.0, + "y": 4889490.0, + "width": 911224.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1004" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId25", + "target": "/ppt/slides/slide34.xml", + "target_slide": 34 + }, + "pointer_lines": [ + { + "line_id": "line_27", + "kind": "connector", + "start_point": { + "x": 7758758.0, + "y": 4997212.0 + }, + "end_point": { + "x": 7519658.0, + "y": 4997212.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1005", + "bbox": { + "x": 7519658.0, + "y": 4997212.0, + "width": 239100.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_28", + "kind": "connector", + "start_point": { + "x": 7519530.0, + "y": 4997212.0 + }, + "end_point": { + "x": 7391400.0, + "y": 4146310.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1006", + "bbox": { + "x": 7391400.0, + "y": 4146310.0, + "width": 128130.0, + "height": 850902.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7392000.0, + "y": 4144000.0 + } + ] + }, + { + "annotation_id": "annot_18", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior costal facet", + "text_content": "Superior costal facet", + "text_box": { + "x": 7690875.0, + "y": 2478061.0, + "width": 966012.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1007" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId26", + "target": "/ppt/slides/slide34.xml", + "target_slide": 34 + }, + "pointer_lines": [ + { + "line_id": "line_29", + "kind": "connector", + "start_point": { + "x": 7690875.0, + "y": 2585783.0 + }, + "end_point": { + "x": 7488075.0, + "y": 2585783.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1008", + "bbox": { + "x": 7488075.0, + "y": 2585783.0, + "width": 202800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 7488000.0, + "y": 2584000.0 + } + ] + }, + { + "annotation_id": "annot_19", + "bone_name": "Bony Pelvis", + "subbone_name": "Transverse costal facet", + "text_content": "Transverse costal facet", + "text_box": { + "x": 5046827.0, + "y": 3377385.0, + "width": 1031547.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1010" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId27", + "target": "/ppt/slides/slide34.xml", + "target_slide": 34 + }, + "pointer_lines": [ + { + "line_id": "line_31", + "kind": "connector", + "start_point": { + "x": 6546374.0, + "y": 3485107.0 + }, + "end_point": { + "x": 6078374.0, + "y": 3485107.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1011", + "bbox": { + "x": 6078374.0, + "y": 3485107.0, + "width": 468000.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6544000.0, + "y": 3488000.0 + } + ] + } + ], + "total_text_annotations": 19, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_transverse_process_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_transverse_process_text_annotations.json new file mode 100644 index 00000000..a0b9ceee --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_transverse_process_text_annotations.json @@ -0,0 +1,63 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: superior aspect", + "text_content": "TV5: superior aspect", + "text_box": { + "x": 2731950.0, + "y": 1306570.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1083" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: inferior aspect", + "text_content": "TV5: inferior aspect", + "text_box": { + "x": 2731950.0, + "y": 3735983.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1084" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 6843550.0, + "y": 1537402.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1085" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thoracic_vertebral_notch_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thoracic_vertebral_notch_text_annotations.json new file mode 100644 index 00000000..d7c71672 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thoracic_vertebral_notch_text_annotations.json @@ -0,0 +1,243 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "TV5: lateral aspect", + "text_content": "TV5: lateral aspect", + "text_box": { + "x": 5163015.0, + "y": 1421986.0, + "width": 1103971.0, + "height": 230832.0, + "rotation_emu": 0.0, + "shape_id": "1143" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Superior vertebral notch", + "text_content": "Superior vertebral notch", + "text_box": { + "x": 6629400.0, + "y": 2272414.0, + "width": 1143000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1149" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 6629400.0, + "y": 2380136.0 + }, + "end_point": { + "x": 6267000.0, + "y": 2380136.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1151", + "bbox": { + "x": 6267000.0, + "y": 2380136.0, + "width": 362400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6264000.0, + "y": 2384000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Inferior vertebral notch", + "text_content": "Inferior vertebral notch", + "text_box": { + "x": 2816343.0, + "y": 3124200.0, + "width": 1104900.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1150" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 4477143.0, + "y": 3231922.0 + }, + "end_point": { + "x": 3921243.0, + "y": 3231922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1153", + "bbox": { + "x": 3921243.0, + "y": 3231922.0, + "width": 555900.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5289419.0, + "y": 3730806.0 + }, + "end_point": { + "x": 4477218.0, + "y": 3231923.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1154", + "bbox": { + "x": 4477218.0, + "y": 3231923.0, + "width": 812201.0, + "height": 498883.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5288000.0, + "y": 3728000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Outline for intervertebral foramen", + "text_content": "Outline for intervertebral foramen", + "text_box": { + "x": 6812928.0, + "y": 2611559.0, + "width": 1524000.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1155" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 6812928.0, + "y": 2719281.0 + }, + "end_point": { + "x": 6553128.0, + "y": 2719281.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1156", + "bbox": { + "x": 6553128.0, + "y": 2719281.0, + "width": 259800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6552000.0, + "y": 2720000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Outline for TV6", + "text_content": "Outline for TV6", + "text_box": { + "x": 2816344.0, + "y": 4258571.0, + "width": 765057.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "1158" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_7", + "kind": "connector", + "start_point": { + "x": 4037101.0, + "y": 4366293.0 + }, + "end_point": { + "x": 3581401.0, + "y": 4366293.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "1159", + "bbox": { + "x": 3581401.0, + "y": 4366293.0, + "width": 455700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4040000.0, + "y": 4368000.0 + } + ] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/thorax_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/thorax_text_annotations.json new file mode 100644 index 00000000..766e1e7a --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/thorax_text_annotations.json @@ -0,0 +1,120 @@ +{ + "slide_number": 2, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Scapula", + "text_content": "Scapula", + "text_box": { + "x": 6804369.0, + "y": 5295665.0, + "width": 520044.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "106" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide23.xml", + "target_slide": 23 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Sternum", + "text_content": "Sternum", + "text_box": { + "x": 2429324.0, + "y": 2133601.0, + "width": 647260.0, + "height": 247696.0, + "rotation_emu": 0.0, + "shape_id": "110" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide3.xml", + "target_slide": 3 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Clavicle", + "text_content": "Clavicle", + "text_box": { + "x": 2288958.0, + "y": 3365299.0, + "width": 655196.0, + "height": 291539.0, + "rotation_emu": 0.0, + "shape_id": "114" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId23", + "target": "/ppt/slides/slide8.xml", + "target_slide": 8 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "First rib", + "text_content": "First rib", + "text_box": { + "x": 2408514.0, + "y": 4953000.0, + "width": 712153.0, + "height": 250154.0, + "rotation_emu": 0.0, + "shape_id": "118" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId28", + "target": "/ppt/slides/slide13.xml", + "target_slide": 13 + }, + "pointer_lines": [], + "target_regions": [] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Typical rib", + "text_content": "Typical rib", + "text_box": { + "x": 5469722.0, + "y": 2165294.0, + "width": 708694.0, + "height": 235942.0, + "rotation_emu": 0.0, + "shape_id": "122" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId33", + "target": "/ppt/slides/slide18.xml", + "target_slide": 18 + }, + "pointer_lines": [], + "target_regions": [] + } + ], + "total_text_annotations": 5, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/typical_rib_body_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/typical_rib_body_text_annotations.json new file mode 100644 index 00000000..9176b8ee --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/typical_rib_body_text_annotations.json @@ -0,0 +1,178 @@ +{ + "slide_number": 22, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Costal groove", + "text_content": "Costal groove", + "text_box": { + "x": 6434152.0, + "y": 3170338.0, + "width": 626969.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "673" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7061121.0, + "y": 3278060.0 + }, + "end_point": { + "x": 7239021.0, + "y": 3278060.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "674", + "bbox": { + "x": 7061121.0, + "y": 3278060.0, + "width": 177900.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 3280000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Angle", + "text_content": "Angle", + "text_box": { + "x": 3124201.0, + "y": 1981200.0, + "width": 321019.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "675" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 3445220.0, + "y": 2088922.0 + }, + "end_point": { + "x": 3657620.0, + "y": 2088922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "676", + "bbox": { + "x": 3445220.0, + "y": 2088922.0, + "width": 212400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 3657600.0, + "y": 2088922.0 + }, + "end_point": { + "x": 4114800.0, + "y": 2286000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "682", + "bbox": { + "x": 3657600.0, + "y": 2088922.0, + "width": 457200.0, + "height": 197078.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4112000.0, + "y": 2288000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Angle", + "text_content": "Angle", + "text_box": { + "x": 8153401.0, + "y": 1818370.0, + "width": 321019.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "677" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7877101.0, + "y": 1926092.0 + }, + "end_point": { + "x": 8153401.0, + "y": 1926092.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "678", + "bbox": { + "x": 7877101.0, + "y": 1926092.0, + "width": 276300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7880000.0, + "y": 1928000.0 + } + ] + } + ], + "total_text_annotations": 3, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/typical_rib_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/typical_rib_text_annotations.json new file mode 100644 index 00000000..6ab63b23 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/typical_rib_text_annotations.json @@ -0,0 +1,530 @@ +{ + "slide_number": 18, + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Tubercle", + "text_content": "Tubercle", + "text_box": { + "x": 5562601.0, + "y": 2367715.0, + "width": 424759.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "558" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide21.xml", + "target_slide": 21 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 5562601.0, + "y": 2480237.0 + }, + "end_point": { + "x": 5334001.0, + "y": 2475437.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "559", + "bbox": { + "x": 5334001.0, + "y": 2475437.0, + "width": 228600.0, + "height": 4800.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 6324600.0, + "y": 2480321.0 + }, + "end_point": { + "x": 5987360.0, + "y": 2480321.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "577", + "bbox": { + "x": 5987360.0, + "y": 2480321.0, + "width": 337240.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5336000.0, + "y": 2472000.0 + }, + { + "x": 6328000.0, + "y": 2480000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Head", + "text_content": "Head", + "text_box": { + "x": 5562601.0, + "y": 1676400.0, + "width": 288581.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "561" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide20.xml", + "target_slide": 20 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 5562601.0, + "y": 1788922.0 + }, + "end_point": { + "x": 5402101.0, + "y": 1784122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "562", + "bbox": { + "x": 5402101.0, + "y": 1784122.0, + "width": 160500.0, + "height": 4800.0, + "rotation_emu": 10800000.0 + } + }, + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 5851182.0, + "y": 1784122.0 + }, + "end_point": { + "x": 6060582.0, + "y": 1784122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "563", + "bbox": { + "x": 5851182.0, + "y": 1784122.0, + "width": 209400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 5400000.0, + "y": 1784000.0 + }, + { + "x": 6064000.0, + "y": 1784000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Neck", + "text_content": "Neck", + "text_box": { + "x": 6772540.0, + "y": 1442904.0, + "width": 288581.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "564" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide20.xml", + "target_slide": 20 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 6772540.0, + "y": 1555426.0 + }, + "end_point": { + "x": 6612040.0, + "y": 1550626.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "565", + "bbox": { + "x": 6612040.0, + "y": 1550626.0, + "width": 160500.0, + "height": 4800.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6616000.0, + "y": 1552000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Neck", + "text_content": "Neck", + "text_box": { + "x": 4267201.0, + "y": 1558248.0, + "width": 288581.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "567" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId18", + "target": "/ppt/slides/slide20.xml", + "target_slide": 20 + }, + "pointer_lines": [ + { + "line_id": "line_6", + "kind": "connector", + "start_point": { + "x": 4555782.0, + "y": 1665970.0 + }, + "end_point": { + "x": 4724382.0, + "y": 1665970.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "566", + "bbox": { + "x": 4555782.0, + "y": 1665970.0, + "width": 168600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_8", + "kind": "connector", + "start_point": { + "x": 4724400.0, + "y": 1665970.0 + }, + "end_point": { + "x": 4876800.0, + "y": 1818370.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "569", + "bbox": { + "x": 4724400.0, + "y": 1665970.0, + "width": 152400.0, + "height": 152400.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4880000.0, + "y": 1816000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Body", + "text_content": "Body", + "text_box": { + "x": 4555782.0, + "y": 3733800.0, + "width": 321019.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "570" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId19", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_9", + "kind": "connector", + "start_point": { + "x": 4327182.0, + "y": 3841522.0 + }, + "end_point": { + "x": 4555782.0, + "y": 3841522.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "571", + "bbox": { + "x": 4327182.0, + "y": 3841522.0, + "width": 228600.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4328000.0, + "y": 3840000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Costal groove", + "text_content": "Costal groove", + "text_box": { + "x": 6434152.0, + "y": 3170338.0, + "width": 626969.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "573" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId20", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_11", + "kind": "connector", + "start_point": { + "x": 7061121.0, + "y": 3278060.0 + }, + "end_point": { + "x": 7239021.0, + "y": 3278060.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "574", + "bbox": { + "x": 7061121.0, + "y": 3278060.0, + "width": 177900.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7240000.0, + "y": 3280000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Angle", + "text_content": "Angle", + "text_box": { + "x": 3124201.0, + "y": 1981200.0, + "width": 321019.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "578" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId21", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 3445220.0, + "y": 2088922.0 + }, + "end_point": { + "x": 3657620.0, + "y": 2088922.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "579", + "bbox": { + "x": 3445220.0, + "y": 2088922.0, + "width": 212400.0, + "height": 0.0, + "rotation_emu": 0.0 + } + }, + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 3657600.0, + "y": 2088922.0 + }, + "end_point": { + "x": 4114800.0, + "y": 2286000.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "580", + "bbox": { + "x": 3657600.0, + "y": 2088922.0, + "width": 457200.0, + "height": 197078.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 4112000.0, + "y": 2288000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Angle", + "text_content": "Angle", + "text_box": { + "x": 8153401.0, + "y": 1818370.0, + "width": 321019.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "581" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId22", + "target": "/ppt/slides/slide22.xml", + "target_slide": 22 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 7877101.0, + "y": 1926092.0 + }, + "end_point": { + "x": 8153401.0, + "y": 1926092.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "582", + "bbox": { + "x": 7877101.0, + "y": 1926092.0, + "width": 276300.0, + "height": 0.0, + "rotation_emu": 0.0 + } + } + ], + "target_regions": [ + { + "x": 7880000.0, + "y": 1928000.0 + } + ] + } + ], + "total_text_annotations": 8, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/annotations/text_label_annotations/vertebrae_text_annotations.json b/boneset-api/data/annotations/text_label_annotations/vertebrae_text_annotations.json new file mode 100644 index 00000000..94d787d9 --- /dev/null +++ b/boneset-api/data/annotations/text_label_annotations/vertebrae_text_annotations.json @@ -0,0 +1,565 @@ +{ + "text_annotations": [ + { + "annotation_id": "annot_1", + "bone_name": "Bony Pelvis", + "subbone_name": "Cervical (7)", + "text_content": "Cervical (7)", + "text_box": { + "x": 7086600.0, + "y": 1838404.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "106" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId11", + "target": "/ppt/slides/slide21.xml", + "target_slide": 21 + }, + "pointer_lines": [ + { + "line_id": "line_1", + "kind": "connector", + "start_point": { + "x": 7086600.0, + "y": 1946126.0 + }, + "end_point": { + "x": 6781800.0, + "y": 1946126.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "107", + "bbox": { + "x": 6781800.0, + "y": 1946126.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6784000.0, + "y": 1944000.0 + } + ] + }, + { + "annotation_id": "annot_2", + "bone_name": "Bony Pelvis", + "subbone_name": "Thoracic (12)", + "text_content": "Thoracic (12)", + "text_box": { + "x": 7086600.0, + "y": 3000622.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "110" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId12", + "target": "/ppt/slides/slide30.xml", + "target_slide": 30 + }, + "pointer_lines": [ + { + "line_id": "line_2", + "kind": "connector", + "start_point": { + "x": 7086600.0, + "y": 3108344.0 + }, + "end_point": { + "x": 6781800.0, + "y": 3108344.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "114", + "bbox": { + "x": 6781800.0, + "y": 3108344.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6784000.0, + "y": 3112000.0 + } + ] + }, + { + "annotation_id": "annot_3", + "bone_name": "Bony Pelvis", + "subbone_name": "Lumbar (5)", + "text_content": "Lumbar (5)", + "text_box": { + "x": 7086600.0, + "y": 4415880.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "111" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId13", + "target": "/ppt/slides/slide38.xml", + "target_slide": 38 + }, + "pointer_lines": [ + { + "line_id": "line_3", + "kind": "connector", + "start_point": { + "x": 7086600.0, + "y": 4523602.0 + }, + "end_point": { + "x": 6781800.0, + "y": 4523602.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "115", + "bbox": { + "x": 6781800.0, + "y": 4523602.0, + "width": 304800.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6784000.0, + "y": 4520000.0 + } + ] + }, + { + "annotation_id": "annot_4", + "bone_name": "Bony Pelvis", + "subbone_name": "Sacrum (5)", + "text_content": "Sacrum (5)", + "text_box": { + "x": 7086600.0, + "y": 5327156.0, + "width": 609600.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "112" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId14", + "target": "/ppt/slides/slide46.xml", + "target_slide": 46 + }, + "pointer_lines": [ + { + "line_id": "line_4", + "kind": "connector", + "start_point": { + "x": 7086600.0, + "y": 5434878.0 + }, + "end_point": { + "x": 5715000.0, + "y": 5434878.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "116", + "bbox": { + "x": 5715000.0, + "y": 5434878.0, + "width": 1371600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 5432000.0 + } + ] + }, + { + "annotation_id": "annot_5", + "bone_name": "Bony Pelvis", + "subbone_name": "Coccyx (4)", + "text_content": "Coccyx (4)", + "text_box": { + "x": 7086600.0, + "y": 5867400.0, + "width": 685800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "113" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId15", + "target": "/ppt/slides/slide46.xml", + "target_slide": 46 + }, + "pointer_lines": [ + { + "line_id": "line_5", + "kind": "connector", + "start_point": { + "x": 7086600.0, + "y": 5975122.0 + }, + "end_point": { + "x": 5715000.0, + "y": 5975122.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "117", + "bbox": { + "x": 5715000.0, + "y": 5975122.0, + "width": 1371600.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5712000.0, + "y": 5976000.0 + } + ] + }, + { + "annotation_id": "annot_6", + "bone_name": "Bony Pelvis", + "subbone_name": "Cervical curvature", + "text_content": "Cervical curvature", + "text_box": { + "x": 3048000.0, + "y": 1838404.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "128" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_15", + "kind": "connector", + "start_point": { + "x": 5562600.0, + "y": 1946126.0 + }, + "end_point": { + "x": 3886200.0, + "y": 1946126.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "135", + "bbox": { + "x": 3886200.0, + "y": 1946126.0, + "width": 1676400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5560000.0, + "y": 1944000.0 + } + ] + }, + { + "annotation_id": "annot_7", + "bone_name": "Bony Pelvis", + "subbone_name": "Thoracic curvature", + "text_content": "Thoracic curvature", + "text_box": { + "x": 3048000.0, + "y": 3000622.0, + "width": 914400.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "129" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_14", + "kind": "connector", + "start_point": { + "x": 4889700.0, + "y": 3108344.0 + }, + "end_point": { + "x": 3962400.0, + "y": 3108344.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "134", + "bbox": { + "x": 3962400.0, + "y": 3108344.0, + "width": 927300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 4888000.0, + "y": 3112000.0 + } + ] + }, + { + "annotation_id": "annot_8", + "bone_name": "Bony Pelvis", + "subbone_name": "Lumbar curvature", + "text_content": "Lumbar curvature", + "text_box": { + "x": 3048000.0, + "y": 4308158.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "130" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_13", + "kind": "connector", + "start_point": { + "x": 5254500.0, + "y": 4415880.0 + }, + "end_point": { + "x": 3886200.0, + "y": 4415880.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "133", + "bbox": { + "x": 3886200.0, + "y": 4415880.0, + "width": 1368300.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5256000.0, + "y": 4416000.0 + } + ] + }, + { + "annotation_id": "annot_9", + "bone_name": "Bony Pelvis", + "subbone_name": "Sacral curvature", + "text_content": "Sacral curvature", + "text_box": { + "x": 3048000.0, + "y": 5421749.0, + "width": 838200.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "131" + }, + "has_hyperlink": false, + "hyperlink": {}, + "pointer_lines": [ + { + "line_id": "line_12", + "kind": "connector", + "start_point": { + "x": 5018400.0, + "y": 5529471.0 + }, + "end_point": { + "x": 3886200.0, + "y": 5529471.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "132", + "bbox": { + "x": 3886200.0, + "y": 5529471.0, + "width": 1132200.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5016000.0, + "y": 5528000.0 + } + ] + }, + { + "annotation_id": "annot_10", + "bone_name": "Bony Pelvis", + "subbone_name": "Atlas", + "text_content": "Atlas", + "text_box": { + "x": 4737344.0, + "y": 1393603.0, + "width": 304800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "136" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId16", + "target": "/ppt/slides/slide3.xml", + "target_slide": 3 + }, + "pointer_lines": [ + { + "line_id": "line_17", + "kind": "connector", + "start_point": { + "x": 5959844.0, + "y": 1501325.0 + }, + "end_point": { + "x": 5042144.0, + "y": 1501325.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "139", + "bbox": { + "x": 5042144.0, + "y": 1501325.0, + "width": 917700.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 5960000.0, + "y": 1504000.0 + } + ] + }, + { + "annotation_id": "annot_11", + "bone_name": "Bony Pelvis", + "subbone_name": "Axis", + "text_content": "Axis", + "text_box": { + "x": 4713630.0, + "y": 1546326.0, + "width": 304800.0, + "height": 215444.0, + "rotation_emu": 0.0, + "shape_id": "137" + }, + "has_hyperlink": true, + "hyperlink": { + "rId": "rId17", + "target": "/ppt/slides/slide12.xml", + "target_slide": 12 + }, + "pointer_lines": [ + { + "line_id": "line_16", + "kind": "connector", + "start_point": { + "x": 6019830.0, + "y": 1654048.0 + }, + "end_point": { + "x": 5018430.0, + "y": 1654048.0 + }, + "style": { + "width": 9525, + "arrow_head": "none" + }, + "shape_id": "138", + "bbox": { + "x": 5018430.0, + "y": 1654048.0, + "width": 1001400.0, + "height": 0.0, + "rotation_emu": 10800000.0 + } + } + ], + "target_regions": [ + { + "x": 6016000.0, + "y": 1656000.0 + } + ] + } + ], + "total_text_annotations": 11, + "config": { + "padding_emu": 4000.0, + "snap_emu": 8000.0 + } +} \ No newline at end of file diff --git a/boneset-api/data/bones/anterior.json b/boneset-api/data/bones/anterior.json new file mode 100644 index 00000000..4e0c5dd8 --- /dev/null +++ b/boneset-api/data/bones/anterior.json @@ -0,0 +1,12 @@ +{ + "name": "Anterior", + "id": "anterior", + "subbones": [ + "anterior_frontal_bone", + "anterior_mandible", + "anterior_maxilla", + "anterior_nasal_bone", + "anterior_sphenoid_bone", + "anterior_zygomatic_bone" + ] +} diff --git a/boneset-api/data/bones/atlas.json b/boneset-api/data/bones/atlas.json new file mode 100644 index 00000000..115cbd59 --- /dev/null +++ b/boneset-api/data/bones/atlas.json @@ -0,0 +1,15 @@ +[ + { + "name": "Atlas", + "id": "atlas", + "subBones": [ + "atlas_anterior_and_posterior_tubercles", + "atlas_transverse_process", + "atlas_arches", + "atlas_groove_for_vertebral_artery", + "atlas_articular_facet_for_dens", + "atlas_lateral_mass", + "atlas_articular_surfaces" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/bones/axis.json b/boneset-api/data/bones/axis.json new file mode 100644 index 00000000..a70582c7 --- /dev/null +++ b/boneset-api/data/bones/axis.json @@ -0,0 +1,15 @@ +[ + { + "name": "Axis", + "id": "axis", + "subBones": [ + "axis_body_(dens)", + "axis_transverse_process", + "axis_transverse_foramen", + "axis_pedicle", + "axis_lamina", + "axis_spinous_process", + "axis_articular_surfaces" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/bones/cervical.json b/boneset-api/data/bones/cervical.json new file mode 100644 index 00000000..81673a55 --- /dev/null +++ b/boneset-api/data/bones/cervical.json @@ -0,0 +1,15 @@ +[ + { + "name": "Cervical", + "id": "cervical", + "subBones": [ + "cervical_body", + "cervical_pedicle", + "cervical_transverse_process", + "cervical_lamina", + "cervical_spinous_process", + "cervical_vertebral_arch", + "cervical_vertebral_foramen" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/bones/clavicle.json b/boneset-api/data/bones/clavicle.json new file mode 100644 index 00000000..b68ef1bf --- /dev/null +++ b/boneset-api/data/bones/clavicle.json @@ -0,0 +1,9 @@ +{ + "name": "Clavicle", + "id": "clavicle", + "subbones": [ + "clavicle_sternal_end", + "clavicle_shaft", + "clavicle_acromial_end" + ] +} diff --git a/boneset-api/data/bones/first_rib.json b/boneset-api/data/bones/first_rib.json new file mode 100644 index 00000000..6d6639ef --- /dev/null +++ b/boneset-api/data/bones/first_rib.json @@ -0,0 +1,9 @@ +{ + "name": "First Rib", + "id": "first_rib", + "subbones": [ + "first_rib_head_and_neck", + "first_rib_tubercles", + "first_rib_grooves_for_subclavian_vessels" + ] +} diff --git a/boneset-api/data/bones/ilium.json b/boneset-api/data/bones/ilium.json new file mode 100644 index 00000000..d28eb13a --- /dev/null +++ b/boneset-api/data/bones/ilium.json @@ -0,0 +1,5 @@ +{ + "name": "Ilium", + "id": "ilium", + "subBones": ["iliac_crest", "anterior_iliac_spines", "posterior_iliac_spines", "auricular_surface"] +} diff --git a/boneset-api/data/bones/inferior.json b/boneset-api/data/bones/inferior.json new file mode 100644 index 00000000..8085d2f6 --- /dev/null +++ b/boneset-api/data/bones/inferior.json @@ -0,0 +1,12 @@ +{ + "name": "Inferior", + "id": "inferior", + "subbones": [ + "inferior_maxilla", + "inferior_occipital_bone", + "inferior_palatine_bone", + "inferior_sphenoid_bone", + "inferior_temporal_bone", + "inferior_vomer" + ] +} diff --git a/boneset-api/data/bones/ischium.json b/boneset-api/data/bones/ischium.json new file mode 100644 index 00000000..e681b795 --- /dev/null +++ b/boneset-api/data/bones/ischium.json @@ -0,0 +1,5 @@ +{ + "name": "Ischium", + "id": "ischium", + "subBones": ["ramus", "ischial_tuberosity", "ischial_spine", "sciatic_notches"] +} diff --git a/boneset-api/data/bones/lateral.json b/boneset-api/data/bones/lateral.json new file mode 100644 index 00000000..7634b0fc --- /dev/null +++ b/boneset-api/data/bones/lateral.json @@ -0,0 +1,12 @@ +{ + "name": "Lateral", + "id": "lateral", + "subbones": [ + "lateral_ethmoid_bone", + "lateral_lacrimal_bone", + "lateral_mandible", + "lateral_parietal_bone", + "lateral_sphenoid_bone", + "lateral_temporal_bone" + ] +} diff --git a/boneset-api/data/bones/lumbar.json b/boneset-api/data/bones/lumbar.json new file mode 100644 index 00000000..2f527dfc --- /dev/null +++ b/boneset-api/data/bones/lumbar.json @@ -0,0 +1,14 @@ +[ + { + "name": "Lumbar", + "id": "lumbar", + "subBones": [ + "lumbar_body", + "lumbar_transverse_process", + "lumbar_spinous_process", + "lumbar_accessory_process", + "lumbar_mammillary_process", + "lumbar_articular_surfaces" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/bones/pubis.json b/boneset-api/data/bones/pubis.json new file mode 100644 index 00000000..887954bd --- /dev/null +++ b/boneset-api/data/bones/pubis.json @@ -0,0 +1,5 @@ +{ + "name": "Pubis", + "id": "pubis", + "subBones": ["pubic_rami", "pectineal_line", "symphyseal_surface", "pubic_tubercle"] +} diff --git a/boneset-api/data/bones/sacrum_and_coccyx.json b/boneset-api/data/bones/sacrum_and_coccyx.json new file mode 100644 index 00000000..9a290ad4 --- /dev/null +++ b/boneset-api/data/bones/sacrum_and_coccyx.json @@ -0,0 +1,15 @@ +[ + { + "name": "Sacrum and Coccyx", + "id": "sacrum_and_coccyx", + "subBones": [ + "sacrum_and_coccyx_sacral_promontory", + "sacrum_and_coccyx_superior_articular_process", + "sacrum_and_coccyx_anterior_and_posterior_sacral_foramina", + "sacrum_and_coccyx_median_sacral_crest", + "sacrum_and_coccyx__sacral_hiatus", + "sacrum_and_coccyx_articular_surface_for_ilium", + "coccyx" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/bones/scapula.json b/boneset-api/data/bones/scapula.json new file mode 100644 index 00000000..6b0f39a6 --- /dev/null +++ b/boneset-api/data/bones/scapula.json @@ -0,0 +1,10 @@ +{ + "name": "Scapula", + "id": "scapula", + "subbones": [ + "scapula_body", + "scapula_spine", + "scapula_acromion_and_coracoid_process", + "scapula_fossae" + ] +} diff --git a/boneset-api/data/bones/sternum.json b/boneset-api/data/bones/sternum.json new file mode 100644 index 00000000..f0a7396c --- /dev/null +++ b/boneset-api/data/bones/sternum.json @@ -0,0 +1,9 @@ +{ + "name": "Sternum", + "id": "sternum", + "subbones": [ + "sternum_manubrium", + "sternum_body", + "sternum_xiphoid_process" + ] +} diff --git a/boneset-api/data/bones/superior.json b/boneset-api/data/bones/superior.json new file mode 100644 index 00000000..b6841108 --- /dev/null +++ b/boneset-api/data/bones/superior.json @@ -0,0 +1,11 @@ +{ + "name": "Superior", + "id": "superior", + "subbones": [ + "superior_ethmoid_bone", + "superior_frontal_bone", + "superior_occipital_bone", + "superior_sphenoid_bone", + "superior_temporal_bone" + ] +} diff --git a/boneset-api/data/bones/thoracic.json b/boneset-api/data/bones/thoracic.json new file mode 100644 index 00000000..167b13cb --- /dev/null +++ b/boneset-api/data/bones/thoracic.json @@ -0,0 +1,14 @@ +[ + { + "name": "Thoracic", + "id": "thoracic", + "subBones": [ + "thoracic_body", + "thoracic_transverse_process", + "thoracic_costal_facets", + "thoracic_vertebral_notch", + "thoracic_spinous_process", + "thoracic_articular_surfaces" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/bones/typical_rib.json b/boneset-api/data/bones/typical_rib.json new file mode 100644 index 00000000..5b43d153 --- /dev/null +++ b/boneset-api/data/bones/typical_rib.json @@ -0,0 +1,9 @@ +{ + "name": "Typical Rib", + "id": "typical_rib", + "subbones": [ + "typical_rib_head_and_neck", + "typical_rib_tubercle", + "typical_rib_body" + ] +} diff --git a/boneset-api/data/boneset/bony_pelvis.json b/boneset-api/data/boneset/bony_pelvis.json new file mode 100644 index 00000000..59f04068 --- /dev/null +++ b/boneset-api/data/boneset/bony_pelvis.json @@ -0,0 +1,5 @@ +{ + "name": "Bony Pelvis", + "id": "bony_pelvis", + "bones": ["ilium", "ischium", "pubis"] +} diff --git a/boneset-api/data/boneset/skull.json b/boneset-api/data/boneset/skull.json new file mode 100644 index 00000000..0d7acd26 --- /dev/null +++ b/boneset-api/data/boneset/skull.json @@ -0,0 +1,12 @@ +[ + { + "name": "Skull", + "id": "skull", + "bones": [ + "anterior", + "lateral", + "inferior", + "superior" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/boneset/thorax.json b/boneset-api/data/boneset/thorax.json new file mode 100644 index 00000000..4b8766ea --- /dev/null +++ b/boneset-api/data/boneset/thorax.json @@ -0,0 +1,13 @@ +[ + { + "name": "Thorax", + "id": "thorax", + "bones": [ + "sternum", + "clavicle", + "first_rib", + "typical_rib", + "scapula" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/boneset/vertebrae.json b/boneset-api/data/boneset/vertebrae.json new file mode 100644 index 00000000..1f88e0a0 --- /dev/null +++ b/boneset-api/data/boneset/vertebrae.json @@ -0,0 +1,14 @@ +[ + { + "name": "Vertebrae", + "id": "vertebrae", + "bones": [ + "atlas", + "axis", + "cervical", + "thoracic", + "lumbar", + "sacrum_and_coccyx" + ] + } +] \ No newline at end of file diff --git a/boneset-api/data/descriptions/First_Rib_Grooves_For_Subclavian_Vessels_description.json b/boneset-api/data/descriptions/First_Rib_Grooves_For_Subclavian_Vessels_description.json new file mode 100644 index 00000000..e3e471f7 --- /dev/null +++ b/boneset-api/data/descriptions/First_Rib_Grooves_For_Subclavian_Vessels_description.json @@ -0,0 +1,16 @@ +{ + "slide": 17, + "name": "Grooves for subclavian vessels", + "id": "grooves_for_subclavian_vessels", + "description": [ + "The", + "subclavian vein", + "lies in a shallow groove just anterior to the scalene tubercle.", + "The", + "subclavian artery", + "lies in a shallow groove just posterior to the scalene tubercle.", + "The lower trunk of the brachial plexus also passes posterior to the scalene tubercle.", + "Labels" + ], + "images": [] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/Scapula_Acromion_And_Coracoid_Process_Description.json.json b/boneset-api/data/descriptions/Scapula_Acromion_And_Coracoid_Process_Description.json.json new file mode 100644 index 00000000..111d165b --- /dev/null +++ b/boneset-api/data/descriptions/Scapula_Acromion_And_Coracoid_Process_Description.json.json @@ -0,0 +1,18 @@ +{ + "slide": 28, + "name": "Acromion and Coracoid process", + "id": "acromion_and_coracoid_process", + "description": [ + "The", + "acromion process", + "is a broad projection from the lateral end of the spine.", + "It curves anteriorly to articulate with the clavicle to form the acromioclavicular joint.", + "It provides part of the origin for the deltoid muscle and part of the insertion for the trapezius muscle.", + "The", + "coracoid process", + "is a hook-like projection from the superior border between the scapular notch and the glenoid fossa.", + "The coracobrachialis muscle and short head of the biceps brachii muscle arise from the coracoid process", + "The pectoralis minor inserts on the coracoid process." + ], + "images": ["Scapula_Left_Image.jpg", "Scapula_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/Scapula_description.json b/boneset-api/data/descriptions/Scapula_description.json new file mode 100644 index 00000000..f1c5832b --- /dev/null +++ b/boneset-api/data/descriptions/Scapula_description.json @@ -0,0 +1,11 @@ +{ + "slide": 23, + "name": "Scapula", + "id": "scapula", + "description": [ + "The scapula is sometimes referred to as the \u201cshoulder blade.\u201d", + "It is a large, triangular, flat bone situated in the superior part of the posterior thoracic wall.", + "It lies between the levels of the second and seventh ribs." + ], + "images": ["Scapula_Left_Image.jpg", "Scapula_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/anterior_frontal_bone_description.json b/boneset-api/data/descriptions/anterior_frontal_bone_description.json new file mode 100644 index 00000000..8ee7738e --- /dev/null +++ b/boneset-api/data/descriptions/anterior_frontal_bone_description.json @@ -0,0 +1,19 @@ +{ + "name": "Frontal bone", + "id": "frontal_bone", + "description": [ + "Glabella", + "A slight depression that lies between the two", + "superciliary arches", + "It can be more pronounced in males.", + "Supraorbital foramen (notch)", + "An opening at the superior rim of the orbit that transmits the supraorbital nerve and vessels.", + "Nasion", + "Lies at the junction where the frontal bone meets the nasal bones.", + "Zygomatic process", + "The lateral part of the bone that extends inferiorly to join with the zygomatic bone.", + "Forms part of the lateral border of the orbit.", + "Labels" + ], + "images": ["Anterior_frontal_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/anterior_iliac_spines_description.json b/boneset-api/data/descriptions/anterior_iliac_spines_description.json new file mode 100644 index 00000000..25a01bdd --- /dev/null +++ b/boneset-api/data/descriptions/anterior_iliac_spines_description.json @@ -0,0 +1,13 @@ +{ + "name": "Anterior Iliac Spines", + "id": "anterior_iliac_spines", + "description": [ + "Anterior Superior Iliac Spine", + "A bony projection at the anterior end of the iliac crest.", + "Provides attachment for the inguinal ligament and the origins of the sartorius and tensor fascia lata muscles.", + "Anterior Inferior Iliac Spine", + "Inferior to the anterior superior iliac spine, a bony eminence on the anterior border of the ilium.", + "Provides attachment for the straight head of the rectus femoris muscle and the iliofemoral ligament." + ], + "images": ["anterior_iliac_spines_image1.jpg", "anterior_iliac_spines_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/anterior_mandible_description.json b/boneset-api/data/descriptions/anterior_mandible_description.json new file mode 100644 index 00000000..14bc0f96 --- /dev/null +++ b/boneset-api/data/descriptions/anterior_mandible_description.json @@ -0,0 +1,32 @@ +{ + "name": "Mandible", + "id": "mandible", + "description": [ + "Mandible", + "The single bone that forms the lower jaw and contains the lower teeth.", + "The only movable bone of the skull, articulating with the temporal bones via the temporomandibular joints.", + "Body", + "The horizontal part of the mandible that fuses from two separate bones during development.", + "Forms the inferior border of the lower face.", + "Contains the alveolar process with the lower teeth.", + "Ramus", + "The vertical or nearly vertical part of the mandible that extends superiorly from the posterior part of the body.", + "Provides attachment for muscles of mastication.", + "Articulates with the condylar process at the temporomandibular joint.", + "Mental foramen", + "An opening on the anterior surface of the mandibular body.", + "Located approximately below the first and second lower premolar teeth.", + "Lies in the same sagittal plane as the infraorbital and supraorbital foramina.", + "Transmits the mental nerve (division of CN V3) and mental vessels.", + "Serves as a landmark for regional anesthesia in dental procedures.", + "Mental protuberance", + "A projection on the median anterior surface of the mandible.", + "Forms the prominence of the chin.", + "More pronounced in humans compared to other primates.", + "Mental tubercle", + "The point of the mental protuberance that represents the fusion of the two mandibular bodies.", + "Slightly projects anteriorly from the mandible.", + "Represents the most anterior and inferior projection of the lower face." + ], + "images": ["Anterior_Mandible_image.jpg"] +} diff --git a/boneset-api/data/descriptions/anterior_maxilla_description.json b/boneset-api/data/descriptions/anterior_maxilla_description.json new file mode 100644 index 00000000..330ee6da --- /dev/null +++ b/boneset-api/data/descriptions/anterior_maxilla_description.json @@ -0,0 +1,25 @@ +{ + "name": "Maxilla ", + "id": "maxilla", + "description": [ + "Maxilla", + "Two bones that form the central part of the face and the upper jaw.", + "Forms the majority of the hard palate, the floor and lateral walls of the nasal cavity, and part of the orbital floor.", + "Frontal process", + "Part of the maxilla that extends superiorly to articulate with the frontal and nasal bones.", + "Forms the medial border of the orbit.", + "Infraorbital foramen", + "A small opening located just inferior to the orbital rim.", + "Transmits the infraorbital nerve (branch of CN V2) and blood vessels.", + "Serves as a landmark for regional anesthesia in dental procedures.", + "Zygomatic process", + "Part of the maxilla that extends laterally and superiorly to articulate with the zygomatic bone.", + "Helps form the lateral wall of the orbit.", + "Forms the base of the malar prominence (cheekbone).", + "Alveolar process", + "The inferiorly projecting portion of the maxilla that contains the upper teeth.", + "Provides support and attachment for the maxillary teeth.", + "Resorbs with age and loss of teeth." + ], + "images": ["Anterior_Maxilla_image.jpg"] +} diff --git a/boneset-api/data/descriptions/anterior_nasal_bone_description.json b/boneset-api/data/descriptions/anterior_nasal_bone_description.json new file mode 100644 index 00000000..86c43c4d --- /dev/null +++ b/boneset-api/data/descriptions/anterior_nasal_bone_description.json @@ -0,0 +1,8 @@ +{ + "name": "Nasal bone", + "id": "nasal_bone", + "description": [ + "Two small, oblong shaped bones that form the \u201cbridge\u201d of the nose." + ], + "images": ["Anterior_nasal_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/anterior_sphenoid_bone_description.json b/boneset-api/data/descriptions/anterior_sphenoid_bone_description.json new file mode 100644 index 00000000..d3377050 --- /dev/null +++ b/boneset-api/data/descriptions/anterior_sphenoid_bone_description.json @@ -0,0 +1,17 @@ +{ + "name": "Sphenoid bone", + "id": "sphenoid_bone", + "description": [ + "Anterior view", + "The front view of the skull showing multiple facial and cranial bones.", + "Sphenoid bone", + "Anteriorly, the sphenoid bone can be seen in the deep part of the orbit.", + "Superior orbital fissure", + "A gap formed by the lesser and greater wings of the sphenoid bone.", + "Transmits the oculomotor nerve (CN III), trochlear nerve (CN IV), branches of the ophthalmic nerve (CN V1), abducent nerve (CN VI), and the superior ophthalmic vein.", + "Optic canal", + "Located in the sphenoid bone.", + "Transmits the optic nerve and the ophthalmic artery." + ], + "images": ["Anterior_Sphenoid_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/anterior_view_description.json b/boneset-api/data/descriptions/anterior_view_description.json new file mode 100644 index 00000000..3e9a7a39 --- /dev/null +++ b/boneset-api/data/descriptions/anterior_view_description.json @@ -0,0 +1,13 @@ +{ + "name": "Anterior view", + "id": "anterior_view", + "description": [ + "The anterior view is generally ovoid in shape.", + "The forehead is superior to the orbit and is formed by the frontal bone.", + "The bones that make up the borders of the orbit are the frontal bone superiorly, medially, and laterally, the zygomatic bone laterally and inferiorly, and the maxilla inferior and medially.", + "The anterior nasal opening is formed by the nasal and maxilla bones.", + "The maxilla contributes to the upper jaw, while the lower jaw is formed by the mandible." + + ], + "images": ["Anterior_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/anterior_zygomatic_bone_description.json b/boneset-api/data/descriptions/anterior_zygomatic_bone_description.json new file mode 100644 index 00000000..84472daf --- /dev/null +++ b/boneset-api/data/descriptions/anterior_zygomatic_bone_description.json @@ -0,0 +1,17 @@ +{ + "name": "Zygomatic bone", + "id": "zygomatic_bone", + "description": [ + "An irregular shaped bone that, together with the maxilla, forms the \u201ccheek\u201d bones.", + "Frontal process", + "The portion of bone that extends superiorly to join with the frontal bone.", + "Contributes to the lateral border of the orbit.", + "Zygomaticofacial foramen", + "A small opening just inferior and lateral to the orbit.", + "Transmits the zygomaticofacial nerve and vessels.", + "Temporal process", + "The portion of bone that extends laterally and posteriorly to join the temporal bone.", + "Forms part of the zygomatic arch." + ], + "images": ["Anterior_Zygomatic_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_anterior_and_posterior_tubercles_description.json b/boneset-api/data/descriptions/atlas_anterior_and_posterior_tubercles_description.json new file mode 100644 index 00000000..7a8881aa --- /dev/null +++ b/boneset-api/data/descriptions/atlas_anterior_and_posterior_tubercles_description.json @@ -0,0 +1,15 @@ +{ + "name": "Labels", + "id": "labels", + "description": [ + "Articular surfaces", + "Anterior and posterior tubercles", + "Anterior tubercle", + "A roughened protrusion on anterior arch.", + "Provides attachment for the anterior longitudinal ligament.", + "Posterior tubercle", + "A rudimentary spinous process.", + "A roughened attachment for the ligamentum nuchae." + ], + "images": ["atlas_(superior_aspect)_image.png", "atlas_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_arches_description.json b/boneset-api/data/descriptions/atlas_arches_description.json new file mode 100644 index 00000000..bd5146f6 --- /dev/null +++ b/boneset-api/data/descriptions/atlas_arches_description.json @@ -0,0 +1,16 @@ +{ + "name": "Labels", + "id": "labels", + "description": [ + "Arches", + "Anterior arch ", + "Is slightly convex anteriorly and contains the anterior tubercle.", + "It provides attachment for the anterior atlanto-occipital membrane and lateral parts of the anterior longitudinal ligament.", + "Posterior surface contains the articular facet for the dens of CV2 (Axis).", + "Posterior arch", + "The superior surface contains a groove for the vertebral artery.", + "The superior border provides attachment for the posterior atlanto-occipital membrane.", + "Contains the posterior tubercle." + ], + "images": ["atlas_(superior_aspect)_image.png", "atlas_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_articular_facet_for_dens_description.json b/boneset-api/data/descriptions/atlas_articular_facet_for_dens_description.json new file mode 100644 index 00000000..794582ee --- /dev/null +++ b/boneset-api/data/descriptions/atlas_articular_facet_for_dens_description.json @@ -0,0 +1,9 @@ +{ + "name": "Articular facet for dens", + "id": "atlas_articular_facet_for_dens", + "description": [ + "A smooth, disc-like surface on the posterior aspect of the anterior arch.", + "Articulates with the anterior surface of the dens of CV2 (Axis)." + ], + "images": ["atlas_(posterosuperior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_articular_surfaces_description.json b/boneset-api/data/descriptions/atlas_articular_surfaces_description.json new file mode 100644 index 00000000..a0c621f0 --- /dev/null +++ b/boneset-api/data/descriptions/atlas_articular_surfaces_description.json @@ -0,0 +1,14 @@ +{ + "name": "Articular surfaces", + "id": "atlas_articular_surfaces", + "description": [ + "Superior articular surface", + "Articulates with the condyles of the occipital bone of the skull.", + "Supports the weight of the head.", + "Mostly ovoid in shape, and can be partially subdivided into two separate surfaces.", + "Inferior articular surface", + "Mostly circular in shape.", + "Articulates with the superior articular surface of CV2 (Axis)." + ], + "images": ["atlas_(superior_aspect)_image.png", "atlas_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_description.json b/boneset-api/data/descriptions/atlas_description.json new file mode 100644 index 00000000..34e9acb7 --- /dev/null +++ b/boneset-api/data/descriptions/atlas_description.json @@ -0,0 +1,11 @@ +{ + "name": "Atlas", + "id": "atlas", + "description": [ + "First cervical vertebra.", + "Named for Atlas of Greek mythology because it supports the \u201cglobe\u201d of the head.", + "It supports the occipital condyles of the skull.", + "It has no body and spinous process." + ], + "images": ["atlas_(superior_aspect)_image.png", "atlas_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_groove_for_vertebral_artery_description.json b/boneset-api/data/descriptions/atlas_groove_for_vertebral_artery_description.json new file mode 100644 index 00000000..d2e7f4fe --- /dev/null +++ b/boneset-api/data/descriptions/atlas_groove_for_vertebral_artery_description.json @@ -0,0 +1,11 @@ +{ + "name": "Groove for vertebral artery", + "id": "atlas_groove_for_vertebral_artery", + "description": [ + "A shallow groove on the superior surface of the posterior arch.", + "Situated just posterior to the lateral mass.", + "* The dorsal primary ramus of C1 (suboccipital nerve) passes between the vertebral artery and the vertebra.", + "** The ventral primary ramus of C1 passes posterior to the vertebral artery." + ], + "images": ["atlas_(superior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_lateral_mass_description.json b/boneset-api/data/descriptions/atlas_lateral_mass_description.json new file mode 100644 index 00000000..2bf53fe8 --- /dev/null +++ b/boneset-api/data/descriptions/atlas_lateral_mass_description.json @@ -0,0 +1,10 @@ +{ + "name": "Lateral mass", + "id": "atlas_lateral_mass", + "description": [ + "The largest and most solid part of the vertebra.", + "Connects the arches with the transverse processes.", + "Contains the superior and inferior articular surfaces." + ], + "images": ["atlas_(superior_aspect)_image.png", "atlas_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/atlas_transverse_process_description.json b/boneset-api/data/descriptions/atlas_transverse_process_description.json new file mode 100644 index 00000000..66602f90 --- /dev/null +++ b/boneset-api/data/descriptions/atlas_transverse_process_description.json @@ -0,0 +1,10 @@ +{ + "name": "Transverse process", + "id": "atlas_transverse_process", + "description": [ + "Lateral projections that serve as attachments for muscles.", + "Contain a transverse foramen that transmits the vertebral vessels.", + "Apex of process can be palpated between the mastoid process of thee temporal bone and ramus of the mandible." + ], + "images": ["atlas_(superior_aspect)_image.png", "atlas_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/auricular_surface_description.json b/boneset-api/data/descriptions/auricular_surface_description.json new file mode 100644 index 00000000..88630cba --- /dev/null +++ b/boneset-api/data/descriptions/auricular_surface_description.json @@ -0,0 +1,10 @@ +{ + "name": "Auricular surface", + "id": "auricular_surface", + "description": [ + "Roughened surface on the posterior part of the ilium.", + "Normally covered with cartilage", + "Marks the point of articulation for the lateral surface of the sacrum at the sacroiliac joint." + ], + "images": ["auricular_surface_image.jpg"] +} diff --git a/boneset-api/data/descriptions/axis_articular_surfaces_description.json b/boneset-api/data/descriptions/axis_articular_surfaces_description.json new file mode 100644 index 00000000..8da17bdf --- /dev/null +++ b/boneset-api/data/descriptions/axis_articular_surfaces_description.json @@ -0,0 +1,10 @@ +{ + "name": "Articular surfaces", + "id": "axis_articular_surfaces", + "description": [ + "The superior surface articulates with the inferior articular surface of the Atlas (CV1).", + "The inferior surface articulates with the superior articular surface of CV3.", + "Both are closely oriented in the horizontal plane." + ], + "images": ["axis_(superior_aspect)_image.png", "axis_(inferior_aspect)_image.png", "axis_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_body_(dens)_description.json b/boneset-api/data/descriptions/axis_body_(dens)_description.json new file mode 100644 index 00000000..8188e0f5 --- /dev/null +++ b/boneset-api/data/descriptions/axis_body_(dens)_description.json @@ -0,0 +1,13 @@ +{ + "name": "Body (Dens)", + "id": "axis_body_(dens)", + "description": [ + "Superior part", + "Consists of an odontoid process (dens).", + "This process articulates with a facet on the posterior surface of the anterior arch of the atlas.", + "It is held in place by the transverse ligament of the atlas.", + "Inferior part", + "Projects downward and overlaps part of CV3." + ], + "images": ["axis_(superior_aspect)_image.png", "axis_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_body_description.json b/boneset-api/data/descriptions/axis_body_description.json new file mode 100644 index 00000000..e69de29b diff --git a/boneset-api/data/descriptions/axis_description.json b/boneset-api/data/descriptions/axis_description.json new file mode 100644 index 00000000..99942a09 --- /dev/null +++ b/boneset-api/data/descriptions/axis_description.json @@ -0,0 +1,10 @@ +{ + "name": "Axis", + "id": "axis", + "description": [ + "The second cervical vertebra (CV2).", + "Contains an odontoid process (dens) that articulates with the Atlas (CV1) superiorly.", + "This allows for rotational movement of the skull." + ], + "images": ["axis_(superior_aspect)_image.png", "axis_(inferior_aspect)_image.png", "axis_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_lamina_description.json b/boneset-api/data/descriptions/axis_lamina_description.json new file mode 100644 index 00000000..49a0cf7b --- /dev/null +++ b/boneset-api/data/descriptions/axis_lamina_description.json @@ -0,0 +1,8 @@ +{ + "name": "Lamina", + "id": "axis_lamina", + "description": [ + "Connect the spinous process to the transverse process." + ], + "images": ["axis_(superior_aspect)_image.png", "axis_(inferior_aspect)_image.png", "axis_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_pedicle_description.json b/boneset-api/data/descriptions/axis_pedicle_description.json new file mode 100644 index 00000000..c504dc47 --- /dev/null +++ b/boneset-api/data/descriptions/axis_pedicle_description.json @@ -0,0 +1,8 @@ +{ + "name": "Pedicle", + "id": "axis_pedicle", + "description": [ + "A small piece that connects the transverse process to the body." + ], + "images": ["axis_(superior_aspect)_image.png", "axis_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_spinous_process_description.json b/boneset-api/data/descriptions/axis_spinous_process_description.json new file mode 100644 index 00000000..7072dcf3 --- /dev/null +++ b/boneset-api/data/descriptions/axis_spinous_process_description.json @@ -0,0 +1,9 @@ +{ + "name": "Spinous process", + "id": "axis_spinous_process", + "description": [ + "The posterior projection of the vertebra.", + "Usually large, very strong and bifurcated at the tip." + ], + "images": ["axis_(superior_aspect)_image.png", "axis_(inferior_aspect)_image.png", "axis_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_transverse_foramen_description.json b/boneset-api/data/descriptions/axis_transverse_foramen_description.json new file mode 100644 index 00000000..d27e912d --- /dev/null +++ b/boneset-api/data/descriptions/axis_transverse_foramen_description.json @@ -0,0 +1,9 @@ +{ + "name": "Transverse foramen", + "id": "axis_transverse_foramen", + "description": [ + "An opening in the transverse process.", + "Transmits the vertebral vessels.", + "Directed laterally to allow the vertebral vessels to turn laterally under the superior articular surface." + ] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/axis_transverse_process_description.json b/boneset-api/data/descriptions/axis_transverse_process_description.json new file mode 100644 index 00000000..ab091b0b --- /dev/null +++ b/boneset-api/data/descriptions/axis_transverse_process_description.json @@ -0,0 +1,9 @@ +{ + "name": "Transverse process", + "id": "axis_transverse_process", + "description": [ + "Projects inferiorly and laterally.", + "Arises from the junction of the pedicle and lamina." + ], + "images": ["axis_(inferior_aspect)_image.png", "axis_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/bony_pelvis_description.json b/boneset-api/data/descriptions/bony_pelvis_description.json new file mode 100644 index 00000000..fe7ecd68 --- /dev/null +++ b/boneset-api/data/descriptions/bony_pelvis_description.json @@ -0,0 +1,11 @@ +{ + "name": "Bony Pelvis", + "id": "bony_pelvis", + "description": [ + "The bony pelvis is made up of tow hip bones, sacrum, and coccyx.", + "Hip bones - 3 fused bones : Ilium, Ischium, Pubis", + "The acetabulum is a cup shaped depression that articulates with the head of the femur to from the hip joint, a ball-and-socket type synovial joint.", + "The obturator foramen is an opening created by the inferior ramus and body of the ischium, and superior and inferior pubic rami. This foramen is partially covered by the obturator membrane. The inner and outer surfaces of the obturator membrane provide the origin for the obturator internus and externus muscles, respectively." + ], + "images": ["bony_pelvis_image1.jpg", "bony_pelvis_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_body_description.json b/boneset-api/data/descriptions/cervical_body_description.json new file mode 100644 index 00000000..53b8fe1f --- /dev/null +++ b/boneset-api/data/descriptions/cervical_body_description.json @@ -0,0 +1,11 @@ +{ + "name": "Body", + "id": "cervical_body", + "description": [ + "Smallest of all the vertebrae.", + "Ovoid in shape.", + "Discal surfaces contain a lip that overlaps the intervertebral disc to restrict both lateral and anterior/posterior gliding movements.", + "It has a concave superior surface and a convex inferior surface." + ], + "images": ["cervical_(superior_aspect)_image.png", "cervical_(inferior_aspect)_image.png", "cervical_(right_lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_description.json b/boneset-api/data/descriptions/cervical_description.json new file mode 100644 index 00000000..6d0a6b70 --- /dev/null +++ b/boneset-api/data/descriptions/cervical_description.json @@ -0,0 +1,13 @@ +{ + "name": "Typical cervical vertebrae (CV3-7)", + "id": "cervical", + "description": [ + "Possess a small, broad body.", + "The transverse processes contain a foramen that transmit the vertebral vessels.", + "The vertebral artery passes through Cv1-6.", + "The vertebral vein passes through CV1-7.", + "The spinous processes can be bifid (split) at the apex.", + "CV7 has an extended spinous process known as the vertebra prominens." + ], + "images": ["cervical_(superior_aspect)_image.png", "cervical_(inferior_aspect)_image.png", "cervical_(right_lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_lamina_description.json b/boneset-api/data/descriptions/cervical_lamina_description.json new file mode 100644 index 00000000..a31ed9e9 --- /dev/null +++ b/boneset-api/data/descriptions/cervical_lamina_description.json @@ -0,0 +1,8 @@ +{ + "name": "Lamina", + "id": "cervical_lamina", + "description": [ + "Connects the transverse process to the spinous process." + ], + "images": ["cervical_(superior_aspect)_image.png", "cervical_(inferior_aspect)_image.png", "cervical_(right_lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_pedicle_description.json b/boneset-api/data/descriptions/cervical_pedicle_description.json new file mode 100644 index 00000000..3531d8f3 --- /dev/null +++ b/boneset-api/data/descriptions/cervical_pedicle_description.json @@ -0,0 +1,8 @@ +{ + "name": "Pedicle", + "id": "cervical_pedicle", + "description": [ + "Connects the transverse process to the body." + ], + "images": ["cervical_(superior_aspect)_image.png", "cervical_(inferior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_spinous_process_description.json b/boneset-api/data/descriptions/cervical_spinous_process_description.json new file mode 100644 index 00000000..75459ac5 --- /dev/null +++ b/boneset-api/data/descriptions/cervical_spinous_process_description.json @@ -0,0 +1,8 @@ +{ + "name": "Spinous process", + "id": "cervical_spinous_process", + "description": [ + "The posterior projection that is usually short and bifid." + ], + "images": ["cervical_(superior_aspect)_image.png", "cervical_(inferior_aspect)_image.png", "cervical_(right_lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_transverse_process_description.json b/boneset-api/data/descriptions/cervical_transverse_process_description.json new file mode 100644 index 00000000..8986b55a --- /dev/null +++ b/boneset-api/data/descriptions/cervical_transverse_process_description.json @@ -0,0 +1,9 @@ +{ + "name": "Transverse process", + "id": "cervical_transverse_process", + "description": [ + "Formed around the transverse foramina on each side.", + "Projects laterally from the junction of the lamina and pedicles." + ], + "images": ["cervical_(superior_aspect)_image.png", "cervical_(inferior_aspect)_image.png", "cervical_(right_lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_vertebral_arch_description.json b/boneset-api/data/descriptions/cervical_vertebral_arch_description.json new file mode 100644 index 00000000..dac92db7 --- /dev/null +++ b/boneset-api/data/descriptions/cervical_vertebral_arch_description.json @@ -0,0 +1,9 @@ +{ + "name": "Vertebral arch", + "id": "cervical_vertebral_arch", + "description": [ + "A posterior arch that is created from the lamina and pedicles on each side.", + "Forms the posterior and lateral surface of the vertebral foramen." + ], + "images": ["cervical_(superior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/cervical_vertebral_foramen_description.json b/boneset-api/data/descriptions/cervical_vertebral_foramen_description.json new file mode 100644 index 00000000..2ecc6fe8 --- /dev/null +++ b/boneset-api/data/descriptions/cervical_vertebral_foramen_description.json @@ -0,0 +1,9 @@ +{ + "name": "Vertebral foramen", + "id": "cervical_vertebral_foramen", + "description": [ + "An opening created by the vertebral arch posteriorly and the body anteriorly.", + "Transmits the spinal cord and its coverings as well as the vessels that supply it." + ], + "images": ["cervical_(superior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/clavicle_acromial_end_description.json b/boneset-api/data/descriptions/clavicle_acromial_end_description.json new file mode 100644 index 00000000..0fffc3e1 --- /dev/null +++ b/boneset-api/data/descriptions/clavicle_acromial_end_description.json @@ -0,0 +1,11 @@ +{ + "slide": 11, + "name": "Acromial end", + "id": "acromial_end", + "description": [ + "The lateral end that articulates with the acromion process of the scapula.", + "Provides distal attachment for the trapezius muscle on the superior and posterior surface.", + "Provides proximal attachment for the deltoid muscle on the superior and anterior surface." + ], + "images": ["Clavicle_Top_Image.jpg", "Clavicle_Bottom_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/clavicle_description.json b/boneset-api/data/descriptions/clavicle_description.json new file mode 100644 index 00000000..2609289f --- /dev/null +++ b/boneset-api/data/descriptions/clavicle_description.json @@ -0,0 +1,13 @@ +{ + "slide": 8, + "name": "Clavicle", + "id": "clavicle", + "description": [ + "Also known as the collar bone.", + "It is the most frequently broken bone in the body.", + "It is convex medially and concave laterally on its anterior surface.", + "It articulates medially with the manubrium of the sternum and laterally with the acromion process of the scapula.", + "Acts as a brace or strut for the shoulder and allows the upper limb to move freely on the trunk." + ], + "images": ["Clavicle_Left_View_Image.jpg", "Clavicle_Right_View_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/clavicle_shaft_description.json b/boneset-api/data/descriptions/clavicle_shaft_description.json new file mode 100644 index 00000000..09999fff --- /dev/null +++ b/boneset-api/data/descriptions/clavicle_shaft_description.json @@ -0,0 +1,21 @@ +{ + "slide": 10, + "name": "Shaft", + "id": "shaft", + "description": [ + "Mostly cylindrical in shape.", + "Provides proximal attachment for the pectoralis major muscle on its anterior surface.", + "The subclavius muscle originates on and lies in a groove on the posterior surface.", + "The", + "trapezoid line", + "provides attachment for the trapezoid part of the coracoclavicular ligament*.", + "The", + "conoid tubercle", + "provides attachment for the conoid part of the coracoclavicular ligament*.", + "The", + "costoclavicular ligament", + "connects the clavicle to the upper surface of the first rib and its cartilage.", + "* The coracoclavicular ligament connects the clavicle to the coracoid process of the scapula." + ], + "images": ["Clavicle_Top_Image.jpg", "Clavicle_Bottom_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/clavicle_sternal_end_description.json b/boneset-api/data/descriptions/clavicle_sternal_end_description.json new file mode 100644 index 00000000..f9249080 --- /dev/null +++ b/boneset-api/data/descriptions/clavicle_sternal_end_description.json @@ -0,0 +1,11 @@ +{ + "slide": 12, + "name": "Sternal end", + "id": "sternal_end", + "description": [ + "The medial end that articulates with the manubrium of the sternum.", + "Provides attachment for the lateral fibers of the sternohyoid muscle on the posterior surface.", + "Provides proximal attachment for the clavicular head of the sternocleidomastoid muscle." + ], + "images": ["Clavicle_Top_Image.jpg", "Clavicle_Bottom_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/coccyx_description.json b/boneset-api/data/descriptions/coccyx_description.json new file mode 100644 index 00000000..d0f648c5 --- /dev/null +++ b/boneset-api/data/descriptions/coccyx_description.json @@ -0,0 +1,10 @@ +{ + "name": "Coccyx", + "id": "coccyx", + "description": [ + "Sometimes called the \u201ctail bone.\u201d", + "Made up of three to five fused coccygeal vertebrae.", + "Superiorly, it articulates with the sacrum at the sacrococcygeal joint, but is usually fused to it." + ], + "images": ["coccyx_(anterior_aspect)_image.png", "coccyx_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/first_rib_description.json b/boneset-api/data/descriptions/first_rib_description.json new file mode 100644 index 00000000..3b1b2b1e --- /dev/null +++ b/boneset-api/data/descriptions/first_rib_description.json @@ -0,0 +1,10 @@ +{ + "slide": 13, + "name": "First Rib", + "id": "first_rib", + "description": [ + "The first rib is the shortest, broadest and most curved.", + "It attaches to the manubrium of the sternum just inferior to the sternoclavicular joint." + ], + "images": ["First_Rib_Top_Image.jpg", "First_Rib_Bottom_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/first_rib_head_and_neck_description.json b/boneset-api/data/descriptions/first_rib_head_and_neck_description.json new file mode 100644 index 00000000..e25f1798 --- /dev/null +++ b/boneset-api/data/descriptions/first_rib_head_and_neck_description.json @@ -0,0 +1,14 @@ +{ + "slide": 15, + "name": "Head and Neck", + "id": "head_and_neck", + "description": [ + "The", + "head", + "is small and round and articulates with the body of the first thoracic vertebra.", + "The", + "neck", + "is a constricted portion situated between the head and the tubercle." + ], + "images": ["First_Rib_Top_Image.jpg", "First_Rib_Bottom_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/first_rib_tubercles_description.json b/boneset-api/data/descriptions/first_rib_tubercles_description.json new file mode 100644 index 00000000..29499b13 --- /dev/null +++ b/boneset-api/data/descriptions/first_rib_tubercles_description.json @@ -0,0 +1,15 @@ +{ + "slide": 16, + "name": "Tubercles", + "id": "tubercles", + "description": [ + "The", + "tubercle", + "articulates with the transverse process of the first thoracic vertebra.", + "The", + "scalene tubercle", + "is a small pointed projection on the superior surface.", + "It provides distal attachment for the anterior scalene muscle." + ], + "images": ["First_Rib_Top_Image.jpg", "First_Rib_Bottom_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/iliac_crest_description.json b/boneset-api/data/descriptions/iliac_crest_description.json new file mode 100644 index 00000000..a576cae2 --- /dev/null +++ b/boneset-api/data/descriptions/iliac_crest_description.json @@ -0,0 +1,12 @@ +{ + "name": "Iliac Crest", + "id": "iliac_crest", + "description": [ + "Forms the superior border of the ilium.", + "Reaches from the anterior superior to the posterior superior iliac spines.", + "The tensor fascia lata, abdominal external oblique, and latissumus dorsi muscles attach to the external lip.", + "The iliac fascia, internal oblique, transversus abdominus, quadratus lumborum, sacrospinalis, and lilacus muscles attach to the inner lip.", + "The top of the iliac crest is a surface anatomy landmark for marking the level of the fourth lumbar vertebral body (LV4) and is an important reference for performing lumbar puncture." + ], + "images": ["iliac_crest_image1.jpg", "iliac_crest_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/ilium_description.json b/boneset-api/data/descriptions/ilium_description.json new file mode 100644 index 00000000..18e72fd0 --- /dev/null +++ b/boneset-api/data/descriptions/ilium_description.json @@ -0,0 +1,9 @@ +{ + "name": "Ilium", + "id": "ilium", + "description": [ + "The Ilium forms the superior part of the bony pelvis.", + "It articulates with the sacrum to form the sacroiliac joint." + ], + "images": ["ilium_image1.jpg", "ilium_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/inferior_cranial_base_description.json b/boneset-api/data/descriptions/inferior_cranial_base_description.json new file mode 100644 index 00000000..1531eb12 --- /dev/null +++ b/boneset-api/data/descriptions/inferior_cranial_base_description.json @@ -0,0 +1,8 @@ +{ + "name": "Cranial base", + "id": "cranial_base", + "description": [ + "The base of the skull extends from the upper teeth anteriorly to the superior nuchal line of the occipital bone posteriorly." + ], + "images": ["Inferior_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/inferior_maxilla_description.json b/boneset-api/data/descriptions/inferior_maxilla_description.json new file mode 100644 index 00000000..563e3d6d --- /dev/null +++ b/boneset-api/data/descriptions/inferior_maxilla_description.json @@ -0,0 +1,16 @@ +{ + "name": "Maxilla", + "id": "maxilla", + "description": [ + "Palatine process", + "The inferior portion of each maxilla that makes up the anterior part of the hard palate.", + "Median palatine suture", + "The joint between the palatine processes on each side.", + "Transverse palatine suture", + "The joint between the palatine processes of the maxilla and the horizontal plates of the palatine bones.", + "Incisive foramen", + "An opening in the midline of the anterior part of the hard palate.", + "Transmits the nasopalatine nerve and the sphenopalatine vessels." + ], + "images": ["Inferior_Maxilla_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/inferior_occipital_bone_description.json b/boneset-api/data/descriptions/inferior_occipital_bone_description.json new file mode 100644 index 00000000..aeb42c01 --- /dev/null +++ b/boneset-api/data/descriptions/inferior_occipital_bone_description.json @@ -0,0 +1,17 @@ +{ + "name": "Occipital bone", + "id": "occipital_bone", + "description": [ + "Foramen lacerum", + "An opening bounded by the pterygoid process, petrous part of the temporal and basilar part of the occipital bones. Transmits the greater petrosal nerve. (not part of the occipital bone)", + "Jugular foramen", + "An opening between the petrous part of the temporal bone and the jugular notch of the occipital bone. Transmits the internal jugular vein, the glossopharyngeal nerve (CN IX), vagus nerve (CN X), and the accessory nerve (CN XI).", + "Hypoglossal canal", + "An opening anterior and superior to the condyle. Transmits the hypoglossal nerve (CN XII).", + "Occipital condyle", + "A smooth surface that articulates with the first cervical vertebrae (atlas).", + "Foramen magnum", + "A large opening in the anterior and midline part of the occipital bone. Transmits the medulla of the brainstem, the vertebral vessels, and the spinal roots of the accessory nerve (CN XI)." + ], + "images": ["Inferior_Occipital_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/inferior_palatine_bone_description.json b/boneset-api/data/descriptions/inferior_palatine_bone_description.json new file mode 100644 index 00000000..020f457f --- /dev/null +++ b/boneset-api/data/descriptions/inferior_palatine_bone_description.json @@ -0,0 +1,16 @@ +{ + "name": "Palatine bone", + "id": "palatine_bone", + "description": [ + "Horizontal plate", + "Forms the posterior part of the hard palate.", + "Greater palatine foramen", + "An opening just lateral to the third molars of the upper jaw.", + "Transmits the greater palatine nerve and vessels.", + "Lesser palatine foramen", + "A smaller opening that lies posterior to the greater palatine foramen.", + "Usually found in the pyramid process of palatine bone.", + "Transmits the lesser palatine nerve and vessels." + ], + "images": ["Inferior_Palatine_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/inferior_sphenoid_bone_description.json b/boneset-api/data/descriptions/inferior_sphenoid_bone_description.json new file mode 100644 index 00000000..0fe9137c --- /dev/null +++ b/boneset-api/data/descriptions/inferior_sphenoid_bone_description.json @@ -0,0 +1,14 @@ +{ + "name": "Sphenoid Bone", + "id": "Sphenoid_bone", + "description": [ + "Sphenoid bone", + "Pterygoid process", + "Projects inferiorly from the junction of the body and the greater wing of the sphenoid bone. Composed of medial and lateral pterygoid plates separated by the pterygoid fossae. The origins of the medial and lateral pterygoid muscles are from either side of the lateral plate respectively. The tensor veli palatini muscle arises partially from the scaphoid fossa at the base of the medial plate and hooks around the hamulus.", + "Foramen ovale", + "An oval opening at the base of the lateral plate. Transmits the mandibular branch (V3) of the trigeminal nerve (CN V) as well as the lesser petrosal nerve and the accessory meningeal artery.", + "Foramen spinosum", + "A smaller opening just posterior and lateral to the foramen ovale. Transmits the middle meningeal artery and the meningeal branch of the mandibular nerve." + ], + "images": ["Inferior_Sphenoid_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/inferior_temporal_bone_description.json b/boneset-api/data/descriptions/inferior_temporal_bone_description.json new file mode 100644 index 00000000..10fe052b --- /dev/null +++ b/boneset-api/data/descriptions/inferior_temporal_bone_description.json @@ -0,0 +1,18 @@ +{ + "name": "Temporal Bones", + "id": "Temporal_bones", + "description": [ + "Temporal bone", + "Petrotympanic fissure", + "A fissure between the mandibular fossa and the tympanic part of the temporal bone. Transmits the chorda tympani branch of the facial nerve (CN VII).", + "Carotid canal", + "A small opening in the petrous part medial to the styloid process. Transmits the internal carotid artery and the carotid autonomic plexus.", + "Styloid process", + "A sharp protrusion that extends inferiorly and anteriorly from the petrous part. Three muscles take origin here, they are: styloglossus, stylohyoid, and stylopharyngeus.", + "Stylomastoid foramen", + "An opening between the styloid and mastoid processes. Transmits the facial nerve (CN VII).", + "Mastoid process", + "A rounded protrusion that extends inferiorly from the lateral part of the temporal bone just behind the external acoustic meatus. Serves as an attachment for splenius and longissimus capitus, posterior belly of the digastric, and the sternocleidomastoid muscles." + ], + "images": ["Inferior_Temporal_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/inferior_vomer_description.json b/boneset-api/data/descriptions/inferior_vomer_description.json new file mode 100644 index 00000000..df23587f --- /dev/null +++ b/boneset-api/data/descriptions/inferior_vomer_description.json @@ -0,0 +1,12 @@ +{ + "name": "Vomer", + "id": "vomer", + "description": [ + "The posterior part of the vomer lies between the medial plates of the sphenoid bones on either side.", + "It contributes to the inferior and posterior part of the nasal septum.", + "Choanae", + "The posterior openings of the nasal passages.", + "Choanae" + ], + "images": ["Inferior_Vomer_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/ischial_spine_description.json b/boneset-api/data/descriptions/ischial_spine_description.json new file mode 100644 index 00000000..f2e59238 --- /dev/null +++ b/boneset-api/data/descriptions/ischial_spine_description.json @@ -0,0 +1,10 @@ +{ + "name": "Ischial Spine", + "id": "ischial_spine", + "description": [ + "A bony projection on the posterior surface of the body of the ischium.", + "It separates the greater and lesser sciatic notches.", + "Provides attachment for the sacrospinous ligament and superior gemellus muscle." + ], + "images": ["ischial_spine_image1.jpg", "ischial_spine_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/ischial_tuberosity_description.json b/boneset-api/data/descriptions/ischial_tuberosity_description.json new file mode 100644 index 00000000..a5d4df0b --- /dev/null +++ b/boneset-api/data/descriptions/ischial_tuberosity_description.json @@ -0,0 +1,11 @@ +{ + "name": "Ischial tuberosity", + "id": "ischial_tuberosity", + "description": [ + "A large swelling at the posterior end of the ramus.", + "Also known as the \u201csits bone.\u201d", + "Provides attachment for the origins of the adductor magnus, semimembranosus, semitendinosus, and long head of the biceps femoris muscles.", + "Also provides attachment for the sacrotuberous ligament." + ], + "images": ["ischial_tuberosity_image1.jpg", "ischial_tuberosity_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/ischium_description.json b/boneset-api/data/descriptions/ischium_description.json new file mode 100644 index 00000000..dee4a6d1 --- /dev/null +++ b/boneset-api/data/descriptions/ischium_description.json @@ -0,0 +1,9 @@ +{ + "name": "Ischium", + "id": "ischium", + "description": [ + "Forms the inferoposterior part of the pelvic bone.", + "Situated posterior to the pubis and inferior to the ilium." + ], + "images": ["ischium_image1.jpg", "ischium_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lateral_ethmoid_bone_description.json b/boneset-api/data/descriptions/lateral_ethmoid_bone_description.json new file mode 100644 index 00000000..5a28d837 --- /dev/null +++ b/boneset-api/data/descriptions/lateral_ethmoid_bone_description.json @@ -0,0 +1,8 @@ +{ + "name": "Ethmoid bone", + "id": "ethmoid_bone", + "description": [ + "The ethmoid bone forms part of the medial wall of the orbit." + ], + "images": ["Lateral_Ethmoid_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lateral_lacrimal_bone_description.json b/boneset-api/data/descriptions/lateral_lacrimal_bone_description.json new file mode 100644 index 00000000..ac5bb48b --- /dev/null +++ b/boneset-api/data/descriptions/lateral_lacrimal_bone_description.json @@ -0,0 +1,11 @@ +{ + "name": "Lacrimal bone", + "id": "lacrimal_bone", + "description": [ + "The lacrimal bone forms part of the medial wall of the orbit.", + "Fossa for lacrimal sac", + "A shallow depression formed by the frontal process of the maxilla and the lacrimal bone.", + "The lacrimal sac is the dilated portion of the nasolacrimal duct and is part of an apparatus to drain tears from the surface of the eye to the inferior nasal meatus." + ], + "images": ["Lateral_Ethmoid_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lateral_mandible_description.json b/boneset-api/data/descriptions/lateral_mandible_description.json new file mode 100644 index 00000000..c072e2b9 --- /dev/null +++ b/boneset-api/data/descriptions/lateral_mandible_description.json @@ -0,0 +1,18 @@ +{ + "name": "Mandible", + "id": "mandible", + "description": [ + "Mandible", + "Ramus", + "Is quadrangular in shape and projects superiorly from the posterior part of the body of the mandible. The insertion of the masseter muscle attaches to the lateral surface of the ramus.", + "Condylar process", + "The posterior projection of the ramus. The distal portion has a head that articulates with the condylar fossa of the temporal bone to form the temporomandibular joint.", + "Coronoid process", + "The anterior projection of the ramus. The temporalis muscle inserts on the coronoid process.", + "Mandibular notch", + "Space created by the separation of the two processes of the ramus.", + "Angle", + "The part of the bone where the ramus and inferior borders meet." + ], + "images": ["Lateral_Mandible_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/lateral_parietal_bone_description.json b/boneset-api/data/descriptions/lateral_parietal_bone_description.json new file mode 100644 index 00000000..2c0f13c9 --- /dev/null +++ b/boneset-api/data/descriptions/lateral_parietal_bone_description.json @@ -0,0 +1,12 @@ +{ + "name": "Parietal bone", + "id": "parietal_bone", + "description": [ + "Makes up the large, curved portion superior, lateral and posterior skull.", + "Joins with the posterior part of the frontal bone at the", + "coronal suture.", + "Joins with the superior part of the occipital bone at the", + "lambdoid suture." + ], + "images": ["Lateral_view_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lateral_sphenoid_bone_description.json b/boneset-api/data/descriptions/lateral_sphenoid_bone_description.json new file mode 100644 index 00000000..575eb800 --- /dev/null +++ b/boneset-api/data/descriptions/lateral_sphenoid_bone_description.json @@ -0,0 +1,9 @@ +{ + "name": "Sphenoid bone", + "id": "sphenoid_bone", + "description": [ + "The greater wing of the sphenoid bone can be seen from the lateral view.", + "The greater wing forms part of the medial wall of the temporal fossa and the roof of the infratemporal fossa." + ], + "images": ["Lateral_Sphenoid_bone_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lateral_temporal_description.json b/boneset-api/data/descriptions/lateral_temporal_description.json new file mode 100644 index 00000000..9648e9f1 --- /dev/null +++ b/boneset-api/data/descriptions/lateral_temporal_description.json @@ -0,0 +1,18 @@ +{ + "name": "Temporal Bone ", + "id": "temporal_bone", + "description": [ + "Temporal bone", + "Squamous part", + "The flattened part of the temporal bone that makes up much of the floor (medial wall) of the temporal fossa.", + "Zygomatic process", + "Part of the bone that extends anteriorly to join with the temporal process of the zygomatic bone. Together, these form the zygomatic arch.", + "Mastoid process", + "An inferior projection where the insertion of the sternocleidomastoid muscle attaches.", + "External acoustic meatus", + "The external opening for the ear.", + "Mandibular fossa", + "A shallow depression that receives the head of the condylar process of the mandible to form the temporomandibular joint." + ], + "images": ["Lateral_Temporal_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/lateral_view_description.json b/boneset-api/data/descriptions/lateral_view_description.json new file mode 100644 index 00000000..1b39be08 --- /dev/null +++ b/boneset-api/data/descriptions/lateral_view_description.json @@ -0,0 +1,21 @@ +{ + "name": "Lateral view", + "id": "lateral_view", + "description": [ + "Lateral view", + "The lateral view can be divided into 3 sections:", + "Facial - anterior", + "Temporal - middle", + "Occipital - posterior", + "The temporal section is separated by the zygomatic arch into into a", + "temporal fossa", + "superiorly and an infratemporal fossa inferiorly.", + "The origin of the temporalis muscle attaches to the temporal fossa", + "The", + "pterion", + "is located in the temporal fossa and marks the junction where the frontal, parietal, temporal, and sphenoid bones meet.", + "The pterion is an important landmark because it overlies the anterior branch of the middle meningeal artery.", + "Damage to this area of the skull can cause a rupture of this artery" + ], + "images": ["Lateral_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_accessory_process_description.json b/boneset-api/data/descriptions/lumbar_accessory_process_description.json new file mode 100644 index 00000000..dfb6d6b4 --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_accessory_process_description.json @@ -0,0 +1,9 @@ +{ + "name": "Accessory process", + "id": "lumbar_accessory_process", + "description": [ + "A small protrusion at the base of the junction between the transverse process and mammillary process.", + "Attachment site for the intertransversarii muscles." + ], + "images": ["lumbar_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_articular_surfaces_description.json b/boneset-api/data/descriptions/lumbar_articular_surfaces_description.json new file mode 100644 index 00000000..578563b5 --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_articular_surfaces_description.json @@ -0,0 +1,8 @@ +{ + "name": "Articular surfaces", + "id": "lumbar_articular_surfaces", + "description": [ + "The articular processes of the lumbar vertebrae are closest to the sagittal plane." + ], + "images": ["lumbar_(superior_aspect)_image.png", "lumbar_(inferior_aspect)_image.png", "lumbar_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_body_description.json b/boneset-api/data/descriptions/lumbar_body_description.json new file mode 100644 index 00000000..e6eb1544 --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_body_description.json @@ -0,0 +1,10 @@ +{ + "name": "Body", + "id": "lumbar_body", + "description": [ + "Bodies are large to support body weight", + "When viewed from superior or inferior aspect, bodies look kidney-shaped.", + "Body is wider transversely." + ], + "images": ["lumbar_(superior_aspect)_image.png", "lumbar_(inferior_aspect)_image.png", "lumbar_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_description.json b/boneset-api/data/descriptions/lumbar_description.json new file mode 100644 index 00000000..ea55dcb2 --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_description.json @@ -0,0 +1,10 @@ +{ + "name": "Lumbar vertebrae", + "id": "lumbar", + "description": [ + "Large in size.", + "They have no costal facets or transverse foramina.", + "Vertebral foramen is triangular in shape and larger than in the thoracic levels but not the cervical levels." + ], + "images": ["lumbar_(superior_aspect)_image.png", "lumbar_(inferior_aspect)_image.png", "lumbar_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_mammillary_process_description.json b/boneset-api/data/descriptions/lumbar_mammillary_process_description.json new file mode 100644 index 00000000..7c81a751 --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_mammillary_process_description.json @@ -0,0 +1,10 @@ +{ + "name": "Mammillary process", + "id": "lumbar_mammillary_process", + "description": [ + "A short, thick protrusion that extends posteriorly from the superior articular process.", + "It is the attachment site for the multifidi and intertransversarii muscles of the back.", + "Also, it helps to stabilize the vertebral joints." + ], + "images": ["lumbar_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_spinous_process_description.json b/boneset-api/data/descriptions/lumbar_spinous_process_description.json new file mode 100644 index 00000000..cd27b4ae --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_spinous_process_description.json @@ -0,0 +1,9 @@ +{ + "name": "Spinous process", + "id": "lumbar_spinous_process", + "description": [ + "Short, thick, broad, and directed posteriorly.", + "Thickened along its posterior and inferior borders." + ], + "images": ["lumbar_(superior_aspect)_image.png", "lumbar_(inferior_aspect)_image.png", "lumbar_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/lumbar_transverse_process_description.json b/boneset-api/data/descriptions/lumbar_transverse_process_description.json new file mode 100644 index 00000000..a62c7c6f --- /dev/null +++ b/boneset-api/data/descriptions/lumbar_transverse_process_description.json @@ -0,0 +1,10 @@ +{ + "name": "Transverse process", + "id": "lumbar_transverse_process", + "description": [ + "Project posterolaterally.", + "Connected to the body by a thick pedicle.", + "Connected to the spinous process by a thick lamina." + ], + "images": ["lumbar_(superior_aspect)_image.png", "lumbar_(inferior_aspect)_image.png", "lumbar_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/pectineal_line_description.json b/boneset-api/data/descriptions/pectineal_line_description.json new file mode 100644 index 00000000..beb0b3ec --- /dev/null +++ b/boneset-api/data/descriptions/pectineal_line_description.json @@ -0,0 +1,10 @@ +{ + "name": "Pectineal line", + "id": "pectineal_line", + "description": [ + "A prominent ridge on the superior ramus of the pubis.", + "Provides attachment for the origin of the pectineus muscle.", + "Also provides attachment for the conjoint tendon, and the lacunar and pectineal ligaments." + ], + "images": ["pectineal_line_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/posterior_iliac_spines_description.json b/boneset-api/data/descriptions/posterior_iliac_spines_description.json new file mode 100644 index 00000000..4d0fef8d --- /dev/null +++ b/boneset-api/data/descriptions/posterior_iliac_spines_description.json @@ -0,0 +1,12 @@ +{ + "name": "Posterior Iliac Spines", + "id": "posterior_iliac_spines", + "description": [ + "Posterior Superior Iliac Spine", + "A bony projection at the end of the iliac crest posteriorly.", + "Provides attachment for the posterior sacroiliac ligaments.", + "Posterior Inferior Iliac Spine", + "A small prominent along the posterior border of the greater sciatic notch." + ], + "images": ["posterior_iliac_spines_image1.jpg", "posterior_iliac_spines_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/pubic_rami_description.json b/boneset-api/data/descriptions/pubic_rami_description.json new file mode 100644 index 00000000..eead0032 --- /dev/null +++ b/boneset-api/data/descriptions/pubic_rami_description.json @@ -0,0 +1,14 @@ +{ + "name": "Pubic Rami", + "id": "pubic_rami", + "description": [ + "Superior pubic ramus", + "Projects posterolaterally from the body.", + "Contains the pectineal line on its superior surface.", + "There is an obturator groove on its inferior surface which contributes to forming the obturator canal.", + "Inferior pubic ramus", + "Projects inferiorly and laterally from the body.", + "Joins with the ischial ramus to form part of the obturator foramen." + ], + "images": ["pubic_rami_image1.jpg", "pubic_rami_image2.jpg"] +} diff --git a/boneset-api/data/descriptions/pubic_tubercle_description.json b/boneset-api/data/descriptions/pubic_tubercle_description.json new file mode 100644 index 00000000..b9a77371 --- /dev/null +++ b/boneset-api/data/descriptions/pubic_tubercle_description.json @@ -0,0 +1,9 @@ +{ + "name": "Pubic tubercle", + "id": "pubic_tubercle", + "description": [ + "A bony projection from the lateral end of the pubic crest which is a rounded crest on the superior surface of the body of the pubis. ", + "Provides attachment for the inguinal ligament." + ], + "images": ["pubic_tubercle_image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/pubis_description.json b/boneset-api/data/descriptions/pubis_description.json new file mode 100644 index 00000000..aacdcb8f --- /dev/null +++ b/boneset-api/data/descriptions/pubis_description.json @@ -0,0 +1,9 @@ +{ + "name": "Pubis", + "id": "pubis", + "description": [ + "Forms the anteroinferior part of the pelvis.", + "Connects the two pelvic bones from each side." + ], + "images": ["pubis_image1.jpg", "pubis_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/ramus_description.json b/boneset-api/data/descriptions/ramus_description.json new file mode 100644 index 00000000..1d3997c1 --- /dev/null +++ b/boneset-api/data/descriptions/ramus_description.json @@ -0,0 +1,11 @@ +{ + "name": "Ramus", + "id": "ramus", + "description": [ + "The inferior portion of the ischium.", + "Continuous with the inferior ramus of the Pubis.", + "Forms part of the border of the obturator foramen.", + "Provides attachment for the ischiocavernosus and the crus of the penis or clitoris." + ], + "images": ["ramus_image1.jpg", "ramus_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_articular_surface_for_ilium_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_articular_surface_for_ilium_description.json new file mode 100644 index 00000000..2c3b698a --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_articular_surface_for_ilium_description.json @@ -0,0 +1,10 @@ +{ + "name": "Articular surface for ilium", + "id": "sacrum_and_coccyx_articular_surface_for_ilium", + "description": [ + "A flattened surface on the lateral border of the sacrum.", + "Covered in hyaline cartilage.", + "Articulates with the ilium to form the sacroiliac joint." + ], + "images": ["sacrum_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_description.json new file mode 100644 index 00000000..0688bf38 --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_description.json @@ -0,0 +1,14 @@ +{ + "name": "Sacrum and coccyx", + "id": "sacrum_and_coccyx", + "description": [ + "A large, triangular bone that is formed by the fusion of five sacral vertebrae.", + "It forms the posterior and superior borders of the pelvic cavity.", + "Superiorly, it articulates with the fifth lumbar vertebra.", + "Laterally, it articulates with an ilium on each side.", + "Inferiorly, it articulates with the coccyx.", + "The coccyx may be fused to the sacrum.", + "The pelvic surface is concave, while the dorsal surface is convex." + ], + "images": ["sacrum_and_coccyx_(anterior_aspect)_image.png", "sacrum_and_coccyx_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_median_sacral_crest_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_median_sacral_crest_description.json new file mode 100644 index 00000000..832d12f8 --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_median_sacral_crest_description.json @@ -0,0 +1,9 @@ +{ + "name": "Median sacral crest", + "id": "sacrum_and_coccyx_median_sacral_crest", + "description": [ + "Similar to the spinous processes in the upper vertebrae.", + "The spines of the fused sacrum are not prominent and form a ridge or crest." + ], + "images": ["sacrum_and_coccyx_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_foramina_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_foramina_description.json new file mode 100644 index 00000000..ed71e48b --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_foramina_description.json @@ -0,0 +1,10 @@ +{ + "name": "Sacral foramina", + "id": "sacrum_and_coccyx_sacral_foramina", + "description": [ + "Similar to the intervertebral foramina.", + "Four pairs on each surface.", + "Allow the ventral and dorsal primary rami to exit the anterior and posterior sacral foramina, respectively." + ], + "images": ["sacrum_and_coccyx_(anterior_aspect)_image.png", "sacrum_and_coccyx_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_hiatus_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_hiatus_description.json new file mode 100644 index 00000000..0252dc16 --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_hiatus_description.json @@ -0,0 +1,10 @@ +{ + "name": "Sacral hiatus", + "id": "sacrum_and_coccyx_sacral_hiatus", + "description": [ + "The sacral vertebral foramina becomes the sacral canal.", + "The canal contains the cauda equina and the filum terminale as well as the spinal meninges.", + "The sacral canal terminates at the inferior part of the sacrum as the sacral hiatus." + ], + "images": ["sacrum_and_coccyx_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_promontory_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_promontory_description.json new file mode 100644 index 00000000..6cbd6b93 --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_sacral_promontory_description.json @@ -0,0 +1,10 @@ +{ + "name": "Sacral promontory", + "id": "sacrum_and_coccyx_sacral_promontory", + "description": [ + "A projecting anterior edge at the base of the sacrum.", + "Marks part of the border of the pelvic inlet.", + "Articulates with the fifth lumbar vertebra to form the lumbosacral joint." + ], + "images": ["sacrum_(anterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sacrum_and_coccyx_superior_articular_process_description.json b/boneset-api/data/descriptions/sacrum_and_coccyx_superior_articular_process_description.json new file mode 100644 index 00000000..10592e5c --- /dev/null +++ b/boneset-api/data/descriptions/sacrum_and_coccyx_superior_articular_process_description.json @@ -0,0 +1,8 @@ +{ + "name": "Superior articular process", + "id": "sacrum_and_coccyx_superior_articular_process", + "description": [ + "Articulates with the inferior articular surfaces of the fifth lumbar vertebra." + ], + "images": ["sacrum_(posterior_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/scapula_body_description.json b/boneset-api/data/descriptions/scapula_body_description.json new file mode 100644 index 00000000..fe7d009f --- /dev/null +++ b/boneset-api/data/descriptions/scapula_body_description.json @@ -0,0 +1,33 @@ +{ + "slide": 25, + "name": "Scapula Body", + "id": "scapula_body", + "description": [ + "The body of the scapula contains 3 borders.", + "The ", + "axillary border ", + "is lateral and provides proximal attachment for the teres minor and part of the teres major muscles.", + "The ", + "vertebral border ", + "is medial and provides distal attachment for the rhomboideus major (below the spine), rhomboideus minor (at the spine), and levator scapulae (above the spine), and serratus anterior muscles.", + "The ", + "superior border ", + "provides proximal attachment for the inferior belly of the omohyoid muscle.", + "The superior border also contains the ", + "suprascapular notch", + ".", + "The notch is bridged by the superior transverse scapular ligament.", + "The ligament and notch create a foramen that transmits the suprascapular nerve.", + "The body also contains 3 angles.", + "The ", + "inferior angle ", + "provides proximal attachment for part of the teres major and latissumus dorsi muscles.", + "The ", + "superior angle ", + "is between the superior and vertebral borders.", + "The ", + "lateral angle ", + "presents the glenoid fossa." + ], + "images": ["Scapula_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/scapula_fossaw_description.json b/boneset-api/data/descriptions/scapula_fossaw_description.json new file mode 100644 index 00000000..eb2cb6b5 --- /dev/null +++ b/boneset-api/data/descriptions/scapula_fossaw_description.json @@ -0,0 +1,29 @@ +{ + "slide": 27, + "name": "Labels", + "id": "labels", + "description": [ + "Fossae", + "The anterior (costal) surface is known as the ", + "subscapular fossa ", + "and provides attachment for the subscapularis muscle.", + "The posterior (dorsal) surface is divided into the supraspinous and infraspinous fossa by the spine of the scapula.", + "The ", + "supraspinous fossa ", + "provides the origin of the supraspinatus muscle.", + "The ", + "infraspinous fossa ", + "provides the origin of the infraspinatus muscle.", + "The lateral angle presents the glenoid fossa.", + "The ", + "glenoid fossa ", + "is a shallow depression that articulates with the head of the humerus to create a ball-and-socket type synovial joint.", + "The ", + "supraglenoid tubercle ", + "sits above the glenoid fossa and provides the origin for the long head of the biceps brachii muscle.", + "The ", + "infraglenoid tubercle ", + "sits below the glenoid fossa and provides the origin for the long head of the triceps brachii muscle." + ], + "images": ["Scapula_Left_Image.jpg", "Scapula_Right_Image.jpg", "Scapula_Extra_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/scapula_sprine_description.json b/boneset-api/data/descriptions/scapula_sprine_description.json new file mode 100644 index 00000000..960047fd --- /dev/null +++ b/boneset-api/data/descriptions/scapula_sprine_description.json @@ -0,0 +1,14 @@ +{ + "slide": 26, + "name": "Spine", + "id": "spine", + "description": [ + "The spine of the scapula is a prominent ridge on the posterior surface and is triangular in shape.", + "It separates the posterior surface into 2 fossae.", + "The supraspinous fossa above and the infraspinous fossa below.", + "It broadens laterally as the acromion process.", + "It provides proximal attachment for part of the deltoid muscle.", + "The uppermost fibers of the trapezius muscle partially insert on the spine." + ], + "images": ["Scapula_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sciatic_notches_description.json b/boneset-api/data/descriptions/sciatic_notches_description.json new file mode 100644 index 00000000..2de5a91b --- /dev/null +++ b/boneset-api/data/descriptions/sciatic_notches_description.json @@ -0,0 +1,11 @@ +{ + "name": "Sciatic notches", + "id": "sciatic_notches", + "description": [ + "Greater sciatic notch : 1. A large notch superior to the ischial spine. 2. Converted into a foramen by the sacrospinous and sacrotuberous ligament.", + "Foramen transmits: Superior gluteal vessels and nerve. Piriformis muscle. Sciatic nerve. Inferior gluteal vessels and nerve. Internal pudendal vessels and pudendal nerve. Posterior femoral cutaneous nerves. Nerves to quadratus femoris and obturator internus muscles", + "Lesser sciatic notch : 1. A smaller notch inferior to the ischial spine. 2. Converted into a foramen by the sacrotuberous ligament.", + "Foramen transmits : Tendon of obturator internus muscle. Internal pudendal vessels and pudendal nerve. Nerve to obturator internus" + ], + "images": ["sciatic_notches_image1.jpg", "sciatic_notches_image2.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sternum_body_description.json b/boneset-api/data/descriptions/sternum_body_description.json new file mode 100644 index 00000000..a448be35 --- /dev/null +++ b/boneset-api/data/descriptions/sternum_body_description.json @@ -0,0 +1,15 @@ +{ + "slide": 6, + "name": "Body", + "id": "body", + "description": [ + "The body extends from the 5", + "th", + "through 9", + "th", + "thoracic vertebrae levels.", + "It articulates with the costal cartilages of ribs 2-7 on is lateral borders.", + "It articulates with the manubrium superiorly and the xiphoid process inferiorly." + ], + "images": [] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sternum_description.json b/boneset-api/data/descriptions/sternum_description.json new file mode 100644 index 00000000..81f97bad --- /dev/null +++ b/boneset-api/data/descriptions/sternum_description.json @@ -0,0 +1,22 @@ +{ + "slide": 3, + "name": "Sternum", + "id": "sternum", + "description": [ + "Sternum ", + "Also known as the breast bone.", + "Consists of a superior manubrium, intermediate body, and inferior xiphoid process.", + "It is convex on its anterior surface and concave on its posterior surface.", + "It articulates with the clavicles superiorly and the cartilages of the upper 7 ribs inferiorly.", + "The sternal fibers of pectoralis major muscle originate from the anterior surface of the manubrium and body.", + "The sternothyroid and sternohyoid muscles originate from the posterior surface of the manubrium.", + "Transversus thoracis muscle attaches to the posterior surface of the body and xiphoid process.", + "The medial fibers of rectus abdominus attach to the anterior surface of the xiphoid process.", + "The linea alba attaches to the inferior border of the xiphoid process.", + "Sternum ", + "(anterior aspect)", + "Sternum ", + "(Posterior aspect)" + ], + "images": ["Sternum_Left_Image.jpg", "Sternum_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sternum_manubrium_description.json b/boneset-api/data/descriptions/sternum_manubrium_description.json new file mode 100644 index 00000000..fdf82f4a --- /dev/null +++ b/boneset-api/data/descriptions/sternum_manubrium_description.json @@ -0,0 +1,33 @@ +{ + "slide": 5, + "name": "Manubrium", + "id": "manubrium", + "description": [ + "The", + "jugular (suprasternal) notch", + "is a shallow depression in the superior border and is found at the level between the 2", + "nd", + "and 3", + "rd", + "thoracic vertebrae.", + "The", + "clavicular notches", + "indicate where the clavicles articulate with the manubrium at the sternoclavicular joints.", + "The cartilages of the 1", + "st", + "and part of the 2", + "nd", + "ribs attach to the lateral borders.", + "The", + "sternal angle", + "marks the junction of the manubrium and body", + "It is found at the level between the 4", + "th", + "and 5", + "th", + "thoracic vertebrae.", + "It attaches to the second ribs", + "It is an important surface landmark." + ], + "images": ["Sternum_Left_Image.jpg", "Sternum_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/sternum_xiphoid_process_description.json b/boneset-api/data/descriptions/sternum_xiphoid_process_description.json new file mode 100644 index 00000000..7f38d834 --- /dev/null +++ b/boneset-api/data/descriptions/sternum_xiphoid_process_description.json @@ -0,0 +1,13 @@ +{ + "slide": 7, + "name": "Xiphoid process", + "id": "xiphoid_process", + "description": [ + "Articulates with the body superiorly and the inferior part of the 7", + "th", + "costal cartilage on its upper lateral border.", + "It is slightly recessed and may be perforated.", + "It remains cartilaginous longer than the rest of the sternum." + ], + "images": ["Sternum_Left_Image.jpg", "Sternum_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/superior_cranial_cavity_description.json b/boneset-api/data/descriptions/superior_cranial_cavity_description.json new file mode 100644 index 00000000..e6f76751 --- /dev/null +++ b/boneset-api/data/descriptions/superior_cranial_cavity_description.json @@ -0,0 +1,14 @@ +{ + "name": "Cranial cavity", + "id": "Cranial_cavity", + "description": [ + "Cranial cavity", + "The cranial cavity can be viewed by removing the top of the skull (calvaria).", + "The cranial cavity contains the brain, the meninges, the cranial nerves, and the cranial vessels.", + "It can be divided into three separate fossae.", + "The anterior fossa is separated from the middle fossa by the lesser wing of the sphenoid bone.", + "The middle fossa is separated by the posterior fossa by the petrous ridge of the temporal bone.", + "Each fossa contains several foramina, all of which are important to remember as well as the nerves or vessels that pass through them." + ], + "images": ["Superior_Cranial_Cavity_image.jpg"] +} diff --git a/boneset-api/data/descriptions/superior_ethmoid_bone_description.json b/boneset-api/data/descriptions/superior_ethmoid_bone_description.json new file mode 100644 index 00000000..14143ad6 --- /dev/null +++ b/boneset-api/data/descriptions/superior_ethmoid_bone_description.json @@ -0,0 +1,16 @@ +{ + "name": "Ethmoid bone", + "id": "slide30", + "description": [ + "Cribiform plate", + "A perforated plate of bone that lies between the two orbital plates of the frontal bone.", + "Contains foramina that transmit the olfactory nerves (CN I).", + "Crista galli", + "A crest of bone that projects superiorly from the midline.", + "The attachment point for the falx cerebri.", + "Falx cerebri – a crescent shaped sheet of meningeal dura mater that contains the superior sagittal sinus.", + "Foramen cecum", + "An opening between the ethmoid and frontal bones that transmits an emissary vein which bridges the nasal cavity and the superior sagittal sinus." + ], + "images": ["Superior_Frontal_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/superior_frontal_bone_description.json b/boneset-api/data/descriptions/superior_frontal_bone_description.json new file mode 100644 index 00000000..6e697037 --- /dev/null +++ b/boneset-api/data/descriptions/superior_frontal_bone_description.json @@ -0,0 +1,9 @@ +{ + "name": "Frontal bone", + "id": "Frontal_bone", + "description": [ + "Frontal bone", + "The superior surface of the orbit." + ], + "images": ["Superior_Frontal_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/superior_occipital_description.json b/boneset-api/data/descriptions/superior_occipital_description.json new file mode 100644 index 00000000..8d78d32b --- /dev/null +++ b/boneset-api/data/descriptions/superior_occipital_description.json @@ -0,0 +1,17 @@ +{ + "name": "Occipital bone", + "id": "occipital_bone", + "description": [ + "Occipital bone", + "Jugular foramen", + "A large opening in the created by the joining of the occipital bone and the petrous part of the temporal bone.", + "Transmits the internal jugular vein, the glossopharyngeal nerve (CN IX), the vagus nerve (CN X), the accessory nerve (CN XI), and the posterior meningeal artery.", + "Foramen magnum", + "A large opening in the anterior and midline part of the occipital bone.", + "Transmits the medulla of the brainstem, the vertebral vessels, and the spinal roots of the accessory nerve (CN XI).", + "Hypoglossal canal", + "An opening just medial and inferior to the jugular foramen and superior to the margins of the foramen magnum.", + "Transmits the hypoglossal nerve (CN XII)." + ], + "images": ["Superior_Occipital_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/superior_sphenoid_bone_description.json b/boneset-api/data/descriptions/superior_sphenoid_bone_description.json new file mode 100644 index 00000000..4b71f431 --- /dev/null +++ b/boneset-api/data/descriptions/superior_sphenoid_bone_description.json @@ -0,0 +1,22 @@ +{ + "name": "Sphenoid bone", + "id": "sphenoid_bone", + "description": [ + "Sphenoid bone", + "Sella turcica", + "A depression that contains the pituitary gland and part of the cavernous sinus.", + "Optic canal", + "An opening that projects anteriorly to the orbit.", + "Transmits the optic nerve (CN II) and the ophthalmic artery.", + "Foramen rotundum", + "An opening in the medial part of the greater wing.", + "Transmits the maxillary nerve (V2).", + "Foramen ovale", + "An opening posterior to the foramen rotundum.", + "Transmits the mandibular nerve (V3), the accessory meningeal artery, and the lesser petrosal nerve.", + "Foramen spinosum", + "A small opening just posterior to the foramen ovale.", + "Transmits the middle meningeal artery and the meningeal branch of the mandibular nerve." + ], + "images": ["Superior_Sphenoid_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/superior_temporal_bone_description.json b/boneset-api/data/descriptions/superior_temporal_bone_description.json new file mode 100644 index 00000000..e582a1fb --- /dev/null +++ b/boneset-api/data/descriptions/superior_temporal_bone_description.json @@ -0,0 +1,20 @@ +{ + "name": "Temporal bone", + "id": "temporal_bone", + "description": [ + "Temporal bone", + "Petrous part", + "An elevated portion of bone that resembles a mountain.", + "The petrous ridge separates the middle cranial fossa from the posterior cranial fossa.", + "Petrous = rock like.", + "Squamous part", + "The flattened part of bone that extends superiorly towards the lateral part of the skull.", + "Internal acoustic meatus", + "An opening in the medial side of the petrous part just superior and anterior to the jugular foramen.", + "Transmits the facial nerve (CN VII), the vestibulocochlear nerve (CN VIII), and the labyrinthine artery.", + "Arcuate eminence", + "A rounded elevation on the superior aspect of the petrous part.", + "Indicates the position of the underlying anterior semicircular canal of inner ear." + ], + "images": ["Superior_Temporal_bone_image.jpg"] +} diff --git a/boneset-api/data/descriptions/symphyseal_surface_description.json b/boneset-api/data/descriptions/symphyseal_surface_description.json new file mode 100644 index 00000000..50b7e616 --- /dev/null +++ b/boneset-api/data/descriptions/symphyseal_surface_description.json @@ -0,0 +1,11 @@ +{ + "name": "Symphyseal surface", + "id": "symphyseal_surface", + "description": [ + "The joint surface on each pubis.", + "Articulation is by a cartilaginous joint called a symphysis.", + "Each surface is covered by hyaline cartilage, and then linked by the pubic symphysis which is a cartilaginous joint between the two pubic bones.", + "This joint becomes remodeled during pregnancy to allow the pelvic bones to become more flexible for delivery." + ], + "images": ["symphyseal_surface_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_articular_surfaces_description.json b/boneset-api/data/descriptions/thoracic_articular_surfaces_description.json new file mode 100644 index 00000000..ae4903a8 --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_articular_surfaces_description.json @@ -0,0 +1,8 @@ +{ + "name": "Articular surfaces", + "id": "thoracic_articular_surfaces", + "description": [ + "The articular surfaces are closest to the coronal plane." + ], + "images": ["thoracic_(superior_aspect)_image.png", "thoracic_(inferior_aspect)_image.png", "thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_body_description.json b/boneset-api/data/descriptions/thoracic_body_description.json new file mode 100644 index 00000000..1b056170 --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_body_description.json @@ -0,0 +1,10 @@ +{ + "name": "Body", + "id": "thoracic_body", + "description": [ + "Appears \u201cheart-shaped\u201d when viewed from the superior or inferior aspects.", + "Larger than the bodies of cervical vertebrae.", + "On each side, there are two costal facets that will articulate with the head of a rib." + ], + "images": ["thoracic_(superior_aspect)_image.png", "thoracic_(inferior_aspect)_image.png", "thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_costal_facets_description.json b/boneset-api/data/descriptions/thoracic_costal_facets_description.json new file mode 100644 index 00000000..9f8d5e5e --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_costal_facets_description.json @@ -0,0 +1,10 @@ +{ + "name": "Costal facets", + "id": "thoracic_costal_facets", + "description": [ + "Superior costal facets articulate with the inferior part of the head of the rib.", + "Inferior costal facets articulate with the superior part of the head of the rib.", + "The transverse costal facets articulate with the tubercle of the rib." + ], + "images": ["thoracic_(superior_aspect)_image.png", "thoracic_(inferior_aspect)_image.png", "thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_description.json b/boneset-api/data/descriptions/thoracic_description.json new file mode 100644 index 00000000..45fe9972 --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_description.json @@ -0,0 +1,9 @@ +{ + "name": "Thoracic vertebrae", + "id": "thoracic", + "description": [ + "Larger than cervical vertebrae.", + "Each articulates with a rib." + ], + "images": ["thoracic_(superior_aspect)_image.png", "thoracic_(inferior_aspect)_image.png", "thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_spinous_process_description.json b/boneset-api/data/descriptions/thoracic_spinous_process_description.json new file mode 100644 index 00000000..11c14265 --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_spinous_process_description.json @@ -0,0 +1,8 @@ +{ + "name": "Spinous process", + "id": "thoracic_spinous_process", + "description": [ + "The spinous processes of thoracic vertebrae project posteriorly and inferiorly." + ], + "images": ["thoracic_(superior_aspect)_image.png", "thoracic_(inferior_aspect)_image.png", "thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_transverse_process_description.json b/boneset-api/data/descriptions/thoracic_transverse_process_description.json new file mode 100644 index 00000000..81fcf603 --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_transverse_process_description.json @@ -0,0 +1,9 @@ +{ + "name": "Transverse process ", + "id": "thoracic_transverse_process", + "description": [ + "A lateral projection from the junction of the lamina and pedicle.", + "Contains a costal facet that articulates with the tubercle of a rib." + ], + "images": ["thoracic_(superior_aspect)_image.png", "thoracic_(inferior_aspect)_image.png", "thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thoracic_vertebral_notch_description.json b/boneset-api/data/descriptions/thoracic_vertebral_notch_description.json new file mode 100644 index 00000000..e653c9df --- /dev/null +++ b/boneset-api/data/descriptions/thoracic_vertebral_notch_description.json @@ -0,0 +1,18 @@ +{ + "name": "Vertebral notch", + "id": "thoracic_vertebral_notch", + "description": [ + "Superior notch", + "An indentation on superior border of the pedicle of each vertebrae.", + "Inferior notch", + "A larger indentation between the body and articular surface of each vertebrae.", + "When two vertebrae are opposed, the notches will create an intervertebral foramen.", + "The ", + "intervertebral foramen ", + "allows the spinal nerve to exit the vertebral column.", + "**Each spinal nerve is named for the vertebra above it.", + "Exception: the cervical spinal nerves are numbered for the vertebra below it except C8. ", + "C8 exits the column between CV7 and TV1." + ], + "images": ["thoracic_(lateral_aspect)_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/thorax_description.json b/boneset-api/data/descriptions/thorax_description.json new file mode 100644 index 00000000..75ce9db6 --- /dev/null +++ b/boneset-api/data/descriptions/thorax_description.json @@ -0,0 +1,22 @@ +{ + "slide": 2, + "name": "Thorax", + "id": "thorax", + "description": [ + "The bony structure of the thoracic wall includes the thoracic vertebrae, the sternum, and the ribs.", + "There are 12 pairs of ribs.", + "Ribs 1-7 (", + "true ribs", + ") articulate with the sternum by individual costal cartilages.", + "The remaining 5 pairs are called ", + "false ribs.", + "The cartilages of ribs 8-10 articulate with the cartilages of the rib above.", + "Ribs 11 and 12 are called ", + "floating ribs ", + "because they do not attach to the sternum at all.", + "The ", + "pectoral girdle ", + "consists of the clavicle and scapula and connects the upper limb to the trunk." + ], + "images": ["Clavicle_Left_View_Image.jpg", "Clavicle_Right_View_Image.jpg", "First_Rib_Left_View_Image.jpg", "First_Rib_Right_View_Image.jpg", "Scapula_Left_View_Image.jpg", "Scapula_Right_View_Image.jpg", "Sternum_Left_View_Image.jpg", "Sternum_Right_View_Image.jpg", "Typical_Rib_Left_View_Image.jpg", "Typical_Rib_Right_View_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/typical_rib_body_description.json b/boneset-api/data/descriptions/typical_rib_body_description.json new file mode 100644 index 00000000..ef9c8bfb --- /dev/null +++ b/boneset-api/data/descriptions/typical_rib_body_description.json @@ -0,0 +1,13 @@ +{ + "slide": 22, + "name": "Body", + "id": "body", + "description": [ + "The body (shaft) is the main part of the rib.", + "The angle is an abrupt change in curvature that occurs laterally to the tubercle.", + "The costal groove is a shallow depression on the internal surface of the inferior border of the body.", + "It contains the neurovascular bundle for each intercostal space*.", + "*This is important to know when performing a chest tube procedure." + ], + "images": ["Typical_Rib_Left_Image.jpg", "Typical_Rib_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/typical_rib_description.json b/boneset-api/data/descriptions/typical_rib_description.json new file mode 100644 index 00000000..3eb19495 --- /dev/null +++ b/boneset-api/data/descriptions/typical_rib_description.json @@ -0,0 +1,13 @@ +{ + "slide": 18, + "name": "Typical rib", + "id": "typical_rib", + "description": [ + "Ribs 2-12 are similarly shaped.", + "They are longer and narrower than the 1", + "st", + "rib.", + "Each rib contains a head that articulates with at least one thoracic vertebrae." + ], + "images": ["Typical_Rib_Left_Image.jpg", "Typical_Rib_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/typical_rib_head_and_neck_description.json b/boneset-api/data/descriptions/typical_rib_head_and_neck_description.json new file mode 100644 index 00000000..6ddbc31c --- /dev/null +++ b/boneset-api/data/descriptions/typical_rib_head_and_neck_description.json @@ -0,0 +1,23 @@ +{ + "slide": 20, + "name": "Head and Neck", + "id": "head_and_neck", + "description": [ + "The", + "head", + "of each rib will articulate with the bodies of 2 vertebrae and an intervertebral disc.", + "It contains a pair of articular facets (superior and inferior).", + "The superior facet will articulate with the body of the superior vertebra.", + "The inferior facet will articulate with the body of the inferior vertebra.", + "The heads of ribs 10-12 have a single facet and articulate with their own vertebrae.", + "The", + "neck", + "is a constricted portion just lateral to the head.", + "The 11", + "th", + "and 12", + "th", + "pair of ribs have no necks." + ], + "images": ["Typical_Rib_Left_Image.jpg", "Typical_Rib_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/typical_rib_tubercle_description.json b/boneset-api/data/descriptions/typical_rib_tubercle_description.json new file mode 100644 index 00000000..7d13f93e --- /dev/null +++ b/boneset-api/data/descriptions/typical_rib_tubercle_description.json @@ -0,0 +1,11 @@ +{ + "slide": 21, + "name": "Tubercle", + "id": "tubercle", + "description": [ + "The tubercle of each typical rib is a knob like structure on the posterior surface where the neck joins the body.", + "It articulates with the transverse process of the corresponding vertebra.", + "Ribs 11 and 12 have no tubercles" + ], + "images": ["Typical_Rib_Left_Image.jpg", "Typical_Rib_Right_Image.jpg"] +} \ No newline at end of file diff --git a/boneset-api/data/descriptions/vertebrae_description.json b/boneset-api/data/descriptions/vertebrae_description.json new file mode 100644 index 00000000..e535bba5 --- /dev/null +++ b/boneset-api/data/descriptions/vertebrae_description.json @@ -0,0 +1,23 @@ +{ + "name": "Vertebrae", + "id": "vertebrae", + "description": [ + "There are 33 vertebrae that, along with intervertebral discs, make up the vertebral column.", + "It is divided into five regions.", + "Cervical (CV) = 7", + "Thoracic (TV) = 12", + "Lumbar (LV) = 5", + "Sacral (SV) = 5 (fused)", + "Coccygeal (CoV) = 3-5 (fused)", + "There are two sets of curvatures", + "Primary curvatures ", + "are present at birth.", + "Thoracic ", + "Sacral", + "Secondary curvatures ", + "develop after birth.", + "Cervical", + "Lumbar" + ], + "images": ["vertebrae_image.png"] +} \ No newline at end of file diff --git a/boneset-api/data/images/Clavicle_Bottom_Image.jpg b/boneset-api/data/images/Clavicle_Bottom_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5aa17ffa7e78b4c97ca1e54ce3cb30aba38fb54e GIT binary patch literal 63678 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 F{{k3$XrTZA literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/Clavicle_Top_Image.jpg b/boneset-api/data/images/Clavicle_Top_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..86be30fab383826127eba011c5c43b81d17a5a9a GIT binary patch literal 75493 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 literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/First_Rib_Grooves_For_Subclavian_Vessels_Image.jpg b/boneset-api/data/images/First_Rib_Grooves_For_Subclavian_Vessels_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3cce75008aded3750223c4a8573cf61c35e2adfb GIT binary patch literal 106536 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

p9(WG7s61|E6uL(SF@G@)y4azH{4hrsp-1J6X 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 literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/First_Rib_Left_View_Image.jpg b/boneset-api/data/images/First_Rib_Left_View_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ecfd1b5d9a5f557eb61982ae1a71ce9f76b58f59 GIT binary patch literal 9066 zcmX|{V{j!*w6#w-v2ELSa$?&yC+5UDu}`cCW@2Mv+qOBejhQ>|_uaZ(wfb4TYwe%A zs=KPARh4Cs5eN_f006R_tfcxsn*Ea?9PGc{0rQaKA0XV-WyAqB(?qBL4n9`8a@I;p z0ET}a4gd{70D$=~@=qcVg#YKIA?N^5|E~@S07TjWp#L|c{Ez>wq<{La=l>I`0OEhs z|7r!0|Ccr^fcif#_+MM&#=O@*z`MxmxdQ+=)c*-WPMzuo0HBDKlLTt|KrH31d2i`> zj3k!OKTG`}sv?ih$*HZmqU`vmRfW;jnkID|F(UQ|)7L)6x>s#JRG}$}2q=%yAx> zpp5Owl>mPeNyv~VmNQP2j=o->M6G3Mc0WDocb-pA-ClM4k~T6vTs<${|0(?CV2}{k zTzTA3<5Or`95U4T2gRt=q?giJ#RTqcsyw!br`I4euVWnX^*YH)l^*fEIHcsX5nkNR z)i$n70!d<9R$Jy==?{h7)R^O1{nojoSvwwIKhl^Z?c)AcedaExtJYd)y{a~AvYMW& z^^?=H1g*-qgD}({R;SH6nv$W!)3r7}w--sF*G0}-6V`45n;Fz-6}Jf`+{6?FpCjTI zJ0+$3W(T$(qG42zolci$J`Z6X<}2@42{}%yXqUvtvm4dPE;m)@Df0A}L!9X>EziNeZEKBXYlXkLRWsnJ+bF+J_cb3JTQXXKkv$NxKY9Oa2 z4m})NdMqCwtUG8AJ)W7?x(%oL zYnEkTq9Qyj&03LVn2;IIXn%bYCvCwnJVK+%Lu}x*g%?kM1X{cW|6XjM%4+)Y9jD$j zNP+t*uQ`fZqyw&>iVkh=TA#gH!x(VQM*0@tZa1hdpve>FJogvh?xP7Wal)9N4ej}& zmGi07i)tD*KH8a~1yx>zYHEx&U$DYFZBoWYN0_A5*+%GLx2xV)%Ooxysq)@XF?OwB zR_l7v6k~MJV^W@uQzN^KYAEfqYi?l+hUF-%zh`hLqf`Xv=M zGV?*`d)4M#Dpp)w&W$0k6+4z^D=%+u_|V~5GZC9nXI%=}zWd^&Y$$!hDUMb6wsq?{ zw)P@+_(zrO7)PU6?xRkmt4kqOQ3%ghU0lXDUvoEe!yE2a@p*khZ8pOAtcaxSXt}KI zRuN=)8#jLr6cT=Pn=h;gnpT!?AuZ{F_^Oi04T{WT1|rwFSaDFc%;MyEu$$^1BwZ7J zOa=IMtv}G+xqbRK`7t%#n&>h5K~P1F9fH2^>9Hp08Vee(1D*~Cj4J*@Z@w8rJ)-a8 zib@s2ioqHjoSo1YcGK{!C`tO;3&fuM^vlSyq{wD_KrA-Kaur2ISvX|9Fa5TIr<}Ov zfBP)hxrFR3twDJA3MupQM)V3?42J1!y+56=GgQNeDG&`+UCUR-TWSqjc-q_B51mGu z;K2Jcqe}JK7@{|5_xlSUo0c4!;@Px6uy@v}qNk^ybQu%x%27q}Hh6b1dVG#wR~!FE zZ9X?agN%+=mB_{TQ-ElXzFTE%{Cz&K4pDoDv_D>jFsb7b;zqV5YDdm#XWEICvBoG) z&9|3%(o7-bsv?&Eew8_p1Q|Pf>xYAHWrg~}b&I*r%2&3K`;X5)3l)>50b z6eq0ImY0_Bw=i@CYve;Sv3GpanKf)XL~0gn2Huu#?@dHV|GxGssISA{10rX!Ad$r1 zX(uoErJx!hA+qKG8VotJgA;M0Y%Srtkw zD=tzRKt5tzHf`lB$DYK_y6X6;WMDVp_VuBZL!fc&__|23z=$QHKk1Mz{bMG zMKUfwMbfWpm5id{R1P4uPsYK;h4J1j#_tCNw;;7@eV=2yqnd$ub39(kUbH7?@%hr- z3&9(A*EBK2hJJvYsVjOvmN?`|xIA1XKCAcYy~)Ue?>$g~cOATur*2YPLmkCV&ya1j zaF#umdl~O*1nyW*NQe{gJ=0$_p7ol93)3q6@A= ziOfp#0y}e+9NgS4xav+kjzyqJT;g}R_`*xD8eH_lI0TbRv3Ud;+!1^s0K!0E5qMp# z*3jKUkl=au6=j=Z0 zAQ-oM{YifK4W2AJc9(ks$cAN)JKgjL(5)2yc6w(L`!u$)uEf3|X@EX<(4S}(pDr$5 zUg8C0=21%sNl9(_xpnR9c>84rm!xvh&i7oh(o#Ya#LAOJL-xwY!Ck)O zLw`fgI*Q>#&un+`tkf)zQUYY)xLl-c!S)(^?vj*4PEH_ViBh8&JF}anMi`^?ZPbwWSpjf2883yr)eiCBZqyO zODUsN3SLlBJA+p*dIxME*R5^3jnv8<`3|+^h?RY*%J&RAIaT{OtJxY`j#P1DvkPh= zmym9;*?2HM=yrJ)2iU160@Ru`gq*pV&?SNMF8wlY+3cuZGbmOsYN*|=?C@hmG`}Ra3r%jj_Ly1@_O9VAvO{+-LP-e+fvKChYl`b%v-qou1#h57jsTZ^aZBYOP^-H z(k~~zhU`USd=}aHdRkKl!d1yc*>%&$SjY(`raJaE9}$_vyg0DUw1bUT8|CD}9mCW~ zS)J?aoiS?<5O8^+p1E|Kq-a*gw70+N(@7r9GVf1r>R)X?t7Z4ws!dHTVs$skCo77+mPtt=hIg9fo&%&M!L zCT(sY2=jIeU+Y%gsD1 zE}|}yXjhIJ`xZoh;pa>H4=;(Z|sHQ;0}#W#y9&qhIW^o=yC zEKbUxmgb72SuGhNyR3u+4$TF89jw)1E%93+jA)zrK`IiIQn9D?$pm8(VT`~`SqQC{ zA^5p(L;75QG@cgV#&3HO-c0&DFo?8$5nfaWCwYO}C97T&QEYrWU{PkI1{avc`{F1I zr@Qpc@%CEKLzC7O`Cefw*MD7Gm{DL}J_!hYo4r(7WMTvVLJyc?P*jj?N>UT9_iRbO zo1m(qp!4g)iNRz)&_ymG?SuTLPLW#^2Q+%bfi|tiT-C%Fo}i00N$hjMHr{1!e$*8T zysMY_ce8%6sQ!{ZW)x2*_fi{VCF^U*>z^c*L|LW;5)#m06}%~w*^o*tI-*f%P{ zMy}`a*-QI$RrUL7`bFS00>h-Z^cRX+dDm6DXAFiHtlx=oFc9ibg6rk;P2^?0n^aJh zo^XNwlff+7Px+#(wsmJ!+r7mlFUCtn;MhqEWF+8@-Ryp{BqyiRcI7iBy!#_dx5ud& z*NAi8m#J@=%$jCOuBFxfd7uxuwJ3@02QhF!b1w1xwqMbTsXtRNA~M2U(od?xM3AWG z+qc>lni#ZRyvbbCniO%(iVY8NfzI!8sBKhd+ve4WW`d}{ zT5zdtFa=7ER0o4~`~@SN%+{zL0$MMY#|+)zrRV^dK7@hBkrkh@mnNj~tH71zmnYut ziz&_z?r63}^dv4^W~r#VesjJn8S$ij_Lyn~Pd5Bou~j|8TwJRL9BHDZtdG?b*~pmYW+_N}xiX2ZFI{;JKdqv%KbM65I#cP~8VK5)X6g+8lFr)IQrtj;=i=Mw-F z69c~39OF?89b$-NcQ{T|->&SuT5mQ7G^WbOvf`MjcSmS9(gWxTv{fI+wr`A*qY zomY2*{>df^Qah0%3&N0Q0OPI@XZdjp4zxzyZo-7pb1KqLrhBePCqn|k+274HFH;JB z0Xt>E94eD1L!0!uOSwtdTLPq)SYhtFmbg31eBAY@VC}`$(I1Zk$4b1XNKa6%S0AQC zB3|>hz`50J$uylQZHyy`lB{LyYJ1hJ$-g+UF`*SFV?A%%wF@; z#0Fh>8-XJ<9eHY({xqzM`lz}RHF0aiqefc3kPacI_%)QqE9E8$)h6+vU+yqbP(&T% zTb&z0H&JF$TCrdNRTtt5_<0+hS+Lo8kveEb^`g*yBQA}+X1F9K9TDPVrKt+^I5BR;kEA$}R(pT6BvN&es7wD0 zJ`AfZCH84d3n5cw@fqAKLogtEm$M8YRd90D1mEU&MeaYW-4E9yn>nzVra<>Y+2o7& zd33G7_vXbq8t{&k7&!l$`K}seUp_%`0?m0EJTV3zy`?42>*Q1$r(#RkTI#3w@hSRQ z$t12rzBRJ6q=PUwSPt#ap_OUGlL4Yn#W{vAyr=~Zq8U_@v_0O`2s$M?2Yw>n?!I5m zb?fBRx?nV7LL{%RMW_XF^BTcnzU7w2NkdN8js)A@eK5?efX_XwfD|6%ev%sP0B<4V zZEsb?o=rSOya!IrXOp*~RjTjowR&9~+xJ%;`)|lA6|zW}4P>LM((Bdyt*Ti9cMc1x z4(rvkSLX+$etgSkqgT#{Js z#l-iBaK{4B^<*a?w!~l2_Y`sTP9^FCA}hk)&apD2-`GS7lv=qRV2SeLP|l^0Y7X+yGG;M`C{S=bJg)h+5VRm=rbH;BA{kk5`RBUNhW~qs?F#c9x+Acd&-ZrP z)0d0H3p@0(J0kYIEEr)M(ua%|Y*r=lHGTmr{M<$64zj|=xNizQrGduh&re|iTE5!A z^4F3fLpn;hk2DO4%B;9jrT4AU{l&3`z|Y7fD#551^>7IGUyw=Y?9!S6@$CRpGN)nz z7Vi3cftB7zI^PsFlC)S~+m$ZYKbs&Q&ua(Y#^1cR=R2MI?9p|yy)8J}lO;&sk>=hS z3dPhTjTc-0{>i(IuMH6KItySIKb?ymz)+T6x2%J|_gZShL;U-<#~eHjNZUe)}F+NxE zs3M(=UQw^DDm(EQ7VmF5eA+WfYETpH>mEdi$hp3^z(w7VmW#_jy#{ivr#%}D<19|I zleOcB7Ud36`D%_IN@opFGHIfIZ!50A6`On*n_IfsfC|#xgjnPsdNT?#LXPg;6AWHiDhq zK&qmUfLIR~)xpMRi7D#$6v~VB?m6G`XWi4+#>t{84b3$y7sBr+Bcs&)L_Zquk%UiL zBQRL&p#&KCR^C)j0BKF+&uOFw-%*anY)V7c9bF7R>F`QVG_=T8%~ zaM&}`5Hb2A@A?7?ys)D5GaQk*T;4z|5wDZ#fi2gSUsLr?p9DSCqxs)3`w$=xf7_Ao0}DZ=#Yf5otv$e%GkdZ>HcWM}crpKz89llhZIHp8JDD zFeL@G38j6Oq%q@#t6C;v^}a^@sI`#E<_!d_<-7LfqL+nb86!q3--Xw=3eddJ8~Gk| zHT@nc4SK!RaCKs9=|43ov^5Tfqz|fyQ=p=g$88+vz7+q{ktw|1dc8|N)T>diP5YHm z`+-{}RxED2m7Ip=&bm7q7CxBP!@&TA9iCBb93JVldI&=Lvj(oC6|!SrXC&&Zq+dz* z_FA>HDAnLC&T{2O37ECdL@loR#E@2g(S;4=X?IHGIMjVul4;HAEBazM&w%;Nv&FR6 z1-ZkE0T(`*<|P8YgCklFx|UHHD(4Kd&No6c!oAgpxq-}2@-a@G*}qdt>jYkQNGs>9 z%58nFlfV96U@z#9aagHJUiKs?M``=9n9}Jy@QACND=CejGYdTvr`&kF9tl^JcQ%gK z)+SAyjUO$_|waUtlU7=Y;w7jgE(&`1_- zDLdWrbU`sXiUn;HBc@z^Y{zO>cr#!f{?MzJ0lwG(krI;$Zdq)7jG7D!I{z7L%B7xG zN2VxAPBz@9uGo~{R~Y>z?eJBLkd(}f+_sh}?7iS<79@uaghca^0@x|h1CB!`e;Wd~ zaVW@VGXg)>A$zxS+?lvK+=(f<>b}ipEv_=X=q3>_u-u{s-H{5gZtFbSOo=i6JR5l+ z2lRO}gln(S?ETFCrRA4@9N>;bft*Czd=Cc;D&Bm%re!$`Ry~}k-ebN z+Dl_;VYEDFblftcoaitv_)9I@ZseVHk*LMlN&sA~hc1is;TXvTW+=o~n474$l|Tph zo&T+Vm~ya*1`!B3Bv9rp9y>*MBmY&6V)p={z_ZI&1e z894P&du_HY@y4}{jMM4HR>#`dQL>To(#~0`0&%`88mQL?WBmM~VBVrG7~dLgFI<3P zE~amsMR?-OOCw#R7#FR@CZZk2cKe*yo_@6}Hfg`|Iz|K*ypM;5bhlYe*M{@Gcm&@% z>n{jZ%SO#&ZHIpOE7$9+1j<)8zDvhKt_-{pa4jvkLpwV>n;)B8!R__=1*`SigtY|G zBoAi=`W4sW*v5PnG=n0e+iAU6*a)wP^E_xr6z0M>RZFOK1?!_rZlQ-(l*)q-xY^DS zSD1oPtZ|~$jhha{{cEZ}ce8JQq7kJKEBjMSY*#Jg+{`#60_#ubfXh`j2W;$8hRGVC z=$xR{I|{K1gguc9B#XcNG*#jxFS-pxNS8rd z6$hd)JWV{rb=eX=WW(u!`=F|s*$H@LE4b<^zJ&r$8bOJ- zO-nhxpZj_G+c?fd_;159lYTfn8W-)->md_00a(+v$8ft#fj2wDM!3D}u4(T62qZ=s zRj6myslQ-wq^~E-ss4_@;U);E<$}%dj10dS{c;uSeLj`(xN?$>EYFn`1EsEEGeLZY(xa5LD#xEx|Qw|80bZ$v#J?V;GyaPZ(s?_hi( z0BtBd3bEcmy&6=zP655HF0DDdk!08}etw_g)=tRs+CQnh^bK;^2lo;3BO2^{BI{O* zQ(1fBNwYdn*S=U0*&0>cZeV+F)Y2AeV3<>#-Jt zlF`a^jLh7ugRVc0w$!+vu!GP-^^!lhDL}xrXd;B30`4(j_##fr3FKP9^Cq>~*M#^t zLbQp;=dk%SD`%%b14grMQT%hl60reQxY~zN9Mg;vj&)4?eJ@>FvS47BtFJ8j%++UP z^S3fyl}OL4i$AB@#KQ1Cd1Sw>z&Nblc66ry!-9d!z&(Rpf z(FxD9l}agckvzdVTY;cofW6~zL(cn=!58wb)~UkxE2zj%${G?HICZY_D3FK2_((srk`0VXDfq7-%GD0000(UQSB=AKU$dEDF+pmC51%2+m1e_7k9Dg6!zu z#ob(6-a<(U!17O{01)9w0Pp^@`~wh<^#8OB91{TH|JC6EfKU(s@qaza|Mc_)$BcxtB-Ffg zC;!nfKlrSU|MZ<@4=Zdm+EhqVrW%9c16AxIl0~TTU7?rfc}Js2=Z4cd)W?!{EMLtC z=>)xTd+OOd{^V-0=Ue`|eC4mEq3PdD?Y{^9VmCO@tT<;z6@+B?J&d+Cm zNLpSwDVa`Hw7WfB+sjym+li%`Unx1fyxtjS75gNsb zf1OKMFmRIg+!z;tMBm-j*>42YxxEF{#Y~=wA4`zJ4bqfo6uYS}!^my0B_}l)qo~@oKqk_&(Eeub1N4 z+B);FsGV-hJF`faa~W3WvNC^DZZ8&}{V-@bGY#(TR`<&IBf+7cgF&f+wwwmf@Xivd zqw1agGF(%#UzhlWbsH_DxSZWa)=d@}Qbp`-(C(-P+j+YfznS1GZRSrKkdf)tb9JpZ z6&3+h5R>q61LM=jk8a#HJValXa$cmDJA61?Ym*t$(GX4@&u!o9eqWh|O)UZDVXG?# zZSR19(o%CPO$Qn~K#S+x_KmFHP3X}`y;eb7-s|k#QriB_Sa;FfSEoM#Iq3lOs;#9v zPxh!NjG_*T zOSdA{c|D|^qObP$_Nk+JdDLCRvZWFV1NqWO3<-KR;HdTNXy>_Qw}R3NZ`osjVo(A} zx3Y~PK6;TDHrn3R4*cDYvo1`OBRc6EsJ7qzaV&S|YilHpvpEu;%|eB|)4`1ch}&iM zX{OqAP~FlEnPe#$DH@{)GrwnI!jpuIXtS9)Fd=&O2i0eU2!e^2J6ot+&2%Qp=0wOF z-13s>PXkVv65XeD-p5%}wAeiTrk~U;vP>J9iU~VWoGxD%dzpJ4va>6A`Gu21rbTne zNh#nq*LmG-nNAlQBIG_mL0+ljsNTlRXoG3n*tuEb2<2Jsz7X=HgNa7d2xKQ-?<@QV zUFFhI0|6$Gf{0stdWh`$Xmb+!QW5lU=qDmw)PPj#(8RjUml zMeBT#Ft8kVlO!Qwt1~172}&n9G!2%8t~NWt9Z8TJiiad)fIVp8e6yH83oI9_A}Ugo z58ivU*o%J<%RUQm?3DZT=-W+!?+l!y=5e&(G~nwt+MMbl#1XuBnbW#20KbGnTU<`m zwX#?q{xF|m?W|b)a|!{oqbZJ5WHE0MmZ|o+k(nB}fLv)ITsdBM6cwr&M{LUBv6+g! zU&bll*EM1o1-~Z?wrr^L-r>y{A&XVS(XLCNUuyG^^?ckLKUywbkQv%om&Bgg$brS& z;Yvpr(uO`k5dljx8cDaS%4dN;D=@_FH7AClsWWknc?SpO8bG&T0z9K|BRO;ZYH>%oe%M%f=IJ4#K=Nb{PhTMU(u1OU|&Z3>&{Ea-}u6cm6acF>yFMuKLU zHc3f^e9xn>kr1=ij<+&KhD8W4I)rc7oC4_1t0edsQ9-|XWJXu>8x7 z@J_YsiyCw+I`LPv+`wZBhCeS8 zB+A**Zl!G6l0CoX{@%vi4j^AcG&N?ZoDYhNkorz&B=dyw)C#!U)320%>lR)<>T+9l z&jL%TM7cVJkx0U|*{bl`^dK3rI*gk^j}Z&(_*JE){GGyaW6c$jlx&)`>2=bau^ zQs=jk?L0`{Xap}37`jtd8Z3`-J2sX>1+6sfb%%&mo`(g`7=?PfxrlVlqv27QQ>WZJ z2jOX;NAL?_RW()Ql{LEL{*h9&iV-Yr;5Q@a%D zzk=qj`m0w>$b}X(h)oK;=UsNgJ`ucbTJx*bG!StwS!%X&ArM>`Apv5+3g<4oWfZ`Y z;c)g>EC2!fUxgFt4Cbaa(9+||1Y z9`U6}rgL#du3?#(HqP;Gq&vb`7e6V7Rl{oI=oJVHF-U(XoOhnw&4!7$?#4&R7k6a) z-n(_iHJmQun&jRfN=Oe=jl8X6(m&P80PrLGIY3EwXKRz##GHZpp?-XIYNyjMrkfUQ zAALhNOWk@C`If)==AaduCy)6ODcOQ?Bi*ts{H+Oze9=7pRW?Q5zNs<%@5dE+B_RF= ziLuj0y@a!;u8=y%rT9A21!av6+BMffyQ3Nf4u*(!Ry)SswW|?;Jk+Aa^d(Ae#Sn*Y zFSpRDTHS1zq!|1|Z))*~z@$Sn>TAya_QA!W)p6gXN@NVYstBYy1{{FYbGC|Q^e*~E z2lN;(eFVvR$g}>0u;_L9d`{P4MvJ|Niwa@t^u;ML( zkAO`p%eX!aGD_!l7C#Cnokeg z$QLBMK{m7psS$w(PYV>xbO^stZrY1aM0CfE^Fa7(wFOO*p{WzesL~BZxb~y%F0{)W~Q8 zzXN|z6<61F?7XSFKX$61uSY4f$d`u^KSsUDDcxz28}CuTNjl|0n8AlLx*^mz21;ip zqZep;yC@QXOp4zCbn8UgpSRy1b#=UyEk+l7L?Jdl;~LX5{b+2*=p^VyCk;mbWK=}$ zemjDHltS@r1$%rtN39p=iTqJwYA~UWL~=a&;>flDp7FSlZBf=lqkSizp?-||$<0k* z$IK4}(8suM=#iA0AUzlSp0KL1fTzp4B`@hfAN|1IOkMYhmCJt++eaieOjAJeEbJ$5`6`FN7B^$9Wnx3j1i8APavuq?*=)b}rgOG0NK85$P{Vkb#vx2ZhE_ zH=&UJe9B)vC0bULLsW=D3+Aq1<0Aj5f=>vy&im`*6WZh1a0*z)HjEt#F86JdH|R^p z!kf-Un5}6MH+fg>Rt2X`j6H|b&5EXuiG>dcN5^jZ$-cJ>z{vt{134{L9^FZEsY|Rq z*rU6~Vo{L&lHus&(^;!Pxo)%Q{OT-bueS$Ix{1%L^oO(-a;sGDGepk%lkK@t=-#=u zwEw3wREm&T&I>_Js+z~SuFvJe9u*{t4Sh3cQKXk8El4CVppzw7k<1Hjj7jbE7+!*} z40)<e#iQt6x1hj&JAukDI-l`3y{Hl1-FTda;8x)6m^ilcw*eoveaWtRfPrf zFnzL1h~E~cyy#T6F4N}Z@VTtbQM4c(MER6CSRyGV6(QE{RQ!FXjf1Z1Vs^N&ncL1K zI{CsUHGtXEdMDeT^xoOYjzqjUm9OyWtT_RLQ88HQNW8$2vrCor zIKG}Lo{UY)9<3^76^LfNQ~ScNv$rx9$6rGV%uSwG@qKl%Wl>ddM=VOg&_aOf+* zk}X~-@UlhuY|v)4#V;Jd8<>2yxD(@V<>KucDE4|5M@A+}5RfZ6{R;;4@4sIR2?>Et z2jp3WMh7A)*=AkZ$N#N)K&t$-LgD!!Nwhu@@9w8tWu>Ou=1lAx@f-Ok2KOu*vgSQm z*E6DOWKDr%6S)ihvPWc46&|yj>qfA=_UHp$08;cSd;D{PU=9^a>I7J2s4S;v@1N7`CC zS`o1tIgDEvH{F}jX`A~F8Gf-+ilzDu1^smAyi*!8k9NFP5`aW-7^JzLt)@j|L>tM} z+yrYtL%pLE1%lK#dB1bF;TNMhj}$tuD&2G8pvd_Zbtr+~G2v~G|A5XS@TA5ex#>8>CX=1bvX6q{4QUy? zGpnPoL)Di{Oy4hve3lCe)b( zt|(7$X1_e6T&5p^#m=*cutRHlvv%mSG-4x|7k-PHx!RC-#roHk?# z<$S3;_Z7QC5|$LeIjyxYM9-oJA_l>Y5xnb2u18Q-d`)|I@%eaK5@)Ed$Aac#14T4RHJ2x^i%l zcGz8}RDWo`(Jt5orF(6Xpq=Yk{{|xtPFGfIkfE?E0w*4ZSLkOHdt0S{Iq~yt6FXi! zlfvtn5}HpR0qrN$mpb?G%`SQ}oGu$ysvU-E$R%Ms}Gg>ml#jZaQGv1wpupqa>(jNNs1Kp53A z?z`dqp99Kf5~9v#fGN2?FsNCUSsDtmN=TYREL3(fj_VGoB@#Ysp0p1SWt=gM5$j%K z=C?E;pe~(Oq-YY{pH<)wkkRn?8k@URX7|S~J$9tW5sW3>Pimfqt+bD3L4z6 zJTyJ2`c)oQ`#0rZ=k51rH@B5GY1hW?&qmSZsnnn@r!N z9b}#lH#yk0%vkwZza?pvE1fKCps7OH8qP2in5)pVE$la^u8Q=&VMh?-3BKZXG0o@I zdB?EM*}Y?>xS&2%Ek0F=a`@=__VPyKvqS3FMMpHSgDK-aCvU>*HbVepr5P$SMk~Fg znLX%;1Ka5={8l^R3cX)M^z#3GIW*l}_jHSJM76A0rXyXQ@$Do7&8biTU7E9(#fn7H zNw1&I%%WE0?oh%L_B2`G)_F2g=U=B8U6Wc$6$ZZ}!H3as2y~}cy~w0s;z|c+eyqhD zD{8f+X;KzbuoBB+Eg#kXso(j^?|Qk84LKaz`V8u$bDbUg%coZA-(Q0yK+}kNt<=6IL z5tq1NSkCX(>3KQpYSRsOGcR+(4T@km#4vT!uW8=%5in)(GFjJD%!14@$up$h5~9Ef zY&(7UhyeDfW8|-zN_tf(pNyyyYEt95al=`i+BZ+pPv^INAm;zo5gIwdt?8pfLn2II z#!{GWQMh2qs{*7{><(r61zW4hh$4y2#TmgEf1eBcFsA_8OJd8CtOeuv z9yaz@a~Y49wz2~~M-lr<(d)6=qa{kwNnlU=Ls0hx7B{)UWx$V#LXl?y#Kp=TS62Vd zH{)r`0h59x=Iedeq8Q(s-lO-14|{dC!yg8CiG)5e_Alw}3z!us7&{;&4jY3{u;H!7 zZb=;UCGQG7>&N$4e|OoRM&uN8K6p`JJgtA_s4+N-2ya7+AqpywpXHR&S8-WCcf_Y!4htU zX#FN@mFWxg(f$fk-csM0GBDAo2gP`^cIl6^Hn?rLF#5lcecWWp4n4XtEmZU6k@A(g zIpF`y*R~yF+|dR4$gcdpt;h?z>@sXMgoH^c6q8JP)Lop^@s20%b$&yX0A3)9uZK%b zwmbeDe=T|~#EzGU7(t!p@htSibJWw-`y=Oz=OQ|3u@1rJ=evzpgrj1iBSXK(_i(F- zQu0;mWY+={7$4145ukY(TH9bO8pxrn%)g*IT4q;1i#Z`BY5rtrWs!9wnjr%ln`z+~ zrl^6?5Ohup|GnPYCjKnu-@T_8c@Q0n}v}oT&RhzQc>9kxkvb~p35*pk+6b4fmXUajlddUIG`Lakw zC>3{{?Vd@SJ47H>gQ1^Sm^lcTzoSe;f}AeXxMI+p+&})=BO%69iik^pWixD)tk#0w z$Zm-sV*M1q42vlUrKFjTY+w$M$>5%gY+x{s#EZ5lcpw$93gOsHe;HoL!iO7H8SJV(GbGedH+&J88$HwUuVMR@ny#v zHd7cu>)m;PaE|3yA8YnVXR(5<|Fx(xOJZe?3Z!xT!o>r+3N^s9s66=^>VTD?7&T(H zx<{}P4Wil|#QsCw#l5+VDOcH66R|cVg58F?j?E`184DO&vwg_L9*GYgCJ02!N5B;v zg-pF)zsZmi6vPVnL1BYP!_A-?iNx#UKSXs+*UbJhYWQjf>l+kDA`&!1V&~CcgOnIq zrxGApy`b7QoW4&)9NZ+%Rh(fYdSFt7@dXjnuO}hqID`#-LjbD=e;$Yg_g^o0arL-% zJYEydn38v47M6c^>ndP>h-o*Q#F72~^!ilIU)_nYpX*lA~LxtUcMMX$G7XFE9(3~M`* zdR3O2@ZjZf(uezHRo0hZ0te72_2eK-)yo(wLqE5Xq|Wkgk*0dtkGz3lw*0W8D>vl! zrV0;>=kxCy$wUg+J@I%n)nFSIhQrq=_0xG<@l*ekbJgaQekvIlKEx9P!>BcbcYjQ3 z9jDL(7j22&2%g5M;au#%6u4nt)zu!il~-)pn(hN0#6kSGr(;hGt*)o?DnMzCCKmy_ zEgD25*5GaoCD+q3g6Gs1E}~#k&HhDvz3O5%4L(mHi8$)ysk-EIhf6xYFYXmmUyLv% z06z@eU{@)=^uF;!Hc+VRHFE#BL^-`_5{(iqW#A; zpJeM?U@y(or9M)Z-efuDiK2E7{CiLA5Y@;l3RdMXxZSKz4Y zK{P@Ge+5n0=q7KMK3ip+M&lqxMe{)o{Z2%VS~q->*K8gH(>Q8>x0rhSyEMGBoxtD) ze;!x2h*r~(hOfK1b%jKcil+l_6|kt**s5c%)N6NB04#C)OL*Ab;imm&S&d}8BQ@ih zonw&}eQH`tg?WPaI%&C};nTyh%do(~X{sSuAf#bp_Mjy&wpJ+3wQ%_o4+B>;h`Lc* z$^u0aM=&UT+B7H@!GG$|aReKvR9ocQez)9lb1Iv&c~7Zh(0#K6X~}S-fznM{rA;(Q zJT(Vs5;67CjdbfEcE@T$Z^NSQizb23M-R=^0L zx^FEVM-ts~0@$LTI#Q5iBpjN4xThkLeW*@3Ekgyqybz|**<%KT{mwABY1d6+5;bKu z4d<|Y2=(W%lu|C^08bPQi4rPA{idTzc0)_x1cmo0aJ2WdGb}yrNm(na$_6>WScvmG zS`4#^n$$1mDxrcaKCmEIYYbKs4 z`e7!{67l)Kiy!%9V@`bnxDRyo31v)IrIDPZrdi`8YcFAm zXb#fF9P6D>33AmsL)xO@E)Fs!M-e7)V#iWAYe^s_&d+IKeBAgPQV`#zD|66zx?2dO zY58;=MJZ>pndD=FrDNWNAS;yi>kC&Bdh{z#M)8Fc%ln?K%~}v{7`n{-yr|yOlp-3W zA7(7f=Y~eUPzE++VVDbR7q?)rgGt{zkj!U%pXCr}a!oZn5Ly<`e0`pvD| zo<^j(C{5ET2VEp~yf@6VtP)=u(;f~(bx#5N&YyGKZrdQ zBU3yC-=u{Cd!q{^UFSbWcMqBIDMeig(FzlnbHt9>qQQ~ig45!N)hS(!f+bkytgS8H z4>slST%ZLx2m1p;CROqz1IsJbteWtk7>x7t*TlrOcsdYjP3|Yh!>O&CPD-Ef;U}!Q zLZ-l60O@>2HJ4oNVlwX}3XNr&TP<1LL|P(?h!?}RjV9%>oj|qMA0h93IaOsie-bA& z#+p|>M+ZxAzmZOe6oyhfKVF!2ATS15|LTG9btkC3I>+^1H3Nb%|eMHy%!U4Oy$;=oc3-F&|(Cn9bqS259YXs zQzpDh9*Ym?MS31%r6yRIwmn#PD%3uz)r%l?&%sCDUkNt3C+}sBn-0lG_`4q))j}LX z1`t&>BEk2iFpf5fU$^ayTsR#_ZISm)1OsB9?IKQ8t+gp5f-pr1Fonn?7PA9m`*tN=Qo(c(S&n~cH=eElEdss_-vqRthxe5eqhz_r2MbkRTXK}y zGF522_kG4fol@l?!AXOQgnUG>2PTGN$ByUAD26OM&yO9EEMWvvkEfqvR9Bc|?*Uc5 z8hd%Pk6NkwJ?}y%ubjTDnEFAW#4k5ydq}#-2Kg&Qm8Y5l2&qOPyeO&5{5C-FEAjIq zs=vj7PPhduqhE@^Jl}F^Or2=;0PY+KmpBu6+G10wj3xSTS+_MI!f9U5t2=&@ZWWaK zkRN!>RzKmwt5k0B^=p~tfs?>^lWPhXSO^@Wigfg9jmxuuwx9)5MGXiO4jTXj6r2u+ zrf;6FGt%tEa$L{XW$%0tb@K>G91GGAP{E7p@ML8&o7>U@W*d)ne+J#qOE4UyQXj~7 zcg_YIzrOvO(G_0p&MhQ23C=vHSToJ_PoCQ8QOHTuQ2?KpI9>smcIv$^Q-VFHZWzc87au?976ezwzcC78jH=Y# z;`cXKAiUHe%lTHSRdd75QEn8o8~E-zfkSlJ%))j;bhn*a$hwXL{59ais_Ea+#n8^> zHW%a!EB;!pJ3zfzF1f)agO1( z4N&-khpkQo+%zbrC!G0iYnMIQv)PN>#=>(t^Gd_NmoTQhpEn6I;X9k0%Alty6$=C;D_w!vdq*&~2S?*{LovCvA z^c=5C8?q&~=>LAyc1Pt?`HuPQ3=d{zEqX~>WIPQIY z+iT9jvuXxYvDor&1U)$FGnY%$s((X=_a5%SH$gykQxK|oV2?URRWk0CC#NT1jC+{* zReD6v#f~f5xWbu|X*s}(KF70~fcYbj%fD}RY`}ZKoIJwD9W93MI*}e~ml0D(`iPGdHth&;=<$ETT_uF3)P` zKH=Hn^I7>LD)#NDWP+?y1qa>;XWrlgr7pG?ajxmGzggmw*#CW~lb2SOs`z9S_&)_i B{OAAx literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/First_Rib_Top_Image.jpg b/boneset-api/data/images/First_Rib_Top_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aa2cd47ccf0cff27878cf9edb97aae293b35c530 GIT binary patch literal 74151 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 YKfpy241)6qEC2ui07*qoM6N<$f+O$e8~^|S literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/Scapula_Extra_image.jpg b/boneset-api/data/images/Scapula_Extra_image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a7d5daecd74bd6e7bd0b4ad5a256208e7ac3c811 GIT binary patch literal 27912 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%0AcpqXa3fO^z&C*V#KQUDQ~LSlD8Y-(W4V^ zJ+e{`3J3MNeyfYckmN{ru~4wy&}7Z?keV9ysgcQz+tNd*rJS#-?s_!is}O1m`9!_v zlPvUhuy+~xT2`cah`-Ojab>VCcE+L}zeIL(rjyCK-P9}kZhtA)6ij6IvmK~GUmwgY;RI_tXBQ*TS27tH zTY)gFY-9ekTadZ+nZp|h?2xj4olsgXs>II140nL2D4 z?lDwvX4fPF4 z>3Lk$JO$7K?@_enB|JOd?3sbK_xhvLhsJW`sx6xQqf?eS1_ozAP8aGKxq=23iaA9h zDS4--N71EwoC{xDM^s6S36f%(PR;GGXu&!i39MfQb-jJC*11nkuIEAhJpvqePL|tC zE>bDSUq-?CIlcpbH*Lss0F+LQKgHz2OyNR+B>t5@0Vshi6Y{$_-VA9J(fP^T;(;>) zFJFVFPH`i+hBAe*$&S9i^pk2;>?JsX5r5L|S3#zpc{4S4?=(5T5_+TxKXq=>cfUOb zl=;3Cexj^nf}r(Na5)oR;)zz{nNu_U!>sM=HvFF-Z1ZgUV+r?uSa8krpqzTgi`>vQ zI7dWyFT#JtyTvnHbJ^a$snhC=oj97`UsyFX)UMW3oMcSheE*@8{P-Rfpl(6bVi_N1 zZ#OQ3%VV7Z|1}Q3g1@-jSwOE+zT8rCNpw0|WLc7L{9@S^JNlQoRoCmKAfZ|=5`#_A z3{%$@0DS6Y(f@UY3qigKeIi9@l|g5Jg-3Tx=?-qhkd3TQksc z?zp0+_{2s`HEpjN`=FYR_O}z^_wF&_f1J1HrL2&FQzV*N&_7A2BS%M};OC!ltG30J z`+LSKmH#_e0UG-PC?xxAV;-f7bp7AO`|D;m z;QIF%z0v5z&o3VQ3~A4e)6UD#v-^w=UUJKR&vM|)&d*Oqdb@2tx1DLWfSm-k$ED_< z@`hN+Hg=<)YVJ1$v209Dq!!63;4JL|#OTFwVdo#yjS#LT{7P-sVb%AY?G4O zwC(N}v@XAuBvqZY8+Tm014H}=-yQLLKEZrqOg_-wxWANev1vRNrA#7&VK{|5qw?{w zx2Zcv578OZSvyd6tU;KJCX1H-dN5gsAn|}2>x)aVi2n}ctuIIt?vHE z_QF=d9vu&j`!{k-1xY!yh#Yp|=I**<3=X{P!fH(Y=iwi3MvQ3?>X!Q6bqy*)k5b)w zLQl4z4Fs<*mZWxzqlrf(5;@ycFhnRAUYe#!-7G>jecV3)x{jROM6)n$9uAH20s`>2 zt|Esr;;$iwIAwMnS_ysmKQl%m9b`K$w?g-Qx*yj;pBL9`E<2={%fqzvQ^7?f=@X1> z9V@MAl70mYIsTP@bNC{@TZe_|1d$;d@oK#z#RT9IP9j8MYJHJd=c|jIBj>3?a9x5& zqA$ukr&Bf#&EUM3VT&0&Ybnx-*Y&fU-4rb)y~{atWw1R z(K-ILAp?l6(r&Jm9vUY0n4yQkMzz@t(6xt2cHxrhKT9#L^j7rsPoyElJ{wPT42k&sh=~o9Ddr;f)h-j*0x|2n=ey; z`WL)w1O$syj!bX$~VY|8X{ zJJ7IcBOZkYS?tBmKoPR!K!P<(K$*GvwC&(oE9G-P&A;qzy!)CPJS=?EOLKxXl8i~O z;B8>^!m9^2c!(FYO&r&|9cwJPW^MvrR74 zVl{M1>w6`Hy zWD?ExxAOb<13q&eWrhq|!V1BPYU)K_sWAyJ<_>XuCxT zQ&CUBvxVqL;GUr=8KXaPN&Z$ADD*7>%CXRPTW$_==oVoVWzxKhV1&DvL6A~Iz%lFw z4wObpeq=XolCae{CBQmHxk6l75zI({j|U7FExnf01qWxaPS~_xumdgRYfZm8Cho(N zALUvc0`Vyd4fv_YP}0XkiU<15RBpumnVD}Xg7L#EEAo8#I zi(Hfs!**qoKWuZFV70S(IJG`9jow0U_$&Pou1qV|#5Ibq12yJ6sPEEQKV zgqC-y*&Jq;@cj~&CoEITP3t}nZlzL(Bb5&*6xGkm>~_N|64Y&oA1VCG+*2Ehvlk`D zPgK_7^>TkjcHL2_E#HVgcQ<#I@^`PcP^f%Qg(ek9pyCpzX*w-R8R?@zI zT%E~@e&Hay1%eChJ8qeSP7h@l<-<5*JoT*VGf~O6$gFR)HQ)RRtF8J)_(TD)*93m6 zIN&>Y5veWGds*Kx5z0(z+_hbO^#b~n8diZu%cW-9@{XN}_Oa&J$yA^2tBks&{LMtS z$^wH0>TxQ;g6L~ zM(p!VV9i{9=W2D9XMz#I4tZ}Xp<)_$=dBO?XqelBXI}_~wp(4Df>3}YF6{mfS`Buj4ZZyK_Kphc3kVsXiw>xz zrWMX+>Nba%?&r$|RySiY6N0prz%LR!5?ku6SxIzK2&WOLDr+;+**p50X+P%J$-L|H zoF6#6OC(}@49uUPXlRQnO9`MVXCCW4(ZA3lJEeG1CHOmYzc;ef=LLiEEub58Bq zxfoYCt*+MmV7??sj=RPB`}?bEgV_>}Y`tQP-vX=ZLkLUiWO+ zlBob`I0mcrN>A6uzqx{r70c#GS-_zzRF#(6f@0%U#Xa?g^Jm*svK$U6%Dqk@m=Qmv}@} zP0M>r>W(f>U&nAyjGM3}Xiz#~x z%)%n%R@Ga02+15?@0_;VBVYOm`)l+9OBU3Y=wCI^;hTEv0+(l{z-gDy-&!xH&Gxs= z>XSi{Fs`)7_62{hIg>zN5vpr^Qonp8pe?lE8}_ORPT?8v88#vhEMU>;e!~FphaiQ! z9vMz;P4zG~SY5#A^#s#;6OhJE3P5;QKx8|q$s|Sqo;+F(Ktk~>$%zoERXY*nGU&nW zNH|m!#05>@o2xH>G0NbXC_Gxr1GW^bV@PwNX=p0w%c0oL_~iR;!f1y++aLNEFc~_@ zo$?rr^wPJVw$%t=qc0-se&PCPVvLJws}In<@ZH-7KW#u_C*vEsdpu)i1}kOn*|N^X z7;DB64dwn#xe5Q)qUmUlG)w*QaQkfA^K#=rLMwXx;iCpU!cR(j<~fh(z_9uLE*$On zcbeNZn#sPb-?=rRWzQZ`WYar|x;4I_FtW!`Fd5y?9SeYhJOv@Ngs=IbsmhMdN!sy+ zo3M-=jv_~fZ}Hfg@0ONNd(FU#7lBwYhKXGTQkZP5y<{phmwWTB!1=Vo&_L1Ic!#^| zAQ37QDrlyd-M!CpG2whi|E*}fl_FaxFN<)s)n4`U@Mq0)*re2kt(ZNowTEC!*T}I{ zxEuR05gn@EZpA(#5@&2qL7j&_8s#-xMK$&`J|iQd)qvQ3xecISvwU~-E}3yNlyX^(^Hs9kbuvtq`WK0u9&tw4 zQoz7AVb33I2=zIvGPFs;?gxvBKG0EkXCPI-dD#zDEu6}dQ}oa)M3#-LrHEH9VU~`v6RUGmFE$M z0D#OHM~I_eawqG4ijFOXB*p#{?hJG4f4Pa>oncD3(DF?FR9@^n2Jc=DO>^f(J9xZ# z4I*QzjBJ}Pi0xp`kBPLpQ0j=@ejnGX9Ay-=07&uR2R%2`C&At#F{d|pZX3Akq+QPX zPY#SYS{oA;A$E9=XIR@dy1(qT5ALzuHLnG z;(q?VvL%u?vw|vi$-Ty_7}(2v&g8i(C`)%BSOk{FlYch zFw_%QwGSIDOSS=pw65O&B%Z=^2@wKT4XY+|38A=31SnOjTBnA+?_ET53Qdd)EgNd> zI&2@~6wrgftplPU;XHd@`^6siFbPRl@Q75nC;z%a%YM#)V$yijGlRkBUIt z2fKDoVqjArG}kW@gGho*@#_5iisn`1`{XI@zFmv({1*!x$5!|&RMa-MaJ;mv&^S~ zSKZlF=%*v*e4QA%wAfI)-oOZ26a=tA8i7+VRyESGAvoCgQerU~Ti|lR`T5o`xD;0u z0<>=4dOc)2hP+sRZw5t(^eZpdMKPq2TBZpARLPs~vp2^MHnszw@lx6s? zCz9rNwgj)3EYQnxXr8e<)r1w7FV2=>j2Kvty&O#TB|oR0c*30LAM2?_%Al!HO;U~7 z9IBtTokJcPDa1J)bn>kbx1;b&myMWI!_sH$vibGd{TQ2G-F&A&qldsius&M?U` zz^^>C^ir49>Hjl0VP;OJwPXI=txI-#ZSyaS?vr-8bug&txe; zlIsLSt{!BR21(lOmglLrPUxmGU=__^Z@XPWhl3~ImAX|?dal&WWVvMtr{Xr00*`pO zOnx8;L6^3LMF+eWT}R-tdHICbr6?V@2*|4hitwReCvXNyzgvBkzd2L>j{V!a#a>PZ zd>=?edX5gYxbF2-VEgnpMb^i%;_-4-soll3UiD+U=FR(A>hpAy9=|@W6$fa9!#{JS z$r#W`@Ua4O){skU=KJgG;liT=x*A;!LY@R38Bi@;$W1x}<6l8o=TWZ8S5ApRm4U%! zsj&pJ$5bDsxRi{j4|N?Pe*KNNm(#ITLl3WI!E0k&J>kfP0RrLyLNfuRj!@6#i2_yJ zDQAf@h+Q)+tqOU4lQ28`m|eA@z^>zK=iboQvEno%Ri?JPf;!u{C_&Hi3^jj4dR~;ITSQ?ihqi?-3x)(^cWr^$oVFYHLXS~DlFx7Y_js0*(n$ZJZ|Md>%-Szj8!K=Vv$ej||yJI z%s?T|)DdQ~Z1lxU#U14n=@bK;ER$F)WQwc2j#UvCh z8XpOg`7*@G-Cg*f+5D(JlDcsApTqKykxTF|oT6*~5y;a0r${ zrQ#&5M-I^+ZW+OZ?-2F3Jo?yj$#11!+lHx9V)*$mZ<(dvu!TQe_8YmC zQfD_`%z5v(7QttQQe(K2g`)BXpyozu6mw<*)u7kewaWul2yBIF7en+aOn`}dEC`r5 zzDvSY`ZN#yHp9-N(GJG;l`=+An(DYJ__03)N&~8BA z!#ahH8%C8EcL1;gAk@(0ea_yVf^1{-r8CeW3uF~ef}@+`?ljYA7)hb^c2xsvq151N zBUi|MAtxE>Z89r`XDvp1a_$aQ% z9hL#$7R%`d}$+h@|H{ZlOKq>HW*QZ8rCjJ)V_Dv%*4>@XCK_E^J+& zRkFuq2^W4uaY{`!MxXPIAYpd`=yet|KC{f* zrR&CC z=*tVwUxamnowlc0RFWs5n7so(@lf8$5^}GY6^t(<@Rtj?4=nMv&ENf&t3a2%mB#5_lN|?>HM zswnij=9lMK|Az=o`5()ld_<1XMBMoN77jM(sC7YmU*H5 zWM>AItv6N~BH$$t_`HFz5wEXFggm}^YdlV3t#^@8;2)10lRIoZu}hVbvx)GGpcg7Q zs>$dT_9ca*xPaztyXeHprRgXZwXb0&7A(WnTk{fm4>6tvT}x0RyokWzE?_aA5Jbnf1)V1Njd`&%DBlvEy&!W0OLE`tEj|h%(=%{*|HuH^; z@K=itCnvz;v;JeBjvbJB-w;Wq8TdUe= z2_e$qlXjGDh~TX7M1t}m?dkA*{+w(?7HMlqZQ(19FIny`YvvvuY@Ui`oc-m89RzBX zXSmYdrrU~nQGmth?_t|f zK&EDo&#a1p^|l?ZFTWQLwUy$lu+dgh=KK}3R9r*AHNWNSvO_bV!yV{GvRm=C^$Vf7 z*qQ1kj#scZ^-&0g24F^#22cZQD*}kD?IUU5eqihOxcz%%ehyO&lb|Qpr6nMjdSWw{ ztaZFp|2agY1d3>##3KA0=nV27)ky+y4@@LN(j3ycihh$QqF+sOMnaT>jX#hd<5WGV zPmZsv!H~d{4LypVvZ(kp4yFfVM<&k1H=^BVoDl$p zLFW{Od6VVtHC)YC%)*xdWq4PCy>8oPJq7XA8ea2+KD5eJw*yg=7XinAek4t&A%eJ| zvO~g0;P0obJ}L`=@?k{*>r8nqsf|W^H%&jJb%oQi^xN%m zDr1|1WUSNrATF&NmeCe50`^n{*8aW6i}vr#;g2zpNXB%9xQ?{+nb|7N$cgj=^Ou!C zWzAInvnr!m-QCjoP_?)e_Bf$*Np8{p@#S@-1SklfprVrMNZAx>ccYuPo8Yt#%vwhY zE2AD09aMur4d=2i9 zkli|HpAmpcdfF8mQrZio=xCw3dMT_36p@W|GuZ8nQyku!s3e}OUU>2>9@g@c!R%!7 z4rs#(siQEF_!HIdYLm4=4A!zYW}c6I!~QneR^;RSR5^x3ASOA_HQ!Ke1Iz4zu%l(| zddTCC7Unlv-q~r9=_#!?+3kj;sbAQPeFk2oaVsLsUU}>NE=#Q%W!K6nv3*`kPBo%? z1K{6#dOg#A*RL5jMgbPUT=LhPmKgRfzeR=5tZA7lyCbwslt`X^e9Hk8y^Oj zG@CrmC2ODaH9fnf{H2hOYrm5BzmTmwx%0kPY&r-^}UVtS^ugAZ{g>879|Fx zFJszreUfb*UBv52E;Iw|cnw%~f2$lh$HNR#b#!fMA1Sc{I;IRca=z3bb|3MfSLBHg zBusTUWd1gUoI!E}_ehs<*q+VTJneXsKAUB6TKQ;mbBzDuZ(WyYRdIwgw!XfJCCq+w z#k>*)g^IqNlg@ZeetnOhx{449BYr~qx4tNXKPCImBfZ~XngI<0^HHE6M2vb@L(Jo`~ z@ubKx1nLF4FP62fM$gC94rGI_d>+s8Ra&o`g5%C<=<9HY%uD;%4J8SaDjGt)9mY5Y zj&e$4z5pi1+s33deBwoIr-g1{fAmC8dE@snC6 zZINhC&IO>Rg3>u^W`L@;cu77)CG|OUE~v-i$CJLoMOhAc-~_^|<^fN!2~gs*K&l4L zP&(o}=-Mj*gg#rT-T8XaUMAlxGB*I~R)9LYY4G!L=A1g2>H?)T5l9s|d#!5r1 zZb5mcOk%EtEdL3~Gm7yPGk~Z7BT4bo+8q+nE+|*BHqX?}Rs>Vvq?WSzf_HlG&yawp zQgupfxnD=Kxx(;ICpkSV4tuK>=H3drrnD{L$r2-pwi}+@!GED_`Ivih_rv06MV-$j zCCEEQhj(B|G#Nr_EMP2BQ&7ZuLCMwO$yB@MVWZDp)t`He+J!rSu^;ji^8@KL3FXZ4 zSEfl4RW2x)#GL|28}6!E)F?qgG-^!$_4zuqC=5jv7x=u$`!zIgzqF++XicLt*^e5eus&Cr` zF>JEiaRJrDm}aeLw2KSs)yAK&Y}XUa(hbUA!56Ow)6RoAazAu`7IW(wD&(&$NtrwZ03!>p^+%!Op`}g-oX*=w5E<{AR9L+8-x5$=%NrEH z&sF|cd-uFrI<}ImU+SO+K-Egw$T=PpBcUvxE|{MMD^GiPpT*vpX^e(VO}dqyV5c{q zHnV`;MC4eoJ>u-o$$OtOE28Y>r?X(0vb7H)l4-qtjy$sZM|H>2TR1X_#YwW^9HU(G z+VjxO&Oe53z04?HP61%zu4u;-?+ToNP`vsH2SM=R+F`yHgXOE)<{;^?Jn-=JH0fnMlG*Q!HCUnNuE_LEV0lfK zFsk!dM7!~QklD9*&H238THg)MFyfM@`Jy!Js){o-eva=Fm+MPhW6m-a1M39nb6A<}dMNLpvh`syGqr zOboFUQf4xdROns^O%jg-WO8ZpP7egZryp9R3s3L;MF~f<^-yc$ue1GB5B2c8YJ-_kk?se>{(cB8eCQCBc=W%FC z6*`d@dKXBf%XzBSBxj)gJh-yuA)k?!TqATDftzV!O+j$$U&u%nXLi_@$0gBM3)JPx zh1JL7_Nla~i8YN#Ijgr5f3Rgj46N2ViGoRFZl97{9NdUpYlMB&P7O@d31;T{Qad*B za6UR8xKwSeAWw@kGqePk&H6C+(qu+QfWugF;2$YFIg&g-=iD@+jKRK zj2J!B0}pT0s-jD z$7>`>>0Lvg<)~%c#&DW`Y^`{p39&bUpw5t+4+}!|NcoMfgmYlfzrKsFtlw%Yk-zxy zeS?>*K1-DuS6cY7bur`5Os~Lg>0lm)hZL3W9cR$zeyN@Qc!nI(KOP>b8Am*k(7UG) zF?t*z>Ux2M;G_swT)Q{>f-kmtuxR~s<}KBDWjW&uGosD@x%PIhk-KKsX;C_n<|Od8 z8LJEcWBVQ9tkdmP{t>__gKGB;!Sa@~U)NdH_c@lU z@%Rb+bb~Ka$;iyRMK^B- zvxkb<0tXLok!{IG+y>lG6CrBXC+0L$Wv6~#i+)7_;YyYH)2oDe=nE|zf~PYjIV29A zb;8Znv(gMFTW4(ugvB*I4tv%&9^w9+eoU5$^~tXm$Ncufxy>+pCdZoLGz+9RTrn=e zI!1A|f}Y3oS*A`{?ENjYz}auZZQGfAV%*i?fo{Gi&(K8GYfd|5qUz%zz9Ra-f|qm; zd?7_QGwyAho{M}G=FsvHK54EPZgfiuE(0WUouA;hnG1+`R~wW|h{%@t*g2kU-g@-f z>3^LPzPd<)D>rMbE0^1BepkVDd$B(lB|S+z{o^T{TZFD{iG}ahhjTiFoiO8e`@gwa z1eS9wsGJdR|1E;INTo<}vw$SLMkHku!}%7PwW=(D3J>A{ZzcJD*LNJ%-gMMt3!+B* z?Qt#GOuLZM(&GpL$S6>m%&~Ce-PTl=eCcd<68f{J<$9_mSK&W$74;q6;+HUj)dsX+ z#^h2;m@_(Qe;S^?#&^jdcC48tRixMm^AOvGnYNX?t{X)0SN(FejQL%GCJ7hvDLtO1WkMA zmcXFgp7x_tD}q*4jgK!oKI=w*9iQ0Sp(EwUX~8I!6<`X?6K!h>dy(oh;5%3(HHNN* z({R0Uk*6^5wsP>=&-MuYq?@!q=ooj1xL$p+HU?2-?r6SD|H)r`E~13gl#wZ_&`REv zlqN6w4xoCd1@Z+)!s=QR6y$qZ;IE+!9Y(_0jRDZ+Xa!&3Hl1@p2B^vFCOBv3oprIW z>+$tYITVgtePX~4KVMCoPa@3zqHP45ZsEhVU_otfXz&gf8of8JUkcc4Sr!6O9D~Mz zBG1gJSEVy4+Qd-*2shBxdyWp_cG+zH%0FH?FXbsw112Ux42qh*ceoc7)uh};#S8)V zIR29b>KI=lmg=DFdy(sWyR8KmxJ>Og?&oc5E+Egf0Hc%<{4+Pn!uGj8uJaeqs^7?F ziduzbSL}eOjT^c|IdR(#_=eEIM`?LfN^|&GHX{6ao?MaQk1rL;yrSkWt;k38g#w+h zYSo3P5YNdJkA4pBbH7E@j$&bji}MVvj6qv8p)Q!?LCaUx^RG(SWE~0zP^$bJ-Z=u3 zSM9$`R}|mNxqj+wJjY%ZoGtte^Hq`hKLBY!mcQ1qIO>)9_U9>@;K$?O4XyFpGvw`@ z=Br=)V)^n{?<-dvx{yZYyqyi6^%5M9Vh?2Hx&vC>)FLapPo6qeF1!3P;9nzTureQ0{)yJIV!ncA*12lcB#f@z@!6D43dj zF-F}79{{EZKQLXRe~6eDc%r*EUZ{SEvEz-VMKWuyJ_>6kk36#}+^IKtzA}cP!#EU0 z-tBl!YvKz#q=*i%W68cbk(AT&7ZJ$L35ClFj;uDbTx za^IJ}qNnqiEp>VxUr)t)6EO7&*m|1BlbZS*k;aaMla;gN;M9qu<)a_}RQaLrdsl`h z9$T`$==vMQOsdv~1vuCg_pq1kx);BghR7Ba5Zg2zEV&xhBSJ-V{VP3rclvyGWi+!| zu1PvGGsE!CA>TBTkwl=QNL&BTCY-$@l_hM`-!-w!)v6rB=Ma334cO^)+AbeU=>sQ6`EydQT>Pe zsyn~&s!|4HT_1koE#=4l@?R`B-t+<%8a{?T?>M}}M@-oY<)`h_VX+=4ixHi`!Db9_ zs2_nPKBAHbs`15m>zlU*KylEK97OLLFV+7BopIL>5tvd5JlqqncliQqL(3=r=EjqD z?I-Tx4f3fj%6QJMlh+pRM@fd!v=nYyzgI5HCa#iyK>z!EP+)@WUaPIllkvUoUe@R1p$^NbPo# zTA`i*NF~r(fdDFFXSwh~ww=(3gW>>*4bG}+l139p-D_q&Gf9WSoa1(Pv&Cd)H#2gx zRHooh#7Y@F} zr;-DydL+jJShj(2bbaBLeTS|pzxdz(-Ezr(B+^r#E*pFy zdSV4I;s~4dvM)#U_}Q)r77~vEPNQ^Ua+Ex3T$TNK6N&7F22G=;8c;J2K^SR=2bqf) z25tnZ<*GJqLvO_K#*E}vfJ-_FpC}RsPuzQkw6cuFVSorkfolheAAn#KyKpCGOpVy6 z+8U?m)0iFh(8l%oa{Jw{D*yUd|DRsO37+?-3rw3L>t6ccw28K<6f@kRS0BN)Mifx8 z@{OSvOF#(=hhrxmxxf7W$3DeYkbOumRFcCu8r%pC8+nL}$`XK-SR$T4WC<(rq%XCY zlLE0***MAf+s2W+JajD!D-o+@4~K_>-#R^l{g`1h4(HA2B#L??*EOA0rceq`ip%CZ z0cvThlM#54AHCro-9l`1QMS=&-?_)8+ICJlSKEZIJyw#UT*l`FfO;;==En>(jH4c` zFF!z9XJRUI8K>oF^hz4f!Jo!{sSoRfOWv*gD_9J5rb@WsS^aQPlkv|j=3PJXm&@fB z!>1?i&v)Zi;iYx-l}<#AZ7h{>7QzZj@@;Lvf`_s2Yoq6$jk=;(%Qck#`ab?OXh&5q}AayYVFLE|N*>6kwMo(pfDUaU`;6Dx|Wqxbpk z4}Y+H^TCIZQtIw}_n1wf*Rf!=!fnhHl7=Y}&7|*{wud}coCH_OsETe5SDSVtE+=AA zk+I_gTGC%>Ex;1O3p5oB95Ol6;`*RahWDzAqT%Z)#xzXZ#c2Qm_H786{OG2b2W5Sa zq{C}_&PfI2(WM5NfyAMe$6>C|@oV_RAsDf9U8Q?s?HX0;!F*Kzs3J4ubS>CUK7A#Z zTSv7iBxv62({t~)*CcDmSDvDH@EnG$zK;J-8K+le7$qQ2!c;P{ z%<1@u-r7^LGv8D6x}G5=V5+>|$#?jy64%QFM6IDPVoGa?pEHIUp{$kHYN6|U*S#diQE&+}@tfz@7C5znGH){lw@jCFABPAzCoSn+1bUrEx z=Vi029frJ_2^E1!K81)Gs!2?PC42I51%#RtnzLXO3BCHO*)x}10TiEzz~@Lsgon=g zdM}8XLkHn?J6eI%Ja~L_^o?DoEMKJHM5D=$0o533tVG9i0F5N{T2B}-r|QzEJ0=1I zt1*Chk}n$F^2)o?yvi8jTnb)?UxWn>O}#GJut#wAOl!NNzB&jX(Myn3`9lHNb;3 ze6ClG7%TiWd&23LA2$W3!j+H+kg)NmUoOg30T%}0UAEnZ@!axOzT3^~O`OynIFc}Ft|KLykEQh4A zpmmi~DclbSzbJ)tGZEoQ8*`P4DxZ18b54C=mf4wRXMdv;wb9bF?NsCmnWoDH@tFr@ z4EVEM`iWh<`qEq~e;UMabgUUZ8owPc`LCZArxpO1`aMS7ylgi$4f9d?rHeWC^*OxX z`5WYn`k)a|EiUg-=Oq7GSBvG2SKY}FBJw7DZ5$dyK69oIPMeh9HrVF)L`c}&^`C-C z%$^zSt-;Q3!~Nz5-e2}H`*tA#5J}Rc8-L*E+`0Rp8P`kkCkUcaKMpWLhXW zHDNUFt(3`ivMDgtyox+ZQ(ZQa9|1@sD8<3|X2;#I$s_IoD~1V2d>yDIaT}mURk86I6_tUvku&i*mUL7E)K%F$z0ldn#Km{rad+O>Y~ogs$eK; z*ksFeiDuAjd8aFlWM97ut^Sr{qS;!u#5%wmUVKeCc<739>|6IUsboAuV-0P#8M>YC zsgED}Y46Q{tM&H&wC)v}HV4hH#c>YRI>m71#3K)t_r32o%8`?E966%WO=X)6-;3(( zu0brkyFV%7B0YgKSJC;z1C16t7al5=tT4{cHj$LZiVxKjr+}10;aG*9Rpv0R06=iE zCN+2`FCLxi)VzD2%v(OQ+<``n^m3S(3qLlF z02WeV)pb>dv}n4eoW!aALPRqj0n@|ECOLt#Z)B{e$`t+Z|7kr}c248$70miU9<4T_ z6ZLu18{SiX{4f7(8DBhtR6buOU6tRU zBuI}0L@qC%ljwO;GA~}$e+}FBsw7Y&wZ>*f}pF6Rqn6zkG_nf%D;&(vg0M z1s=g848mZWABQ#2-syCSs6>ktyRKvgV5QT7?j&pgj6#K@YV=~dIW?iPGt1SV z^+ub(kD%)=15~o)10JVMcx3eo`n5anygg-955;^_jA^C*yEvcht>H_>kKstIg|Fk6 z_V#VvjeMBLY>YJ1m?g&TITDv+WRHCLljVKypDKU)U2nrbiwd!WA~awtK>o5)<)Dy? z->Nzk=&E#qB6~?x(LZ<&7XOMr2J`2r}jIhr&%YQ$Nbh0Aef9`FVGsN7j|+7 z`5hxqhI2vbghL5{XcC6cP>)_vLhjzXhjYvKmQ#;Df=>b)$B_3-@;PLn5r1bDAKF=u zQe)soRoRdx_FYzf@TdP)dF|_7Tc*}dm6^vLDI+ZUb*9+SiS+YKd1Iz#A&!7kfr*Fk zKpL=mKv+fHXQtP~Xq7)~{1OF{5m%L7()eu)9or1S(?s-dSf6XY2QOGU3s?D$2$KgQ z!7i)56GA96?wYQ=tQsUkT7!0zEh_Lw9PZi4C9#x{sJndWx5Y#C~8tL0WCJ70>{bLyHHh%e9e-NsiFXc;z< z4aef3E}tqW_k8jr2R)Dq0GY#zcPKQ0F3A0LN+aV)Al~bYRz-G?2a#Cy zODV$|vW>@B!$zkOaL8B)+^DZTjk-?PcWIHPGh`0uT!N5iB_zQMVn^~K{`8O}RNuYp z2H3<7_uRFsvv95v@r$O;Qd+hQ?WiB!GxVeE6Qq;j8_(8(*#)v+oEm$^ovd%V zO0@{!{r@se+$Pi^8pAt zHKpS+AG;8BYcJY?c1(K7q*>03yMNfRyRacg4UUCz?r|SW0SlfEowu|b?-ujZ#054jk zMDibms}%{mrUbD~a=iTEhu&9?96v*&$7)C@rt)y&7N{87sj$xiQsWR5jSoOc z9c1W-zob>~<|klfcw15M%J}INedft?nNXuKq;oQe`2o%W+qq-BeCM0rT(egoc+zvNl36V8}*s%Peb;KJkaYA1T5m1g_d1 z=gTE^2>}f?fMNFRfgD#;OA?XZfi_IVyLM!mbDCHpz~{&P0HzJv^&0k^;go;|5{Wt= zfX@og@Qvp&Kp<(!Wf(z?2%~VWn~wEO)Bz3h3E zY~ir54V3~IaCBy085YTlRq~a-rV6OYr#5;4qLYqli`QNr?!Y8cRR=(Z$>q?WD{(kf zl=TF_%0I@_q%qU540h1oQ;+~tJ!El}Hq!J_=BW)WMWO*XwHO$(3C=>5C&xOZT}7{! zc89c25}Y`2rri13yUVTv2YIjU#rOkywZfnD?+`y~efi!uo8S5_Pw|<2_l(hoNMffgs&yInm@zK%;w*C02hao0)#^`-!mfz`1ss_W+*)= z72%fjc_#i4K`uNL_?g`AxnvLr6Hq>a6R+-?c9Un6}NJ2CCkX z*MPMWGkn2hh8#9p_)-tNboV=du)O&l?!cTs9VhL^t52f7Vt z7G5E$@LbpM@f>Lf_KCHznJZFM_Z;`` zxiT(^wuks73~5IRE&wLZ3VL?z)>qOKoWkw^5+DQ?VSHAQuu7;)Jghpogq^C5RrE|( zU3qbN{`EKGLtoV-n)dQ--232ETXIW)jHeMnpeFg8FP(uqer<3mv_uYZeO1b_c=gYC zvapRJ+i0C}o8bu02Oi-QOMV*;rMC)TO$g7uipzjOX1|amlt2IkhhSEeMtu`-6MKm! zbG7Mq?;Z#j;zA_DX*LlT=95rMjGG;&8^1cPCe38q3u!f-mqRm|SP863Q?Mg(1jmRw z!-J&ai;Pa)2(%4^Y=WG63C2GzlIlp1fzBdPDC<{i1$RnPgm$JOUAhlfD1@2B3-AxrrFed`yF?YOR=Jb z8$6`mdk%R&oBl(5Y4jf8Nf+fX#+Jsnc|Tu-_GClD8?UaK{n*F;pv-y#0iq%OSG))x zN)}bISfvU>TYt3@m4*Z+Ker9h0B=LC+rR;V3Qi7*02qcphQyl2EDIS2ztn0#1OnMR zt#ML;#LMg;00=S>hD#*^u?JXW_FPJ2)egs`t$Q2J38$7x`uXyc zKlh7e=NRXypLrO4iH*s6tDI(Ii*Cno`2$Z5cs%-~aud8H zQ}L6Ukf!FryFb{PWCcI(`m263Lu}Ay5|3fLFuohTmyZIb#>K~-pYYG%4L<@ASK0{y z1s6Zek>Ml40@48ybP*>qN`aptPVt^{>y05Do%IUm_%CsK#~Q#iy2@z-cfJx5*nScL zKSP34VWipjU50l3r(wvxt@YG1qE|z%hGaeGO^*Y2sp&=7bA_*rxHCpHQp)Fe5xVTIOFR!@90v1(-t1}>sh>LO0(ewFatyy)!^BR`)2=4U9)YDsl5#_dHRa8gcABX2tK&Avm%vWxQN_ z!>s_A5@6MXh;dDTk`%RtC4$Nsz3OlDAjSNh<)I5kfhaH+5r)}#?$Z}Xe0n9p?iv2+ zY;=hkSYVU*u+^>$K4hQfj$_A9E&Uo%4KhL9Sq7zU%{1i7wjLt14zm6fQ2O&f|KF9j ze((2}^@U@cD|9?z1SC7d6;?C5qB%dqh{FAm^HdymwsZ^+sdciCC4jU55 z2+wWJQRRh>YSL65kk4cUe?oI#^h3Ns0=c6ZD}*RJ*isw$^zC0T7sGn43}JWJd&upJxw1znfO%S7scVyt)xshEMW z@~h;du0|UVprf(-xo-&Px}^XZ_N|8zAhdJKioHfFOJ!WkWsbb6snU{_4LMDtX1h6u z3zWb@d_2gsdh{Mp^4;{47vhI#N=*_kr64~w?E(POo{GKj;Cdq^BeX-QB0lBi4iP}cx^wBt{Mf$o6F>6{fgp?1}Gc9xc%MxejpFVM-9NafmUcgZ(O-StrtIu1R zhjx+NZYuRz!2(pBZP${!=paCIYz^_O(49qd-|Bzs`}xAVbKg@V1)m4L_Sy2$PkgSt z`Sq`+@Mow{&i9^RX+R_x8YZ9TmMDJKTWY6wK$^6X23E6cz##UphF&dkubMErivlw`Yw^T=R&;q0^ z%|9-_>lRe@**dHXCN0R?1RI;#N9Y8{OJ06QdG`)HCPF~*{MsUs0Ly>ntq3u_dqMuIq8%n(gG^FkU99Y?9ZRU3(Yu=k5-)s3A zp2Rahn}DfVK9#!>w#c7MxG;7Y4Th#s@u8S}Y4@YQ{eBqg<>eCggIuWkaB9FQ-?G)b-t zl3+##7==m9P?*Jc@=j#=#ys}wHZD4_r`+`&uPMLs#Xlw;>j%ZS!&%~cGDdzGn$2%R z`}(9Sx!7cUZ=u?~dB}U;L*>rqeAaz1q#eYFmmx}5{{bfmPg&&$I~Pwdz5JS&l-IxG zdviY5RaaeIuDtfTGQE@8qZL*rGyCQtZ{~DyewLtQ%8Hg8gZNvGRSML^{H^xY)@Iz< z2_{~;2L%Kv?Yv`G8L6hB7t?BWVI)SIv~8@ubT`9xMk%Ixt*IKP{1zW3jcGn=)!LD1 z+xh1y(g}9*aNPKDsf$|Nb&fF^v4c)U*m0}JG?Ue&c=$C+HDRht^y;2DbzJh|I*ToD zefe!p)pcbyEO94Pjc53q%<);W#*m%@07zG!$?et?PtjAL@RLT8 zWWrN2`Le_MxHEjrt^quXtYw5DBR=d=U3-#>H$$mxbWYTlsw}5fm8AT@Tb&`pK1>98 z8dDQ2-<&hNhB(9+)33ig8Afn}*jd&Ou_Q@4e0<6SGMe55)ewcdcKFILLG-opMZwP^ zKEqEigmpHMDH3|G>GB=l`MUBe|KyiZ0L(JMgw%woq|amWocA;q?2JFp%~w($h8non z@B{yZX(6<0^b7s2lG9`=BWjFuXAX0IkmZscY8npi5GcvX0$3P&d<7@+5C*FVc%> zlXZWg5B`Tn2xxi7UN?0#G9#htuuo9JPgl3*U2UeIWW)(=T`28mRxe576b7iC_|>Pe zYUe=GzddK1W%6pVFI04?fk)W)FS$#!!i` z`#H;QQ|x`8-Sb&F82CZmLw+b{ExgqcBMtIG3$ue5!_Ttf5v9B4rdO6bUjH_xt6x=~ zcjaL~+9d#wK|fEJU^<({w$8NK2Cett2z580p8!HSBN@&}o4zrScFn$(jrWd@k&LW^ z{(C^l{6WXgK9Z8p@J4FDD7*4i8uLyxrjX%eN2QvBRv|cQx^VTy-`#f7p(?kx9O#py_eH?>Ep>JU=p$VNY)ZL*S(K!=W>6_c1ScU^QX#(Kk)yRi&>|0 z)upV}aXktZyF+~wJ*ZNM>oQbw3mKyL)J{G$(B(U4H#w!}2Mg#iH&BX>6M=nLR&z@X zdIOm~N^W`#m+p_CNZ#=1Ul9N?*J_hMfgT>}vn8rj?(qSR9p$x*NbI|L)pzY3szMXS zjisyuNqA0ACu95E1y7o$9Cy<+9^*740vYAw?$U?%eBbw%55NE4lyzoI1a|YO(an0Q zFO?Ms^pYE7k`81B%&_&nhCb`}EdFTR)fkU=C84a9A)&-?EG_;n#&~aGv}1i(#G#I* z>l`XlGabfNH@vLe@w&H{H@)rcU`YMgnLt-fT4$giP3K|YuVyTgTL(4+Kb`+bOD(iC#K^1F`yis&x1Uy3?cF##%EqdTX6W2K z_5D;UZEB9{Q?(ub_H4~c_iFs>f@La%+5wajOHj(v4)bl!YA}CsgP#=oMxlq>z%IRT zs=VZ-x0fT|{IaYUGvp1)-H6*tz2zNuZH8f*dyR`l)g$k<5me;1jnwS4_v-E6^Y0i( z?jnxc=vHS>ln0L-L0|CVvYUg^1S9($MRgf3pZBJ$GKMn@HUg*r_w8qvYGuAGbA*MU z(EG z(tiae0_9l>3r=;Wu!ZAYJERn68(o^BPI-5QZIqVVgqwlkAtzFc|b z^UBfV^W}@5`wTT_Z~CiP<6O8q%Vo2Otl61XugK-38&Dj)i- ze@g&VE9#yA8{?6$EB_I&OS{I}y{AHJA=P~u|IojF93k|8DZLw!>&a&m*&3h*t4Mb~ zx8~>Z?uj3U4bzZb`*R32bMg^BU~r@yxZ*_|j<$zJIYnWqK#uDrV`1KLq=Hd~a~4dA zXx9$Z=x2_jb3*Y+MLA?Lf2k;lSC8g($Y$fWu~Quq0e^mR#e?GH85M-1jK5>7F{>?& zS>n~R zLZHIUU^Wmp2b(o}uiIX6S9$d4$@1kd({rVlqRf;-!ObAL__@+T2@V zVL(hcs6JUvGLXDuGoZa*Nk`?fMOxU4au0qYUBnwK2N0 zTyx`{<T2;;&!Gi&m4vRoSTF~Tb&YvH*}4jz+jxjqOOEXVA(X} zvatv@-96nL@3jN6+})M%HZ0xxU{&+(Fs=R7|w~kY;n&k0ut@y^S`t!lN`#EX2=i{fT|0ll)g>YIGX zTgFmTst|3i^C!*ulNasq)~Nd_`t>n{i9LHSD8K%%e+}uio`a@NwXO#fKWcVrJs5LM zKlLqtH4o55KemrnXI8-`V6q_1F@?fId)IT{oX@`R=kcC19*2sRaAYitArbG$q{Wy$ zb+kP6(6`E^&%dGUoAwjleAb9Vb*8A5%&^EN6iSp{;gXrgnZ|Ss>|$>jma3^l#MQ5~ zxOmb-z#Iz7Nb5|$kFG6p@Eo6&n%qsV%R%$#rX+-UNbdv~g{U$Hl~<)90EKr?*bF!| z35qx?Q<$>hi78<^3Cr>tPvSy8#7!Vl8WeaWeinWT!oGWvS9_yGXwGcJgi{Blf_(q} zeQd0JL%H>iy92UE9{yGi+PA!}2eX}$O189^uAmK71Biav#dyz8OG{x*)UuFqJ?DK> z7_5Bv%HmS;ICPgG>t#L+Unz_=;c_Ab(#{Av!b`4re)*Zd{rAcb|An6^*S+AXGPyBR zX3rdD5$#MsX?cm6Hoz#$0{{@EVsn^?;DPWI5|MSI#AY5sN$yoL@?QN_3ge#oz)qwH zDAh2!$4?S4TqQxG;<--6cO782=FOvfs=Z)$4kIxzCKZ#rKVG#Y^;cK9u)7Bww32_Y zZI?de&)kQ8gN~6>jiFt-W2}D*K^*y_j~yZWR^zCk)WVnpNXf4}XKhfotcCIe1#Xu* zbm^7lH$V8h<=DeVh|@M$OJXu+QPb)xamGUm{r@xfZn3&u*L~kQd+&4OAt_S4NTei^ zA}x{bi_TA)DtQ1qd11=@!`wQmIq6h(^`Fi%0r5`b3c3U)8Fs^pL2cRcSy=gM3I_%e{0Rlm}87N#+YNy zHP>8gy#%2B1{$Nnj$<;j9SsIi^aLu2SLe9mht@Vd4XMUJW1KC}(2LJMwLJ6O<>m2r z@?EPlc3d0^%J;cCJG{M4hhz}f9dGcnPRxo}cW`r=c7PkG1L0C_DzUQ~MmXMHc zz#S8x{j*)}8S{QX3@m!?>_%pFes-vrh8mG9Bj64ioSmUer@Y#T&eKh=ZnZE@hgU^& z;5o@%)I)WWPAI}UUcb(vSnhq`9m~J}pZsUb``_~zRiDMVevemeJd?*D+->YeSc8v6 z^g(d#1v&UPY+Z%xl#-$HDbuD3U|doHkKcgFWhZ&cMa%-@yK8qfhax zo|DMY!NN{jeFM58(;*gBPsP(5flQaX2^H#VeM?Pj@f6$IGN@^D%G7L7ZdEVZan!~- z@O5Uct#>w69;6bJ16Of?Y&db=!pIK$lgsUQy=D2@pFFet{%8InSg|wy*8YtiA}R$W zKh8|eNLpO|ZQ!R&%ixY;B?%Pc6&Y zJC{cvd616b9W*afm|-ADA6s#D40yu#IL|gjJZdkh6D|Pjd6nR-7g%crYvH2( z(umSfusmuWrK4d;1EqsM*YX(u=`+0Ig)^W8r`L>UtgXH2&G#=qkAwQfU-?xQCqJ;< z`i3_wSGdG@@v^&qaZb#neD$liGx%^$3q12vkJEO>)f!?N!kWW5KOu;^G1ggA zHofv#&$&DAS?;*!zU3C~;+*7l!B@E5tOF6LZ&PI2x;*gi4=?}TfA}9Q?|kIV%Zo2Q z#Umuo19Fu`RxaCcNdDqCLzr2aj*)omeaI$El2=EF{fHm*fzy%j=X}6XKd`e!b|C%? zmRl(^uXvGJlH%d?%6rzBXoqV|s!)foJVO*r$~2*LfqOvX&;vgMx0U}zZo-C zKP`6ZEE9oqcQ2pja!ywB6PU2JF>M`mTafa35N_Jt%<~LCdpJrB$q~*=1O>04WASS` znOldO%WqC^fxc|?CGgUFnNj-|_UxSCt1AEIfAAkK554u?<+g)9(CYWuP9C!h)mz1| zYzMvXu3NGmaqK&Ha7=Ee_Z9O%(jXR>xs*FWXUT)Fh~0-1uknrf_A~Q@qIV-}EL%tn}GbTjf zafK(|zkKvBe`0y`iT5tI-*M}5_dUFI6T!Uj>{H99|JT30eC11jusrwdv&#dIykq&u zPyg)l?sq@2+;!U-p2vE&v#RVB@&l#XWamXNrnU3K5x|pQR=&og5_#8_GN5cPjsa4_ z*%tITXE1VRw^OgStwA`POA^!{x$T~#lgc@*b^q03}uu1Yj`)3{Z z2KM94TxY{sWyyq?KyuWYx^?&7WF5me4Kfw-l z?H$}F2h{w5g8pFo9xE`Fc>TgI(?g&dmqu^E@GtR#w0(ZR^Y{MG<<~y>>pUa2x13e* zIuLe8o*YWMj(75|nv3N=J9mvv>rEOT6h3mlh9X93aV*r)+z-w$Q^M z*l%Ec%*(r@i{D$W@Jf=aQ5Z^N?Z~#AOb2s@F+?1}$%$P$0<*XCZykG7;nbg{X4Jj3 zEJL~lHq1c0ct*lgXb2QQb0U)>ByTvLP>|*biNQ-IImr{zro3P?y`ev_>Fu|IyDJHU-r&I#d3PSU1h+M3g_Bcq5SL~#<*gCQgPML7CnKBz}I{<2f zuKnG8&m+r+Kl-ycrq5B_emiYt()vNq+s1N}^ld}qEe&+=ltKwr4ijU2+DHX#maN3ZJ{${Y@rgKxL_*tiQUcG;BG?Qt zH=rZaT(XV66>hhC;>qmx&=~>sh8PI>=n5Z|(1~HHX3MgCF|9@~Qt)Fz4=Y z#9?Qa9Skpjc&R@q+>T><`KqsO?zZ!LS&bgifzfm_t8Oyg_GnP0MHS zysfN*K;AKGX~#hH9)ye{!C`Lk?Vji~BV;r~Lr0Kdy&n8HhadwNGdcZ+FkWtmy~b@! z$HYuXM>l4VgFJi|{~_&jodAej4q7Xn&^D9n%&DCR8Tl4M0k}+bm;F`O+o*qXpG!U* z-Tk+nTHbo+9b6*b%Vq89%rw13y!OF&0n^b@_@DaFlgouGEcEgkV=u8zu|e+!d&dsB zBtB;JyzJL&XvMW`Zsj#C;PB~ouMch-sYU>jw{ZadiU13uea5vZeUPiSh&(6!UmdjvcztLu|VoWbQe|~xF(T7-T zx?{O|u@6lT@k;W~4X@-6b{y08Z0D6c*`#!H`OWDGH_zL+x0x~CpcoCLljU`;JHEM0 z!P)qgm80+d@$%ch_37oFzwvL;X%VI!mw(^zcb2zc-uvb^vu5;N)|W0WJYMC8RpX4Z zHwXuG-5!CmvmT+U>1;g9LKZHJe7`txl1mRq>_e`p&++ng0Qk9ZE^nw!N2Wny=$fT# zUE85fj~w{|r~ScO(Rp|hBu8{Y=^ha89wO_C^(p(IP1#TCb{fxC<-Mu;aYAkI_RXw8eIKl3C;QaupZNoE>?E}N4DDS=;_IaK0 z!DzTZE;`I(^x~rFb*ki}2`;LuKFS2#BkgR-uPvty9I_D+?&Qh7BO|Po5mA;nJJR9J z`m7taTS3%oqoHRd4r}2-#Mw|;0>P&~#JK7p^{C-lxDc3F$hs*AHA6X@DXUT+9P>3N zEg=nVG0J9|PeG-i3sA4N%esb1q3Q5TR@NO+u(@#nA|QytW7dTfFnF3H+yDY%(sd9v z^yq*aY{_eGTzjIrAcMFgN1iF|6`HmnEy~MKX<-lA$HczRM;w&V^()UU_uv2M^7ePX zXZgzS{Vw`t)&z>!s{o_Pu@93|1gT910Mj3Ae1SdgpEFEk|18yC$vKI`HW*gEiDe2- zBYn8mEd;!GVENMT{a?%HKk$*|eeZkka`Ku++zxdA19veqI=x(CCbH*qb51K+TT&o8 z2QL@grxbP2Gr9{K(*eNFxW^^V!6`0-m}wlbk@JAv)wxs@K`L?Jzl+4>RfE^&)tQWI zgoa!$a@HR6g8^rCqH)c~o_P%4>2srw^|Y|=noTrH%w|uVlFur|z!|Mvcbdki8M#=Q zPnk;xn%M~IB^)ltyIy<&qdFhy(v1v$0eC#2Myx@sr zG!rAWPRgm!y=9;xCMde_xg4IlIJxLa5|e9upPbotWf{z1m^v{*0)K&Hx+v-C-YXUh${!G#6Ur)^9(LKIQ40a&m!y0jt>}JgU^l#tm{H@Bs{YpAH~s; zxQOg*ByUY{x3su*w4)`)tZo;{C4imSe{c)qd(JI&1}Z<0pv*>jW|o5^(^0YKgc+vv z>wK+aP+sYnNh(EU=twSQ0`=N&<$GhmYbTYU0O7|9AWDUSU%53(nLLkx90D6&XC2E% z{s8OAaycbfoY06|740nWJn2|U+N{W(2=pXbXJl(F^Kes`c|iq~{EocANz*3GUo&sQ z^OC}C#2SnL%H8lX$R@bOQ)csQUcvyH)lI55PH8`9U#j@t_rGWPlzMd$(1)&#W`qF> z+g(+t{iWSQj-<(oq=xs~oln?=tCV?0S;nB6puIe&dgpzxzM^#_}uw z+P}Tr#th;Vj^%8w-M9{c0QoUoMhj*Mjxz27zD_59 z@%g9Ock@OTe%V66EXzwWJCqX5hz!o8%Fl#@r zgp%(PKUPr6K#R~v;D~NSc(#kOA%Bf>@~5@w2$cpy0cVE35IAX#%BK0LSLcFpVme#P18bQW20SsPzvbOVd0_&TLn^H} zEEPv)PoZaWuE)=QJ+0*Gq<}52bN93Iu>#Plm$Spc4w6w*X zEY3;vFcWL*!<)LJf->_#U1#3P+Pv~?HDy`puXxiIOocj!mtR=k{jPT`cd&=aqoiS0AIE>s>e0l=%NB*G z+u4HVP?M;Vk+ZWAaa!ijv=sQa?HZ)`Me6ni>t$zq%G&XKc5vof=B1l^xwMF^#f2e~ z2_PE`OG$q%M?U}M3^RL&KvupnFlf%7xSZ4aQ(KWFou8p&%`eRgAV!WLrm?T|Bdx9z zIv|KE@6a~x0>wC^wOmq)KlCE|(Rrv7TH=q#=}fZTMJ2R+Rfb9HkgqP~sh!R|;^xmf zmIZFxv5BDV5|1+h<*4IK?mPqxiDHN9b3RDDv1-{+@&xM0N9-aahnbd*a!yT+h%{7m zAgXhd>d$}G8k*_9?M2#?m*(bMH#Qa=%?|+%uv^_T)5&8h;s_-V%8Tma@=X0cEPlA0 z=H}9yd7S9;U--)M)j#}yDdWZpGI0$DMwNH(~JJ7;h&dK$YZ!mNvy%leao`LS}eLqG9O+%*#W< z^iZGNKgH(6JwE;8OiiamUx+|6Bhhd*M1{`TARU=BDgV-mZKgCuJ883RmoknMl8NS6 zBr0&(*}%5aBW|Z0d7S`D%T9_Sx%QW*tL&`yj)^w}@~A{8YaqY@D1T*mP}Fv<4-Yz| z@C2YN#p#qAXxO;6N*+wFzc>ric48fj@d3LHM`;~vaZUK*Esu#agVWJiE}q84Ie1>_ zMN**|sZpo)R0ks;@?+bh9OA1zTLeOJHYgeS8fWW``mHl?36r0vI;GYbXuzl=sv|&4 z3Vp+Qf#Q@ll%cfBU05lsVFN}M3DaSLgZ49jDQJD+9U!;3q1?fH1~1*6ZF?i?wma`y-v0QL%Wr-9x0WlP&P8h% zcAw(`!ViDs1Ivfr{~))mpW#x@PFd&RWrMHW&DSt6PW9wNygDU2uOpr9wF{;TxHdz+ zhU~Lh-mdm`bQa&q(+M~WOI_j{9>Y<1b4skC8C14E>E&`LHHLAhV4XpXn7C=mGx~zt z4jN+_Mm37TMHva-%BbP^7DDxAxm`JD==qifKL+aK8(wU+^GhLQB4eY;kn~QFA0X8~ zze>K2K|HoLzc6Kc49ydN%eT*kG2c;^xom!!b%i0y;dwft@;c}Tw-POWiPc8rs&W#q z<^J+6CZd}>VJx$FoSO(!J53+u$)laYmnyTKJoraC#Zxi?jqDxFc4wS}!bCAOXMoF zWU<#qN18_Al+JKR{1gNE+uru@^2`fI%Rl|>|BW8BU+}|&d^Bx;EBi6=l$-8MYC0v6 zzy51XX}BW#{=v@WcG;katP7t`CDaGM9yl9KJBU#38xjKqe{;`` zFmjCQgGYy?QHUm}Z6HYF*f`rp7su_q){?f0qgmkBaWZd|AKPJ?UDMjpb zo&O3WCC}lOh!7fw_R#@CF3MQeo{(p6)Yuk*#X$xr_3 z@<0Cf|Mha=+uw+u)o(g&tNp;o9mk}R^%{_7#NcRB9Ka8Z?*|6F8Gkw~jhOmdWjiqD zvdRufIvpr{9W58B;QPNd#%nB$A05#oR&agT*V~|1x&7~EMi)}tbK^Ul+%%{$KA%M*x9)Y32ZhY0y`Jm z0c{x0Mv7&SGj(V-q0*m580Mv7c^WE31GV8XBO<9ZTgDAJQyx^ILT2Uc2q~IUQ68<} z*}=p0{p3atB!VlMLNqyQMatnx9EAzqQD-`-$w7Lgpz;p9j%*Fy{wCcLb7$E+lQr5m zVeIa~89WS(o&_IO95fO}x`}ZN94*}lnrdVY9UF~F0ABt%lBeoSH*cH+NRD=DxqQU% zibR=&lZg-{nE~mID2aWGTqs8K;&z>gySoH?jEJijbZrtE?)US?)1?c%MU{=Wk3RI4 z3E0;bb^xvB+;7x%f61jhkxCnHrfn1wIUm*DP`M+*-*bx98cmrbY{uy&1~Mh&CpQ zN!BcL^d>h40S8>_%<@@x2Zn5tVx)shki@QIR9t27X{F78Qhj<^a<;Y|VVq=DDrw13%w+BqJ2`@_q--}wmZ zDZD8lmr!vXxty{7!I@h*@PPsh#^=aXO-D6^jS{?c^Rh^NcxhxuJf<^ehB1t7j-o4b z!P5HT^6o=!&ojF8Qim3(W$PR9tfS(mL-Mf<_fF+40m(1jtW9v4>DrcGmvuoqqZ(Km zHilu^#rvy%v=h4W;F|^VayT}N`o;v`D|Lluntbi7-NW72ZhCA0mz@ay`y)x(wLaVK z&%IEV=_KZl3;~0$X5MrbyoDV_g{RqwTqBR6gWDI4dFRw!;SKp3SUVG0?;OLa~gEg$!|bSaOIP_oCQlrWXLu2 z%^h&F;y5RFrzjj#N@kpLQT8ZcgO>G5A!e7tax|A#Ce{JUO|UL z3CI2TVb+zndnKM5H(cy;VThGel>x3r1Sc0B9$d-mE||AX~}cNvZi$AfRXmHj9F^ zC!id}UxFdGT`uj}cFwtMvWEHKw%wlnFNUTg_hfS*OnxHEq{XCDw$wx6dZJ|H>)(Qz z^sH-otw+A^2un~`6U`cFQSlIm;o3w2GYgq@1WkNom|hh_tts*~B7n2A&Z5`iEoHBL07bkH$0A~R^vvvm{G4Kn!EPME50nbQYVXf)L zm8X|a{L8<#{2zb&e_+XjEh}7o@QpFxp#eU7+@BYA9MhaBS;@GeMv&;MdbkZIoqf+Yw>ps$E`Tc`p2A|GLIZO&^%0GI?i%>Y@IyXx z%-oaC>Gdv1m92N`-2cREhN%Wy1^PsOW>zd1MUhd2E(Sg@4j&rM;4Y(VW=eMV=(6X@0J1CFd^#FOh(E_p#V)MGTXDAsnmsW zZEi!)N+X3r#M{)Q={fDsS&-7sQBZkrR#;iri)LPEmY?!(hV5$J>ad$Va8Vig2;l&i zeRQ)t{81jAF^^=hi4K8tMm|G|OJY!hPZb-G+MKvsNZN%xLe`Er=gEQCONWC|je@BU z8_#;6C>RJ`kG=Hbi_0zNc=Igp-v8K7zjt}(``)vB@pHcmQeIu{>^3!eeo6nw{;?&yIDDVl#sZ0r@SQTRUemJuH8`eh_$6d zF8h2{Z@L!7=J(yTIllrClRznXh6s6hsp)JZS_DT&7&O9Sc-~FJTQl)&um=v6ojPDy ztz+c%gl#kuLqfCJKcu6>Suz)d%mDN+vm^Z^3uMRA$YU|V|*oH&>#;oMIiqg4nJ00tl-`3Pw_NEBA z{FmBvY(f`Tv5m?A#yqW%0^~ITICnjWb~Bq&D{H`x49(T4_lAi)xQFf(ueQFx=fv*5 z`|9#nKl#b!i~snuOay#s<0^e>%b_@DTZt03Cq_GtDaLCjBy4-HWW36UiT~!A(JQ8> zK@L86dB*Ytua14|Ti?ukJidqDu;bxi@Z8twxH^)IZbTKLf_7Gt*Sj)%(82Xt9=ZYY zaWUB!%()g43Fys+B~>vu2@7 z63?*s8kmqOU0gK*VX_`0z7aChz)9r$U^GG*_^u{FG&)Dq2I|U#HnpjqbYA(Q^HKR#0~OTyPSB*jCE5n0bZF&O%l!!Mpg1^&{#UL;wwW|Y}$GeLy{VDXEVVQ zs8Mg60zcxp3>4KG2E8>+WOS;T6_Xl?m(E-^v=RedFp@}GK^ZYKQ6ecYJtHC?(y(F5 z*`k>RTyP4OK;bA8&Q9;=>K)(`r%athDc?MrBj_FcWsCTIrA=brxN@(X|ISA8j5A9&s4 z=jB_ps^Wzm3eKzu<>lG9%#vIPryh&osfz=!u7;xmHNbp*7Xon*u^cZdNejo%8J~}l zq?~-&Ebq#|yML4k>jGvjQ{_!J5Xs%@|RNe{E*XM1KnX*ufq+u-SX zOZgCa@z)$R$^OC>shOYF4&cVsiEdx`z(q%td2>Ug&hmnL&Klx(eRK7DQ!@jS#v_(B6IrVC}HZ0+$|Cg4_+qc(w{ZH*b%lgYbf%3F?*TZQ{t!)->;%$fSw7NS#XB!=3pu?5~yfd zCowSRtdiuFeBg9Y@-jC^Zq^l;1%fu0Q5mJc!PG2jCcT+`4AX=!V;bu*hPI!DM{w+M zdFN%A9EEq81{d+X6(B-04}Nd}ffJLSH$e@7o0IEMhQb&bF=>L{Dz>|hDiRP}(OB7I zgGKx*72=3`jnlS1^9Vq65TzE#N;oI0_dv&D<`_#^GfQXXafP+6a%sG7Tps0Qczi zclu|8mv`pROXK9FL_P+PUKP96D)P-d*vYmQiiN1HU?=VcgxqxpXK{-d9IL}6?N*Ym zF%7$mUdU4a{2ao3xcn;L+S|W+uv~rNspS`b;pdi5{kOc{(&Yvw40BnfZi=kY_qKhH zP1tcvX1tz36%HFH8(SF)D!00Q*&7}1zK0%P-t~?LxJ~JMrTM&%Z%yPgKPUEhsTm5( zj_X(g&dD9&7=(+}u0c6#aO-_$7bI6>9Q12SstpBb8>-5EPt6iR48%^9Jacd|(mk<` zewGPA9{l$EaP4-YF*suijP*iPN*KnD5S+SWG+AQ;oU+_Qft)73S4|TGw>^XoO#-xi z?kV}KKk?T177c>jTmQf3No>`3zvEwusl;b>c**B0jIPH6sCMSfUS~|pAp~e^l&?s31lA` zjQSN1xQ6QwjC6+Fj0IGFQV0q;FZarA26F;oRqL3Du(U6voGPQ9S94{Wx(k;Rcm9f4gDZIqf*62+5fWVS2LN zs;_P;jTtD7H$+-PnC47=oHx)UzTSGo%;*z;?XU6u^mEJio;uGy$t&oY7uY-F@C&Vq zkQr54j$vK*lR<<7-s%{`aPd}a$iE^QAznxasIjPRN;FKPlaB$ci}Bw>CU-G%>VY@? z%zS5f;BgB=o^2!EeIU9Ei{N7zKrjJ*;Cs0-T0c5aSmC^|@iGdd!a->){%PAFheh%f zleog4hD8#`C!bKK&Y9&pI5il9mnjXLhw#B(#~mah5D$oDcGyJ|qh@9;#W#>~5_pD5 zqj`0Ta1I|TB5em$UN>Rt-y9j+#j(Lp{#JWiUm=Xfto2&b<2Eki{6?0%&9v+V&n#Zg z6L&$Sru<_XRk|62g#nw{ihx^TZ7&hpU{YMkR^Edr^D-DfA|Xl@Dv%?Slz<7+>>ll= zkuiTo$4wD*?klNnYitTMc7u~tJHg&JuLk-El?VqD#H6N7MvD@+d}3CYG5TR6zMJdf zr7O!VTm|sB?-!F#-2u5W?=tN2Zi?#0tgE$`{k` zynFfh&-?|xW6$S)`~V`;M{ZbB2jM$o^io4v*$JuZRsh9&wC4s$FYoB+&Q<{GL!SVn z^mH7Qr=m*_wT{kR142bA(*ysGKJsVh^&_0eIK1e_4(*=_3|Cr#p^le)jw-p!qES*` z*9&svubvGWWg@JL2By9K`M8qONh!8KZ$;#{ZdXiM6TW802-Go{mXzSrj4 zFs+jsieZK{Ixa6cmTPnwu@xM!aKT}_QfUU(vP3KgUY5;EL|GFfV+^!e>yWnr6v)&^ zKdmR088^qaaPG7*cqNy`f3n>r?xxb#E&U=DXykH^e0RnGVW@-E9PL6P;Zew$!o9fxOVy=zCXq1nk_E z=Xr_T`<72(hX-s)UgoyZ1GPCJfidn)xxo@`U~hl`~H!_Q=CINQo%Xw|Oe zJ_(j`>0e%YX%>6SBTqcZGdcGxmw5*`(jpIoq>l3U>kWO!H_yhg1;E#T_zDLdh~FXe zz13tRk}`&a~y^`gpP~O33T-A`w@@MDfo!4jpC9q4Ra)F zTXh=yd59P|TNA^o&NbZ=Tr%p!_W5w+9(}9dLxYr0i)kdT-qQYyW3<5xd2G-@P{A7! z{Mj)R0#N>%QN7JNIwJ8D8refDacLW%)$JQ5hFroQsW|W2!+aLV*;(iVEeqOEW^AcF z*&5Ca-Oi32nv-zOvt=?e;zV<46AsI_{AE1iuyLvzsoFCCaz!FT8Th~huBc;@8D~ig zHk}jLYiIJHEG9S79ci+XtL@A+%U*^fcdoa5#f@!9ZFb+^VBkLH&9Em9bW~nuxyKJ3 zhlf~D>~Gp&(1U8OKjr;dqaCqb_^=}@>uY?h;^BwyU(WgUqVwNICiZG^R-xVg16#_A zIy3AzrkVMgowd&mFScbjq@&b`dkI2E2jcCIyp!+AUFH4We4qfKUSrdw4os8u4#_ba z4tf=3AlIHt~!`k{gB_;$)WJqb8td(i|j9Fv!VM+kc=d-Q!E5vuj9fG{&^Njx1- z3u1;8hXJQ5NXG`e;G_y4x}%u#b{uDXfdDOaoRwgyzU!u!rQ)VV@RSZla*xliM8S5* z1jEdl%5Exid$G zT(iEkV}uFU>eM25t8cUgwJD&O7c{Zs7|?m(TNdOM&%Qe`Vx0C(MNP1wm4`!1ZV#z-M=;pqqneaOL+x#X zzM_0l8B_A<2j2sauHn%wI?CrdpLsuX?w;kYyYF6}`IE1dQv|9r%+&`_w)SR!v*VaH zL|?y{0x(oHn{!^@fg$;3$@f0-6F49DExFF3r&cIlGN>uO-a%!*0ISkmDc zarbWRpW@+Oa-9|Ao!;Y8X+Tg0P2fX|l+IrJoNb~ifpU+sCr@jTme_^pu;GXsy_jcD zhn|-bsfXSinJ0>#;Y$RY0}0zvIZRwqSo4j>X;R6yP6sN3beMqZ;0e8qQCh+(OYhd& zPSfH6E=?exJhPn;TVyDY@H|;co^{DUSDF|9)xDMACzqbaGp(lu#OHE=8x(!~!@;R` z!P&ifgW$ANlj6;6ESF=o;n0#U^kXg+Tx6Zu3?ou>P2FmyjMv^FlS?qMSEssVElFqD z!4Ll7txFbO)@Ob>)j@viRiBj67Uk~~5%xWwSv|+H#J%_4vwR8R=#;Z$5Opf+as|nq zu;ZAvr&2%anNvF~0v&waJagL8`(PLqFmrhP$)8-_@$kL8@B5p4g8Eu6;|_5=d7-|Z z+nvt{Mzq&CJL7Sx?1-W8Jy*y>^W8#E3hKK3mBE!Lol!J`h zQPMdhK%@d6GiV3y4+}r(#MlJ`&2&s4P8$NRf^@KQitWx%*`GSiWx06h{PLn*9NCHB ze_k3|->ZY^gv1Z`k##QBXs7K8i;#%il>rVkR|(-6>;UM%a%VV>N6b1Q`J#e0sGQ}* zeg+@YLGK-Nm)VC@4fK(DS9nT8a)xc+V|vFineo~MeY4$bvi35R6?BSg07Cr5U;gFg z_FMLs7cWqxM3I26{ZKfHslT<`(qiR`Nb_Ac1?;r*#&YF~FX~6B8VJga!HrI?SNGMV zF(8c74(7~^S7nA?s8|m{YrK9dZZ!rS6bg@h!@mxVUHX7|*;M*<`Z899*se-LBS68i z6b#YX2ZnEO#%L@%bt9JY$DFQq5h(CkmvXN|VkkMnEBQKH%{VhB@E!5ELmg8q_tL_; zO)JZrLmeeF2hEI;)&${_6YpsfL~V-h}vf{+(ytsDn_K!eY+lU$bj zg=`@dYxC!tH(l~JXgrHJ0*k|Oc`mUqQfR$NqVLaw? zm~-wjhrTmF+5z7kq_F|$xt?}&fYqI_?VNTT(`&!RM0Xtg#ui~SX@x7xWV#0^!l7gD zpF6#L_`@G&eT2ns>Uk-b+nb1>Z==M`#eiz;hum>EMBvA{Gw0hL5jKe3%Mqn1NR*iM z0rK?bkpXmFEYJGVFi0PFvD10iLfwRIW?6@5zJ~3BduIb0nEdBM1{i2&IWaaHWl+%~ z(F`m|PKDDWSyOq))4Kk) zcJelDt}zM!W4FdM>~FS3?e2uW*sN0eiANr1Q|0Zv#*&H1*)%dQ@!as`%!QsD2eyZTy~I-ZI<`CqWgRGkDfXb#>wL1xRB(0!9lxVt1|8}< zDi}0e<(|*p#EEE7lsmO0h&`Vt0;x`^vlDWs;mVA^wak%R$DHahtjtC*s&ruR$*+d9 zX9qO2R}mo%FUiH=<|W1~j&o%l!w;+CN*UM_ls0bLeY=85bEkSc3uRvR8%r{#r(m%W?=U@CK~X7FyMjqc2t zwx?3P+(0fJnY^?NQK^G3?(V3CX zNu$^JgV) WXvfr^FXRucwfa(nV&RRn}QloSG9Jp{igvUgGm&G%7aofEAU+WElBk zZWX!5mkzs-X5dDd_$5imw>R5$;e`;-*4RV9y`#$(VuJ76D&86IRJ_qi)5FRO=RHf>3 zdY6tf@hAX6#18F!i$64hGf~JE*#+{Y$ugT}d@yx_z zCGdfwkh6I*nX?rPd8ZTSA}bxIVj7(IY!p2+xO8L!%0n7kIwZtIu*L|<5>`+W;eA3X zTp{5paPY*r(|Vl+MYd^PM+GbJ)Co96#+1BRJS1Of$>L~Q3M@BdHq+=tl64U(i$hFS z-P9qaaln}9ia*o>l_^Q4##5dn8$fY2S9rBD>W4tv5NZ}E7ymfNab&asP#v(9!j9X4 zreD6vZtT_wd)8|}_7UcA$7DMQP43b@^6ChsD`&Q`wJU`toCrmb=pa!tat6O;j#Y6q z!wV`K*C_XSGlvDoz82YzH1I_9iE|iwmx5VW_(;gJ&pbnYT%r6AXVkhvHKcr$?Kmbq zRy;az+umzdd^OLLH|3VF8d`;^BWQ4xS(bb6d)xB%2j0R%yS(t+yK&r!b4GK+yJjL& z=~VC`T|0>~bKy9KP1;K;??fmJ%hJ9ionccS0wjA_=|ZlgF*N;K82;j3BZ(NJbT3Z~isbH*Ya z>BWIdpMcKeM5&h<0CM&6DQHs8A+jl~S>-^n6^FKW%mCy7)~tbB3DJ%N)&)+U>R@C$ zax+3$X${;Cm0>Qbx8bBBGw4iRk{KutnL(SFL1E;7WUAu?&)TjDI7Xm}a&{r!Ig59- zBLnEU!@bXZ)?N;Id#v3_ZCl^U`Ia3B-NWQf13RwvZlAiw%_em-@5)Kljl-jM`=gm7 z>^P>G`Ffu>PDxJm&dc)X6F<4!bNea2@_8xF;2O^9m^Vlwxv_96I2t(Q#UCbViByFHLug;+TgLF6wvSe@= zJ=#vJ5xZIRI`3sZ_Ei;*hRi7an5eu7ns-~#v*WyiXtptl@M27vX2z$fMOK3Yz}qC# z#we%#hE2Yy!moLw`n zCRgg-Dt5@aGtXqmms5(&EU84)Mf8+WtU3xem?Y(0Fr>*}^W@Q+E50P~EPH%T`Q{4P zaE!f%bM(FR(&m5QmL@+l5@Z7Yg=YMJsk0X9}oy$q(FAYdf*?3oM}=`MG)<72Fkek0JGv z!;WLxo=Uw|GpE%cl*P+%iu%aDw!HJnCs`_aA#WCNCwIR5LBkK+$c5tFui^EtGof}| znufCbi6sy#V1!aVRtXv?eyV|4Pi~RUDQyI39Y-(9?5G(@0LLPn31s>jVNZ*(d-g|f zSPj4hdDZ6!4qS{sf#UMa48}Q)l}HS4_A3p-{w>cbqFp+re&5bE)_5v3*P=8c^5n-+ z-c}JUzP2|Ab%=T#UI(oI)>&V8_UYyD#qTcX?zn3?b=y6(^IUEY2-jEf+Ig``aChN7 z*rl))WELJ+?T%a^t|S`fIUqQeSU5$M);jaBO;Z5Y^&cMQ9i%u3#bCoCat~ez3C9pY z-DcwqfXkg)SXU(e45Cl_O_1rO(2%e>)E98zk?rs!1rX|xWQukg&-FsP5#oi}Tg zkb~BorN==)OJ@7MKkO3)U&je4-Rzac0T_3g&YVuMAx;^XT*|>v z|EK$0)#Nu&nmWO+L-UL5iKVI%wW#Ot$Dd~4FcYUJOygF z1eLQvHkm@h%T#X=G*A~}?%N7;%1UgbxRM-YGc!yNaPtZjbah;|Gc6EP{)!M-!I6<& zL>Qfhdvu~Z%7}PK8}po(6-K(3U)B)b+@RywAf!Q+9;5KGHIBjSe3-PXMTkaBk8?qz z%d9D`$mEqmW$?PyP(M3bYR5eRMbFP zPn(*uH|bBD1Z{ScA{sq<1u?>id8W(=@J4+%j%QNCnI7@d!rL z!JkWrIAY74Ep(<384a+B{-t=fac;#2+gse%2DU&VrOU9WrXR7!4EOmnVd;g?1+WN+tIRU=*XqqqHWGIfHM$~8iztUvj`n-G>)uYc-h2HIKbwJB~RAUSkuuZrSn4$+xihFxx*iA zF&d+zRqCH03%%7{eucEm`e|PlBZQkc>PY35s9VEvrM6-%TQ3SJX;Wl zB+XtQP|eGr(Iui2suWGmGiqYWZ8R$6!+w<1qZgzFL%b*=ZIGw(I;bgv)b>1OG3X6QxJes5s1+Sb0%vW`lrtR9 z9bhc2#%5nJHMezuAT;eK8Gu6$9zo`_q&Kd~6z#WZFqb|?oUylQ8TKl{z?$Xxr_U#< zylxKK`*cp*Wjl^(dn)y#USrz94|DF4RyaBjJ52T)(ZCaD&MtrD6QAI<3~Ui#Q)Qp= zVcp61dsENO<4nXa>VEIpXP0y5&Ml`;^J)*rAO!3}oUY%0h? zB*q~D96Ipn^vH|58KlHtJ4z$l_V8hyu*i(vIOVo^*w+y-C%nmHHR96`sPkNHWG07k z2}gUSq1L@z3$HariW^~pWjP5Q7x-_mSMKSjpDz1A$DJd#(BiCW6yu~h0DlZ-OoJ2e zrs+sda@~5J2TU_HM4IC8AjpanC6Vpgm3u%=ibwm>b(*>g zaSUYMK{C+&!zcUVBagWzV~+`{G6JMH;1$Oe>}iBq$fG5NvDwMtNZfrnkr|A&AAmKa zZA%Tc4muW|Sk;sdmEqBj~ zZS%cRcv2c#N9L!MidMYC8L4d*y+d2QV^kQDJm%{z$N?gO3b@A4Ol{A_M;)+$EiS4R z8akPwwwM&iU7RPzj&NsD`?ihzJdX#>OxNwrd@!>Qf!aN#S^_RgE3mpXXs4`X*Tvz< zg`mc1Pvjlun($7$VKN4~kQj8rclce4Q$L3Rzh=Zh zwln2$rbRd@62(d7PTj1m4b;HO?@0P41MMbnzns&uh!%J~ zPR`;8*IeuxS#KOYSV-h?6CF})(E(e#1i!zutGlT5SH4-*kab^pICaX~B(#IY@9EgA zqK5X_DsY;&r5@pw?2pfV?>UP4m)R`{qZ_HD-3+HQBUFAI)|kSG;*>+Ly%7!}bAns% zSU&#opI$D%a2^5hHauraC^E18q>4_;jayv#acAjhxtv9DXHPur$jr&kr^Cw*agBkW z_L!g}$>P65cc@f&F88RYGYbhj9iv}f$Ob|0 zY&h!}a|P;wH|q?v*C}tP0%&DN;Sn?kXM@vGPdS;6+d9>hxYZL7d5#ggfS8w460Dw-zjgc(ba;t~%ot}*qjZ(1 zAS>S`8CWP-wBgCL|Il=fCTQL<7MMYUL5|@xZHkuBrSP>mvB3o}X)^#JN0XvqXJOd% zNq$%9qZeNIUit`~w-tYY<8;pf-JVMQsAo>WPv@GRvgy%4M6F@J?cv9kx4q?_<+*SE z0c~>qL&10%r$e9v*|8CYkCzxnav7lZ*rRimnM(DiH|DCBa-D|`Vzy1=X(s@$bwz=Q z6>1C(r_%>FN$MQzj4>j*7qCuH7!m^O`*#fK&@2!F4kqRv(k1_x8IyE%mJ-b^cSkDL zz;vYkq6g*ojG^B1w%@#ooE`P|Mc4sjZO7@0ShbKqj?5HN5n+y^mWbG`H zkY6R@&y%UPBS~d6iiGJU=*-~k$l{DuirKI_Z+FYV#M*ci#0+v?dZ$y-&`=v7siZ6o zlMH24h@NIUCK#HtW$cEkJWY@G(jh-Y+V5`vn24>#=$E;_QNoUth9Y9DdG58 z@5ljT-^tEx==qmBbL8cw4W^b4U67BNYra{_J#*$@xxhPru3mUCX}PtV8qzGz_Bkuq zH>NKzXU8#_@p=WBvQ2(x*AFlqahu{zZ+nPKimN=Ce2M)_YzSn=#2f^rIqlS`0jyxX zG$PpDR1U7I`NXxWI17a+5CWJVle7b=7(1thQMCB53Kf+{2{^}~A?D(qjw#LxJQ|oG zXDvCjD*0>&5U(7$08dBup~$?Q(7J$S%?k!xS2%HkJs~0pJx(KpC-QVowo+cw;pNw6 z=JF{_1I5+~4C@5jB`#ig0RU!bys`2CXJdQhCIX4YNjK&v$&^M8Nq8~mG~QkDP==;0 zRaR=LkLmcZ=$Jiu$ufd5*TL*?m|825=Rjg8zllmIex?U`uwKhd zhOtqt`4a~yGJ3SW1{2u>N-YM9Y>8#E7 z3}?B6EI#;G-#cXvF!fPXsHjPMiN+X|vB9wdBq?+|gfhF%O`@}8d6jd8Z$Bm|1Pfmw zY&)kN#}wy4r!j1MuUEkHLuF6=rB;6B88sm;Z`dC%Z@BID%(U=o_4cF(0PVf#QgB>xmAP9IH*7WQ+0oXoB zYt)fT<8`&TE7-D4()4oi%Eb%Ii_bo_oMCtF{=wZ;gbwApkz(1LV~jQ{VG_|;;oSvq z?4g%*eSJ({;{s(I;2vuUa~3BL2IZV+7_23BerCo?gRpA};EFi?;-#Q#&V*0h5VL6J zMjRtG3oUzTJoQ(sjZ7$0I`j6#wxbY(PJ1Ke8@gfK24F4L4lZmfDMzA&@}i#IneN>% z?+k0dH(ZBQhw4jM$#dAEkj#yYw)nEn%DfS4X|y!e(*?2tl%qvxGKX|Q7 zk-;k3zHM-3?My1RA}n^U)AA*Ju0>wrhSlZEJdQ$LyMlG?o}-J#zQj5EtZ~DRV`|px zdz|WXG1hgZ3m300moHtVT{Ip6_*xJfKS%M-l^AIvWIBby;+L6?0*F*`c(`{4rbxyz z!71gR8B~W(dUr=ig_tZmXV#F=fKHPPzQ_LrD(6)7SIITLQ5id-RgN7sRpy4IPTwJv*(|≪DpZJemC1D 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

p&{d9ur5gIG=%17k`w% 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 literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/Scapula_Left_View_Image.jpg b/boneset-api/data/images/Scapula_Left_View_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..203544440273130058f559591ec443ebae27dd59 GIT binary patch literal 19683 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≪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%0DkfS- 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
hJDc|pKWpEIRmN;d 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 literal 0 HcmV?d00001 diff --git a/boneset-api/data/images/Sternum_Right_Image.jpg b/boneset-api/data/images/Sternum_Right_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a9bda3ec794e98d011d8a35ff7f5603e70e72d4f GIT binary patch literal 87223 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