PySimultan 0.4.20__py3-none-any.whl → 0.4.22__py3-none-any.whl

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.
PySimultan2/__about__.py CHANGED
@@ -1 +1 @@
1
- version = '0.4.20'
1
+ version = '0.4.22'
@@ -307,27 +307,6 @@ class ComponentDictionary(SimultanObject):
307
307
  component_policy = 'subcomponent' # component add policy of the content/parameter/property, 'reference'
308
308
  # or 'subcomponent'
309
309
 
310
- type_setter_fcn_lookup_dict = {None: lambda x: None,
311
- SimComponent: set_property_to_sim_component,
312
- SimultanObject: set_property_to_sim_component,
313
- SimDoubleParameter: set_property_to_parameter,
314
- SimIntegerParameter: set_property_to_parameter,
315
- SimStringParameter: set_property_to_parameter,
316
- SimBoolParameter: set_property_to_parameter,
317
- SimEnumParameter: set_property_to_parameter,
318
- int: set_property_to_parameter,
319
- float: set_property_to_parameter,
320
- str: set_property_to_parameter,
321
- bool: set_property_to_parameter,
322
- FileInfo: set_property_to_file_info,
323
- list: set_property_to_list,
324
- tuple: set_property_to_list,
325
- set: set_property_to_list,
326
- dict: set_property_to_dict,
327
- ComponentList: set_property_to_list,
328
- np.ndarray: set_property_to_value_field,
329
- pd.DataFrame: set_property_to_value_field}
330
-
331
310
  _taxonomy_map = TaxonomyMap(taxonomy_name='Dictionaries',
332
311
  taxonomy_key='Dictionaries',
333
312
  taxonomy_entry_name='ComponentDict',
@@ -422,10 +401,14 @@ class ComponentDictionary(SimultanObject):
422
401
  logger.error(f'Could not get value for key {key} ({text_or_key}) in {self}:\n{e}')
423
402
  raise ValueError(f'Could not get value for key {key} ({text_or_key}) in {self}:\n{e}')
424
403
 
425
- self._dict[key] = get_obj_value(val,
426
- data_model=data_model,
427
- object_mapper=object_mapper)
428
- return self._dict[key]
404
+ val = get_obj_value(val,
405
+ data_model=data_model,
406
+ object_mapper=object_mapper)
407
+
408
+ if val is not None:
409
+ self._dict[key] = val
410
+
411
+ return self._dict.get(key, None)
429
412
 
430
413
  def __setitem__(self, key, value):
431
414
 
@@ -470,12 +453,8 @@ class ComponentDictionary(SimultanObject):
470
453
  keep=[])
471
454
  return
472
455
 
473
- if isinstance(value, (list, tuple, set, ComponentList)):
474
- setter_fcn = set_property_to_list
475
- elif isinstance(value, SimultanObject):
476
- setter_fcn = set_property_to_sim_component
477
- else:
478
- setter_fcn = self.type_setter_fcn_lookup_dict.get(type(value), set_property_to_unknown_type)
456
+ from .type_setter_lookup import type_setter_fcn_lookup_dict
457
+ setter_fcn = type_setter_fcn_lookup_dict.get(type(value), set_property_to_unknown_type)
479
458
 
480
459
  setter_fcn(*fcn_arg_list)
481
460
  item = self.__getitem__(key, check_dict=False)
