topologicpy 0.8.17__py3-none-any.whl → 0.8.18__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/Topology.py +14 -9
- topologicpy/version.py +1 -1
- {topologicpy-0.8.17.dist-info → topologicpy-0.8.18.dist-info}/METADATA +1 -1
- {topologicpy-0.8.17.dist-info → topologicpy-0.8.18.dist-info}/RECORD +7 -7
- {topologicpy-0.8.17.dist-info → topologicpy-0.8.18.dist-info}/LICENSE +0 -0
- {topologicpy-0.8.17.dist-info → topologicpy-0.8.18.dist-info}/WHEEL +0 -0
- {topologicpy-0.8.17.dist-info → topologicpy-0.8.18.dist-info}/top_level.txt +0 -0
topologicpy/Topology.py
CHANGED
@@ -3438,7 +3438,7 @@ class Topology():
|
|
3438
3438
|
elif parts[0] == 'usemtl':
|
3439
3439
|
current_material = parts[1]
|
3440
3440
|
elif parts[0] == 'g' or parts[0] == 'o':
|
3441
|
-
current_group = parts[1] if len(parts) > 1 else None
|
3441
|
+
current_group = ' '.join(parts[1:]) if len(parts) > 1 else None
|
3442
3442
|
|
3443
3443
|
obj_data = {
|
3444
3444
|
'vertices': vertices,
|
@@ -7383,7 +7383,7 @@ class Topology():
|
|
7383
7383
|
return topology.RemoveContents(contents)
|
7384
7384
|
|
7385
7385
|
@staticmethod
|
7386
|
-
def RemoveCoplanarFaces(topology, epsilon=0.01, tolerance=0.0001):
|
7386
|
+
def RemoveCoplanarFaces(topology, epsilon=0.01, tolerance=0.0001, silent: bool = False):
|
7387
7387
|
"""
|
7388
7388
|
Removes coplanar faces in the input topology
|
7389
7389
|
|
@@ -7395,6 +7395,8 @@ class Topology():
|
|
7395
7395
|
The desired epsilon (another form of tolerance) for finding if two faces are coplanar. The default is 0.01.
|
7396
7396
|
tolerance : float , optional
|
7397
7397
|
The desired tolerance. The default is 0.0001.
|
7398
|
+
silent : bool , optional
|
7399
|
+
If set to True, no error and warning messages are printed. Otherwise, they are. The default is False.
|
7398
7400
|
|
7399
7401
|
Returns
|
7400
7402
|
-------
|
@@ -7410,7 +7412,8 @@ class Topology():
|
|
7410
7412
|
from topologicpy.Cluster import Cluster
|
7411
7413
|
|
7412
7414
|
if not Topology.IsInstance(topology, "Topology"):
|
7413
|
-
|
7415
|
+
if not silent:
|
7416
|
+
print("Topology.RemoveCoplanarFaces - Error: The input topology parameter is not a valid topologic topology. Returning None.")
|
7414
7417
|
return None
|
7415
7418
|
t = Topology.Type(topology)
|
7416
7419
|
if (t == Topology.TypeID("Vertex")) or (t == Topology.TypeID("Edge")) or (t == Topology.TypeID("Wire")) or (t == Topology.TypeID("Face")):
|
@@ -7459,7 +7462,8 @@ class Topology():
|
|
7459
7462
|
if Topology.IsInstance(f, "Face"):
|
7460
7463
|
final_faces.append(f)
|
7461
7464
|
else:
|
7462
|
-
|
7465
|
+
if not silent:
|
7466
|
+
print("Topology.RemoveCoplanarFaces - Warning: Could not remove some coplanar faces. Re-adding original faces.")
|
7463
7467
|
final_faces += Shell.Faces(t)
|
7464
7468
|
else: # It is a cluster
|
7465
7469
|
shells = Topology.Shells(t)
|
@@ -7468,7 +7472,8 @@ class Topology():
|
|
7468
7472
|
if Topology.IsInstance(f, "Face"):
|
7469
7473
|
final_faces.append(f)
|
7470
7474
|
else:
|
7471
|
-
|
7475
|
+
if not silent:
|
7476
|
+
print("Topology.RemoveCoplanarFaces - Warning: Could not remove some coplanar faces. Re-adding original faces.")
|
7472
7477
|
final_faces += Shell.Faces(shell)
|
7473
7478
|
if len(shells) == 0:
|
7474
7479
|
faces = Topology.Faces(t)
|
@@ -7477,16 +7482,16 @@ class Topology():
|
|
7477
7482
|
final_faces += faces
|
7478
7483
|
return_topology = None
|
7479
7484
|
if Topology.IsInstance(topology, "CellComplex"):
|
7480
|
-
return_topology = CellComplex.ByFaces(final_faces, tolerance=tolerance)
|
7485
|
+
return_topology = CellComplex.ByFaces(final_faces, tolerance=tolerance, silent=silent)
|
7481
7486
|
elif Topology.IsInstance(topology, "Cell"):
|
7482
|
-
return_topology = Cell.ByFaces(final_faces, tolerance=tolerance)
|
7487
|
+
return_topology = Cell.ByFaces(final_faces, tolerance=tolerance, silent=silent)
|
7483
7488
|
elif Topology.IsInstance(topology, "Shell"):
|
7484
7489
|
if len(final_faces) == 1:
|
7485
7490
|
return_topology = final_faces[0]
|
7486
7491
|
else:
|
7487
|
-
return_topology = Shell.ByFaces(final_faces, tolerance=tolerance)
|
7492
|
+
return_topology = Shell.ByFaces(final_faces, tolerance=tolerance, silent=silent)
|
7488
7493
|
if not Topology.IsInstance(return_topology, "Topology"):
|
7489
|
-
return_topology = Cluster.ByTopologies(final_faces)
|
7494
|
+
return_topology = Cluster.ByTopologies(final_faces, silent=silent)
|
7490
7495
|
return return_topology
|
7491
7496
|
|
7492
7497
|
@staticmethod
|
topologicpy/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = '0.8.
|
1
|
+
__version__ = '0.8.18'
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: topologicpy
|
3
|
-
Version: 0.8.
|
3
|
+
Version: 0.8.18
|
4
4
|
Summary: An AI-Powered Spatial Modelling and Analysis Software Library for Architecture, Engineering, and Construction.
|
5
5
|
Author-email: Wassim Jabi <wassim.jabi@gmail.com>
|
6
6
|
License: AGPL v3 License
|
@@ -23,14 +23,14 @@ topologicpy/PyG.py,sha256=LU9LCCzjxGPUM31qbaJXZsTvniTtgugxJY7y612t4A4,109757
|
|
23
23
|
topologicpy/Shell.py,sha256=--dJoSdz6BapxVEyG2DI0W5apO_xwLORj5qmR15yl2Y,87983
|
24
24
|
topologicpy/Speckle.py,sha256=AlsGlSDuKRtX5jhVsPNSSjjbZis079HbUchDH_5RJmE,18187
|
25
25
|
topologicpy/Sun.py,sha256=42tDWMYpwRG7Z2Qjtp94eRgBuqySq7k8TgNUZDK7QxQ,36837
|
26
|
-
topologicpy/Topology.py,sha256=
|
26
|
+
topologicpy/Topology.py,sha256=GFoSWeI5lwF1Uv2zQwZ6nZcs62YzdBAgI0HL1Lvq-NU,477015
|
27
27
|
topologicpy/Vector.py,sha256=GkGt-aJ591IJ2IPffMAudvITLDPi2qZibZc4UAav6m8,42407
|
28
28
|
topologicpy/Vertex.py,sha256=q99IrWwdNlvVfUXz6iP8icmP8NzP2nsiqtgnF9Jnpx8,80913
|
29
29
|
topologicpy/Wire.py,sha256=IVPzBKsckuxC-rHvwxmvtVF7PpApz2lhPHomtQMo_kg,228499
|
30
30
|
topologicpy/__init__.py,sha256=vlPCanUbxe5NifC4pHcnhSzkmmYcs_UrZrTlVMsxcFs,928
|
31
|
-
topologicpy/version.py,sha256=
|
32
|
-
topologicpy-0.8.
|
33
|
-
topologicpy-0.8.
|
34
|
-
topologicpy-0.8.
|
35
|
-
topologicpy-0.8.
|
36
|
-
topologicpy-0.8.
|
31
|
+
topologicpy/version.py,sha256=vkzceT3rP0TlvJzcK0aNKq2TjD8ttqpbJun23OGEYQs,23
|
32
|
+
topologicpy-0.8.18.dist-info/LICENSE,sha256=FK0vJ73LuE8PYJAn7LutsReWR47-Ooovw2dnRe5yV6Q,681
|
33
|
+
topologicpy-0.8.18.dist-info/METADATA,sha256=Vl4wrRYKrz-K7io5ohz_sWZScxQf1MXQXR-I2x79ie0,10513
|
34
|
+
topologicpy-0.8.18.dist-info/WHEEL,sha256=beeZ86-EfXScwlR_HKu4SllMC9wUEj_8Z_4FJ3egI2w,91
|
35
|
+
topologicpy-0.8.18.dist-info/top_level.txt,sha256=J30bDzW92Ob7hw3zA8V34Jlp-vvsfIkGzkr8sqvb4Uw,12
|
36
|
+
topologicpy-0.8.18.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|