Python voxelfuse 只能将 str(不是 "int")连接到 str
Python voxelfuse can only concatenate str (not "int") to str
我正在尝试为我的 Prison Architect 保存文件生成 .vox 表示。我正在使用一个名为 voxelfuse 的库来生成体素,出于某种原因,union() 方法给了我一个 can only concatenate str (not "int") to str
这是我的代码:
cubes = []
for tile in tiles:
cubes.append(cuboid((6,18,6),(tile['x'],1,tile['y']),2))
finalmodel = cubes[0]
for cube in cubes:
if cube != cubes[0]:
finalmodel = finalmodel.union(cube)
mesh1 = Mesh.fromVoxelModel(finalmodel)
mesh1.export(filename + '.vox')
最让我困惑的是,在方法中用作参数的变量 finalmodel
和 cube
不是整数或字符串,而是 VoxelModel
以防万一 tile['x']
和 tile['y']
是来自解析保存文件的整数。
我不知道是我在创建体素模型时犯了错误还是其他地方有问题。
考虑到 tiles
是从文件中读取的,我认为问题可能出在 tile['x']
和 tile['y']
是字符串而不是整数。在将它们作为参数传递之前尝试转换它们:
for tile in tiles:
cubes.append(cuboid((6,18,6),(int(tile['x']),1,int(tile['y'])),2))
我正在尝试为我的 Prison Architect 保存文件生成 .vox 表示。我正在使用一个名为 voxelfuse 的库来生成体素,出于某种原因,union() 方法给了我一个 can only concatenate str (not "int") to str
这是我的代码:
cubes = []
for tile in tiles:
cubes.append(cuboid((6,18,6),(tile['x'],1,tile['y']),2))
finalmodel = cubes[0]
for cube in cubes:
if cube != cubes[0]:
finalmodel = finalmodel.union(cube)
mesh1 = Mesh.fromVoxelModel(finalmodel)
mesh1.export(filename + '.vox')
最让我困惑的是,在方法中用作参数的变量 finalmodel
和 cube
不是整数或字符串,而是 VoxelModel
以防万一 tile['x']
和 tile['y']
是来自解析保存文件的整数。
我不知道是我在创建体素模型时犯了错误还是其他地方有问题。
考虑到 tiles
是从文件中读取的,我认为问题可能出在 tile['x']
和 tile['y']
是字符串而不是整数。在将它们作为参数传递之前尝试转换它们:
for tile in tiles:
cubes.append(cuboid((6,18,6),(int(tile['x']),1,int(tile['y'])),2))