You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Luc Maisonobe <Lu...@free.fr> on 2011/08/18 20:00:06 UTC

[math] semantic change in the 3D line API

Hello,

In the current 3.0 development version, the 3D package has been vastly 
expanded. It features several new classes, among which Line, which 
represents a one-dimensional straight line in the three-dimensional space.

For consistency with what is done in other dimensions, and for 
consistency with an upcoming subline class (which was a user request), I 
am going to change the semantics of the constructor:

  Line(Vector3D u, Vector3D v)

Up to now, the first vector was intended to be a random point on the 
line, and the second vector was a direction. From now, the second vector 
will represent a second point in the line, not a direction anymore.

This will allow to have the same kind of constructors for Line and 
SubLine, and it will also match the semantics of the 2D Line class.

Unfortunately, this change is purely semantic and so the constructor 
signature does not change at all, which imply current code will compile 
perfectly but will behave differently. This message is intended to warn 
people about this change that may otherwise go unnoticed.

As this code is still unreleased, it seems appropriate to make this 
change now and have a clean API when 3.0 will be released. This is also 
the reason why this message is sent to the developers list and not the 
users list.

Sorry for the inconvenience.
Luc

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org