diff --git a/GUI/Model/Device/BeamItems.cpp b/GUI/Model/Device/BeamItems.cpp index 33268beba4d656fe8972212b28f3e442000af4af..95fe5159157e90b4ce5d642bd642a59ead556ec0 100644 --- a/GUI/Model/Device/BeamItems.cpp +++ b/GUI/Model/Device/BeamItems.cpp @@ -53,7 +53,6 @@ SourceItem::SourceItem() void SourceItem::writeTo(QXmlStreamWriter* w) const { ASSERT(m_wavelengthItem); - ASSERT(m_inclinationAngleItem); XML::writeAttribute(w, XML::Attrib::version, uint(1)); @@ -72,11 +71,6 @@ void SourceItem::writeTo(QXmlStreamWriter* w) const m_azimuthalAngleItem->writeTo(w); w->writeEndElement(); - // inclination angle - w->writeStartElement(Tag::InclinationAngle); - m_inclinationAngleItem->writeTo(w); - w->writeEndElement(); - // beam parameters groupbox: is expanded? w->writeStartElement(Tag::ExpandBeamParametersGroupbox); XML::writeAttribute(w, XML::Attrib::value, m_expandBeamParameters); @@ -109,11 +103,6 @@ void SourceItem::readFrom(QXmlStreamReader* r) m_azimuthalAngleItem->readFrom(r); XML::gotoEndElementOfTag(r, tag); - // inclination angle - } else if (tag == Tag::InclinationAngle) { - m_inclinationAngleItem->readFrom(r); - XML::gotoEndElementOfTag(r, tag); - // beam parameters groupbox: is expanded? } else if (tag == Tag::ExpandBeamParametersGroupbox) { XML::readAttribute(r, XML::Attrib::value, &m_expandBeamParameters); @@ -142,12 +131,6 @@ BeamWavelengthItem* SourceItem::wavelengthItem() const return m_wavelengthItem.get(); } -void SourceItem::setInclinationAngle(double value) -{ - ASSERT(m_inclinationAngleItem); - m_inclinationAngleItem->resetToValue(value); -} - BeamDistributionItem* SourceItem::beamDistributionItem() const { ASSERT(m_inclinationAngleItem); @@ -196,12 +179,18 @@ BeamItem::BeamItem() void BeamItem::writeTo(QXmlStreamWriter* w) const { + ASSERT(m_inclinationAngleItem); XML::writeAttribute(w, XML::Attrib::version, uint(1)); // parameters from base class w->writeStartElement(Tag::BaseData); SourceItem::writeTo(w); w->writeEndElement(); + + // inclination angle + w->writeStartElement(Tag::InclinationAngle); + m_inclinationAngleItem->writeTo(w); + w->writeEndElement(); } void BeamItem::readFrom(QXmlStreamReader* r) @@ -217,11 +206,22 @@ void BeamItem::readFrom(QXmlStreamReader* r) SourceItem::readFrom(r); XML::gotoEndElementOfTag(r, tag); + // inclination angle + } else if (tag == Tag::InclinationAngle) { + m_inclinationAngleItem->readFrom(r); + XML::gotoEndElementOfTag(r, tag); + } else r->skipCurrentElement(); } } +void BeamItem::setInclinationAngle(double value) +{ + ASSERT(m_inclinationAngleItem); + m_inclinationAngleItem->resetToValue(value); +} + double BeamItem::getInclinationAngle() const { return dynamic_cast<BeamInclinationAngleItem*>(beamDistributionItem())->inclinationAngle(); @@ -291,12 +291,6 @@ double ScanItem::getInclinationAngle() const return 0.0; } -void ScanItem::setInclinationAngle(double value) -{ - ASSERT(value == 0.0); - SourceItem::setInclinationAngle(0.); -} - GrazingScanItem* ScanItem::grazingScanItem() const { ASSERT(m_inclinationAngleItem); diff --git a/GUI/Model/Device/BeamItems.h b/GUI/Model/Device/BeamItems.h index fd42c9952973bb48e93524380bfd3c0c67b52abb..490f042c5e6489b28036c2b0debedcd95c9fa7a1 100644 --- a/GUI/Model/Device/BeamItems.h +++ b/GUI/Model/Device/BeamItems.h @@ -43,7 +43,6 @@ public: BeamWavelengthItem* wavelengthItem() const; virtual double getInclinationAngle() const = 0; - virtual void setInclinationAngle(double value); BeamDistributionItem* beamDistributionItem() const; @@ -76,6 +75,7 @@ public: void writeTo(QXmlStreamWriter* w) const; void readFrom(QXmlStreamReader* r); + void setInclinationAngle(double value); double getInclinationAngle() const override; }; @@ -87,7 +87,6 @@ public: void readFrom(QXmlStreamReader* r); double getInclinationAngle() const override; - void setInclinationAngle(double value) override; GrazingScanItem* grazingScanItem() const; BasicAxisItem* inclinationAxisItem() const; diff --git a/GUI/Model/FromCore/ItemizeSimulation.cpp b/GUI/Model/FromCore/ItemizeSimulation.cpp index d3aa4ec88630f98d2dfce5ccc3c083e4776a4c19..da3426d71f5cf9ca9df3b234e9809a5bca105bfc 100644 --- a/GUI/Model/FromCore/ItemizeSimulation.cpp +++ b/GUI/Model/FromCore/ItemizeSimulation.cpp @@ -238,7 +238,6 @@ void setOffspecBeamItem(ScanItem* scan_item, const OffspecSimulation& simulation scan_item->setIntensity(beam.intensity()); scan_item->setWavelength(beam.wavelength()); - scan_item->setInclinationAngle(Units::rad2deg(beam.alpha_i())); scan_item->setAzimuthalAngle(Units::rad2deg(beam.phi_i())); // TODO implement beam divergence } @@ -432,8 +431,7 @@ SpecularInstrumentItem* createSpecularInstrumentItem(const SpecularSimulation& s scan_item->setIntensity(scan->intensity()); scan_item->setWavelength(scan->wavelength()); - scan_item->setInclinationAngle(0.0); // inclination angle is hardcoded - scan_item->setAzimuthalAngle(0.0); // azimuthal angle is hardcoded + scan_item->setAzimuthalAngle(0.0); // azimuthal angle is hardcoded auto* axis_item = scan_item->inclinationAxisItem(); setAxisItem(axis_item, *scan->coordinateAxis(), 1. / Units::deg);