[ 
https://issues.apache.org/jira/browse/GEOMETRY-86?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Baljit Singh updated GEOMETRY-86:
---------------------------------
    Description: 
{code:java}
    @Test
    public void testAntipodal() {
        Point2S point = Point2S.of(1.0, 1.0);
        Point2S antipodal = point.antipodal();
        Point2S fromNeg = Point2S.from(point.getVector().negate());

        System.out.println(String.format("Point2S: %s, Vector: %s", point, 
point.getVector()));
        System.out.println(String.format("Point2S: %s, Vector: %s", antipodal, 
antipodal.getVector()));
        System.out.println(String.format("Point2S: %s, Vector: %s", fromNeg, 
fromNeg.getVector()));
    }
{code}

This prints:
Point2S: (1.0, 1.0), Vector: (0.4546487134128409, 0.7080734182735712, 
0.5403023058681398)
Point2S: (*5.283185307179586*, 2.141592653589793), Vector: 
(-0.4546487134128409, -0.7080734182735712, -0.5403023058681398)
Point2S: (*4.141592653589792*, 2.141592653589793), Vector: 
(-0.4546487134128409, -0.7080734182735712, -0.5403023058681398)

SphericalTestUtils.assertPointsEq does not detect the error because the 
point.getVector() and copy.getVector() are equal, and therefore the distance 
between these points is equal.


  was:
{code:java}
    @Test
    public void testAntipodal() {
        Point2S point = Point2S.of(1.0, 1.0);
        Point2S antipodal = point.antipodal();
        Point2S fromNeg = Point2S.from(point.getVector().negate());

        System.out.println(String.format("Point2S: %s, Vector: %s", point, 
point.getVector()));
        System.out.println(String.format("Point2S: %s, Vector: %s", antipodal, 
antipodal.getVector()));
        System.out.println(String.format("Point2S: %s, Vector: %s", fromNeg, 
fromNeg.getVector()));
    }
{code}

This prints:
Point2S: (1.0, 1.0), Vector: (0.4546487134128409, 0.7080734182735712, 
0.5403023058681398)
Point2S: (5.283185307179586, 2.141592653589793), Vector: (-0.4546487134128409, 
-0.7080734182735712, -0.5403023058681398)
Point2S: (4.141592653589792, 2.141592653589793), Vector: (-0.4546487134128409, 
-0.7080734182735712, -0.5403023058681398)

SphericalTestUtils.assertPointsEq does not detect the error because the 
point.getVector() and copy.getVector() are equal, and therefore the distance 
between these points is equal.



> Point2S.antipodal() or Point2S.from() is incorrect.
> ---------------------------------------------------
>
>                 Key: GEOMETRY-86
>                 URL: https://issues.apache.org/jira/browse/GEOMETRY-86
>             Project: Apache Commons Geometry
>          Issue Type: Bug
>            Reporter: Baljit Singh
>            Priority: Major
>
> {code:java}
>     @Test
>     public void testAntipodal() {
>         Point2S point = Point2S.of(1.0, 1.0);
>         Point2S antipodal = point.antipodal();
>         Point2S fromNeg = Point2S.from(point.getVector().negate());
>         System.out.println(String.format("Point2S: %s, Vector: %s", point, 
> point.getVector()));
>         System.out.println(String.format("Point2S: %s, Vector: %s", 
> antipodal, antipodal.getVector()));
>         System.out.println(String.format("Point2S: %s, Vector: %s", fromNeg, 
> fromNeg.getVector()));
>     }
> {code}
> This prints:
> Point2S: (1.0, 1.0), Vector: (0.4546487134128409, 0.7080734182735712, 
> 0.5403023058681398)
> Point2S: (*5.283185307179586*, 2.141592653589793), Vector: 
> (-0.4546487134128409, -0.7080734182735712, -0.5403023058681398)
> Point2S: (*4.141592653589792*, 2.141592653589793), Vector: 
> (-0.4546487134128409, -0.7080734182735712, -0.5403023058681398)
> SphericalTestUtils.assertPointsEq does not detect the error because the 
> point.getVector() and copy.getVector() are equal, and therefore the distance 
> between these points is equal.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to