Hi Utkarsh,<div><br></div><div>A method that takes a "const double [16]" argument for a matrix</div><div>would be preferable, because it at least has strong precedent in</div><div>VTK (e.g. in vtkMatrix4x4 and elsewhere).</div>


<div><br></div><div> - David</div><div><br><br><div class="gmail_quote">On Fri, Jul 22, 2011 at 7:44 AM, Utkarsh Ayachit <span dir="ltr"><<a href="mailto:utkarsh.ayachit@kitware.com" target="_blank">utkarsh.ayachit@kitware.com</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">David,<br>
<br>
I hear your objection, however not exposing such methods makes it<br>
really complicated for applications like ParaView that use<br>
client-server streams to update the objects. I do admit a method with<br>
16 arguments doesn't make sense. Instead something that takes a<br>
double[16] would possibly be acceptable and does not cause any issues<br>
for client-server streams.<br>
<br>
Utkarsh<br>
<div><div></div><div><br>
<br>
On Thu, Jul 21, 2011 at 6:10 PM, David Gobbi <<a href="mailto:david.gobbi@gmail.com" target="_blank">david.gobbi@gmail.com</a>> wrote:<br>
> Hi Aashish,<br>
> My objection is these methods are pure syntactic sugar.  They increase<br>
> the weight of the VTK interface without adding any new capabilities.<br>
> Also, if these methods are added here, they might entice people to add<br>
> similar methods to vtkProp3D and elsewhere.<br>
> I know that VTK is already rife with such methods, but at least in most<br>
> cases they are implemented by macros to ensure that they are consistently<br>
> applied throughout VTK.<br>
> My own preference is interfaces that are austere and orthogonal.  I'm not<br>
> even<br>
> a fan of the Rotate() and SetPosition() methods of vtkActor, when vtkActor<br>
> could have instead just had a SetTransform method and people could have<br>
> used the Transform methods to modify the actor matrix.<br>
>  - David<br>
><br>
> On Thu, Jul 21, 2011 at 3:52 PM, Aashish Chaudhary<br>
> <<a href="mailto:aashish.chaudhary@kitware.com" target="_blank">aashish.chaudhary@kitware.com</a>> wrote:<br>
>><br>
>> Hi David,<br>
>><br>
>> On Thu, Jul 21, 2011 at 5:28 PM, David Gobbi <<a href="mailto:david.gobbi@gmail.com" target="_blank">david.gobbi@gmail.com</a>><br>
>> wrote:<br>
>> > I noticed these two new methods in vtkCamera today, and if possible, I'd<br>
>> > like for them to be removed:<br>
>> ><br>
>> >  void SetModelTransformMatrix( double x00,  double x01,  double<br>
>> > x02, double<br>
>> > x03,<br>
>> >    double x10,  double x11,  double x12,  double x13,<br>
>> >    double x20,  double x21,  double x22,  double x23,<br>
>> >    double x30,  double x31,  double x32,  double x33);<br>
>> ><br>
>> >  void SetEyeTransformMatrix( double x00,  double x01,  double x02,<br>
>> >  double<br>
>> > x03,<br>
>> >    double x10,  double x11,  double x12,  double x13,<br>
>> >    double x20,  double x21,  double x22,  double x23,<br>
>> >    double x30,  double x31,  double x32,  double x33);<br>
>> ><br>
>> > Is it really so hard to create a vtkMatrix4x4 and then pass it as an<br>
>> > argument?<br>
>><br>
>> No it is not. We added this as part of paraview - vtk stereo<br>
>> integration. I will talk to Utkarsh (along with Nikhil) tomorrow to<br>
>> figure out if we can remove them. Initially we didn't put them as I<br>
>> didn't want to have something like this.<br>
>><br>
>> I would though like to hear reasoning behind your objections. Said<br>
>> that I am not favoring these two functions but would like to know what<br>
>> you are thinking.<br>
>><br>
>> > There is even a vtkMatrix4x4::DeepCopy method to make it easy to create<br>
>> > a matrix from an array of doubles.<br>
>><br>
>> Sure.<br>
>><br>
>> ><br>
>> > - David<br>
>> ><br>
>><br>
>><br>
>><br>
>> --<br>
>> | Aashish Chaudhary<br>
>> | R&D Engineer<br>
>> | Kitware Inc.<br>
>> | <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br></div></div></blockquote></div></div>