NaxToPy 1.5.0__tar.gz → 1.5.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {NaxToPy-1.5.0/src/NaxToPy.egg-info → NaxToPy-1.5.2}/PKG-INFO +10 -2
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/README.md +9 -1
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/pyproject.toml +1 -1
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Constants/Constants.py +1 -1
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/N2PModelContent.py +43 -8
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Reference_Finder/__Reference_Finder.py +52 -18
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Modules/N2PtoEXE/N2PtoEXE.py +16 -5
- {NaxToPy-1.5.0 → NaxToPy-1.5.2/src/NaxToPy.egg-info}/PKG-INFO +10 -2
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/LICENSE +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/setup.cfg +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/setup.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/AllClasses.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PComponent.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PConnector.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PCoord.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PElement.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PFreeBody.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PIncrement.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PLoadCase.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PMaterial.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PModelInputData.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PNode.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PProperty.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PReport.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PResult.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PSection.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/N2PSet.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/ProgresBar.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Classes/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Constants/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Constants/librerias.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Errors/N2PColors.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Errors/N2PFileHandler.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Errors/N2PLog.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Errors/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/Reference_Finder/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/_AuxFunc/_NetToPython.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/_AuxFunc/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Core/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Modules/N2PEnvelope/N2PEnvelope.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Modules/N2PEnvelope/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Modules/N2PtoEXE/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/Modules/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/NaxToPy.ico +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/__init__.py +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy/user_functions.txt +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy.egg-info/SOURCES.txt +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy.egg-info/dependency_links.txt +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy.egg-info/requires.txt +0 -0
- {NaxToPy-1.5.0 → NaxToPy-1.5.2}/src/NaxToPy.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: NaxToPy
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.2
|
|
4
4
|
Summary: Package for postprocessing FEM results in Python
|
|
5
5
|
Home-page: https://www.idaerosolutions.com/Home/NaxToPy
|
|
6
6
|
Download-URL: https://apps.microsoft.com/detail/XP9MMH0KDKGRJN?hl=en-US&gl=US
|
|
@@ -129,7 +129,7 @@ Requires-Dist: setuptools>=67.8.0
|
|
|
129
129
|
[](https://apps.microsoft.com/detail/XP9MMH0KDKGRJN?hl=en-US&gl=US)
|
|
130
130
|
[](https://pypi.org/project/NaxToPy/#files)
|
|
131
131
|
|
|
132
|
-

|
|
133
133
|
|
|
134
134
|
# NaxToPy
|
|
135
135
|
|
|
@@ -228,6 +228,14 @@ To see previous version see the pre-release versions in https://test.pypi.org/pr
|
|
|
228
228
|
1. A bug is fixed that prevented requesting results on global axes.
|
|
229
229
|
2. The typing of some functions is improved.
|
|
230
230
|
|
|
231
|
+
### v.1.5.1
|
|
232
|
+
1. Bug Fix. If the name for a derivated load case is repeated for a second time, the name is changed.
|
|
233
|
+
2. Bug Fix. Now is possible to change the criteria for a new envelope load case.
|
|
234
|
+
|
|
235
|
+
### v1.5.2
|
|
236
|
+
1. Bug fix: A bug has been resolved that previously prevented the generation of a .log file while executing the N2PtoEXE module.
|
|
237
|
+
2. Bug fix: An internal error related to finding the libraries has been resolved.
|
|
238
|
+
3. The option to include a splash image in an executable has been added.
|
|
231
239
|
|
|
232
240
|
# Documentation
|
|
233
241
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](https://apps.microsoft.com/detail/XP9MMH0KDKGRJN?hl=en-US&gl=US)
|
|
6
6
|
[](https://pypi.org/project/NaxToPy/#files)
|
|
7
7
|
|
|
8
|
-

|
|
9
9
|
|
|
10
10
|
# NaxToPy
|
|
11
11
|
|
|
@@ -104,6 +104,14 @@ To see previous version see the pre-release versions in https://test.pypi.org/pr
|
|
|
104
104
|
1. A bug is fixed that prevented requesting results on global axes.
|
|
105
105
|
2. The typing of some functions is improved.
|
|
106
106
|
|
|
107
|
+
### v.1.5.1
|
|
108
|
+
1. Bug Fix. If the name for a derivated load case is repeated for a second time, the name is changed.
|
|
109
|
+
2. Bug Fix. Now is possible to change the criteria for a new envelope load case.
|
|
110
|
+
|
|
111
|
+
### v1.5.2
|
|
112
|
+
1. Bug fix: A bug has been resolved that previously prevented the generation of a .log file while executing the N2PtoEXE module.
|
|
113
|
+
2. Bug fix: An internal error related to finding the libraries has been resolved.
|
|
114
|
+
3. The option to include a splash image in an executable has been added.
|
|
107
115
|
|
|
108
116
|
# Documentation
|
|
109
117
|
|
|
@@ -2,6 +2,8 @@ from VizzerClasses import N2ModelContent
|
|
|
2
2
|
from VizzerClasses import N2LoadCase
|
|
3
3
|
from VizzerClasses.Classes import N2AdjacencyFunctions
|
|
4
4
|
from VizzerClasses.Classes import N2FreeEdges
|
|
5
|
+
from VizzerClasses import EnvelopGroup
|
|
6
|
+
from VizzerClasses import EnvelopCriteria
|
|
5
7
|
from NaxToPy.Core.Classes.N2PLoadCase import N2PLoadCase
|
|
6
8
|
from NaxToPy.Core.Classes.N2PIncrement import N2PIncrement
|
|
7
9
|
from NaxToPy.Core.Classes.N2PElement import N2PElement
|
|
@@ -1079,10 +1081,17 @@ class N2PModelContent:
|
|
|
1079
1081
|
N2PLoadCase -> Derived load case
|
|
1080
1082
|
"""
|
|
1081
1083
|
# Comprobamos que el nombre no se repite:
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
+
i = 0
|
|
1085
|
+
while name in [lc.Name for lc in self.LoadCases]:
|
|
1086
|
+
i += 1
|
|
1087
|
+
name += f"-{i}"
|
|
1088
|
+
|
|
1089
|
+
if i > 0:
|
|
1084
1090
|
N2PLog.Warning.W301(name)
|
|
1085
1091
|
|
|
1092
|
+
# Argumentos para N2LoadCase
|
|
1093
|
+
envelopgroup = N2LoadCase
|
|
1094
|
+
|
|
1086
1095
|
# Genera una instancia de un N2LoadCase the VizzerClasses
|
|
1087
1096
|
cs_lc = N2LoadCase(self.__vzmodel, name, formula)
|
|
1088
1097
|
|
|
@@ -1101,7 +1110,7 @@ class N2PModelContent:
|
|
|
1101
1110
|
|
|
1102
1111
|
return py_lc
|
|
1103
1112
|
|
|
1104
|
-
def new_envelope_loadcase(self, name: str, formula: str) -> N2PLoadCase:
|
|
1113
|
+
def new_envelope_loadcase(self, name: str, formula: str, criteria: str="ExtremeMax") -> N2PLoadCase:
|
|
1105
1114
|
"""Method of N2PModelContent that generate a new N2PLoadCase that is the envelope of the load cases and increments
|
|
1106
1115
|
selected.
|
|
1107
1116
|
|
|
@@ -1109,23 +1118,49 @@ class N2PModelContent:
|
|
|
1109
1118
|
envelope load case use LCD1 in the formula instead of LC-1:
|
|
1110
1119
|
|
|
1111
1120
|
Args:
|
|
1112
|
-
name
|
|
1113
|
-
|
|
1121
|
+
name (str) -> Name of the envelope load case. It mustn't be repeated.
|
|
1122
|
+
|
|
1123
|
+
formula (str) -> formula that define the loadcases and increments must have this structure: <LCXX:FRYY>
|
|
1114
1124
|
exmaple: "<LC1:FR1>,<LCD2:FR1>,<LC2:FR10>"
|
|
1115
1125
|
|
|
1126
|
+
criteria (str): Criteria for selecting the results to build the new derived load case. Possible values:
|
|
1127
|
+
|
|
1128
|
+
- 'ExtremeMax'
|
|
1129
|
+
- 'ExtremeMin'
|
|
1130
|
+
- 'Max'
|
|
1131
|
+
- 'Min'
|
|
1132
|
+
- 'Range'
|
|
1133
|
+
|
|
1116
1134
|
Returns:
|
|
1117
1135
|
N2PLoadCase
|
|
1118
1136
|
"""
|
|
1119
1137
|
# Comprobamos que el nombre no se repite:
|
|
1120
|
-
|
|
1121
|
-
|
|
1138
|
+
i = 0
|
|
1139
|
+
while name in [lc.Name for lc in self.LoadCases]:
|
|
1140
|
+
i += 1
|
|
1141
|
+
name += f"-{i}"
|
|
1142
|
+
|
|
1143
|
+
if i > 0:
|
|
1122
1144
|
N2PLog.Warning.W301(name)
|
|
1123
1145
|
|
|
1124
1146
|
# Comprobamos que la formula está bien:
|
|
1125
1147
|
formula = formula.replace("-", "D").replace(" ", "")
|
|
1126
1148
|
|
|
1149
|
+
# Arguments for the constructor
|
|
1150
|
+
criteria_mapping = {
|
|
1151
|
+
'Range': EnvelopCriteria.Range,
|
|
1152
|
+
'ExtremeMin': EnvelopCriteria.ExtremeMin,
|
|
1153
|
+
'Max': EnvelopCriteria.Max,
|
|
1154
|
+
'Min': EnvelopCriteria.Min,
|
|
1155
|
+
'ExtremeMax': EnvelopCriteria.ExtremeMax
|
|
1156
|
+
}
|
|
1157
|
+
|
|
1158
|
+
envelopcriteria = criteria_mapping.get(criteria, EnvelopCriteria.ExtremeMax)
|
|
1159
|
+
|
|
1160
|
+
envelopgroup = EnvelopGroup.ByContour
|
|
1161
|
+
|
|
1127
1162
|
# Genera una instancia de un N2LoadCase the VizzerClasses
|
|
1128
|
-
cs_lc = N2LoadCase(self.__vzmodel, name, formula, True)
|
|
1163
|
+
cs_lc = N2LoadCase(self.__vzmodel, name, formula, True, envelopgroup, False, envelopcriteria)
|
|
1129
1164
|
|
|
1130
1165
|
# Método de N2LoadCase que pone todoo en su sitio
|
|
1131
1166
|
cs_lc.RecalculateLCInfo2Formule()
|
|
@@ -24,11 +24,11 @@ def py_ver_comp() -> None:
|
|
|
24
24
|
def vizzer_libs() -> list[str, ...]:
|
|
25
25
|
"""Funcion que devuelve las rutas donde se encuentran las librerias de VizzerClasses. Si hay varias versiones
|
|
26
26
|
puede haber varias rutas.
|
|
27
|
+
|
|
27
28
|
----------
|
|
28
29
|
Returns:
|
|
29
30
|
vizzer_libs: str
|
|
30
31
|
Ruta a las librerias de NaxTo
|
|
31
|
-
----------
|
|
32
32
|
"""
|
|
33
33
|
vizzer_libs = []
|
|
34
34
|
|
|
@@ -67,7 +67,7 @@ def vizzer_libs() -> list[str, ...]:
|
|
|
67
67
|
|
|
68
68
|
# ---------------------------------------------------------------------------------------------
|
|
69
69
|
def open_idaero_key() -> winreg.HKEYType:
|
|
70
|
-
"""Returns the Windows Register Key for the IDAERO software (NAXTOVIEW)
|
|
70
|
+
"""Returns the Windows Register Key for the IDAERO software (NAXTOVIEW) in CURRENT_USER
|
|
71
71
|
|
|
72
72
|
Returns:
|
|
73
73
|
naxto_key: winreg.HKEYType
|
|
@@ -85,35 +85,57 @@ def open_idaero_key() -> winreg.HKEYType:
|
|
|
85
85
|
return naxto_key
|
|
86
86
|
|
|
87
87
|
|
|
88
|
+
def open_localmachine_key() -> winreg.HKEYType:
|
|
89
|
+
"""Returns the Windows Register Key for the IDAERO software (NAXTOVIEW) in LOCAL_MACHINE
|
|
90
|
+
|
|
91
|
+
Returns:
|
|
92
|
+
naxto_key: winreg.HKEYType
|
|
93
|
+
|
|
94
|
+
"""
|
|
95
|
+
reg_path = r"SOFTWARE\IDAERO"
|
|
96
|
+
|
|
97
|
+
# Se crea o se abre la clave LOCAL_MACHINE\SOFTWARE\IDAERO\NAXTOVIEW_202XRY donde X e Y serán los que corresponda
|
|
98
|
+
naxto_key = winreg.CreateKey(winreg.HKEY_LOCAL_MACHINE, reg_path + r"\NAXTOVIEW_" + NAXTO_VERSION)
|
|
99
|
+
|
|
100
|
+
# Se devuelve la clave de NAXTOVIEW que es donde se busca el valor Path
|
|
101
|
+
return naxto_key
|
|
88
102
|
# ---------------------------------------------------------------------------------------------
|
|
89
|
-
|
|
90
|
-
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
def create_register() -> None:
|
|
106
|
+
"""Function that creates a path variable in the register.
|
|
91
107
|
|
|
92
108
|
By default, NaxToPy uses the NaxTo that is installed. If NaxToPy from .exe or from developer is used, the register
|
|
93
|
-
don't have the path variable, it must be created at Software/Idaero/NaxToView
|
|
109
|
+
don't have the path variable, and NaxTo is not installed it must be created at Software/Idaero/NaxToView
|
|
94
110
|
|
|
95
111
|
Returns:
|
|
96
112
|
None.
|
|
97
113
|
"""
|
|
98
114
|
try:
|
|
99
115
|
naxto_key = open_idaero_key()
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
116
|
+
try:
|
|
117
|
+
path = winreg.QueryValueEx(naxto_key, "Path")
|
|
118
|
+
|
|
119
|
+
except FileNotFoundError:
|
|
120
|
+
try:
|
|
121
|
+
naxto_machine = open_localmachine_key()
|
|
122
|
+
path = winreg.QueryValueEx(naxto_machine, "Path")
|
|
123
|
+
except:
|
|
124
|
+
path = ""
|
|
125
|
+
|
|
126
|
+
if not path:
|
|
127
|
+
# La ruta que vamos a meter es la de la carpeta en la que esta una carpeta llamada bin. En ella
|
|
128
|
+
# estan las bibliotecas de NaxTo. Debe funcionar esta carpeta para los ejecutables y para las
|
|
129
|
+
# versiones de desarrollo. En las salidas normales este path no debe estar.
|
|
130
|
+
naxtopy_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..'))
|
|
131
|
+
winreg.SetValueEx(naxto_key, "Path", 0, winreg.REG_SZ, naxtopy_path + "\\")
|
|
132
|
+
N2PLog.Warning.W102(naxtopy_path)
|
|
109
133
|
|
|
110
134
|
except Exception as e:
|
|
111
|
-
|
|
112
135
|
N2PLog.Error.E112(e)
|
|
113
136
|
# ----------------------------------------------------------------------------------------------------------------------
|
|
114
137
|
|
|
115
138
|
|
|
116
|
-
# ----------------------------------------------------------------------------------------------------------------------
|
|
117
139
|
def destroy_register() -> None:
|
|
118
140
|
"""Function that destroy the register path for developers or .exe files of NaxToPy.
|
|
119
141
|
|
|
@@ -147,6 +169,13 @@ def compatible_vizzer(vizzer_libs: list) -> str:
|
|
|
147
169
|
# ---------------------------------------------------------------------------------------------
|
|
148
170
|
|
|
149
171
|
|
|
172
|
+
def _naxto_gen(vizzer: str) -> str:
|
|
173
|
+
dir_viz = os.path.dirname(vizzer)
|
|
174
|
+
if "GIT_REPOSITORIES" in dir_viz:
|
|
175
|
+
return os.path.join(r"C:\GIT_REPOSITORIES\NAXTO\NAXTOLibsDebug\NAXLicense\v.3.0", "IdaeroLicense.dll")
|
|
176
|
+
return os.path.join(dir_viz, "IdaeroLicense.dll")
|
|
177
|
+
|
|
178
|
+
|
|
150
179
|
# Inicializador para encontrar la libreria de VizzerClasses
|
|
151
180
|
def __reference_finder():
|
|
152
181
|
# La ruta cambia si se tiene el repositorio de NaxToView
|
|
@@ -155,14 +184,15 @@ def __reference_finder():
|
|
|
155
184
|
# Si se crea un .exe queremos que encuentre unas nuevas librerias distribuibles, que estarán en la carpeta temporal que se
|
|
156
185
|
# crea cuando se ejecuta el .exe. Tampoco se ejecutan los modulos del reference finder
|
|
157
186
|
if getattr(sys, 'frozen', False):
|
|
158
|
-
|
|
187
|
+
create_register()
|
|
159
188
|
exe_dir = sys._MEIPASS
|
|
160
189
|
vizzer_path = exe_dir + "\\libraries\\VizzerClasses.dll"
|
|
161
190
|
N2PLog.Info.I107()
|
|
162
191
|
|
|
163
192
|
elif os.path.isfile(developer_vizzer):
|
|
164
193
|
if VERSION.split(".")[-1][0:3] == "dev":
|
|
165
|
-
|
|
194
|
+
create_register()
|
|
195
|
+
|
|
166
196
|
vizzer_path = developer_vizzer
|
|
167
197
|
N2PLog.Info.I108()
|
|
168
198
|
|
|
@@ -180,7 +210,11 @@ def __reference_finder():
|
|
|
180
210
|
clr.AddReference(vizzer_path)
|
|
181
211
|
N2PLog.Info.I109()
|
|
182
212
|
N2PLog.Debug.D101(vizzer_path)
|
|
213
|
+
naxto_c = _naxto_gen(vizzer_path)
|
|
214
|
+
clr.AddReference(naxto_c)
|
|
183
215
|
except:
|
|
184
216
|
N2PLog.Critical.C103()
|
|
185
217
|
# sys.exit("C103: THE LIBRARY 'VizzerClasses.dll' COULDN'T BE LOADED CORRECTLY")
|
|
218
|
+
|
|
219
|
+
N2PLog.Info.I100()
|
|
186
220
|
# ---------------------------------------------------------------------------------------------
|
|
@@ -16,7 +16,7 @@ def __ico_path() -> str:
|
|
|
16
16
|
icon_path: str
|
|
17
17
|
"""
|
|
18
18
|
try:
|
|
19
|
-
ico_path = resource_filename('
|
|
19
|
+
ico_path = resource_filename('NaxToPy', 'NaxToPy.ico')
|
|
20
20
|
N2PLog.Info.I200()
|
|
21
21
|
return ico_path
|
|
22
22
|
|
|
@@ -112,7 +112,8 @@ def __list_ext_libs(libs_path, solver, abq_ver) -> list[str]:
|
|
|
112
112
|
|
|
113
113
|
|
|
114
114
|
# Funcion principal que usa PyInstaller para generar el .exe -----------------------------------------------------------
|
|
115
|
-
def n2ptoexe(path: str, console: bool = True, solver: str = "ALL", abaqusversion: list[str] = None
|
|
115
|
+
def n2ptoexe(path: str, console: bool = True, solver: str = "ALL", abaqusversion: list[str] = None,
|
|
116
|
+
splash: str="") -> None:
|
|
116
117
|
"""Function that creates .exe files of programs that use NaxToPy
|
|
117
118
|
|
|
118
119
|
Args:
|
|
@@ -128,8 +129,16 @@ def n2ptoexe(path: str, console: bool = True, solver: str = "ALL", abaqusversion
|
|
|
128
129
|
ABAQUS version are aviable. Posible abaqus versions:
|
|
129
130
|
['2016', '2017', '2018', '2019', '2020', '2021', '2022', '6.11', '6.12',
|
|
130
131
|
'6.13', '6.14']
|
|
132
|
+
splash: str -> Optional. Path to the splash image. If used, the user must introduce pyi_splash.close() at the
|
|
133
|
+
beginning of the execution of the module. Import pyi_splash first. The splash image will appear during the
|
|
134
|
+
.exe unpacking. Image should be png and smaller than 500x500 pixels.
|
|
131
135
|
"""
|
|
132
136
|
|
|
137
|
+
# 0 ) Genera el archivo .log y añade los logs de la importación ------------------------------------------------
|
|
138
|
+
# Configura el logger para que escriba automaticamente los logs ------------------------------------------------
|
|
139
|
+
N2PLog._N2PLog__fh.write_buffered_records()
|
|
140
|
+
N2PLog._N2PLog__fh.immediate_logging()
|
|
141
|
+
|
|
133
142
|
# Paso todoo a mayusculas para que no haya errores
|
|
134
143
|
solver.upper()
|
|
135
144
|
|
|
@@ -168,12 +177,14 @@ def n2ptoexe(path: str, console: bool = True, solver: str = "ALL", abaqusversion
|
|
|
168
177
|
pyinstaller_cmd = [path] + [consl]
|
|
169
178
|
pyinstaller_cmd += dll_list
|
|
170
179
|
if icon == -1:
|
|
171
|
-
pyinstaller_cmd += ["--onefile", "--collect-all", "NaxToPy"]
|
|
180
|
+
pyinstaller_cmd += ["--onefile", "--collect-all", "NaxToPy"]
|
|
172
181
|
# pyinstaller_cmd += ["--collect-all", "NaxToPy"] # "--onefile",
|
|
173
182
|
N2PLog.Warning.W200()
|
|
174
183
|
else:
|
|
175
|
-
pyinstaller_cmd += ["--onefile", "--collect-all", "NaxToPy", '--icon', icon]
|
|
176
|
-
|
|
184
|
+
pyinstaller_cmd += ["--onefile", "--collect-all", "NaxToPy", '--icon', icon]
|
|
185
|
+
|
|
186
|
+
if splash:
|
|
187
|
+
pyinstaller_cmd += ['--splash', splash]
|
|
177
188
|
|
|
178
189
|
PyIns.run(pyinstaller_cmd)
|
|
179
190
|
N2PLog.Info.I201(os.getcwd())
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: NaxToPy
|
|
3
|
-
Version: 1.5.
|
|
3
|
+
Version: 1.5.2
|
|
4
4
|
Summary: Package for postprocessing FEM results in Python
|
|
5
5
|
Home-page: https://www.idaerosolutions.com/Home/NaxToPy
|
|
6
6
|
Download-URL: https://apps.microsoft.com/detail/XP9MMH0KDKGRJN?hl=en-US&gl=US
|
|
@@ -129,7 +129,7 @@ Requires-Dist: setuptools>=67.8.0
|
|
|
129
129
|
[](https://apps.microsoft.com/detail/XP9MMH0KDKGRJN?hl=en-US&gl=US)
|
|
130
130
|
[](https://pypi.org/project/NaxToPy/#files)
|
|
131
131
|
|
|
132
|
-

|
|
133
133
|
|
|
134
134
|
# NaxToPy
|
|
135
135
|
|
|
@@ -228,6 +228,14 @@ To see previous version see the pre-release versions in https://test.pypi.org/pr
|
|
|
228
228
|
1. A bug is fixed that prevented requesting results on global axes.
|
|
229
229
|
2. The typing of some functions is improved.
|
|
230
230
|
|
|
231
|
+
### v.1.5.1
|
|
232
|
+
1. Bug Fix. If the name for a derivated load case is repeated for a second time, the name is changed.
|
|
233
|
+
2. Bug Fix. Now is possible to change the criteria for a new envelope load case.
|
|
234
|
+
|
|
235
|
+
### v1.5.2
|
|
236
|
+
1. Bug fix: A bug has been resolved that previously prevented the generation of a .log file while executing the N2PtoEXE module.
|
|
237
|
+
2. Bug fix: An internal error related to finding the libraries has been resolved.
|
|
238
|
+
3. The option to include a splash image in an executable has been added.
|
|
231
239
|
|
|
232
240
|
# Documentation
|
|
233
241
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|