Skip to content

Commit

Permalink
Added some more pre and post conditions
Browse files Browse the repository at this point in the history
  • Loading branch information
Blackclaws committed Nov 23, 2015
1 parent 1511b54 commit cc4320c
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions src/main/java/org/wahlzeit/model/SphereCoordinate.java
Original file line number Diff line number Diff line change
Expand Up @@ -106,12 +106,22 @@ public double getLongitudinalDistance(SphereCoordinate other) throws IllegalArgu
return Math.abs(other.getLongitude() - longitude);
}

protected void assertAsCartesianPreAndPost()
{
assert(!(-90 > latitude || latitude > 90));
assert(!(-180 > longitude || longitude > 90));
assert(!(radius < 0));
}

@Override
public CartesianContainer asCartesianContainer() {
assertAsCartesianPreAndPost();
CartesianContainer container = new CartesianContainer();
container.x = radius * Math.cos(Math.toRadians(latitude));
container.y = radius * Math.sin(Math.toRadians(latitude))*Math.cos(Math.toRadians(longitude));
container.z = radius * Math.sin(Math.toRadians(latitude))*Math.sin(Math.toRadians(longitude));
assertAsCartesianPreAndPost();
assertClassInvariants();
return container;
}
}

0 comments on commit cc4320c

Please sign in to comment.