topologicpy 0.5.1__tar.gz → 0.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.
Files changed (97) hide show
  1. {topologicpy-0.5.1/src/topologicpy.egg-info → topologicpy-0.5.2}/PKG-INFO +1 -1
  2. {topologicpy-0.5.1 → topologicpy-0.5.2}/pyproject.toml +1 -1
  3. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Graph.py +10 -8
  4. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Helper.py +34 -0
  5. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/__init__.py +1 -1
  6. {topologicpy-0.5.1 → topologicpy-0.5.2/src/topologicpy.egg-info}/PKG-INFO +1 -1
  7. {topologicpy-0.5.1 → topologicpy-0.5.2}/LICENSE +0 -0
  8. {topologicpy-0.5.1 → topologicpy-0.5.2}/MANIFEST.in +0 -0
  9. {topologicpy-0.5.1 → topologicpy-0.5.2}/README.md +0 -0
  10. {topologicpy-0.5.1 → topologicpy-0.5.2}/setup.cfg +0 -0
  11. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Aperture.py +0 -0
  12. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Cell.py +0 -0
  13. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/CellComplex.py +0 -0
  14. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Cluster.py +0 -0
  15. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Color.py +0 -0
  16. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Context.py +0 -0
  17. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/DGL.py +0 -0
  18. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Dictionary.py +0 -0
  19. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Edge.py +0 -0
  20. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/EnergyModel.py +0 -0
  21. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Face.py +0 -0
  22. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Grid.py +0 -0
  23. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Honeybee.py +0 -0
  24. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Matrix.py +0 -0
  25. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Neo4j.py +0 -0
  26. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Plotly.py +0 -0
  27. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Polyskel.py +0 -0
  28. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Shell.py +0 -0
  29. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Speckle.py +0 -0
  30. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Topology.py +0 -0
  31. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Vector.py +0 -0
  32. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Vertex.py +0 -0
  33. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/Wire.py +0 -0
  34. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/__init__.py +0 -0
  35. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKBO-6bdf205d.so.7.7.0 +0 -0
  36. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKBRep-2960a069.so.7.7.0 +0 -0
  37. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKBool-c44b74bd.so.7.7.0 +0 -0
  38. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKFillet-9a670ba0.so.7.7.0 +0 -0
  39. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKG2d-8f31849e.so.7.7.0 +0 -0
  40. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKG3d-4c6bce57.so.7.7.0 +0 -0
  41. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKGeomAlgo-26066fd9.so.7.7.0 +0 -0
  42. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKGeomBase-2116cabe.so.7.7.0 +0 -0
  43. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKMath-72572fa8.so.7.7.0 +0 -0
  44. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKMesh-2a060427.so.7.7.0 +0 -0
  45. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKOffset-6cab68ff.so.7.7.0 +0 -0
  46. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKPrim-eb1262b3.so.7.7.0 +0 -0
  47. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKShHealing-e67e5cc7.so.7.7.0 +0 -0
  48. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKTopAlgo-e4c96c33.so.7.7.0 +0 -0
  49. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libTKernel-fb7fe3b7.so.7.7.0 +0 -0
  50. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libgcc_s-32c1665e.so.1 +0 -0
  51. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/libstdc++-672d7b41.so.6.0.30 +0 -0
  52. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/topologic.cpython-310-x86_64-linux-gnu.so +0 -0
  53. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/topologic.cpython-311-x86_64-linux-gnu.so +0 -0
  54. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/topologic.cpython-38-x86_64-linux-gnu.so +0 -0
  55. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic/topologic.cpython-39-x86_64-linux-gnu.so +0 -0
  56. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKBO-6bdf205d.so.7.7.0 +0 -0
  57. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKBRep-2960a069.so.7.7.0 +0 -0
  58. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKBool-c44b74bd.so.7.7.0 +0 -0
  59. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKFillet-9a670ba0.so.7.7.0 +0 -0
  60. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKG2d-8f31849e.so.7.7.0 +0 -0
  61. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKG3d-4c6bce57.so.7.7.0 +0 -0
  62. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKGeomAlgo-26066fd9.so.7.7.0 +0 -0
  63. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKGeomBase-2116cabe.so.7.7.0 +0 -0
  64. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKMath-72572fa8.so.7.7.0 +0 -0
  65. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKMesh-2a060427.so.7.7.0 +0 -0
  66. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKOffset-6cab68ff.so.7.7.0 +0 -0
  67. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKPrim-eb1262b3.so.7.7.0 +0 -0
  68. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKShHealing-e67e5cc7.so.7.7.0 +0 -0
  69. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKTopAlgo-e4c96c33.so.7.7.0 +0 -0
  70. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libTKernel-fb7fe3b7.so.7.7.0 +0 -0
  71. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libgcc_s-32c1665e.so.1 +0 -0
  72. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/linux/topologic.libs/libstdc++-672d7b41.so.6.0.30 +0 -0
  73. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/macos/topologic/__init__.py +0 -0
  74. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKBO-f6b191de.dll +0 -0
  75. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKBRep-e56a600e.dll +0 -0
  76. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKBool-7b8d47ae.dll +0 -0
  77. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKFillet-0ddbf0a8.dll +0 -0
  78. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKG2d-2e2dee3d.dll +0 -0
  79. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKG3d-6674513d.dll +0 -0
  80. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKGeomAlgo-d240e370.dll +0 -0
  81. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKGeomBase-df87aba5.dll +0 -0
  82. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKMath-45bd625a.dll +0 -0
  83. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKMesh-d6e826b1.dll +0 -0
  84. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKOffset-79b9cc94.dll +0 -0
  85. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKPrim-aa430a86.dll +0 -0
  86. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKShHealing-bb48be89.dll +0 -0
  87. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKTopAlgo-7d0d1e22.dll +0 -0
  88. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/TKernel-08c8cfbb.dll +0 -0
  89. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/__init__.py +0 -0
  90. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/topologic.cp310-win_amd64.pyd +0 -0
  91. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/topologic.cp311-win_amd64.pyd +0 -0
  92. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/topologic.cp38-win_amd64.pyd +0 -0
  93. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy/bin/windows/topologic/topologic.cp39-win_amd64.pyd +0 -0
  94. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy.egg-info/SOURCES.txt +0 -0
  95. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy.egg-info/dependency_links.txt +0 -0
  96. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy.egg-info/requires.txt +0 -0
  97. {topologicpy-0.5.1 → topologicpy-0.5.2}/src/topologicpy.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: topologicpy
