Beispiel #1
0
  @Test
  public void testRotatePoint() {
    IPoint pt = ShapeFactory.createPoint();

    assertNull(pt.rotatePoint(null, 0));
    assertNull(pt.rotatePoint(null, 0));
    assertNull(pt.rotatePoint(ShapeFactory.createPoint(), Double.NaN));
    assertNull(pt.rotatePoint(ShapeFactory.createPoint(), Double.NEGATIVE_INFINITY));
    assertNull(pt.rotatePoint(ShapeFactory.createPoint(), Double.POSITIVE_INFINITY));

    assertEquals(
        ShapeFactory.createPoint(0, 1),
        ShapeFactory.createPoint(1, 0).rotatePoint(ShapeFactory.createPoint(), Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(-1, 0),
        ShapeFactory.createPoint(0, 1).rotatePoint(ShapeFactory.createPoint(), Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(0, -1),
        ShapeFactory.createPoint(-1, 0).rotatePoint(ShapeFactory.createPoint(), Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(1, 0),
        ShapeFactory.createPoint(0, -1).rotatePoint(ShapeFactory.createPoint(), Math.PI / 2.));

    assertEquals(
        ShapeFactory.createPoint(0, 1),
        ShapeFactory.createPoint(1, 0).rotatePoint(pt, -3. * Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(-1, 0),
        ShapeFactory.createPoint(0, 1).rotatePoint(pt, -3. * Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(0, -1),
        ShapeFactory.createPoint(-1, 0).rotatePoint(pt, -3. * Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(1, 0),
        ShapeFactory.createPoint(0, -1).rotatePoint(pt, -3. * Math.PI / 2.));

    assertEquals(
        ShapeFactory.createPoint(-1, 0), ShapeFactory.createPoint(1, 0).rotatePoint(pt, Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, -1), ShapeFactory.createPoint(0, 1).rotatePoint(pt, Math.PI));
    assertEquals(
        ShapeFactory.createPoint(1, 0), ShapeFactory.createPoint(-1, 0).rotatePoint(pt, Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, 1), ShapeFactory.createPoint(0, -1).rotatePoint(pt, Math.PI));

    assertEquals(
        ShapeFactory.createPoint(-1, 0), ShapeFactory.createPoint(1, 0).rotatePoint(pt, -Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, -1), ShapeFactory.createPoint(0, 1).rotatePoint(pt, -Math.PI));
    assertEquals(
        ShapeFactory.createPoint(1, 0), ShapeFactory.createPoint(-1, 0).rotatePoint(pt, -Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, 1), ShapeFactory.createPoint(0, -1).rotatePoint(pt, -Math.PI));

    assertEquals(
        ShapeFactory.createPoint(0, -1),
        ShapeFactory.createPoint(1, 0).rotatePoint(pt, 3. * Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(1, 0),
        ShapeFactory.createPoint(0, 1).rotatePoint(pt, 3. * Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(0, 1),
        ShapeFactory.createPoint(-1, 0).rotatePoint(pt, 3. * Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(-1, 0),
        ShapeFactory.createPoint(0, -1).rotatePoint(pt, 3. * Math.PI / 2.));

    assertEquals(
        ShapeFactory.createPoint(0, -1),
        ShapeFactory.createPoint(1, 0).rotatePoint(pt, -Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(1, 0),
        ShapeFactory.createPoint(0, 1).rotatePoint(pt, -Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(0, 1),
        ShapeFactory.createPoint(-1, 0).rotatePoint(pt, -Math.PI / 2.));
    assertEquals(
        ShapeFactory.createPoint(-1, 0),
        ShapeFactory.createPoint(0, -1).rotatePoint(pt, -Math.PI / 2.));

    assertEquals(
        ShapeFactory.createPoint(1, 0),
        ShapeFactory.createPoint(1, 0).rotatePoint(pt, 2. * Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, 1),
        ShapeFactory.createPoint(0, 1).rotatePoint(pt, 2. * Math.PI));
    assertEquals(
        ShapeFactory.createPoint(-1, 0),
        ShapeFactory.createPoint(-1, 0).rotatePoint(pt, 2. * Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, -1),
        ShapeFactory.createPoint(0, -1).rotatePoint(pt, 2. * Math.PI));

    assertEquals(
        ShapeFactory.createPoint(1, 0),
        ShapeFactory.createPoint(1, 0).rotatePoint(pt, -2. * Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, 1),
        ShapeFactory.createPoint(0, 1).rotatePoint(pt, -2. * Math.PI));
    assertEquals(
        ShapeFactory.createPoint(-1, 0),
        ShapeFactory.createPoint(-1, 0).rotatePoint(pt, -2. * Math.PI));
    assertEquals(
        ShapeFactory.createPoint(0, -1),
        ShapeFactory.createPoint(0, -1).rotatePoint(pt, -2. * Math.PI));

    assertEquals(ShapeFactory.createPoint(1, 0), ShapeFactory.createPoint(1, 0).rotatePoint(pt, 0));
    assertEquals(ShapeFactory.createPoint(0, 1), ShapeFactory.createPoint(0, 1).rotatePoint(pt, 0));
    assertEquals(
        ShapeFactory.createPoint(-1, 0), ShapeFactory.createPoint(-1, 0).rotatePoint(pt, 0));
    assertEquals(
        ShapeFactory.createPoint(0, -1), ShapeFactory.createPoint(0, -1).rotatePoint(pt, 0));
  }