topologicpy 0.4.97__py3-none-any.whl → 0.4.98__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 +84 -0
- topologicpy/Cluster.py +5 -2
- topologicpy/Graph.py +3 -12
- topologicpy/Shell.py +0 -1
- topologicpy/Topology.py +3 -6
- topologicpy/Vertex.py +8 -2
- topologicpy/Wire.py +0 -13
- topologicpy/__init__.py +1 -1
- {topologicpy-0.4.97.dist-info → topologicpy-0.4.98.dist-info}/METADATA +1 -1
- {topologicpy-0.4.97.dist-info → topologicpy-0.4.98.dist-info}/RECORD +13 -13
- {topologicpy-0.4.97.dist-info → topologicpy-0.4.98.dist-info}/LICENSE +0 -0
- {topologicpy-0.4.97.dist-info → topologicpy-0.4.98.dist-info}/WHEEL +0 -0
- {topologicpy-0.4.97.dist-info → topologicpy-0.4.98.dist-info}/top_level.txt +0 -0
topologicpy/Cell.py
CHANGED
@@ -1091,6 +1091,90 @@ class Cell(Topology):
|
|
1091
1091
|
_ = cell.Edges(None, edges)
|
1092
1092
|
return edges
|
1093
1093
|
|
1094
|
+
@staticmethod
|
1095
|
+
def Egg(origin: topologic.Vertex = None, height: float = 1.0, uSides: int = 16, vSides: int = 8, direction: list = [0,0,1],
|
1096
|
+
placement: str = "center", tolerance: float = 0.0001) -> topologic.Cell:
|
1097
|
+
"""
|
1098
|
+
Creates a sphere.
|
1099
|
+
|
1100
|
+
Parameters
|
1101
|
+
----------
|
1102
|
+
origin : topologic.Vertex , optional
|
1103
|
+
The origin location of the sphere. The default is None which results in the sphere being placed at (0,0,0).
|
1104
|
+
radius : float , optional
|
1105
|
+
The radius of the sphere. The default is 0.5.
|
1106
|
+
uSides : int , optional
|
1107
|
+
The number of sides along the longitude of the sphere. The default is 16.
|
1108
|
+
vSides : int , optional
|
1109
|
+
The number of sides along the latitude of the sphere. The default is 8.
|
1110
|
+
direction : list , optional
|
1111
|
+
The vector representing the up direction of the sphere. The default is [0,0,1].
|
1112
|
+
placement : str , optional
|
1113
|
+
The description of the placement of the origin of the sphere. This can be "bottom", "center", or "lowerleft". It is case insensitive. The default is "center".
|
1114
|
+
tolerance : float , optional
|
1115
|
+
The desired tolerance. The default is 0.0001.
|
1116
|
+
|
1117
|
+
Returns
|
1118
|
+
-------
|
1119
|
+
topologic.Cell
|
1120
|
+
The created sphere.
|
1121
|
+
|
1122
|
+
"""
|
1123
|
+
|
1124
|
+
from topologicpy.Vertex import Vertex
|
1125
|
+
from topologicpy.Topology import Topology
|
1126
|
+
from topologicpy.Dictionary import Dictionary
|
1127
|
+
|
1128
|
+
if not origin:
|
1129
|
+
origin = Vertex.ByCoordinates(0,0,0)
|
1130
|
+
if not isinstance(origin, topologic.Vertex):
|
1131
|
+
print("Cell.Sphere - Error: The input origin parameter is not a valid topologic vertex. Returning None.")
|
1132
|
+
return None
|
1133
|
+
|
1134
|
+
coords = [[0.0, 0.0, -0.5],
|
1135
|
+
[0.074748, 0.0, -0.494015],
|
1136
|
+
[0.140819, 0.0, -0.473222],
|
1137
|
+
[0.204118, 0.0, -0.438358],
|
1138
|
+
[0.259512, 0.0, -0.391913],
|
1139
|
+
[0.304837, 0.0, -0.335519],
|
1140
|
+
[0.338649, 0.0, -0.271416],
|
1141
|
+
[0.361307, 0.0, -0.202039],
|
1142
|
+
[0.375678, 0.0, -0.129109],
|
1143
|
+
[0.381294, 0.0, -0.053696],
|
1144
|
+
[0.377694, 0.0, 0.019874],
|
1145
|
+
[0.365135, 0.0, 0.091978],
|
1146
|
+
[0.341482, 0.0, 0.173973],
|
1147
|
+
[0.300154, 0.0, 0.276001],
|
1148
|
+
[0.252928, 0.0, 0.355989],
|
1149
|
+
[0.206605, 0.0, 0.405813],
|
1150
|
+
[0.157529, 0.0, 0.442299],
|
1151
|
+
[0.10604, 0.0, 0.472092],
|
1152
|
+
[0.05547, 0.0, 0.491784],
|
1153
|
+
[0.0, 0.0, 0.5]]
|
1154
|
+
verts = [Vertex.ByCoordinates(coord) for coord in coords]
|
1155
|
+
c = Wire.ByVertices(verts, close=False)
|
1156
|
+
new_verts = []
|
1157
|
+
for i in range(vSides+1):
|
1158
|
+
new_verts.append(Wire.VertexByParameter(c, i/vSides))
|
1159
|
+
c = Wire.ByVertices(new_verts, close=False)
|
1160
|
+
egg = Topology.Spin(c, origin=Vertex.Origin(), triangulate=False, direction=[0,0,1], degree=360, sides=uSides, tolerance=tolerance)
|
1161
|
+
if egg.Type() == topologic.CellComplex.Type():
|
1162
|
+
egg = egg.ExternalBoundary()
|
1163
|
+
if egg.Type() == topologic.Shell.Type():
|
1164
|
+
egg = topologic.Cell.ByShell(egg)
|
1165
|
+
egg = Topology.Scale(egg, origin=Vertex.Origin(), x=height, y=height, z=height)
|
1166
|
+
if placement.lower() == "bottom":
|
1167
|
+
egg = Topology.Translate(egg, 0, 0, height/2)
|
1168
|
+
elif placement.lower() == "lowerleft":
|
1169
|
+
bb = Cell.BoundingBox(egg)
|
1170
|
+
d = Topology.Dictionary(bb)
|
1171
|
+
width = Dictionary.ValueAtKey(d, 'width')
|
1172
|
+
length = Dictionary.ValueAtKey(d, 'length')
|
1173
|
+
egg = Topology.Translate(egg, width*0.5, length*0.5, height*0.5)
|
1174
|
+
egg = Topology.Orient(egg, origin=Vertex.Origin(), dirA=[0,0,1], dirB=direction)
|
1175
|
+
egg = Topology.Place(egg, originA=Vertex.Origin(), originB=origin)
|
1176
|
+
return egg
|
1177
|
+
|
1094
1178
|
@staticmethod
|
1095
1179
|
def ExternalBoundary(cell: topologic.Cell) -> topologic.Shell:
|
1096
1180
|
"""
|
topologicpy/Cluster.py
CHANGED
@@ -188,8 +188,11 @@ class Cluster(Topology):
|
|
188
188
|
if len(keys) > 0:
|
189
189
|
dictionaries.append(d)
|
190
190
|
if len(dictionaries) > 0:
|
191
|
-
|
192
|
-
|
191
|
+
if len(dictionaries) > 1:
|
192
|
+
d = Dictionary.ByMergedDictionaries(dictionaries)
|
193
|
+
else:
|
194
|
+
d = dictionaries[0]
|
195
|
+
cluster = Topology.SetDictionary(cluster, d)
|
193
196
|
return cluster
|
194
197
|
|
195
198
|
@staticmethod
|
topologicpy/Graph.py
CHANGED
@@ -675,7 +675,7 @@ class Graph:
|
|
675
675
|
import random
|
676
676
|
|
677
677
|
if not isinstance(adjacencyMatrix, list):
|
678
|
-
print("Graph.
|
678
|
+
print("Graph.ByAdjacencyMatrix - Error: The input adjacencyMatrix parameter is not a valid list. Returning None.")
|
679
679
|
return None
|
680
680
|
# Add vertices with random coordinates
|
681
681
|
vertices = []
|
@@ -692,7 +692,7 @@ class Graph:
|
|
692
692
|
|
693
693
|
# Create the graph using vertices and edges
|
694
694
|
if len(vertices) == 0:
|
695
|
-
print("Graph.
|
695
|
+
print("Graph.ByAdjacencyMatrix - Error: The graph does not contain any vertices. Returning None.")
|
696
696
|
return None
|
697
697
|
|
698
698
|
return Graph.ByVerticesEdges(vertices, edges)
|
@@ -960,13 +960,9 @@ class Graph:
|
|
960
960
|
graphs = []
|
961
961
|
for i, vertices, in enumerate(vertices_ds):
|
962
962
|
edges = edges_ds[i]
|
963
|
-
print("2. Length of Vertices:", len(vertices))
|
964
|
-
print("2. Length of Edges:", len(edges))
|
965
963
|
g = Graph.ByVerticesEdges(vertices, edges)
|
966
964
|
temp_v = Graph.Vertices(g)
|
967
965
|
temp_e = Graph.Edges(g)
|
968
|
-
print("3. Length of Vertices:", len(temp_v))
|
969
|
-
print("3. Length of Edges:", len(temp_e))
|
970
966
|
if isinstance(g, topologic.Graph):
|
971
967
|
if len(graphFeaturesKeys) == 0:
|
972
968
|
values = [graph_ids[i], graph_labels[i], graph_features[i]]
|
@@ -3154,10 +3150,8 @@ class Graph:
|
|
3154
3150
|
# If the maximum number of colors are not provided, compute it using the graph's chromatic number.
|
3155
3151
|
if maxColors == None:
|
3156
3152
|
maxColors = Graph.ChromaticNumber(temp_graph)
|
3157
|
-
print("MaxColors:", maxColors)
|
3158
3153
|
colors = [0] * len(vertices)
|
3159
3154
|
colors = graph_coloring(adj_mat, maxColors, colors)
|
3160
|
-
print("Colors:", colors)
|
3161
3155
|
for i, v in enumerate(vertices):
|
3162
3156
|
d = Topology.Dictionary(v)
|
3163
3157
|
d = Dictionary.SetValueAtKey(d, newKey, colors[i])
|
@@ -3314,7 +3308,7 @@ class Graph:
|
|
3314
3308
|
else:
|
3315
3309
|
returnList.append((n-1)/top_dist)
|
3316
3310
|
except:
|
3317
|
-
print("Could not use tqdm")
|
3311
|
+
print("Graph.ClosenessCentrality - Warning: Could not use tqdm.")
|
3318
3312
|
for va in vertices:
|
3319
3313
|
top_dist = 0
|
3320
3314
|
for vb in graphVertices:
|
@@ -3889,7 +3883,6 @@ class Graph:
|
|
3889
3883
|
if not nodeMaskKey == None:
|
3890
3884
|
if not nd == None:
|
3891
3885
|
keys = Dictionary.Keys(nd)
|
3892
|
-
print("keys", keys)
|
3893
3886
|
else:
|
3894
3887
|
keys = []
|
3895
3888
|
flag = True
|
@@ -4791,8 +4784,6 @@ class Graph:
|
|
4791
4784
|
|
4792
4785
|
|
4793
4786
|
# Calculate the global clustering coefficient
|
4794
|
-
print("Total Triangles:", total_triangles )
|
4795
|
-
print("Total Possible Triangles:", total_possible_triangles )
|
4796
4787
|
global_clustering_coeff = 3.0 * total_triangles / total_possible_triangles if total_possible_triangles > 0 else 0.0
|
4797
4788
|
|
4798
4789
|
return global_clustering_coeff
|
topologicpy/Shell.py
CHANGED
topologicpy/Topology.py
CHANGED
@@ -3607,7 +3607,6 @@ class Topology():
|
|
3607
3607
|
return_topology = Cell.ByFaces(faces, tolerance=tolerance)
|
3608
3608
|
if return_topology == None:
|
3609
3609
|
return_topology = CellComplex.ByFaces(faces, tolerance=tolerance)
|
3610
|
-
#print("Return Topology:", return_topology)
|
3611
3610
|
if return_topology == None:
|
3612
3611
|
print("Topology.Fix - Error: Desired topologyType cannot be achieved. Returning original topology.")
|
3613
3612
|
return topology
|
@@ -4397,7 +4396,6 @@ class Topology():
|
|
4397
4396
|
return [a,b,c,d]
|
4398
4397
|
|
4399
4398
|
if not isinstance(topology, topologic.Topology):
|
4400
|
-
print("Topology.IsPlanar", topology)
|
4401
4399
|
print("Topology.IsPlanar - Error: the input topology parameter is not a valid topology. Returning None.")
|
4402
4400
|
return None
|
4403
4401
|
vertices = Topology.Vertices(topology)
|
@@ -5146,7 +5144,7 @@ class Topology():
|
|
5146
5144
|
|
5147
5145
|
"""
|
5148
5146
|
if not len(verticesA) == len(verticesB):
|
5149
|
-
print("
|
5147
|
+
print("Topology.ReplaceVertices - Error: The input parameters verticesA and verticesB must be the same length")
|
5150
5148
|
return None
|
5151
5149
|
from topologicpy.Vertex import Vertex
|
5152
5150
|
geom = Topology.Geometry(topology, mantissa=mantissa)
|
@@ -5194,6 +5192,7 @@ class Topology():
|
|
5194
5192
|
|
5195
5193
|
"""
|
5196
5194
|
from topologicpy.Vertex import Vertex
|
5195
|
+
from topologicpy.Dictionary import Dictionary
|
5197
5196
|
|
5198
5197
|
def rotate_vertex_3d(vertex, axis, angle_degrees, origin):
|
5199
5198
|
vertex = np.array(vertex) # Vertex to be rotated
|
@@ -5216,12 +5215,11 @@ class Topology():
|
|
5216
5215
|
translated_vertex = vertex - origin
|
5217
5216
|
rotated_vertex = np.dot(rotation_matrix, translated_vertex) + origin
|
5218
5217
|
|
5219
|
-
rotated_vertex = [v for v in rotated_vertex]
|
5218
|
+
rotated_vertex = [v for v in rotated_vertex]
|
5220
5219
|
return rotated_vertex
|
5221
5220
|
|
5222
5221
|
if not isinstance(topology, topologic.Topology):
|
5223
5222
|
print("Topology.Rotate - Error: The input topology parameter is not a valid topologic topology. Returning None.")
|
5224
|
-
print("The topology is", topology)
|
5225
5223
|
return None
|
5226
5224
|
if not origin:
|
5227
5225
|
origin = Vertex.ByCoordinates(0,0,0)
|
@@ -6476,7 +6474,6 @@ class Topology():
|
|
6476
6474
|
for i, sink in enumerate(sink_items):
|
6477
6475
|
mapItem = sinkMap[sink.ID]
|
6478
6476
|
newDict = Dictionary.ByKeysValues(mapItem.sinkKeys, mapItem.sinkValues)
|
6479
|
-
# print("newDict", Dictionary.Keys(newDict), Dictionary.Values(newDict))
|
6480
6477
|
_ = sinks[i].SetDictionary(newDict)
|
6481
6478
|
return {"sources": sources, "sinks": sinks}
|
6482
6479
|
|
topologicpy/Vertex.py
CHANGED
@@ -698,10 +698,16 @@ class Vertex(Topology):
|
|
698
698
|
fused_vertices.append(fused_vertex)
|
699
699
|
|
700
700
|
return fused_vertices
|
701
|
-
|
702
701
|
def count_decimal_points(vertex):
|
703
702
|
# Count the number of decimal points in the coordinates
|
704
|
-
|
703
|
+
decimals_list = []
|
704
|
+
for coord in vertex:
|
705
|
+
coord_str = str(coord)
|
706
|
+
if '.' in coord_str:
|
707
|
+
decimals_list.append(len(coord_str.split('.')[1]))
|
708
|
+
elif 'e' in coord_str:
|
709
|
+
decimals_list.append(int(coord_str.split('e')[1].replace('-','')))
|
710
|
+
return max(decimals_list)
|
705
711
|
|
706
712
|
|
707
713
|
if not isinstance(vertices, list):
|
topologicpy/Wire.py
CHANGED
@@ -2933,9 +2933,6 @@ class Wire(Topology):
|
|
2933
2933
|
return Wire.StartVertex(wire)
|
2934
2934
|
if abs(distance - wire_length) < tolerance:
|
2935
2935
|
return Wire.EndVertex(wire)
|
2936
|
-
# if abs(distance) > wire_length:
|
2937
|
-
# print("Wire.VertexByDistance - Error: The input distance parameter is larger than the wire's length. Returning None.")
|
2938
|
-
# return None
|
2939
2936
|
if not Wire.IsManifold(wire):
|
2940
2937
|
print("Wire.VertexAtParameter - Error: The input wire parameter is non-manifold. Returning None.")
|
2941
2938
|
return None
|
@@ -2947,16 +2944,6 @@ class Wire(Topology):
|
|
2947
2944
|
if not Vertex.IsInternal(origin, wire, tolerance=tolerance):
|
2948
2945
|
print("Wire.VertexByDistance - Error: The input origin parameter is not internal to the input wire parameter. Returning None.")
|
2949
2946
|
return None
|
2950
|
-
# if distance < 0:
|
2951
|
-
# if Wire.VertexDistance(wire, Wire.StartVertex(wire), origin) < abs(distance):
|
2952
|
-
# print("Wire.VertexByDistance - Error: The resulting vertex would fall outside the wire. Returning None.")
|
2953
|
-
# return None
|
2954
|
-
# else:
|
2955
|
-
# if Wire.VertexDistance(wire, Wire.EndVertex(wire), origin) < distance:
|
2956
|
-
# print("Wire.VertexDistance:", Wire.VertexDistance(wire, Wire.EndVertex(wire), origin))
|
2957
|
-
# print("Wire.VertexByDistance - Error: The resulting vertex would fall outside the wire. Returning None.")
|
2958
|
-
# return None
|
2959
|
-
|
2960
2947
|
if Vertex.Distance(Wire.StartVertex(wire), origin) < tolerance:
|
2961
2948
|
u = distance/wire_length
|
2962
2949
|
elif Vertex.Distance(Wire.EndVertex(wire), origin) < tolerance:
|
topologicpy/__init__.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: topologicpy
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.98
|
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
|
@@ -1,7 +1,7 @@
|
|
1
1
|
topologicpy/Aperture.py,sha256=vENYlFaM6Pu-xCJB1YsW1I1_u5yDj-A70aU3bo3lpFA,2819
|
2
|
-
topologicpy/Cell.py,sha256=
|
2
|
+
topologicpy/Cell.py,sha256=bKdsyIyCO2mudOUSHxXnLLiTmS5UqfiFlUjj2_9FqXQ,98811
|
3
3
|
topologicpy/CellComplex.py,sha256=OEPa3VMjlXhnu6YCMA0coTp8uSY1fh_Rbv6v7oEU3OQ,47396
|
4
|
-
topologicpy/Cluster.py,sha256=
|
4
|
+
topologicpy/Cluster.py,sha256=NGejDs3ivrGLdkCWT2REyujatSPJQ2W3l1OEDnNFoBs,54959
|
5
5
|
topologicpy/Color.py,sha256=I_Sm0F-5Hr3y6tFCBaLOplslLnu-wpA8T0VQkH8x54g,17057
|
6
6
|
topologicpy/Context.py,sha256=bgwslZSu8Ijuz3fusdhP6XcDnCdwGhtbI0-uhVjB36U,2977
|
7
7
|
topologicpy/DGL.py,sha256=qg0k5Ls-eLD6tbK06v_KPgg-GO3M3jY0IusHkco8kCY,138312
|
@@ -9,7 +9,7 @@ topologicpy/Dictionary.py,sha256=vGhiXPu7e7GsgQyTsX6rZBncnnrDlcYfM9xRb9h-l3U,247
|
|
9
9
|
topologicpy/Edge.py,sha256=C4VKk8leXTQySsGKCE4RSt3HiUhA12Ny_rGhEr71LWY,50009
|
10
10
|
topologicpy/EnergyModel.py,sha256=kl8N-6NsKwKeSUt6vWm0B-MBacw9vMymE6lbvymJdVM,51758
|
11
11
|
topologicpy/Face.py,sha256=Gc9xFAE5Am3apgftbACcaNyRgLmHfxyKscMjQmg_N6s,81732
|
12
|
-
topologicpy/Graph.py,sha256=
|
12
|
+
topologicpy/Graph.py,sha256=qh2xTH0D2F8yX23cNTy-V9nIfXjr6OSCisNDnvif9dY,320331
|
13
13
|
topologicpy/Grid.py,sha256=q6uAs8MGbdteYNbjqRjqlhFMquYAvSngwzxsFl9-338,17371
|
14
14
|
topologicpy/Helper.py,sha256=vqBZE-CcHBeTCnzC9OzbRaCTx4XT4SZpPF__Vi19nDQ,16049
|
15
15
|
topologicpy/Honeybee.py,sha256=ygiGMS7u-YQJWpK2CmkBuJu1DBABVUmpMdg9HewOhN4,20349
|
@@ -17,13 +17,13 @@ topologicpy/Matrix.py,sha256=1aH7QKP6eNUbUXmZbB7e_4dw1ZSVQ8bsOsKJXtQq3_4,8357
|
|
17
17
|
topologicpy/Neo4j.py,sha256=Wd3GRuTt66AkzJscLNIJCBQhd8y1OntX_9u4_33XQKw,19341
|
18
18
|
topologicpy/Plotly.py,sha256=W4nuHVy7xUnRGJRcE2iPl0mLU0dp58CTHC1_YldfZ6I,96904
|
19
19
|
topologicpy/Polyskel.py,sha256=-M47SAFWrFOheZ9KWUEgYOmCn-V_rfKPKvU8KY4B-1s,16450
|
20
|
-
topologicpy/Shell.py,sha256=
|
20
|
+
topologicpy/Shell.py,sha256=U4OnZRYlJKlaTjZg_6GcqzGkqFssdCCgssJEzDrdZjc,76279
|
21
21
|
topologicpy/Speckle.py,sha256=zKqiHYuw7498W_9UWvDn2xsdBskhahNjJejxegMpbJA,14773
|
22
|
-
topologicpy/Topology.py,sha256=
|
22
|
+
topologicpy/Topology.py,sha256=xzZZLjy9uQZKTuvZosd-gcvNgwDN7s7oFcikmDHB0Kk,299971
|
23
23
|
topologicpy/Vector.py,sha256=OtPPz0N_bKpXsGNOHYZTEXKHPAy9MgTG1NgoKmh8f0s,30347
|
24
|
-
topologicpy/Vertex.py,sha256=
|
25
|
-
topologicpy/Wire.py,sha256=
|
26
|
-
topologicpy/__init__.py,sha256=
|
24
|
+
topologicpy/Vertex.py,sha256=RD3UBEK1k2LNzgXpVKk3832nJzkuiV8m-jTODJsb5ko,66322
|
25
|
+
topologicpy/Wire.py,sha256=RUeD_bDfUpc5iLZtUMuK-e6lXpvSRHBHuEzxJUBrbaY,131490
|
26
|
+
topologicpy/__init__.py,sha256=t6eq0VW04I-eRyYEZPUb1qWxRE0fHydK9BZTgMRzJjs,1445
|
27
27
|
topologicpy/bin/linux/topologic/__init__.py,sha256=XlFReDf3FWlYdM9uXtanYPIafgPb6GVTQczS_xJAXD0,60
|
28
28
|
topologicpy/bin/linux/topologic/libTKBO-6bdf205d.so.7.7.0,sha256=ANok9DQKcnWcLd9T_LAt-i-X4nsYYy16q9kQlcTre1E,2996488
|
29
29
|
topologicpy/bin/linux/topologic/libTKBRep-2960a069.so.7.7.0,sha256=OJ3XesL79du8LeBHrsleGPXub6OpJdOilxha0mwjqQo,1378768
|
@@ -84,8 +84,8 @@ topologicpy/bin/windows/topologic/topologic.cp310-win_amd64.pyd,sha256=F0sPLuMpD
|
|
84
84
|
topologicpy/bin/windows/topologic/topologic.cp311-win_amd64.pyd,sha256=aBAJQj3OmJ58MOAF1ZIFybL_5fFK7FNR9hrIps6b6pc,1551872
|
85
85
|
topologicpy/bin/windows/topologic/topologic.cp38-win_amd64.pyd,sha256=aLgNf54nbJmGc7Tdmkuy-V0m6B9zLxabIbpRwAy7cBA,1551360
|
86
86
|
topologicpy/bin/windows/topologic/topologic.cp39-win_amd64.pyd,sha256=_8cp205hiRxkFHtzQQOweA4DhCPk8caH4kTVLWGQeVw,1411584
|
87
|
-
topologicpy-0.4.
|
88
|
-
topologicpy-0.4.
|
89
|
-
topologicpy-0.4.
|
90
|
-
topologicpy-0.4.
|
91
|
-
topologicpy-0.4.
|
87
|
+
topologicpy-0.4.98.dist-info/LICENSE,sha256=RUmXeeqj63bBySLJjEfhwb9OE7M8h9K6HuOBF3ASVyI,35697
|
88
|
+
topologicpy-0.4.98.dist-info/METADATA,sha256=O6CoXm82ErwB63rqIwnWRLPiTGqmwlDJLCpN376GrfQ,7278
|
89
|
+
topologicpy-0.4.98.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
90
|
+
topologicpy-0.4.98.dist-info/top_level.txt,sha256=J30bDzW92Ob7hw3zA8V34Jlp-vvsfIkGzkr8sqvb4Uw,12
|
91
|
+
topologicpy-0.4.98.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|