[Paraview] paraview XDMF XY Geometry type
john mansour
john.mansour at maths.monash.edu.au
Thu Jul 9 19:03:15 EDT 2009
Thanks for that. it works now.
however, to maintain backwards/binary compatibility, and since any
vector attributes still seem to require three components, i am using
something like the following for 2D data:
<Geometry Type="XYZ">
<DataItem ItemType="Function" Dimensions="1089 3"
Function="JOIN($0, $1, 0*$1)">
<DataItem ItemType="HyperSlab" Dimensions="1089 1"
Name="XCoords">
<DataItem Dimensions="3 2" Format="XML"> 0 0 1 1 1089
1 </DataItem>
<DataItem Format="HDF" NumberType="Float"
Precision="8" Dimensions="1089 2">Mesh.00001.h5:/data</DataItem>
</DataItem>
<DataItem ItemType="HyperSlab" Dimensions="1089 1"
Name="YCoords">
<DataItem Dimensions="3 2" Format="XML"> 0 1 1 1 1089
1 </DataItem>
<DataItem Format="HDF" NumberType="Float"
Precision="8" Dimensions="1089 2">Mesh.00001.h5:/data</DataItem>
</DataItem>
</DataItem>
</Geometry>
<Attribute Type="Vector" Center="Node" Name="VelocityField">
<DataItem ItemType="Function" Dimensions="1089 3"
Function="JOIN($0, $1, 0*$1)">
<DataItem ItemType="HyperSlab" Dimensions="1089 1"
Name="XValue">
<DataItem Dimensions="3 2" Format="XML"> 0 0 1 1 1089
1 </DataItem>
<DataItem Format="HDF" NumberType="Float"
Precision="8" Dimensions="1089 2">VelocityField.00001.h5:/data</DataItem>
</DataItem>
<DataItem ItemType="HyperSlab" Dimensions="1089 1"
Name="YValue">
<DataItem Dimensions="3 2" Format="XML"> 0 1 1 1 1089
1 </DataItem>
<DataItem Format="HDF" NumberType="Float"
Precision="8" Dimensions="1089 2">VelocityField.00001.h5:/data</DataItem>
</DataItem>
</DataItem>
</Attribute>
thanks
john
Jerry Clarke wrote:
> John,
>
> I think this is fixed now. You'll need to do a cvs update.
> Also I think your <Topology> is twisted. Connectivity
> 0 1 3 4 should be 0 1 4 3 etc. I tried the following and
> it looked correct with the fixed code.
>
> <Topology Type="Quadrilateral" NumberOfElements="2" >
> <DataItem Format="XML" DataType="Int"
> Dimensions="2 4">
> 0 1 4 3
> 1 2 5 4
> </DataItem>
> </Topology>
>
>
> Jerry Clarke
>
> john mansour wrote:
>> perhaps this is an xdmf issue... in XdmfGeometry.cxx we originally have
>> the following:
>>
>> case XDMF_GEOMETRY_XY :
>> Start[0] = TmpArray->GetNumberOfElements();
>> Start[1] = 3;
>> points->SetShape( 2 , Start );
>> Stride[0] = 1;
>> Stride[0] = 1;
>> Count[0] = TmpArray->GetNumberOfElements();
>> Count[1] = 2;
>> points->SelectHyperSlab( NULL, Stride, Count);
>> CopyArray( TmpArray, points);
>> this->NumberOfPoints =
>> TmpArray->GetNumberOfElements() / 2 ;
>> break;
>>
>>
>> interesting 'Stride[0]=1' appears twice... if i replace the above with
>>
>> case XDMF_GEOMETRY_XY :
>> Start[0] = TmpArray->GetNumberOfElements()/2;
>> Start[1] = 3;
>> points->SetShape( 2 , Start );
>> Stride[0] = 1;
>> Stride[1] = 1;
>> Count[0] = TmpArray->GetNumberOfElements()/2;
>> Count[1] = 2;
>> points->SelectHyperSlab( NULL, Stride, Count);
>> CopyArray( TmpArray, points);
>> this->NumberOfPoints =
>> TmpArray->GetNumberOfElements() / 2 ;
>> break;
>>
>> my xmf is loaded (almost) correctly. the only issue still remaining is
>> that the Z geometry data is not zeroed, so it takes somewhat arbitrary
>> values.
>>
>> _______________________________________________
>> 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
>>
>> Follow this link to subscribe/unsubscribe:
>> http://www.paraview.org/mailman/listinfo/paraview
>
More information about the ParaView
mailing list