def main(): parser = optparse.OptionParser() parser.add_option('-f', '--format', choices=available_write_formats(), dest='format', metavar='FMT', default='xls', help=u"Формат файла (%s) по умолчанию - %%default" % ', '.join(available_write_formats())) parser.add_option('-m', '--model', dest='include_model', default=False, action='store_true', help=u"Включить пространство Модели в область поиска") options, args = parser.parse_args() acad = Autocad() filename = args[0] if args else u"exported_%s.%s" % (acad.doc.Name, options.format) output_table = Table() extract_tables_from_dwg(acad, output_table, not options.include_model) output_table.save(filename, options.format)
def main(): acad = Autocad() parser = optparse.OptionParser(usage=u'%prog [опции] [файл для результатов]') parser.add_option('-f', '--format', choices=available_write_formats(), dest='format', metavar='FORMAT', default='xls', help=u"Формат файла (%s) по умолчанию - %%default" % ', '.join(available_write_formats())) parser.add_option('-k', '--known', dest='known_targets', metavar='FILE', default='', action='store', help=u'Файл с заполненым полем "Конец" и очередностью ' u' записей. По умолчанию берется из существующего файла') parser.add_option('-q', '--quiet', action='callback', callback=lambda *x: logging.disable(logging.WARNING), help=u'"Тихий" режим (не печатать в консоль)') parser.add_option('-s', '--single', dest='single_doc', action='store_true', default=False, help=u'Собрать данные только из текущего документа ' u'(Собирает из всех по умолчанию)') parser.add_option('-c', '--no-known', dest='dont_use_known', action='store_true', default=False, help=u'Не использовать данные об очередности и поле "Конец"') options, args = parser.parse_args() output_file = args[0] if args else u"cables_from_%s.%s" % (acad.doc.Name, options.format) if not options.known_targets and not options.dont_use_known: options.known_targets = output_file known_targets = get_known_targets(options.known_targets) output_table = Table() if options.single_doc: documents = [acad.doc] else: documents = acad.app.Documents for doc in documents: try: cables = get_cables(acad, doc.Modelspace, known_targets) sorted_cables = sort_cables_by_targets(cables, known_targets) for row in sorted_cables: output_table.writerow([s for s in row]) except Exception: logger.exception('Error while processing %s', doc.Name) output_table.save(output_file, options.format)
def main(): parser = optparse.OptionParser() parser.add_option('-f', '--format', choices=available_write_formats(), dest='format', metavar='FMT', default='xls', help=u"Формат файла (%s) по умолчанию - %%default" % ', '.join(available_write_formats())) parser.add_option('-m', '--model', dest='include_model', default=False, action='store_true', help=u"Включить пространство Модели в область поиска") options, args = parser.parse_args() acad = Autocad() filename = args[0] if args else u"exported_%s.%s" % (acad.doc.Name, options.format) output_table = Table() extract_tables_from_dwg(acad, output_table, not options.include_model) output_table.save(filename, options.format)