diff --git a/Data/IPF_Legend/Cubic m-3 (Th)/<001>_pole_figure.tiff b/Data/IPF_Legend/Cubic m-3 (Th)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Cubic m-3 (Th)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Cubic m-3 (Th)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Cubic m-3 (Th)/<011>_pole_figure.tiff b/Data/IPF_Legend/Cubic m-3 (Th)/[011]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Cubic m-3 (Th)/<011>_pole_figure.tiff rename to Data/IPF_Legend/Cubic m-3 (Th)/[011]_pole_figure.tiff diff --git a/Data/IPF_Legend/Cubic m-3 (Th)/<111>_pole_figure.tiff b/Data/IPF_Legend/Cubic m-3 (Th)/[111]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Cubic m-3 (Th)/<111>_pole_figure.tiff rename to Data/IPF_Legend/Cubic m-3 (Th)/[111]_pole_figure.tiff diff --git a/Data/IPF_Legend/Cubic m-3m (Oh)/<001>_pole_figure.tiff b/Data/IPF_Legend/Cubic m-3m (Oh)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Cubic m-3m (Oh)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Cubic m-3m (Oh)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Cubic m-3m (Oh)/<011>_pole_figure.tiff b/Data/IPF_Legend/Cubic m-3m (Oh)/[011]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Cubic m-3m (Oh)/<011>_pole_figure.tiff rename to Data/IPF_Legend/Cubic m-3m (Oh)/[011]_pole_figure.tiff diff --git a/Data/IPF_Legend/Cubic m-3m (Oh)/<111>_pole_figure.tiff b/Data/IPF_Legend/Cubic m-3m (Oh)/[111]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Cubic m-3m (Oh)/<111>_pole_figure.tiff rename to Data/IPF_Legend/Cubic m-3m (Oh)/[111]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/Hexagonal 6|m (C6h).tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/Hexagonal 6_m (C6h).tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/Hexagonal 6|m (C6h).tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/Hexagonal 6_m (C6h).tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/Hexagonal 6|m (C6h)_FULL.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/Hexagonal 6_m (C6h)_FULL.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/Hexagonal 6|m (C6h)_FULL.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/Hexagonal 6_m (C6h)_FULL.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/<0001>_pole_figure.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/[0001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/<0001>_pole_figure.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/[0001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/<11-20>_pole_figure.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/[11-20]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/<11-20>_pole_figure.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/[11-20]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/<2-1-10>_pole_figure.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/[2-1-10]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/<2-1-10>_pole_figure.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/[2-1-10]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_0_0_1_Red.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_0_0_1_Red.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_0_0_1_Red.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_0_0_1_Red.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_1_0_0_Green.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_1_0_0_Green.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_1_0_0_Green.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_1_0_0_Green.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_1_0_1_Yellow.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_1_0_1_Yellow.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_1_0_1_Yellow.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_1_0_1_Yellow.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_1_1_0_Blue.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_1_1_0_Blue.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_1_1_0_Blue.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_1_1_0_Blue.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_2_1_0_Aqua.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_2_1_0_Aqua.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_2_1_0_Aqua.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_2_1_0_Aqua.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_2_1_2_Flesh.tiff b/Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_2_1_2_Flesh.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|m (C6h)/ipf_test_image_2_1_2_Flesh.tiff rename to Data/IPF_Legend/Hexagonal 6_m (C6h)/ipf_test_image_2_1_2_Flesh.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/Hexagonal 6|mmm (D6h).tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/Hexagonal 6_mmm (D6h).tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/Hexagonal 6|mmm (D6h).tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/Hexagonal 6_mmm (D6h).tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/Hexagonal 6|mmm (D6h)_FULL.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/Hexagonal 6_mmm (D6h)_FULL.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/Hexagonal 6|mmm (D6h)_FULL.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/Hexagonal 6_mmm (D6h)_FULL.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/<0001>_pole_figure.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/[0001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/<0001>_pole_figure.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/[0001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/<10-10>_pole_figure.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/[10-10]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/<10-10>_pole_figure.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/[10-10]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/<2-1-10>_pole_figure.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/[2-1-10]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/<2-1-10>_pole_figure.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/[2-1-10]_pole_figure.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_0_0_1_Red.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_0_0_1_Red.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_0_0_1_Red.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_0_0_1_Red.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_1_0_0_Green.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_1_0_0_Green.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_1_0_0_Green.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_1_0_0_Green.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_1_0_1_Yellow.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_1_0_1_Yellow.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_1_0_1_Yellow.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_1_0_1_Yellow.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_2_1_0_Blue.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_2_1_0_Blue.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_2_1_0_Blue.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_2_1_0_Blue.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_2_1_2_Pink.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_2_1_2_Pink.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_2_1_2_Pink.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_2_1_2_Pink.tiff diff --git a/Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_4_1_0_Aqua.tiff b/Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_4_1_0_Aqua.tiff similarity index 100% rename from Data/IPF_Legend/Hexagonal 6|mmm (D6h)/ipf_test_image_4_1_0_Aqua.tiff rename to Data/IPF_Legend/Hexagonal 6_mmm (D6h)/ipf_test_image_4_1_0_Aqua.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/Monoclinic 2|m (C2h).tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/Monoclinic 2_m (C2h).tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/Monoclinic 2|m (C2h).tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/Monoclinic 2_m (C2h).tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/Monoclinic 2|m (C2h)_FULL.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/Monoclinic 2_m (C2h)_FULL.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/Monoclinic 2|m (C2h)_FULL.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/Monoclinic 2_m (C2h)_FULL.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/<001>_pole_figure.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/<010>_pole_figure.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/[010]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/<010>_pole_figure.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/[010]_pole_figure.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/<100>_pole_figure.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/[100]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/<100>_pole_figure.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/[100]_pole_figure.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_-1_-1_1_Pink.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_-1_-1_1_Pink.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_-1_-1_1_Pink.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_-1_-1_1_Pink.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_-1_0_0_Blue.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_-1_0_0_Blue.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_-1_0_0_Blue.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_-1_0_0_Blue.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_0_-1_0_Aqua.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_0_-1_0_Aqua.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_0_-1_0_Aqua.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_0_-1_0_Aqua.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_0_0_1_Red.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_0_0_1_Red.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_0_0_1_Red.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_0_0_1_Red.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_0_1_0_Aqua.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_0_1_0_Aqua.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_0_1_0_Aqua.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_0_1_0_Aqua.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_1_0_0_Green.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_1_0_0_Green.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_1_0_0_Green.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_1_0_0_Green.tiff diff --git a/Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_1_1_1_Yellow.tiff b/Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_1_1_1_Yellow.tiff similarity index 100% rename from Data/IPF_Legend/Monoclinic 2|m (C2h)/ipf_test_image_1_1_1_Yellow.tiff rename to Data/IPF_Legend/Monoclinic 2_m (C2h)/ipf_test_image_1_1_1_Yellow.tiff diff --git a/Data/IPF_Legend/Orthorhombic mmm (D2h)/<001>_pole_figure.tiff b/Data/IPF_Legend/Orthorhombic mmm (D2h)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Orthorhombic mmm (D2h)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Orthorhombic mmm (D2h)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Orthorhombic mmm (D2h)/<010>_pole_figure.tiff b/Data/IPF_Legend/Orthorhombic mmm (D2h)/[010]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Orthorhombic mmm (D2h)/<010>_pole_figure.tiff rename to Data/IPF_Legend/Orthorhombic mmm (D2h)/[010]_pole_figure.tiff diff --git a/Data/IPF_Legend/Orthorhombic mmm (D2h)/<100>_pole_figure.tiff b/Data/IPF_Legend/Orthorhombic mmm (D2h)/[100]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Orthorhombic mmm (D2h)/<100>_pole_figure.tiff rename to Data/IPF_Legend/Orthorhombic mmm (D2h)/[100]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/Tetragonal 4|m (C4h).tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/Tetragonal 4_m (C4h).tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/Tetragonal 4|m (C4h).tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/Tetragonal 4_m (C4h).tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/Tetragonal 4|m (C4h)_FULL.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/Tetragonal 4_m (C4h)_FULL.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/Tetragonal 4|m (C4h)_FULL.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/Tetragonal 4_m (C4h)_FULL.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/<001>_pole_figure.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/<010>_pole_figure.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/[010]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/<010>_pole_figure.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/[010]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/<100>_pole_figure.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/[100]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/<100>_pole_figure.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/[100]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_0_0_1_Red.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_0_0_1_Red.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_0_0_1_Red.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_0_0_1_Red.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_0_1_0_Blue.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_0_1_0_Blue.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_0_1_0_Blue.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_0_1_0_Blue.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_0_1_1_Yellow.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_0_1_1_Yellow.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_0_1_1_Yellow.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_0_1_1_Yellow.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_0_0_Green.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_0_0_Green.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_0_0_Green.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_0_0_Green.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_0_1_Pink.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_0_1_Pink.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_0_1_Pink.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_0_1_Pink.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_1_0_Aqua.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_1_0_Aqua.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_1_0_Aqua.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_1_0_Aqua.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_1_1_Flesh.tiff b/Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_1_1_Flesh.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|m (C4h)/ipf_test_image_1_1_1_Flesh.tiff rename to Data/IPF_Legend/Tetragonal 4_m (C4h)/ipf_test_image_1_1_1_Flesh.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/Tetragonal 4|mmm (D4h).tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/Tetragonal 4_mmm (D4h).tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/Tetragonal 4|mmm (D4h).tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/Tetragonal 4_mmm (D4h).tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/Tetragonal 4|mmm (D4h)_FULL.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/Tetragonal 4_mmm (D4h)_FULL.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/Tetragonal 4|mmm (D4h)_FULL.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/Tetragonal 4_mmm (D4h)_FULL.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/<001>_pole_figure.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/<100>_pole_figure.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/[100]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/<100>_pole_figure.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/[100]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/<110>_pole_figure.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/[110]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/<110>_pole_figure.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/[110]_pole_figure.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_0_0_1_Red.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_0_0_1_Red.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_0_0_1_Red.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_0_0_1_Red.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_0_0_Green.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_0_0_Green.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_0_0_Green.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_0_0_Green.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_0_1_Yellow.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_0_1_Yellow.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_0_1_Yellow.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_0_1_Yellow.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_1_0_Blue.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_1_0_Blue.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_1_0_Blue.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_1_0_Blue.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_1_1_Pink.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_1_1_Pink.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_1_1_Pink.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_1_1_Pink.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_2_3_Flesh.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_2_3_Flesh.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_1_2_3_Flesh.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_1_2_3_Flesh.tiff diff --git a/Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_2_1_0_Aqua.tiff b/Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_2_1_0_Aqua.tiff similarity index 100% rename from Data/IPF_Legend/Tetragonal 4|mmm (D4h)/ipf_test_image_2_1_0_Aqua.tiff rename to Data/IPF_Legend/Tetragonal 4_mmm (D4h)/ipf_test_image_2_1_0_Aqua.tiff diff --git a/Data/IPF_Legend/Triclinic -1 (Ci)/<001>_pole_figure.tiff b/Data/IPF_Legend/Triclinic -1 (Ci)/[001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Triclinic -1 (Ci)/<001>_pole_figure.tiff rename to Data/IPF_Legend/Triclinic -1 (Ci)/[001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Triclinic -1 (Ci)/<010>_pole_figure.tiff b/Data/IPF_Legend/Triclinic -1 (Ci)/[010]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Triclinic -1 (Ci)/<010>_pole_figure.tiff rename to Data/IPF_Legend/Triclinic -1 (Ci)/[010]_pole_figure.tiff diff --git a/Data/IPF_Legend/Triclinic -1 (Ci)/<100>_pole_figure.tiff b/Data/IPF_Legend/Triclinic -1 (Ci)/[100]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Triclinic -1 (Ci)/<100>_pole_figure.tiff rename to Data/IPF_Legend/Triclinic -1 (Ci)/[100]_pole_figure.tiff diff --git a/Data/IPF_Legend/Trigonal -3 (C3i)/<-1-120>_pole_figure.tiff b/Data/IPF_Legend/Trigonal -3 (C3i)/[-1-120]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Trigonal -3 (C3i)/<-1-120>_pole_figure.tiff rename to Data/IPF_Legend/Trigonal -3 (C3i)/[-1-120]_pole_figure.tiff diff --git a/Data/IPF_Legend/Trigonal -3 (C3i)/<0001>_pole_figure.tiff b/Data/IPF_Legend/Trigonal -3 (C3i)/[0001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Trigonal -3 (C3i)/<0001>_pole_figure.tiff rename to Data/IPF_Legend/Trigonal -3 (C3i)/[0001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Trigonal -3 (C3i)/<2-1-10>_pole_figure.tiff b/Data/IPF_Legend/Trigonal -3 (C3i)/[2-1-10]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Trigonal -3 (C3i)/<2-1-10>_pole_figure.tiff rename to Data/IPF_Legend/Trigonal -3 (C3i)/[2-1-10]_pole_figure.tiff diff --git a/Data/IPF_Legend/Trigonal -3m (D3d)/<0-110>_pole_figure.tiff b/Data/IPF_Legend/Trigonal -3m (D3d)/[0-110]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Trigonal -3m (D3d)/<0-110>_pole_figure.tiff rename to Data/IPF_Legend/Trigonal -3m (D3d)/[0-110]_pole_figure.tiff diff --git a/Data/IPF_Legend/Trigonal -3m (D3d)/<0001>_pole_figure.tiff b/Data/IPF_Legend/Trigonal -3m (D3d)/[0001]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Trigonal -3m (D3d)/<0001>_pole_figure.tiff rename to Data/IPF_Legend/Trigonal -3m (D3d)/[0001]_pole_figure.tiff diff --git a/Data/IPF_Legend/Trigonal -3m (D3d)/<1-100>_pole_figure.tiff b/Data/IPF_Legend/Trigonal -3m (D3d)/[1-100]_pole_figure.tiff similarity index 100% rename from Data/IPF_Legend/Trigonal -3m (D3d)/<1-100>_pole_figure.tiff rename to Data/IPF_Legend/Trigonal -3m (D3d)/[1-100]_pole_figure.tiff diff --git a/Source/Apps/generate_ipf_legends.cpp b/Source/Apps/generate_ipf_legends.cpp index 53df786..51abc8c 100644 --- a/Source/Apps/generate_ipf_legends.cpp +++ b/Source/Apps/generate_ipf_legends.cpp @@ -33,8 +33,8 @@ using namespace EbsdLib; -// const std::string k_Output_Dir(UnitTest::DataDir + "IPF_Legend/"); -const std::string k_Output_Dir(UnitTest::TestTempDir + "IPF_Legend/"); +const std::string k_Output_Dir(UnitTest::DataDir + "IPF_Legend/"); +//const std::string k_Output_Dir(UnitTest::TestTempDir + "IPF_Legend/"); using EbsdDoubleArrayType = EbsdDataArray; using EbsdDoubleArrayPointerType = EbsdDoubleArrayType::Pointer; @@ -260,7 +260,7 @@ void GenerateTestIPFImages(const std::vector& referenceDirections ipfColors.run(); std::stringstream ss; - ss << k_Output_Dir << EbsdStringUtils::replace(ops[phase]->getSymmetryName(), "/", "|") << "/ipf_test_image_" << static_cast(referenceDir[0]) << "_" << static_cast(referenceDir[1]) + ss << k_Output_Dir << EbsdStringUtils::replace(ops[phase]->getSymmetryName(), "/", "_") << "/ipf_test_image_" << static_cast(referenceDir[0]) << "_" << static_cast(referenceDir[1]) << "_" << static_cast(referenceDir[2]) << "_" << colorNames[idx] << ".tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), 100, 100, 3, colors->getTuplePointer(0)); std::cout << "IPF Colors Result: " << result.first << ": " << result.second << std::endl; @@ -312,7 +312,12 @@ void GeneratePoleFigures(LaueOps& ops, int symType) poleFigure = EbsdLib::DrawStandardHexagonalProjection(poleFigure, config.imageDim, config.imageDim); } ss.str(""); - ss << k_Output_Dir << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << config.labels[index] << "_pole_figure.tiff"; + + std::string cleanedLabel = EbsdStringUtils::replace(config.labels[index], "<", "["); + cleanedLabel = EbsdStringUtils::replace(cleanedLabel, ">", "]"); + cleanedLabel = EbsdStringUtils::replace(cleanedLabel, "|", "_"); + + ss << k_Output_Dir << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << cleanedLabel << "_pole_figure.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), config.imageDim, config.imageDim, 3, poleFigure->getTuplePointer(0)); std::cout << ops.getSymmetryName() << " Pole Figure Result: " << result.first << ": " << result.second << std::endl; index++; @@ -328,7 +333,7 @@ int main(int argc, char* argv[]) for(const auto& op : ops) { std::stringstream ss; - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(op->getSymmetryName(), "/", "|"); + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(op->getSymmetryName(), "/", "_"); std::filesystem::create_directories(ss.str()); } @@ -339,13 +344,13 @@ int main(int argc, char* argv[]) TriclinicOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; legend = ops.generateIPFTriangleLegend(imageDim, false); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -368,7 +373,7 @@ int main(int argc, char* argv[]) MonoclinicOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -376,7 +381,7 @@ int main(int argc, char* argv[]) int yCropped = imageDim * 0.6F; legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, 0, 0, imageDim, yCropped); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), imageDim, yCropped, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -400,13 +405,13 @@ int main(int argc, char* argv[]) auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; legend = ops.generateIPFTriangleLegend(imageDim, false); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -430,12 +435,12 @@ int main(int argc, char* argv[]) auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; legend = ops.generateIPFTriangleLegend(imageDim, false); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -458,7 +463,7 @@ int main(int argc, char* argv[]) OrthoRhombicOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -469,7 +474,7 @@ int main(int argc, char* argv[]) legend = ops.generateIPFTriangleLegend(imageDim, false); legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -493,7 +498,7 @@ int main(int argc, char* argv[]) auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -504,7 +509,7 @@ int main(int argc, char* argv[]) legend = ops.generateIPFTriangleLegend(imageDim, false); legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -527,7 +532,7 @@ int main(int argc, char* argv[]) TetragonalLowOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -538,7 +543,7 @@ int main(int argc, char* argv[]) int numRows = imageDim * 0.6F; legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -561,7 +566,7 @@ int main(int argc, char* argv[]) HexagonalOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -572,7 +577,7 @@ int main(int argc, char* argv[]) int numRows = imageDim * 0.5F; legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -595,7 +600,7 @@ int main(int argc, char* argv[]) HexagonalLowOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -606,7 +611,7 @@ int main(int argc, char* argv[]) int numRows = imageDim * 0.5F; legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -629,7 +634,7 @@ int main(int argc, char* argv[]) TrigonalOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -640,7 +645,7 @@ int main(int argc, char* argv[]) int numRows = imageDim * 0.65F; legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -663,7 +668,7 @@ int main(int argc, char* argv[]) TrigonalLowOps ops; auto legend = ops.generateIPFTriangleLegend(imageDim, true); ss.str(""); - ss << k_Output_Dir << ops.getSymmetryName() << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "_FULL.tiff"; + ss << k_Output_Dir << ops.getSymmetryName() << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "_FULL.tiff"; auto result = TiffWriter::WriteColorImage(ss.str(), imageDim, imageDim, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl; @@ -674,7 +679,7 @@ int main(int argc, char* argv[]) int numRows = imageDim * 0.65F; legend = EbsdLib::CropRGBImage(legend, imageDim, imageDim, xStart, yStart, numCols, numRows); ss.str(""); - ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "|") << ".tiff"; + ss << k_Output_Dir << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << "/" << EbsdStringUtils::replace(ops.getSymmetryName(), "/", "_") << ".tiff"; result = TiffWriter::WriteColorImage(ss.str(), numCols, numRows, 3, legend->getPointer(0)); std::cout << ops.getSymmetryName() << " Result: " << result.first << ": " << result.second << std::endl;