Uploaded image for project: 'GMAT'
  1. GMAT
  2. GMT-5650

Drawing inconsistencies in the OrbitView component

    Details

      Description

      (Note: These observations describe the behavior on Linux. The Windows behavior needs to be checked.)

      The attached script propagates 2 spacecraft at different time steps inside of a While loop. Both spacecraft are set to be shown in the OrbitView component. The trajectory is not shown for either, and the vehicle model for one of them is rendered inside of the Earth.

      The propagation loop looks like this:

      {noindent}
      While SC2.ElapsedDays < 1.0
      Propagate Prop60(SC1)
      Propagate Prop300(SC2)
      EndWhile;{noindent}

      If the single loop is replaced by two loops, like this (this version is commented out in the attached script):

      {noindent}
      While SC1.ElapsedDays < 1.0
      Propagate Prop60(SC1)
      EndWhile;

      While SC2.ElapsedDays < 1.0
      Propagate Prop300(SC2)
      EndWhile;{noindent}

      the trajectories are rendered as expected, but one of the vehicle models is still rendered inside of the Earth.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            shughes Steven Hughes added a comment - - edited

            CCB: near term fix.
            (1) Code should issue a warning "Objects are not time synchronized and cannot be displayed correctly".
            (2) Then pass to ticket to RQ to update docs accordingly for unsynchronized propgation

            Create a new ticket marked as P2 Someday to improve behavior.

            Show
            shughes Steven Hughes added a comment - - edited CCB: near term fix. (1) Code should issue a warning "Objects are not time synchronized and cannot be displayed correctly". (2) Then pass to ticket to RQ to update docs accordingly for unsynchronized propgation Create a new ticket marked as P2 Someday to improve behavior.
            Hide
            gmatloj Linda Jun added a comment -

            I don't think this issue has to do with objects not time synchronized.
            Here is script snippet:
            The OrbitView has two spacecrafts to draw.

            GMAT DefaultOrbitView.Add = {SC1, SC2, Earth};
            While SC2.ElapsedDays < 1.0
               Propagate Prop60(SC1)              <=== OrbitView receives data for SC1 only
               Propagate Prop300(SC2)             <=== OrbitView receives data for SC2 only
            EndWhile;
            

            I think the issue is that when one of drawing object data is not available, the OrbitView or GroundTrackPlot sets the data to zero. That's the reason why no plots shown for SC1 in addition to time order checking in the OrbitViewCanvas. So I tried setting the last received data and turned off the time checking for absent object, and it seemed to draw plots as expected.
            Should I check in the change to see if this will work?

            Show
            gmatloj Linda Jun added a comment - I don't think this issue has to do with objects not time synchronized. Here is script snippet: The OrbitView has two spacecrafts to draw. GMAT DefaultOrbitView.Add = {SC1, SC2, Earth}; While SC2.ElapsedDays < 1.0 Propagate Prop60(SC1) <=== OrbitView receives data for SC1 only Propagate Prop300(SC2) <=== OrbitView receives data for SC2 only EndWhile; I think the issue is that when one of drawing object data is not available, the OrbitView or GroundTrackPlot sets the data to zero. That's the reason why no plots shown for SC1 in addition to time order checking in the OrbitViewCanvas. So I tried setting the last received data and turned off the time checking for absent object, and it seemed to draw plots as expected. Should I check in the change to see if this will work?
            Hide
            shughes Steven Hughes added a comment -


            TGG suggested making objects semi-transparent if they are not at the plot epoch. If that is easy, it is worth trying, if not, just issue a warning if objects aren't at same epoch. Then commit

            Show
            shughes Steven Hughes added a comment - TGG suggested making objects semi-transparent if they are not at the plot epoch. If that is easy, it is worth trying, if not, just issue a warning if objects aren't at same epoch. Then commit
            Hide
            gmatloj Linda Jun added a comment - - edited

            Updated to display warning message when spacecraft data is absent and not time consecutive when the publisher publishes the data. Defined the macro to turn on and off warning message or fill absent data with last data in the OrbitPlot so that there still will be other options to try later. Created a new ticket GMT-5733 for improving plotting behavior when data is not present.

            Show
            gmatloj Linda Jun added a comment - - edited Updated to display warning message when spacecraft data is absent and not time consecutive when the publisher publishes the data. Defined the macro to turn on and off warning message or fill absent data with last data in the OrbitPlot so that there still will be other options to try later. Created a new ticket GMT-5733 for improving plotting behavior when data is not present.

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 2 days, 7 hours
                  2d 7h