@@ -0,0 +1,62 @@
1
+ import numpy as np
2
+ import pandas as pd
3
+
4
+ from .utils import (SimComponent, SimultanObject, SimDoubleParameter, SimIntegerParameter, SimStringParameter,
5
+ SimBoolParameter, SimEnumParameter, SimMultiValueField3D, SimMultiValueBigTable, FileInfo,
6
+ set_property_to_sim_component, set_property_to_parameter, set_property_to_value_field,
7
+ set_property_to_file_info, set_property_to_list, set_property_to_dict)
8
+
9
+ from .default_types import ComponentList, ComponentDictionary
10
+
11
+ from SIMULTAN.Data.Components import (ComponentWalker, SimComponent, SimBoolParameter, SimDoubleParameter,
12
+ SimEnumParameter, SimIntegerParameter, SimStringParameter, ComponentMapping,
13
+ SimSlot, SimComponentVisibility, SimChildComponentEntry, SimDefaultSlots,
14
+ SimParameterOperations, SimComponentReference)
15
+
16
+
17
+ lookup_dict = {None: lambda x: None,
18
+ SimComponent: set_property_to_sim_component,
19
+ SimultanObject: set_property_to_sim_component,
20
+ SimDoubleParameter: set_property_to_parameter,
21
+ SimIntegerParameter: set_property_to_parameter,
22
+ SimStringParameter: set_property_to_parameter,
23
+ SimBoolParameter: set_property_to_parameter,
24
+ SimEnumParameter: set_property_to_parameter,
25
+ SimMultiValueField3D: set_property_to_value_field,
26
+ SimMultiValueBigTable: set_property_to_value_field,
27
+ int: set_property_to_parameter,
28
+ float: set_property_to_parameter,
29
+ str: set_property_to_parameter,
30
+ bool: set_property_to_parameter,
31
+ FileInfo: set_property_to_file_info,
32
+ list: set_property_to_list,
33
+ tuple: set_property_to_list,
34
+ set: set_property_to_list,
35
+ dict: set_property_to_dict,
36
+ ComponentDictionary: set_property_to_dict,
37
+ ComponentList: set_property_to_list,
38
+ np.ndarray: set_property_to_value_field,
39
+ pd.DataFrame: set_property_to_value_field}
40
+
41
+
42
+ class TypeSetterFcnLookupDict(object):
43
+
44
+ def __getitem__(self, item: type):
45
+ if item in lookup_dict:
46
+ return lookup_dict[item]
47
+ elif SimultanObject in item.__bases__:
48
+ return set_property_to_sim_component
49
+ else:
50
+ return None
51
+
52
+ def get(self,
53
+ item: type,
54
+ default=None):
55
+ val = self.__getitem__(item)
56
+ if val is None:
57
+ return default
58
+ else:
59
+ return val
60
+
61
+
62
+ type_setter_fcn_lookup_dict = TypeSetterFcnLookupDict()
PySimultan2/utils.py CHANGED
@@ -1313,7 +1313,6 @@ def set_property_to_dict(value: dict,
1313
1313
  slot_extension=slot_extension,
1314
1314
  slot=slot)
1315
1315
 
