我正在从Fortran编写.vtu文件。我使用的格式如下:
<?xml version="1.0"?>
<VTKFile type= "UnstructuredGrid" version= "0.1" byte_order= "BigEndian">
<UnstructuredGrid>
<Piece NumberOfPoints="X" NumberOfCells="X">
<PointData Scalars="Pressure" Vectors="Velocity">
<DataArray type="Float32" Name="Pressures" format="ascii">
etc.....在上面的代码中有X点。目前,如果有一个DataArray,它必须包含X值。
我的问题是-假设您有一个DataArray,其中每个点都有相同的值(即1)。是否有一种方法来编写文件,以便将该值写入一次而又应用于每一点?我在文档中找不到任何东西表明这是可能的。在我看来,每次写入文件时写出这个值都是浪费内存和计算,特别是如果X是一个非常大的数字。
或者内存/成本的需求是可以忽略不计的?
发布于 2015-08-14 14:41:04
用点或单元格数据数组无法做到这一点。
相反,您可以编写具有单个常量值的字段数据数组。字段数据数组不限于数据集中的点/单元数--把它们看作是存储关于VTK数据对象的元数据的一种方式。
不过,这完全取决于你想用它做什么。你需要用它来着色几何学吗?最近对VTK的更改使其能够按字段数据着色。
https://stackoverflow.com/questions/31966816
复制相似问题