Re: [eigen] Do we need geometry refactoring?

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


I'll fix it immediately.

On Mon, Aug 16, 2010 at 5:14 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
> 2010/8/16 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
>> 2010/8/16 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
>>> 2010/8/3 Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>:
>>>> On Tue, Aug 3, 2010 at 3:53 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
>>>>
>>>>>> - It is unintuitive that the most generic Transformation is affine
>>>>>
>>>>> Let's focus on this point because it looks crucial to me. The most
>>>>> generic transformation is definitely projective, there's no question
>>>>> about that, the questions discussed here are:
>>>>>  a) what should the default value for Mode be?
>>>>>  b) what should the Transform3f (etc) typedefs stand for?
>>>>>
>>>>> Obviously, a typedef named "Transform3f" has to use the default mode,
>>>>> but at the same time that name "Transform3f" does suggest something
>>>>> generic, whence the confusion in this discussion between "default" and
>>>>> "generic".
>>>>
>>>> Right, you nailed it. So, we agree that Transform3f is likely to
>>>> suggest something generic.
>>>>
>>>>> What do you think about this plan:
>>>>>  - we just remove the Transform3f... typedefs. We just force the user
>>>>> to use the mode-specific typedefs such as Affine3f, Projective3f, etc..
>>>>>  - we don't give Mode any default value.
>>>>>  - in the tutorials, we focus (at least at the start) on Affine
>>>>> transforms, Affine3f etc, so that the intuitive idea that 3D-transform
>>>>> * 3D-vector gives a 3D-vector. Of course we then do explain other
>>>>> kinds of transform.
>>>>
>>>> Sound like a plan. Gael, do you have any opinion?
>>>
>>> Hauke: the geo_hyperplane test fails to build at the moment, something
>>> related to Transform and some matrix not having the right size. This
>>> is most probably related to your change, no?
>>
>> Ah, great, Gael had fixed that already, I should have grabbed the
>> newest changes.
>
> ...except that the tests are still failing at runtime,
> geo_transformations_1:
> /home/bjacob/eigen/Eigen/src/Geometry/Transform.h:246:
> Eigen::Transform<Scalar, Dim, Mode>::Transform(const
> Eigen::Transform<_Scalar, Dim, OtherMode>&) [with int OtherMode = 32,
> _Scalar = double, int _Dim = 3, int _Mode = 2]: Assertion
> `OtherMode!=Projective && "You cannot directly assign a projective
> transform to an affine one."' failed.
>
> I'm going to write to the list about tightening our commit policy (i'd
> like to request that we run all tests before pushing anything, etc).
>
> Benoit
>
>>
>> The question below about transform() still remains, though.
>>
>> Benoit
>>
>>>
>>> Also: the Hyperplane::transform() methods are still taking a
>>> TransformTraits runtime parameter, which we probably want to get rid
>>> of.
>>>
>>> Benoit
>>>
>>>>
>>>> - Hauke
>>>>
>>>>
>>>>
>>>
>>
>
>
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/