3
- Version: 0.5.1
3
+ Version: 0.5.2
4
4
  Summary: An Advanced Spatial Modelling and Analysis Software Library for Architecture, Engineering, and Construction.
5
5
  Author-email: Wassim Jabi <wassim.jabi@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/wassimj/TopologicPy
@@ -3,7 +3,7 @@ requires = ["setuptools>=61"]
3
3
  build-backend = "setuptools.build_meta"
4
4
  [project]
5
5
  name = "topologicpy"
6
- version = "0.5.1"
6
+ version = "0.5.2"
7
7
  authors = [
8
8
  { name="Wassim Jabi", email="wassim.jabi@gmail.com" },
9
9
  ]
@@ -1765,18 +1765,19 @@ class Graph:
1765
1765
  edges.append(tempe)
1766
1766
  if viaSharedApertures:
1767
1767
  for sharedAperture in sharedApertures:
1768
+ sharedAp = sharedAperture.Topology()
1768
1769
  if useInternalVertex == True:
1769
- vst = Topology.InternalVertex(sharedAperture.Topology(), tolerance)
1770
+ vst = Topology.InternalVertex(sharedAp, tolerance)
1770
1771
  else:
1771
- vst = sharedAperture.Topology().CenterOfMass()
1772
- d1 = sharedAperture.Topology().GetDictionary()
1772
+ vst = sharedAp.CenterOfMass()
1773
+ d1 = sharedAp.GetDictionary()
1774
+ vst = topologic.Vertex.ByCoordinates(vst.X()+(tolerance*100), vst.Y()+(tolerance*100), vst.Z()+(tolerance*100))
1773
1775
  if storeBRep:
1774
1776
  d2 = Dictionary.ByKeysValues(["brep", "brepType", "brepTypeString"], [Topology.BREPString(sharedAperture), Topology.Type(sharedAperture), Topology.TypeAsString(sharedAperture)])
1775
1777
  d3 = mergeDictionaries2([d1, d2])
1776
1778
  _ = vst.SetDictionary(d3)
1777
1779
  else:
1778
1780
  _ = vst.SetDictionary(d1)
1779
- vst = topologic.Vertex.ByCoordinates(vst.X()+(tolerance*100), vst.Y()+(tolerance*100), vst.Z()+(tolerance*100))
1780
1781
  vertices.append(vst)
1781
1782
  tempe = Edge.ByStartVertexEndVertex(vCell, vst, tolerance=tolerance)
1782
1783
  tempd = Dictionary.ByKeysValues(["relationship"],["Via Shared Apertures"])
