topologicpy 0.7.4__py3-none-any.whl → 0.7.5__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.
topologicpy/Face.py CHANGED
@@ -1909,7 +1909,7 @@ class Face():
1909
1909
  return Face.ByWire(wire)
1910
1910
 
1911
1911
  @staticmethod
1912
- def Star(origin= None, radiusA: float = 1.0, radiusB: float = 0.4, rays: int = 5, direction: list = [0, 0, 1], placement: str = "center", tolerance: float = 0.0001):
1912
+ def Star(origin= None, radiusA: float = 0.5, radiusB: float = 0.2, rays: int = 8, direction: list = [0, 0, 1], placement: str = "center", tolerance: float = 0.0001):
1913
1913
  """
1914
1914
  Creates a star.
1915
1915
 
topologicpy/Topology.py CHANGED
@@ -871,6 +871,7 @@ class Topology():
871
871
  See Topology.Boolean().
872
872
 
873
873
  """
874
+ from topologicpy.Cluster import Cluster
874
875
 
875
876
  if topologyA == None:
876
877
  return None
@@ -884,27 +885,24 @@ class Topology():
884
885
  topologyA = topologyB
885
886
  topologyB = temp
886
887
 
887
- if Topology.IsInstance(topologyB, "CellComplex") or Topology.IsInstance(topologyB, "Cluster"):
888
- merge = Topology.Merge(topologyA, topologyB)
889
- symdif = Topology.SymDif(topologyA, topologyB)
890
- return Topology.Difference(merge, symdif)
888
+ results = []
889
+ if Topology.IsInstance(topologyA, "CellComplex"):
890
+ cellsA = Topology.Cells(topologyA)
891
891
  else:
892
- # Vertex:
893
- if Topology.IsInstance(topologyA, "Vertex"):
894
- # Vertex:
895
- if Topology.IsInstance(topologyB, "Vertex"):
896
- if Vertex.Distance(topologyA, topologyB) < tolerance:
897
- return topologyA
898
- else:
899
- return None
900
- # Edge/Wire/Face/Shell/Cell:
901
- else:
902
- if Vertex.IsInternal(topologyA, topologyB):
903
- return topologyA
904
- else:
905
- return None
892
+ cellsA = [topologyA]
893
+ for cellA in cellsA:
894
+ if Topology.IsInstance(topologyB, "CellComplex"):
895
+ cellsB = Topology.Cells(topologyB)
906
896
  else:
907
- return topologyA.Intersect(topologyB)
897
+ cellsB = [topologyB]
898
+ for cellB in cellsB:
899
+ cellC = cellA.Intersect(cellB)
900
+ results.append(cellC)
901
+ results = [x for x in results if results is not None]
902
+ if len(results) == 1:
903
+ return results[0]
904
+ else:
905
+ return Topology.SelfMerge(Topology.SelfMerge(Cluster.ByTopologies(results)))
908
906
 
909
907
  @staticmethod
910
908
  def SymmetricDifference(topologyA, topologyB, tranDict=False, tolerance=0.0001):
topologicpy/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = '0.7.4'
1
+ __version__ = '0.7.5'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: topologicpy
3
- Version: 0.7.4
3
+ Version: 0.7.5
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
  License: GNU AFFERO GENERAL PUBLIC LICENSE
@@ -8,7 +8,7 @@ topologicpy/DGL.py,sha256=RpkLnAzjg6arY7cEMs2pDFYzRdkerVg1Wbm9hcE3QaM,138991
8
8
  topologicpy/Dictionary.py,sha256=pMbfE2RYGCNpVr2x58qiHRc-aBWnp1jLlyzwS9nz6-w,25891
9
9
  topologicpy/Edge.py,sha256=jbJHyPHlLF94RkUKL479B4dPC202K0Xd7bQsPcFwoHc,51296
10
10
  topologicpy/EnergyModel.py,sha256=UBLim01lZLikVQmJAHEeja-KvF4tgzTxsSxwNDaezz4,52500
