BlueQuartzSoftware / EbsdLib

C++ Library that can read EBSD Files from OEMs and perform basic EBSD processing such as orientation conversion
BSD 3-Clause "New" or "Revised" License
5 stars 11 forks source link

`generateIPFTriangleLegend` is not a virtual function of LaueOps #20

Closed LudovicDrtt closed 6 months ago

LudovicDrtt commented 1 year ago

I'm currently using EbsdLib to generate Inverse Pole Figure.

To handle the different LaueClass, I proceed as in Source/Apps/make_ipf.cpp, ie I use a pointer of base class LaueOps with the following lines of code

  const std::size_t laue_group = m_reader.getPhaseVector().at(phase - 1)->determineLaueGroup();
  const LaueOps::Pointer ops = LaueOps::GetAllOrientationOps().at(laue_group);

Then I use polymorphisme to compute the colors with the virtual function LaueOps::generateIPFColor.

However, I would like to also draw the legend but there is no virtual function LaueOps::generateIPFTriangleLegend, even if this function is declared in every class derived from LaueOps.

Is there any good reason for that or did it was just forgotten ?