Actions
Bug #9499
closedThe Vector.cross_product function returns the opposite vector of the expected result
Description
The member function of class Vector returns the opposite vector of the expected result. The function calculates the resulting vector as if the cross_product is v X self instead of self X v. Just to be sure I tried running the exact example from the 2.1.0 documentation, where is specified:
Vector[1, 0, 0].cross_product Vector[0, 1, 0] => Vector[0, 0, 1]
The documentation is right, but running the example produces Vector[0, 0, -1].
The fix is just to swap the two arguments of the '-' operator.
The implementation is in matrix.rb line:1764
Updated by nagachika (Tomoyuki Chikanaga) about 11 years ago
- Status changed from Open to Assigned
- Assignee set to marcandre (Marc-Andre Lafortune)
- Backport changed from 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN to 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: REQUIRED
Updated by nagachika (Tomoyuki Chikanaga) almost 11 years ago
- Status changed from Assigned to Closed
- % Done changed from 0 to 100
Applied in changeset ruby-21:r46789.
merge revision(s) r46780: [Backport #9499]
* lib/matrix.rb: Fix sign for cross_product [#9499]
Updated by nagachika (Tomoyuki Chikanaga) almost 11 years ago
- Backport changed from 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: REQUIRED to 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: DONE
backported at r46789.
Actions
Like0
Like0Like0Like0