1316
-
1317
1316
  def add_properties(prop_name: str,
1318
1317
  text_or_key: str,
1319
1318
  content: Content,
@@ -1334,30 +1333,6 @@ def add_properties(prop_name: str,
1334
1333
 
1335
1334
  from .default_types import ComponentList, ComponentDictionary
1336
1335
 
1337
- type_setter_fcn_lookup_dict = {None: lambda x: None,
1338
- SimComponent: set_property_to_sim_component,
1339
- SimultanObject: set_property_to_sim_component,
1340
- SimDoubleParameter: set_property_to_parameter,
1341
- SimIntegerParameter: set_property_to_parameter,
1342
- SimStringParameter: set_property_to_parameter,
1343
- SimBoolParameter: set_property_to_parameter,
1344
- SimEnumParameter: set_property_to_parameter,
1345
- SimMultiValueField3D: set_property_to_value_field,
1346
- SimMultiValueBigTable: set_property_to_value_field,
1347
- int: set_property_to_parameter,
1348
- float: set_property_to_parameter,
1349
- str: set_property_to_parameter,
1350
- bool: set_property_to_parameter,
1351
- FileInfo: set_property_to_file_info,
1352
- list: set_property_to_list,
1353
- tuple: set_property_to_list,
1354
- set: set_property_to_list,
1355
- dict: set_property_to_dict,
1356
- ComponentDictionary: set_property_to_dict,
1357
- ComponentList: set_property_to_list,
1358
- np.ndarray: set_property_to_value_field,
1359
- pd.DataFrame: set_property_to_value_field}
1360
-
1361
1336
  class Empty:
1362
1337
  pass
1363
1338
 
@@ -1413,15 +1388,8 @@ def add_properties(prop_name: str,
1413
1388
  if isinstance(value, UnresolvedObject):
1414
1389
  return
1415
1390
 
1416
- if isinstance(value, (list, tuple, set, ComponentList)):
1417
- setter_fcn = set_property_to_list
1418
- elif isinstance(value, SimultanObject):
1419
- setter_fcn = set_property_to_sim_component
1420
- elif isinstance(value, dict):
1421
- setter_fcn = set_property_to_dict
1422
- else:
1423
- setter_fcn = type_setter_fcn_lookup_dict.get(type(value), set_property_to_unknown_type)
1424
-
1391
+ from .type_setter_lookup import type_setter_fcn_lookup_dict
1392
+ setter_fcn = type_setter_fcn_lookup_dict.get(type(value), set_property_to_unknown_type)
1425
1393
  setter_fcn(*fcn_arg_list)
1426
1394
 
1427
1395
  setx.__taxonomy__ = taxonomy
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: PySimultan
3
- Version: 0.4.20
3
+ Version: 0.4.22
4
4
  Project-URL: Documentation, https://github.com/Bühler Maximilian/PySimultan2#readme
5
5
  Project-URL: Issues, https://github.com/Bühler Maximilian/PySimultan2/issues
6
6
  Project-URL: Source, https://github.com/Bühler Maximilian/PySimultan2
@@ -38,6 +38,9 @@ Description-Content-Type: text/markdown
38
38
 
39
39
  - [Installation](#installation)
40
40
  - [License](#license)
41
+ - [Usage](#usage)
42
+ - [FreeCAD support](#freecad-support)
43
+ - [Change Log](#change-log)
41
44
 
42
45
  ## Installation
43
46
 
@@ -1,13 +1,14 @@
1
- PySimultan2/__about__.py,sha256=5LZKy2_Q7Bsu50daCLBwex_Hb1mMwOUMiteIDt5jRXI,20
1
+ PySimultan2/__about__.py,sha256=P-nQJsKMEB57RcETBb098-YVGYuTXD81e-dFo3rZ2so,20
2
2
  PySimultan2/__init__.py,sha256=cabTN1Oz8xtFM31ouBKg5lwLqW5vtexDP669PYyNLnA,3224
3
3
  PySimultan2/data_model.py,sha256=xosu5TAfgsrxwyhd6SfHFp4Wvo1_YtxdHsSuZmuNVJU,27022
4
- PySimultan2/default_types.py,sha256=MvZuU7qQW-ybRIT5Fl5yKdyidXhTQjFZuUq2W8hvEI4,25504
4
+ PySimultan2/default_types.py,sha256=7M6-nEvyoGr9gFoPlmyy9jrglEcjosc7e9XBsQfoDjY,23912
5
5
  PySimultan2/files.py,sha256=8F1QC9nTsTSrCpu5vGx1xGx-7UgkDwoICXau_5j7UzI,12725
6
6
  PySimultan2/multi_values.py,sha256=ZFXlTLuZo32x7_7diYAp2XEjp5uwgHLgNOzN7v74-5I,13650
7
7
  PySimultan2/object_mapper.py,sha256=yYVGeIzkdYvNMqW_kz9NwVxi6IJWGAqLS8CrYzW2oEg,13210
8
8
  PySimultan2/simultan_object.py,sha256=P047pfjgScysBMIsW7Co63VlzXGnLqGwxjyAEVLh8kg,16917
9
9
  PySimultan2/taxonomy_maps.py,sha256=YXOE-vUan2vLQyk96W728Vw5elBvIwH56tTuRBYeUyQ,8420
10
- PySimultan2/utils.py,sha256=NOetVGG51-JTCrTTXMMmUz2pZpAGmvuojtoXd1UmLtA,63716
10
+ PySimultan2/type_setter_lookup.py,sha256=mCOYAnxNxofPcWUl59axNCFXe1gkilV_yWz2-0MGeGM,2782
11
+ PySimultan2/utils.py,sha256=32pHmzSIITC7WjFsfxmcMxMhHZPsk5K_KtQ5Uwi-pUs,61735
11
12
  PySimultan2/geometry/__init__.py,sha256=nJolTD1i5J8qUkOQa-r3D20aq3Co3sN31Xc0n4wJpJo,248
12
13
  PySimultan2/geometry/geometry_base.py,sha256=nbb9U2W3vFviVLxISLHRi2CVyLEM-3zIKvoZ1uSYs_8,23420
13
14
  PySimultan2/geometry/utils.py,sha256=J25YsK8sso_UL7xRusItQZvyjtvxdOsSPelBQYFABhY,8519
@@ -75,7 +76,7 @@ PySimultan2/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
75
76
  PySimultan2/resources/assimp.dll,sha256=HwfDwXqoPDTFRyoQpA3qmgZoUdFtziJkV5fNtktEZEU,6081536
76
77
  PySimultan2/resources/defaultsettings.xml,sha256=s6Tk1tubLz5UYqXZWpD42EDHzedemRY1nEneoIVcUfg,392
77
78
  PySimultan2/resources/setup.bat,sha256=fjvvYfVM6TalS-QTSiKAbAId5nTsk8kGGo06ba-wWaY,32
78
- pysimultan-0.4.20.dist-info/METADATA,sha256=TlRBXFruRV99PRNlQ_BOu8m4VeW3bgFu6-7Ufy-fjao,2619
79
- pysimultan-0.4.20.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
80
- pysimultan-0.4.20.dist-info/licenses/LICENSE.txt,sha256=pmSr98k6N005KMojnZxzLGRuRlDjDx3PUrK1lFj53HA,1126
81
- pysimultan-0.4.20.dist-info/RECORD,,
79
+ pysimultan-0.4.22.dist-info/METADATA,sha256=Paj_DgUNejfkhUoBgU4-jEfanNmt2YIJyeWUS2gIWTg,2703
80
+ pysimultan-0.4.22.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
81
+ pysimultan-0.4.22.dist-info/licenses/LICENSE.txt,sha256=pmSr98k6N005KMojnZxzLGRuRlDjDx3PUrK1lFj53HA,1126
82
+ pysimultan-0.4.22.dist-info/RECORD,,