|Re: [eigen] Cumbersome syntax questions/feedback|
[ Thread Index |
| More lists.tuxfamily.org/eigen Archives
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] Cumbersome syntax questions/feedback
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Sun, 16 Aug 2009 22:59:31 -0400
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=qHNbpctt144rfZmKKXf0oCZBGa3FM2+HDlf9M9Ay7gg=; b=RAkiw849KjN2acrRB4JJKAxhAr4DSKlWS8gm2uzmIVJ6LMJtQuqB+c+L5ZBuHwIG3O f7DxXS6fJER0rADUuhJnJ1thfSVSDs2/YY/Rg02xCV5V2jnrY76P9GibtLOCiwwKXyUu YFX27HmREKd1JEh94KDThVRY6LFGh8Wxiq+y4=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=VXkbNaPQmSjFDUMmt4+Uw5VlpBTCgSsdvYayLW4lm957jCNmDSJ2p7aARHPfD6S7+L KIKpiBA0F2+wj7oL/cirTMO9w5yM2fiXYYDg0+ndurMpjvmhR8HlZbBiniwcnuILdIDm VTRfkdyLrJVdlC6x2zm6EDRrC77j3tSmGyboI=
This is a bit nontrivial: if we start adding row and col, the user
will start expecting block() too, etc. It would be an unpredictable
API, if we had row() but not block().
I'm OK to add row, col, block and corner if there's consensus that
this makes sense to add specifically these methods as opposed to the
rest of the MatrixBase API. I don't have a strong opinion.
What's easier to do is make sure that Transform is extensible by a
EIGEN_TRANSFORM_PLUGIN, in the same way as MatrixBase,
would that be helpful to you?
2009/8/16 Staffan Gimåker <staffan@xxxxxxxxxx>:
> Hi again,
> Another thing that would make my life a bit easier is adding col() and
> row() methods to Eigen::Transform, similar to the operator()(int row,
> int col) shortcut already available.
> I.e. being able to write:
> Eigen::Transform3f T;
> T.row(0) = ...;
> rather than
> T.matrix().row(0) = ...;
> Are there any reasons this is a bad idea? I tried it out and it seems to
> work alright, the patch against 2.0.4 is attached.