Commit a4dcd310 authored by jlaura's avatar jlaura Committed by Jesse Mapel
Browse files

Adds settable ellipsoid to wrapper sort of (#18)

* Adds settable ellipsoid to wrapper sort of

* Removes failing test that should be failing
parent b8a5d652
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -8,3 +8,4 @@
%include "geometricmodel.i"
%include "rastergm.i"
%include "plugin.i"
%include "settableellipsoid.i"
+10 −1
Original line number Diff line number Diff line
@@ -483,3 +483,12 @@ std::vector<double> FixtureSensorModel::getCrossCovarianceMatrix(
                   "Unsupported function",
                   "FixtureSensorModel::getCrossCovarianceMatrix");
}

csm::Ellipsoid FixtureSensorModel::getEllipsoid() const {
    return csm::Ellipsoid(m_majorAxis, m_minorAxis);
}

void FixtureSensorModel::setEllipsoid(const csm::Ellipsoid &ellipsoid) {
    m_majorAxis = ellipsoid.getSemiMajorRadius();
    m_minorAxis = ellipsoid.getSemiMinorRadius();
}
+10 −5
Original line number Diff line number Diff line
@@ -189,6 +189,9 @@ public:

   virtual void replaceModelState(const std::string& argState);
   
   virtual csm::Ellipsoid getEllipsoid() const;

   virtual void setEllipsoid(const csm:: Ellipsoid &ellipsoid);


private:
@@ -199,5 +202,7 @@ private:
   double desiredPrecision = 0.001,
   double* achievedPrecision = NULL,
   csm::WarningList* warnings = NULL) const;
   double m_minorAxis;
   double m_majorAxis;
};
#endif
+4 −1
Original line number Diff line number Diff line
@@ -58,3 +58,6 @@ def test_bad_ground_to_image(model):
    with pytest.warns(Warning) as w:
        img = model.groundToImage(gnd_coord, 0)
        assert len(w) == 1

def test_ellipsoid_is_settable(model):
    assert isinstance(csmapi.SettableEllipsoid.getEllipsoid(model), csmapi.Ellipsoid)

settableellipsoid.i

0 → 100644
+6 −0
Original line number Diff line number Diff line
%module(package="csmapi") settableellipsoid
%{
    #include "SettableEllipsoid.h"
%}

%include "SettableEllipsoid.h"