To add a bit more detail to the answer, the reason the transform filter is not 
scaling all the vectors is because the proper transformation of vectors depends 
on the type of vector so the filter is being conservative and not transforming 
most of the vectors at all. To understand this, let's back up and look at 
different types of vectors that might be in scientific data.

First, there are vectors that deal with spatial movements. Things like 
displacements, velocities, and accelerations. These have units like m, m/s, and 
m/s^2, respectively. They clearly should be scaled along with the space like 
you described.

But other types of vectors shouldn't be scaled. For example, consider 
electrical current. Current is the amount of electricity that passes through a 
point per unit of time, and a vector can give the direction of the movement. 
However, it is not clear that scaling up the model means that more electricity 
passes through the point. Other "vectors" might just be triples that have no 
spatial meaning and therefore should also not be scaled. Other spatial vectors 
have different types of transformations when being scaled. A normal vector, for 
instance, is transformed by the inverse transpose to maintain its 
perpendicular-to-surface property. A flux vector, which is related to surface 
area, would be scaled quadratically.

So the problem is that the transform filter has no way to reliably determine 
how each vector field should be scaled. VTK data sets have the ability to 
identify certain fields with special attributes. For example, one field can be 
attributed as the "vectors" and another can be attributed as the "normals". The 
transform filter assumes that the vectors are to be scaled linearly and the 
normals are transformed by the inverse transpose. The rest of the arrays are 
left alone.

So in summary, in a sense this is in fact a "bug" in that the fields are not 
being handled correctly. But the filter is doing about as best as it can, so 
there is no real fix for this bug.

-Ken

From: <Scott>, Walter Scott <[email protected]<mailto:[email protected]>>
Date: Monday, January 5, 2015 at 12:36 PM
To: Mengda Wu <[email protected]<mailto:[email protected]>>, 
"[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: Re: [Paraview] [EXTERNAL] Transform filter bug? why some of the data 
arrays get scaled?

Mengda,
I believe that the transform filter is just scaling the space - i.e., the X, Y 
and Z data.  If you want to scale data arrays, use the Calculator filter.

Alan

From: ParaView [mailto:[email protected]] On Behalf Of Mengda Wu
Sent: Saturday, January 03, 2015 11:50 AM
To: [email protected]<mailto:[email protected]>
Subject: [EXTERNAL] [Paraview] Transform filter bug? why some of the data 
arrays get scaled?

Hi All,
   I found a possible bug of the paraview's transform filter. If I put just the 
uniform scaling, e.g. set the scale to 10 10 10. Some of the vector-type data 
arrays get scaled by 10 but not all. Why is that?

Thanks,
Mengda
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Search the list archives at: http://markmail.org/search/?q=ParaView

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/paraview

Reply via email to