]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/trackoffsetiter.cpp
Rewrite rod simulation code
[r2c2.git] / source / libr2c2 / trackoffsetiter.cpp
index a6145690cb078c5277b6601cd1c25578dbf82491..01fd58042b0b5cf916551913994992671656e7d0 100644 (file)
@@ -49,10 +49,10 @@ BlockIter TrackOffsetIter::block_iter() const
        return _track.block_iter();
 }
 
-TrackPoint TrackOffsetIter::point() const
+OrientedPoint TrackOffsetIter::point() const
 {
        if(!_track)
-               return TrackPoint();
+               return OrientedPoint();
 
        if(_path>=0)
                return _track->get_point(_track.entry(), _path, _offset);
@@ -118,6 +118,9 @@ TrackOffsetIter TrackOffsetIter::reverse() const
 
        int p = (_path>=0 ? _path : _track->get_active_path());
        TrackIter t = _track.reverse(p);
+       if(!t)
+               return TrackOffsetIter();
+
        float o = t->get_type().get_path_length(p)-_offset;
 
        return TrackOffsetIter(t, p, o);