Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-11473

Add SpherePoint(long, lat, unit) constructor

    Details

    • Type: Improvement
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: afw
    • Story Points:
      1
    • Epic Link:
    • Sprint:
      Alert Production F17 - 9, Alert Production F17 - 10
    • Team:
      Alert Production

      Description

      Implement RFC-367 by adding a SpherePoint(double longitude, double latitude, AngleUnit unit) constructor.

      This will simplify DM-11162: Replace all use of Coord and subclasses with SpherePoint.

        Attachments

          Issue Links

            Activity

            rowen Russell Owen created issue -
            rowen Russell Owen made changes -
            Field Original Value New Value
            Link This issue is triggered by RFC-367 [ RFC-367 ]
            rowen Russell Owen made changes -
            Story Points 2
            Team Alert Production [ 10300 ]
            Labels SciencePipelines
            Priority Undefined [ 10000 ] Major [ 3 ]
            rowen Russell Owen made changes -
            Description Implement RFC-367 by adding a {{SpherePoint(double longitude, double latitude, AngleUnit unit)}} constructor and a {{SpherePoint.getNumbers(AngleUnit unit) -> std::pair<double, double>}} getter, or whatever is decided on that RFC. Implement RFC-367 by adding a {{SpherePoint(double longitude, double latitude, AngleUnit unit)}} constructor and a {{SpherePoint.getNumbers(AngleUnit unit) -> std::pair<double, double>}} getter, or whatever is decided on that RFC.

            This will simplify DM-11162: Replace all use of {{Coord}} and subclasses with {{SpherePoint}}.
            rowen Russell Owen made changes -
            Summary Add SpherePoint(long, lat, unit) constructor and associated getter Add SpherePoint(long, lat, unit) constructor
            rowen Russell Owen made changes -
            Description Implement RFC-367 by adding a {{SpherePoint(double longitude, double latitude, AngleUnit unit)}} constructor and a {{SpherePoint.getNumbers(AngleUnit unit) -> std::pair<double, double>}} getter, or whatever is decided on that RFC.

            This will simplify DM-11162: Replace all use of {{Coord}} and subclasses with {{SpherePoint}}.
            Implement RFC-367 by adding a {{SpherePoint(double longitude, double latitude, AngleUnit unit)}} constructor.

            This will simplify DM-11162: Replace all use of {{Coord}} and subclasses with {{SpherePoint}}.
            rowen Russell Owen made changes -
            Link This issue blocks DM-11162 [ DM-11162 ]
            rowen Russell Owen made changes -
            Epic Link DM-9679 [ 30784 ]
            rowen Russell Owen made changes -
            Sprint Alert Production F17 - 9 [ 639 ]
            swinbank John Swinbank made changes -
            Sprint Alert Production F17 - 9 [ 639 ] Alert Production F17 - 9, Alert Production F17 - 10 [ 639, 643 ]
            swinbank John Swinbank made changes -
            Rank Ranked higher
            Hide
            rowen Russell Owen added a comment -

            I removed the unused and unsafe SpherePoint(double const lonLatRad[2]) constructor and added SpherePoint(double longitude, double latitude, AngleUnit unit) and a test.

            Show
            rowen Russell Owen added a comment - I removed the unused and unsafe SpherePoint(double const lonLatRad [2] ) constructor and added SpherePoint(double longitude, double latitude, AngleUnit unit) and a test.
            rowen Russell Owen made changes -
            Reviewers Krzysztof Findeisen [ krzys ]
            Status To Do [ 10001 ] In Review [ 10004 ]
            rowen Russell Owen made changes -
            Story Points 2 1
            Hide
            krzys Krzysztof Findeisen added a comment - - edited

            The new constructor promises to validate input but doesn't; also, it does not establish the class invariant that _longitude is always in the range [0, 2π) (which I will admit I should have documented).

            Show
            krzys Krzysztof Findeisen added a comment - - edited The new constructor promises to validate input but doesn't; also, it does not establish the class invariant that _longitude is always in the range [0, 2π) (which I will admit I should have documented).
            krzys Krzysztof Findeisen made changes -
            Status In Review [ 10004 ] Reviewed [ 10101 ]
            krzys Krzysztof Findeisen made changes -
            Status Reviewed [ 10101 ] In Progress [ 3 ]
            Hide
            rowen Russell Owen added a comment -

            I renamed the test method (and added an explanatory comment to the expected failure within it).

            Show
            rowen Russell Owen added a comment - I renamed the test method (and added an explanatory comment to the expected failure within it).
            rowen Russell Owen made changes -
            Resolution Done [ 10000 ]
            Status In Progress [ 3 ] Done [ 10002 ]
            rowen Russell Owen made changes -
            Link This issue relates to DM-12102 [ DM-12102 ]

              People

              • Assignee:
                rowen Russell Owen
                Reporter:
                rowen Russell Owen
                Reviewers:
                Krzysztof Findeisen
                Watchers:
                Krzysztof Findeisen, Russell Owen
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Summary Panel