11
- topologicpy/Face.py,sha256=BOU6hN-4uCaXW_lbvuOlntrz_Q0jEiL5tIHAFuqWw_U,97195
11
+ topologicpy/Face.py,sha256=clf0qf8c0SnzOUOHw11Z4e_Y4ovhRmSOGmPd5_50Fa8,97195
12
12
  topologicpy/Graph.py,sha256=GsWySXL-cTd7bl-QWpl3Aw9Hr0KyACzIa4iRenTB63s,368030
13
13
  topologicpy/Grid.py,sha256=XM0iQtQbMQoYHf7S0ppSe-dxy93Y9VpI_vUkElWqnYA,17050
14
14
  topologicpy/Helper.py,sha256=07V9IFu5ilMpvAdZVhIbdBOjBJSRTtJ0BfR1IoRaRXU,17743
@@ -20,14 +20,14 @@ topologicpy/Polyskel.py,sha256=MYHKFOQBlUNqoUhAdOcKRIHpSk0dWWVrZgXK34NkvFM,15936
20
20
  topologicpy/Shell.py,sha256=6hidTQ6MW5q_es-WbTeI_yt7Sd7BMxWU_qfoherVZhE,74343
21
21
  topologicpy/Speckle.py,sha256=rUS6PCaxIjEF5_fUruxvMH47FMKg-ohcoU0qAUb-yNM,14267
22
22
  topologicpy/Sun.py,sha256=3tYb8kssU882lE1gEWg2mxDvCCY_LAVElkyUT6wa-ZU,36935
23
- topologicpy/Topology.py,sha256=qyk9y3pdsvU_hCLESBsWwN6zM_P5BBirEdhvuxnjkHM,305348
23
+ topologicpy/Topology.py,sha256=VShlTik3ggY4Ch4649p3SGZ8UyXIsQ7t3KQO7bjRN8A,305176
24
24
  topologicpy/Vector.py,sha256=FHbrCb9GVLOUV_kqcplh4D88CVxlID6qX_wEQOw4rD0,29565
25
25
  topologicpy/Vertex.py,sha256=YgbbCcqABvb97z2-yEytpp5T3yoZPlQplR_vMQkQ9OA,65180
26
26
  topologicpy/Wire.py,sha256=MUEboxo11kMgwnZySSkwiyzBG2wv0wPiinf2cW4UVv8,138424
27
27
  topologicpy/__init__.py,sha256=D7ky87CAQMiS2KE6YLvcTLkTgA2PY7rASe6Z23pjp9k,872
28
- topologicpy/version.py,sha256=lBlBxbnftiADKPpC3XRA3jUPjRsVclCd3P95aQ33p_g,22
29
- topologicpy-0.7.4.dist-info/LICENSE,sha256=TfPDBt3ar0uv_f9cqCDMZ5rIzW3CY8anRRd4PkL6ejs,34522
30
- topologicpy-0.7.4.dist-info/METADATA,sha256=ELxHFRNJM71bITDzS-ZmOxF5xDaS3PuoxphPYTZ7HOQ,46950
31
- topologicpy-0.7.4.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
32
- topologicpy-0.7.4.dist-info/top_level.txt,sha256=J30bDzW92Ob7hw3zA8V34Jlp-vvsfIkGzkr8sqvb4Uw,12
33
- topologicpy-0.7.4.dist-info/RECORD,,
28
+ topologicpy/version.py,sha256=YGgeu1tBDTiiHbKl1TkbKHeb7CjnrObEQKS9Miv1iBU,22
29
+ topologicpy-0.7.5.dist-info/LICENSE,sha256=TfPDBt3ar0uv_f9cqCDMZ5rIzW3CY8anRRd4PkL6ejs,34522
30
+ topologicpy-0.7.5.dist-info/METADATA,sha256=pTjF0iR8gLPPQ8E7s7A0-fDMrm5vepTlMF88sjztM2M,46950
31
+ topologicpy-0.7.5.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
32
+ topologicpy-0.7.5.dist-info/top_level.txt,sha256=J30bDzW92Ob7hw3zA8V34Jlp-vvsfIkGzkr8sqvb4Uw,12
33
+ topologicpy-0.7.5.dist-info/RECORD,,