Как выбрать все области сетки в случае ParaView OpenFOAM, используя скрипты Python?

Загрузка кейса OpenFOAM в ParaView с использованием python выполняется напрямую с помощью:

ofReader = OpenFOAMReader(FileName='<some OpenFOAM case directory>')

Однако по умолчанию в объекте чтения выбрана только область сетки internalMesh.

Использование метода трассировки ParaView не помогает, так как свойство MeshRegion объекта OpenFOAMReader просто устанавливается на значения областей сетки, которые я выбираю с помощью мыши:

ofReader.MeshRegions = ['internalField', 'patch1', 'patch2']

Поскольку я заранее не знаю, как называются области сетки, я не могу создать такую ​​​​строку в своем скрипте Python ParaView.

Как можно выбрать и загрузить все области сетки корпуса OpenFOAM в ParaView, используя скрипт Python и только функции ParaView Python API?


person Woltan    schedule 18.05.2018    source источник


Ответы (1)


В классе python ArrayListPropery есть функция SelectAll().

ofReader = OpenFOAMReader(FileName='<some OpenFOAM case directory>')
ofReader.MeshRegions.SelectAll()
Show(ofReader)
Render()

Если вам нужно знать имена, это также возможно:

ofReader.GetProperty("PatchArrayInfo")
person Mathieu Westphal    schedule 23.05.2018
comment
Спасибо за помощь. Ответ выше работает! Вы не знаете, это где-нибудь задокументировано? - person Woltan; 23.05.2018
comment
Прямо здесь: paraview.org/ParaView/Doc/Nightly/www/py-doc/ - person Mathieu Westphal; 23.05.2018