Я использую скрипт в fusion360 под названием importplinecsv. Мне было интересно, можно ли изменить скрипт так, чтобы он импортировал одну строку в каждую 10-ю строку? поскольку количество импортируемых строк очень велико и раздувается.
если бы я мог получить некоторую помощь, это было бы здорово.
вот текст
Автор - Autodesk Inc.
Описание-Импорт сплайна из файла csv
импорт adsk.core, adsk.fusion, traceback import io
def run (context): ui = None try: app = adsk.core.Application.get () ui = app.userInterface # Получить все компоненты в активном дизайне. product = app.activeProduct design = adsk.fusion.Design.cast (product) title = 'Импортировать сплайн csv', если не дизайн: ui.messageBox ('Нет активного дизайна Fusion', заголовок) return
dlg = ui.createFileDialog()
dlg.title = 'Open CSV File'
dlg.filter = 'Comma Separated Values (*.csv);;All Files (*.*)'
if dlg.showOpen() != adsk.core.DialogResults.DialogOK :
return
filename = dlg.filename
with io.open(filename, 'r', encoding='utf-8-sig') as f:
points = adsk.core.ObjectCollection.create()
line = f.readline()
data = []
while line:
pntStrArr = line.split(',')
for pntStr in pntStrArr:
try:
data.append(float(pntStr))
except:
break
if len(data) >= 3 :
point = adsk.core.Point3D.create(data[0], data[1], data[2])
points.add(point)
line = f.readline()
data.clear()
if points.count:
root = design.rootComponent
sketch = root.sketches.add(root.xYConstructionPlane)
sketch.sketchCurves.sketchFittedSplines.add(points)
else:
ui.messageBox('No valid points', title)
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))