@@ -2608,11 +2609,12 @@ class Graph:
2608
2609
  edges.append(tempe)
2609
2610
  if viaSharedApertures:
2610
2611
  for sharedAperture in sharedApertures:
2612
+ sharedTop = sharedAperture.Topology()
2611
2613
  if useInternalVertex == True:
2612
- vst = Topology.InternalVertex(sharedAperture.Topology(), tolerance)
2614
+ vst = Topology.InternalVertex(sharedTop, tolerance)
2613
2615
  else:
2614
- vst = sharedAperture.Topology().CenterOfMass()
2615
- d1 = sharedAperture.Topology().GetDictionary()
2616
+ vst = sharedTop.CenterOfMass()
2617
+ d1 = sharedTop.GetDictionary()
2616
2618
  vst = topologic.Vertex.ByCoordinates(vst.X()+(tolerance*100), vst.Y()+(tolerance*100), vst.Z()+(tolerance*100))
2617
2619
  if storeBRep:
2618
2620
  d2 = Dictionary.ByKeysValues(["brep", "brepType", "brepTypeString"], [Topology.BREPString(Aperture.Topology(sharedAperture)), Topology.Type(Aperture.Topology(sharedAperture)), Topology.TypeAsString(Aperture.Topology(sharedAperture))])
@@ -2684,7 +2686,6 @@ class Graph:
2684
2686
  vst = content.CenterOfMass()
2685
2687
  vst = topologic.Vertex.ByCoordinates(vst.X()+(tolerance*100), vst.Y()+(tolerance*100), vst.Z()+(tolerance*100))
2686
2688
  d1 = content.GetDictionary()
2687
- vst = topologic.Vertex.ByCoordinates(vst.X(), vst.Y(), vst.Z())
2688
2689
  if storeBRep:
2689
2690
  d2 = Dictionary.ByKeysValues(["brep", "brepType", "brepTypeString"], [Topology.BREPString(content), Topology.Type(content), Topology.TypeAsString(content)])
2690
2691
  d3 = mergeDictionaries2([d1, d2])
@@ -2928,6 +2929,7 @@ class Graph:
2928
2929
  if not isinstance(topology, topologic.Topology):
2929
2930
  print("Graph.ByTopology - Error: The input topology is not a valid topology. Returning None.")
2930
2931
  return None
2932
+ topology = Topology.Copy(topology)
2931
2933
  graph = None
2932
2934
  item = [topology, None, None, None, direct, directApertures, viaSharedTopologies, viaSharedApertures, toExteriorTopologies, toExteriorApertures, toContents, None, useInternalVertex, storeBRep, tolerance]
2933
2935
  vertices = []
@@ -303,6 +303,40 @@ class Helper:
303
303
  normalized_list = [round((x - min_val) / (max_val - min_val), mantissa) for x in l]
304
304
  return normalized_list
305
305
 
306
+ @staticmethod
307
+ def Position(item, listA):
308
+ """
309
+ Returns the position of the item in the list or the position it would have been inserts.
310
+ item is assumed to be numeric. listA is assumed to contain only numeric values and sorted from lowest to highest value.
311
+
312
+ Parameters
313
+ ----------
314
+ item : int or float
315
+ The input number to be positioned.
316
+ listA : list
317
+ The input sorted list.
318
+
319
+ Returns
320
+ -------
321
+ int
322
+ The position of the item within the list.
323
+
324
+ """
325
+ left = 0
326
+ right = len(listA) - 1
327
+
328
+ while left <= right:
329
+ mid = (left + right) // 2
330
+ if listA[mid] == item:
331
+ return mid
332
+ elif listA[mid] < item:
333
+ left = mid + 1
334
+ else:
335
+ right = mid - 1
336
+
337
+ # If the target is not found, return the position where it would be inserted
338
+ return left
339
+
306
340
  @staticmethod
307
341
  def Repeat(listA):
308
342
  """
@@ -18,7 +18,7 @@ import sys
18
18
  import os, re
19
19
  from sys import platform
20
20
 
21
- __version__ = '0.5.1'
21
+ __version__ = '0.5.2'
22
22
  __version_info__ = tuple([ int(num) for num in __version__.split('.')])
23
23
 
24
24
  if platform == 'win32':
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: topologicpy
3
- Version: 0.5.1
3
+ Version: 0.5.2
4
4
  Summary: An Advanced Spatial Modelling and Analysis Software Library for Architecture, Engineering, and Construction.
5
5
  Author-email: Wassim Jabi <wassim.jabi@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/wassimj/TopologicPy
File without changes
File without changes
File without changes
File without changes