Salome HOME
Windows porting
[tools/medcoupling.git] / doc / user / images / simplexize.py
1 # -*- coding: utf-8 -*-
2
3 ###
4 ### This script is intended to be launched in a new SALOME study
5 ###
6
7 import os
8 import salome
9
10 salome.salome_init()
11 theStudy = salome.myStudy
12
13 import iparameters
14 ipar = iparameters.IParameters(salome.myStudy.GetCommonParameters("Interface Applicative", 1), True)
15
16 #Set up visual properties:
17 ipar.setProperty("AP_ACTIVE_VIEW", "VTKViewer_0_0")
18 ipar.setProperty("AP_WORKSTACK_INFO", "0000000100000000000000020100000001000003a0000000040000000100000001000000080000001a00560054004b005600690065007700650072005f0030005f00300000000102")
19 ipar.setProperty("AP_ACTIVE_MODULE", "Mesh")
20 ipar.setProperty("AP_SAVEPOINT_NAME", "GUI state: 2")
21 #Set up lists:
22 # fill list AP_VIEWERS_LIST
23 ipar.append("AP_VIEWERS_LIST", "VTKViewer_1")
24 # fill list VTKViewer_1
25 ipar.append("VTKViewer_1", "VTK scene:2 - viewer:1")
26 ipar.append("VTKViewer_1", """<?xml version="1.0"?>
27 <ViewState>
28     <Position X="-12.3586" Y="-37.489" Z="12.7008"/>
29     <FocalPoint X="2.46519" Y="1.21798" Z="1.72147"/>
30     <ViewUp X="0.043222" Y="0.257277" Z="0.965371"/>
31     <ViewScale Parallel="3.93184" X="1" Y="1" Z="1"/>
32     <DisplayCubeAxis Show="0"/>
33     <GraduatedAxis Axis="X">
34         <Title isVisible="1" Text="X" Font="0" Bold="0" Italic="0" Shadow="0">
35             <Color R="1" G="0" B="0"/>
36         </Title>
37         <Labels isVisible="1" Number="3" Offset="2" Font="0" Bold="0" Italic="0" Shadow="0">
38             <Color R="1" G="0" B="0"/>
39         </Labels>
40         <TickMarks isVisible="1" Length="5"/>
41     </GraduatedAxis>
42     <GraduatedAxis Axis="Y">
43         <Title isVisible="1" Text="Y" Font="0" Bold="0" Italic="0" Shadow="0">
44             <Color R="0" G="1" B="0"/>
45         </Title>
46         <Labels isVisible="1" Number="3" Offset="2" Font="0" Bold="0" Italic="0" Shadow="0">
47             <Color R="0" G="1" B="0"/>
48         </Labels>
49         <TickMarks isVisible="1" Length="5"/>
50     </GraduatedAxis>
51     <GraduatedAxis Axis="Z">
52         <Title isVisible="1" Text="Z" Font="0" Bold="0" Italic="0" Shadow="0">
53             <Color R="0" G="0" B="1"/>
54         </Title>
55         <Labels isVisible="1" Number="3" Offset="2" Font="0" Bold="0" Italic="0" Shadow="0">
56             <Color R="0" G="0" B="1"/>
57         </Labels>
58         <TickMarks isVisible="1" Length="5"/>
59     </GraduatedAxis>
60     <Trihedron isShown="0" Size="100"/>
61     <Background Value="bt=1;fn=;tm=0;ts=false;c1=#ffffff;c2=#000000;gt=-1;gr="/>
62 </ViewState>
63 """)
64 # fill list AP_MODULES_LIST
65 ipar.append("AP_MODULES_LIST", "Mesh")
66
67 import sys
68 if sys.platform == "win32":
69     from MEDCouplingCompat import *
70 else:
71     from MEDCoupling import *
72
73 coordsArr=DataArrayDouble(range(3))
74 mesh1=MEDCouplingCMesh("mesh")
75 mesh1.setCoords(coordsArr,coordsArr,coordsArr)
76
77 from MEDLoader import WriteMesh
78 WriteMesh("mesh1.med",mesh1,True)
79
80 mesh2 = mesh1.buildUnstructured()
81 mesh2.simplexize(PLANAR_FACE_5)
82 WriteMesh("part.med",mesh2,True)
83
84 ###
85 ### SMESH component
86 ###
87
88 import  SMESH, SALOMEDS
89 from salome.smesh import smeshBuilder
90
91 smesh = smeshBuilder.New(salome.myStudy)
92 ([mesh_1], status) = smesh.CreateMeshesFromMED(r'mesh1.med')
93 ([mesh_2], status) = smesh.CreateMeshesFromMED(r'part.med')
94
95 mesh_2.TranslateObject( mesh_2, [3,0,0], False )
96
97 ### Store presentation parameters of displayed objects
98 import iparameters
99 ipar = iparameters.IParameters(theStudy.GetModuleParameters("Interface Applicative", "SMESH", 1))
100
101 #Set up entries:
102 # set up entry SMESH_3 (mesh) parameters
103 ipar.setParameter("SMESH_3", "VTKViewer_0_Visibility", "On")
104 ipar.setParameter("SMESH_3", "VTKViewer_0_Representation", "2")
105 ipar.setParameter("SMESH_3", "VTKViewer_0_IsShrunk", "1")
106 ipar.setParameter("SMESH_3", "VTKViewer_0_Entities", "e:1:f:1:v:1:0d:1:b:1")
107 ipar.setParameter("SMESH_3", "VTKViewer_0_Colors", "surface:0:0.666667:1:backsurface:100:volume:1:0:0.666667:-100:edge:0:0.666667:1:node:1:0:0:outline:0:0.27451:0:elem0d:0:1:0:ball:0:0.333333:1:orientation:1:1:1")
108 ipar.setParameter("SMESH_3", "VTKViewer_0_Sizes", "line:1:outline:1:elem0d:5:ball:10:1:shrink:0.75:orientation:0.1:0")
109 ipar.setParameter("SMESH_3", "VTKViewer_0_PointMarker", "std:1:9")
110 ipar.setParameter("SMESH_3", "VTKViewer_0_Opacity", "1")
111 ipar.setParameter("SMESH_3", "VTKViewer_0_ClippingPlane", "Off")
112 # set up entry SMESH_4 (mesh) parameters
113 ipar.setParameter("SMESH_4", "VTKViewer_0_Visibility", "On")
114 ipar.setParameter("SMESH_4", "VTKViewer_0_Representation", "2")
115 ipar.setParameter("SMESH_4", "VTKViewer_0_IsShrunk", "1")
116 ipar.setParameter("SMESH_4", "VTKViewer_0_Entities", "e:1:f:1:v:1:0d:1:b:1")
117 ipar.setParameter("SMESH_4", "VTKViewer_0_Colors", "surface:0:0.666667:1:backsurface:100:volume:1:0:0.666667:-100:edge:0:0.666667:1:node:1:0:0:outline:0:0.27451:0:elem0d:0:1:0:ball:0:0.333333:1:orientation:1:1:1")
118 ipar.setParameter("SMESH_4", "VTKViewer_0_Sizes", "line:1:outline:1:elem0d:5:ball:10:1:shrink:0.75:orientation:0.1:0")
119 ipar.setParameter("SMESH_4", "VTKViewer_0_PointMarker", "std:1:9")
120 ipar.setParameter("SMESH_4", "VTKViewer_0_Opacity", "1")
121 ipar.setParameter("SMESH_4", "VTKViewer_0_ClippingPlane", "Off")
122
123  
124 if salome.sg.hasDesktop():
125   salome.sg.updateObjBrowser(True)
126   iparameters.getSession().restoreVisualState(1)
127
128 import libSALOME_Swig
129 gui = libSALOME_Swig.SALOMEGUI_Swig()
130 gui.AddIObject( salome.ObjectToID( mesh_1.GetMesh() ))
131 gui.AddIObject( salome.ObjectToID( mesh_2.GetMesh() ))