29 lines
852 B
Python
29 lines
852 B
Python
from lib.skn_anm import *
|
|
|
|
|
|
def read_skn(filepath) -> AnmSkin:
|
|
with open(filepath, "rb") as fp:
|
|
r = AnmFile.parse(fp, AnmSkin)
|
|
return r
|
|
|
|
|
|
def main():
|
|
f = ["/home/tasty/Projects/gck-map-extract-objects/anm_skn/rp_l0.skn"]
|
|
my_vertex = Vec3(-0.927200, 0.099500, 3.108000)
|
|
mini_dist_v = Vec3(0, 0, 0)
|
|
for p in f:
|
|
skn = read_skn(p)
|
|
pprint(skn.default_obj_dictionnary)
|
|
pprint(skn.node_dictionnary)
|
|
for obj_name, obj in skn.default_obj_dictionnary.items():
|
|
for cluster in obj.clusters:
|
|
for vertex in cluster.vertices:
|
|
if vertex.distance(my_vertex) < mini_dist_v.distance(my_vertex):
|
|
mini_dist_v = vertex
|
|
|
|
print("%s: dist=%s" % (mini_dist_v, mini_dist_v.distance(my_vertex)))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|