topologicpy 0.7.84__py3-none-any.whl → 0.7.86__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/Cell.py +5 -5
- topologicpy/CellComplex.py +4 -4
- topologicpy/Cluster.py +8 -8
- topologicpy/Color.py +3 -0
- topologicpy/Dictionary.py +34 -1
- topologicpy/Edge.py +2 -2
- topologicpy/Face.py +2 -2
- topologicpy/Graph.py +312 -103
- topologicpy/Grid.py +4 -4
- topologicpy/Helper.py +42 -1
- topologicpy/Plotly.py +23 -24
- topologicpy/Shell.py +5 -5
- topologicpy/Topology.py +160 -50
- topologicpy/Vertex.py +2 -2
- topologicpy/Wire.py +15 -15
- topologicpy/version.py +1 -1
- {topologicpy-0.7.84.dist-info → topologicpy-0.7.86.dist-info}/METADATA +1 -1
- topologicpy-0.7.86.dist-info/RECORD +36 -0
- topologicpy-0.7.84.dist-info/RECORD +0 -36
- {topologicpy-0.7.84.dist-info → topologicpy-0.7.86.dist-info}/LICENSE +0 -0
- {topologicpy-0.7.84.dist-info → topologicpy-0.7.86.dist-info}/WHEEL +0 -0
- {topologicpy-0.7.84.dist-info → topologicpy-0.7.86.dist-info}/top_level.txt +0 -0
topologicpy/Wire.py
CHANGED
@@ -1445,7 +1445,7 @@ class Wire():
|
|
1445
1445
|
from topologicpy.Edge import Edge
|
1446
1446
|
from topologicpy.Topology import Topology
|
1447
1447
|
|
1448
|
-
def vIndex(v, vList, tolerance):
|
1448
|
+
def vIndex(v, vList, tolerance=0.0001):
|
1449
1449
|
for i in range(len(vList)):
|
1450
1450
|
if Vertex.Distance(v, vList[i]) < tolerance:
|
1451
1451
|
return i+1
|
@@ -1512,7 +1512,7 @@ class Wire():
|
|
1512
1512
|
|
1513
1513
|
graph = []
|
1514
1514
|
for anEdge in tEdges:
|
1515
|
-
graph.append([vIndex(anEdge.StartVertex(), tVertices, tolerance), vIndex(anEdge.EndVertex(), tVertices, tolerance)])
|
1515
|
+
graph.append([vIndex(anEdge.StartVertex(), tVertices, tolerance), vIndex(anEdge.EndVertex(), tVertices, tolerance)]) # Hook to Core
|
1516
1516
|
|
1517
1517
|
cycles = []
|
1518
1518
|
resultingCycles = main(graph, cycles, maxVertices)
|
@@ -2331,7 +2331,7 @@ class Wire():
|
|
2331
2331
|
j += k
|
2332
2332
|
return False
|
2333
2333
|
|
2334
|
-
def angleBetweenEdges(e1, e2, tolerance):
|
2334
|
+
def angleBetweenEdges(e1, e2, tolerance=0.0001):
|
2335
2335
|
a = e1.EndVertex().X() - e1.StartVertex().X()
|
2336
2336
|
b = e1.EndVertex().Y() - e1.StartVertex().Y()
|
2337
2337
|
c = e1.EndVertex().Z() - e1.StartVertex().Z()
|
@@ -2350,16 +2350,16 @@ class Wire():
|
|
2350
2350
|
angleInDegrees = math.degrees(math.acos(angle))
|
2351
2351
|
return angleInDegrees
|
2352
2352
|
|
2353
|
-
def getInteriorAngles(edges, tolerance):
|
2353
|
+
def getInteriorAngles(edges, tolerance=0.0001):
|
2354
2354
|
angles = []
|
2355
2355
|
for i in range(len(edges)-1):
|
2356
2356
|
e1 = edges[i]
|
2357
2357
|
e2 = edges[i+1]
|
2358
|
-
angles.append(angleBetweenEdges(e1, e2, tolerance))
|
2358
|
+
angles.append(angleBetweenEdges(e1, e2, tolerance=tolerance))
|
2359
2359
|
return angles
|
2360
2360
|
|
2361
|
-
def getRep(edges, tolerance):
|
2362
|
-
angles = getInteriorAngles(edges, tolerance)
|
2361
|
+
def getRep(edges, tolerance=0.0001):
|
2362
|
+
angles = getInteriorAngles(edges, tolerance=tolerance)
|
2363
2363
|
lengths = []
|
2364
2364
|
for anEdge in edges:
|
2365
2365
|
lengths.append(Edge.Length(anEdge))
|
@@ -2379,8 +2379,8 @@ class Wire():
|
|
2379
2379
|
_ = wireB.Edges(None, edgesB)
|
2380
2380
|
if len(edgesA) != len(edgesB):
|
2381
2381
|
return False
|
2382
|
-
repA = getRep(list(edgesA), tolerance)
|
2383
|
-
repB = getRep(list(edgesB), tolerance)
|
2382
|
+
repA = getRep(list(edgesA), tolerance=tolerance)
|
2383
|
+
repB = getRep(list(edgesB), tolerance=tolerance)
|
2384
2384
|
if isCyclicallyEquivalent(repA, repB, tolerance, angTolerance):
|
2385
2385
|
return True
|
2386
2386
|
if isCyclicallyEquivalent(repA, repB[::-1], tolerance, angTolerance):
|
@@ -3091,7 +3091,7 @@ class Wire():
|
|
3091
3091
|
from topologicpy.Topology import Topology
|
3092
3092
|
import inspect
|
3093
3093
|
|
3094
|
-
def cleanup(wire, tolerance):
|
3094
|
+
def cleanup(wire, tolerance=0.0001):
|
3095
3095
|
vertices = Topology.Vertices(wire)
|
3096
3096
|
vertices = Vertex.Fuse(vertices, tolerance=tolerance)
|
3097
3097
|
edges = Topology.Edges(wire)
|
@@ -3393,7 +3393,7 @@ class Wire():
|
|
3393
3393
|
|
3394
3394
|
return numerator / denominator
|
3395
3395
|
|
3396
|
-
def douglas_peucker(wire, tolerance):
|
3396
|
+
def douglas_peucker(wire, tolerance=0.0001):
|
3397
3397
|
if isinstance(wire, list):
|
3398
3398
|
points = wire
|
3399
3399
|
else:
|
@@ -3416,12 +3416,12 @@ class Wire():
|
|
3416
3416
|
if max_distance <= tolerance:
|
3417
3417
|
return [start_point, end_point]
|
3418
3418
|
|
3419
|
-
first_segment = douglas_peucker(points[:max_index + 1], tolerance)
|
3420
|
-
second_segment = douglas_peucker(points[max_index:], tolerance)
|
3419
|
+
first_segment = douglas_peucker(points[:max_index + 1], tolerance=tolerance)
|
3420
|
+
second_segment = douglas_peucker(points[max_index:], tolerance=tolerance)
|
3421
3421
|
|
3422
3422
|
return first_segment[:-1] + second_segment
|
3423
3423
|
|
3424
|
-
def visvalingam_whyatt(wire, tolerance):
|
3424
|
+
def visvalingam_whyatt(wire, tolerance=0.0001):
|
3425
3425
|
if isinstance(wire, list):
|
3426
3426
|
points = wire
|
3427
3427
|
else:
|
@@ -3453,7 +3453,7 @@ class Wire():
|
|
3453
3453
|
|
3454
3454
|
return simplified_points
|
3455
3455
|
|
3456
|
-
def reumann_witkam(wire, tolerance):
|
3456
|
+
def reumann_witkam(wire, tolerance=0.0001):
|
3457
3457
|
if isinstance(wire, list):
|
3458
3458
|
points = wire
|
3459
3459
|
else:
|
topologicpy/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = '0.7.
|
1
|
+
__version__ = '0.7.86'
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: topologicpy
|
3
|
-
Version: 0.7.
|
3
|
+
Version: 0.7.86
|
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
|
@@ -0,0 +1,36 @@
|
|
1
|
+
topologicpy/ANN.py,sha256=m_WxD1lgQqDhUpaM20Lia6TmJACDYaAE96wigsi-99U,47932
|
2
|
+
topologicpy/Aperture.py,sha256=p9pUzTQSBWoUaDiug1V1R1hnEIEwYSXFg2t7iRAmNRY,2723
|
3
|
+
topologicpy/BVH.py,sha256=mKVCAu9K8qzcWXtPDVH5usXZV1DNNNJl4n3rU5Lh1ZM,12931
|
4
|
+
topologicpy/Cell.py,sha256=nVJEFgj6nnHDNUYIlMf1NS2xiufDMj18szKGqf9HwDM,108090
|
5
|
+
topologicpy/CellComplex.py,sha256=ncjfvJ2QJzz4Fu8BMaQBLxAQ6WHx6HfUCddaLP8kXsc,51480
|
6
|
+
topologicpy/Cluster.py,sha256=__PvNVjRnFfy12aawd7HSrb3UBX3Rtd1iWSSQnPGpfk,55768
|
7
|
+
topologicpy/Color.py,sha256=q9xsGmxFMz7sQKmygwSVS12GaTRB-OT0-_i6t3-cthE,20307
|
8
|
+
topologicpy/Context.py,sha256=ppApYKngZZCQBFWaxIMi2z2dokY23c935IDCBosxDAE,3055
|
9
|
+
topologicpy/DGL.py,sha256=Dd6O08D-vSxpjHYgKm45JpKiaeGvWlg1BRMzYMAXGNc,138991
|
10
|
+
topologicpy/Dictionary.py,sha256=t0O7Du-iPq46FyKqZfcjHfsUK1E8GS_e67R2V5cpkbw,33186
|
11
|
+
topologicpy/Edge.py,sha256=KWOJCkLDwCWyZJ5MKwDhT5umWwCYBHtLOz6ulHrSOfY,67205
|
12
|
+
topologicpy/EnergyModel.py,sha256=AqTtmXE35SxvRXhG3vYAQd7GQDW-6HtjYPHua6ME4Eg,53762
|
13
|
+
topologicpy/Face.py,sha256=qiQmvCRFHO248VMqPxcE4Jrrw2JvNIJDdWHMopCPWGQ,142173
|
14
|
+
topologicpy/Graph.py,sha256=YKVo3ePAesJL4pt8GBekzPhujGeTc2XbErnzqEOZITQ,431147
|
15
|
+
topologicpy/Grid.py,sha256=2s9cSlWldivn1i9EUz4OOokJyANveqmRe_vR93CAndI,18245
|
16
|
+
topologicpy/Helper.py,sha256=F3h4_qcOD_PHAoVe0tEbEE7_jYyVcaHjtwVs4QHOZuI,23978
|
17
|
+
topologicpy/Honeybee.py,sha256=HfTaEV1R8K1xOVQQy9sBOhBTF_ap8A2RxZOYhirp_Mw,21835
|
18
|
+
topologicpy/Matrix.py,sha256=umgR7An919-wGInXJ1wpqnoQ2jCPdyMe2rcWTZ16upk,8079
|
19
|
+
topologicpy/Neo4j.py,sha256=t52hgE9cVsqkGc7m7fjRsLnyfRHakVHwdvF4ms7ow78,22342
|
20
|
+
topologicpy/Plotly.py,sha256=RqGTQM_EUskQdp27Fbu-KY07ErKxaC0PCksLokB8c9s,113753
|
21
|
+
topologicpy/Polyskel.py,sha256=EFsuh2EwQJGPLiFUjvtXmAwdX-A4r_DxP5hF7Qd3PaU,19829
|
22
|
+
topologicpy/PyG.py,sha256=LU9LCCzjxGPUM31qbaJXZsTvniTtgugxJY7y612t4A4,109757
|
23
|
+
topologicpy/Shell.py,sha256=UdDz3zfIYmGRjoZIseviJ2cXNtR5Kx5tIsZLhWMyO_U,87906
|
24
|
+
topologicpy/Speckle.py,sha256=AlsGlSDuKRtX5jhVsPNSSjjbZis079HbUchDH_5RJmE,18187
|
25
|
+
topologicpy/Sun.py,sha256=42tDWMYpwRG7Z2Qjtp94eRgBuqySq7k8TgNUZDK7QxQ,36837
|
26
|
+
topologicpy/Topology.py,sha256=OUm83_hemDabm1gLIRGmfR190RCb-GadMm5BDBb69vE,438388
|
27
|
+
topologicpy/Vector.py,sha256=A1g83zDHep58iVPY8WQ8iHNrSOfGWFEzvVeDuMnjDNY,33078
|
28
|
+
topologicpy/Vertex.py,sha256=sYWTbAHqKGRUAJRCIUqrCO_xFhvsXK09Sx7E4dafPLQ,73754
|
29
|
+
topologicpy/Wire.py,sha256=HjagWKoJb8Z3zhgOij_4k6ZnKIl5gk8LletHbsT1ZKU,190632
|
30
|
+
topologicpy/__init__.py,sha256=vlPCanUbxe5NifC4pHcnhSzkmmYcs_UrZrTlVMsxcFs,928
|
31
|
+
topologicpy/version.py,sha256=onIpJHxNjXWvum-_t59rYALX7MwOFPIcP-4a76gL8N4,23
|
32
|
+
topologicpy-0.7.86.dist-info/LICENSE,sha256=FK0vJ73LuE8PYJAn7LutsReWR47-Ooovw2dnRe5yV6Q,681
|
33
|
+
topologicpy-0.7.86.dist-info/METADATA,sha256=evBDpufZw7KwLIkkWzkrLDnt5zwYmE_xz0AwHloe4g0,10513
|
34
|
+
topologicpy-0.7.86.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
35
|
+
topologicpy-0.7.86.dist-info/top_level.txt,sha256=J30bDzW92Ob7hw3zA8V34Jlp-vvsfIkGzkr8sqvb4Uw,12
|
36
|
+
topologicpy-0.7.86.dist-info/RECORD,,
|
@@ -1,36 +0,0 @@
|
|
1
|
-
topologicpy/ANN.py,sha256=m_WxD1lgQqDhUpaM20Lia6TmJACDYaAE96wigsi-99U,47932
|
2
|
-
topologicpy/Aperture.py,sha256=p9pUzTQSBWoUaDiug1V1R1hnEIEwYSXFg2t7iRAmNRY,2723
|
3
|
-
topologicpy/BVH.py,sha256=mKVCAu9K8qzcWXtPDVH5usXZV1DNNNJl4n3rU5Lh1ZM,12931
|
4
|
-
topologicpy/Cell.py,sha256=j6e0Hk5GVlCPXhwc39Qo3pSpWZF4nv4uCZojdg3uXO8,108046
|
5
|
-
topologicpy/CellComplex.py,sha256=DbSiVZ-_J8vXud1cm69p9Te9sTJUB-_zE3rgbhqKw5E,51424
|
6
|
-
topologicpy/Cluster.py,sha256=51q5G1L5xAzRMfVU8YBXhq0g3g2X9aVNcahU-vYZRrI,55672
|
7
|
-
topologicpy/Color.py,sha256=wPhA7rLr9BTZsWYUUVnQpbmL5ZMkGlDSsa8f3S5B-d4,20250
|
8
|
-
topologicpy/Context.py,sha256=ppApYKngZZCQBFWaxIMi2z2dokY23c935IDCBosxDAE,3055
|
9
|
-
topologicpy/DGL.py,sha256=Dd6O08D-vSxpjHYgKm45JpKiaeGvWlg1BRMzYMAXGNc,138991
|
10
|
-
topologicpy/Dictionary.py,sha256=0AsGoz48pGTye_F4KcJopNjD9STeQ50LHc6PPvERFaA,31932
|
11
|
-
topologicpy/Edge.py,sha256=k71TGaJRERI2vgygDu-pYprUgu49N9UApcCxCorQyzc,67185
|
12
|
-
topologicpy/EnergyModel.py,sha256=AqTtmXE35SxvRXhG3vYAQd7GQDW-6HtjYPHua6ME4Eg,53762
|
13
|
-
topologicpy/Face.py,sha256=IAAueOqHOw3Kn_ZPxxBKgVgC5fFdcuiLMC1HeOPI92Y,142159
|
14
|
-
topologicpy/Graph.py,sha256=ZhMVB6ntuhIgTrKLUPryeAJFFBF0cnRsNgESbaohOiw,416914
|
15
|
-
topologicpy/Grid.py,sha256=9N6PE84qCm40TRi2WtlVZSBwXXr47zHpscEpZHg_JW4,18205
|
16
|
-
topologicpy/Helper.py,sha256=vUWbnZJxn0e9YsFUNyJ5Dee8Nh6TmDp9uCzCk4e0qAA,21897
|
17
|
-
topologicpy/Honeybee.py,sha256=HfTaEV1R8K1xOVQQy9sBOhBTF_ap8A2RxZOYhirp_Mw,21835
|
18
|
-
topologicpy/Matrix.py,sha256=umgR7An919-wGInXJ1wpqnoQ2jCPdyMe2rcWTZ16upk,8079
|
19
|
-
topologicpy/Neo4j.py,sha256=t52hgE9cVsqkGc7m7fjRsLnyfRHakVHwdvF4ms7ow78,22342
|
20
|
-
topologicpy/Plotly.py,sha256=z7xs9Ra2OwJNv5NMapH27R6didS8UMpjZIN35ZnAQcE,113501
|
21
|
-
topologicpy/Polyskel.py,sha256=EFsuh2EwQJGPLiFUjvtXmAwdX-A4r_DxP5hF7Qd3PaU,19829
|
22
|
-
topologicpy/PyG.py,sha256=LU9LCCzjxGPUM31qbaJXZsTvniTtgugxJY7y612t4A4,109757
|
23
|
-
topologicpy/Shell.py,sha256=xYpGxQ1x7hKVYD03_zhEY77lbDAsffttKYZWKiZAsNs,87859
|
24
|
-
topologicpy/Speckle.py,sha256=AlsGlSDuKRtX5jhVsPNSSjjbZis079HbUchDH_5RJmE,18187
|
25
|
-
topologicpy/Sun.py,sha256=42tDWMYpwRG7Z2Qjtp94eRgBuqySq7k8TgNUZDK7QxQ,36837
|
26
|
-
topologicpy/Topology.py,sha256=9X9Y2Y1tXe_oefNp6oQRG6v7ZgmIec5pZ7KiBxSXKNY,433499
|
27
|
-
topologicpy/Vector.py,sha256=A1g83zDHep58iVPY8WQ8iHNrSOfGWFEzvVeDuMnjDNY,33078
|
28
|
-
topologicpy/Vertex.py,sha256=7oEu6xXl1vi8M_HFnPT66W8OO8Eb3eab2oKvgzzLK-A,73737
|
29
|
-
topologicpy/Wire.py,sha256=e9vN5nRIUIqwA0bElVB6Vrto862OXJ97iDHhc-JEt3s,190501
|
30
|
-
topologicpy/__init__.py,sha256=vlPCanUbxe5NifC4pHcnhSzkmmYcs_UrZrTlVMsxcFs,928
|
31
|
-
topologicpy/version.py,sha256=U66vZMAESD9QWsvrRbFl3J6Cqc8Xv9QpUU903eulUJI,23
|
32
|
-
topologicpy-0.7.84.dist-info/LICENSE,sha256=FK0vJ73LuE8PYJAn7LutsReWR47-Ooovw2dnRe5yV6Q,681
|
33
|
-
topologicpy-0.7.84.dist-info/METADATA,sha256=WKYqAGNwpDTkn9KOQDEUQkV7w5v-v4jCEuzpnemh7Cs,10513
|
34
|
-
topologicpy-0.7.84.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
35
|
-
topologicpy-0.7.84.dist-info/top_level.txt,sha256=J30bDzW92Ob7hw3zA8V34Jlp-vvsfIkGzkr8sqvb4Uw,12
|
36
|
-
topologicpy-0.7.84.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|