Jump to content

maratovich

Клуб разработчиков
  • Posts

    115
  • Joined

  • Last visited

  • Days Won

    9

Everything posted by maratovich

  1. Почему - Сам бы хотел знать, методом научного тыка обнаружилось, без этого не работает. Может быть влияет установка 17 версий разных CAD и нано из них 7. Причем в чистом VB.net не работает и не будет и в автокаде тоже. Зачем - чтобы работало и копипастило в другой блок.
  2. Всем спасибо. По выше приведённому не заработало. Потратил сутки, но нашел решение, может кому пригодится : Нужно внутри команды параметры заключать во внутренние скобки retObjects = DOC1.CopyObjects((objCollection), (DOCOrg.ModelSpace))
  3. Отключить - В референсах две галочки уберите NC любой. ну конечно 5.1 и выше, сейчас тестирую на 22 dll, exe VB6, VB.net, C#
  4. Отключите библиотеки нанокада чтобы не было As nanoCAD.Document Чтобы чистая среда была и работал только Set App = GetObject(, "nanoCAD.Application") как он должен быть. добавлено через 2 минуты Да, как и положено. B Marshal.GetActiveObject вообще беда.
  5. Sub Example_CopyObjects() ' This example creates a Circle object and uses the CopyObjects ' method to make a copy of the new Circle. Dim DOCOrg As AcadDocument Dim DOC1 As AcadDocument Dim circleObj1 As AcadCircle, circleObj2 As AcadCircle Dim circleObj1Copy As AcadCircle, circleObj2Copy As AcadCircle Dim centerPoint(0 To 2) As Double Dim radius1 As Double, radius2 As Double Dim radius1Copy As Double, radius2Copy As Double Dim objCollection(0 To 1) As Object Dim retObjects As Variant ' Define the Circle object centerPoint(0) = 0: centerPoint(1) = 0: centerPoint(2) = 0 radius1 = 5#: radius2 = 7# radius1Copy = 1#: radius2Copy = 2# ' Store current drawing Set DOCOrg = ThisDrawing.Application.ActiveDocument ' Create a new drawing Set DOC1 = Documents.Add ' Add two circles to the drawing Set circleObj1 = DOC1.ModelSpace.AddCircle(centerPoint, radius1) Set circleObj2 = DOC1.ModelSpace.AddCircle(centerPoint, radius2) ThisDrawing.Application.ZoomAll ' Copy objects ' ' First put the objects to be copied into a form compatible with CopyObjects Set objCollection(0) = circleObj1 Set objCollection(1) = circleObj2 ' Copy object and get back a collection of the new objects (copies) ThisDrawing.Application.ActiveDocument = DOCOrg retObjects = DOC1.CopyObjects(objCollection, DOCOrg.ModelSpace) ' Get newly created object and apply new properties to the copies Set circleObj1Copy = retObjects(0) Set circleObj2Copy = retObjects(1) circleObj1Copy.Radius = radius1Copy circleObj2Copy.Radius = radius2Copy ThisDrawing.Application.ZoomAll MsgBox "Circles copied." End Sub добавлено через 2 минуты VBA, VB6, VB.Net, C# И COM
  6. Кто нибудь за все эти годы смог заставить работать CopyObjects ? При любом обращении - просто выкидывает без описания ошибки. Предполагаю что опять с Variant что то натворили.
  7. Через COM взаимодействие аналогично - ФАТАЛ нанокада. Вот пользователи обрадуются когда перейдут на 22 версию. Опять в новой версии всё поломали. Лучше бы вообще не трогали. Зачем изобретать свой велосипед, если у всех конкурентов работает стабильно изученный алгоритм. Устроили очередную подставу с изменением названия форматов. Приходится под каждую версию нанокада переписывать программы. Господа разработчики, зачем вы тратите время и деньги ходя по кругу ?
  8. Парни, если честно - я вообще то автора спрашивал. У меня вообще с этим проблем нет. И решение своё есть. Нажал две кнопки - распечатал в PDF 100500 форматов, сразу нажал две другие кнопки и пошла печать на физический. И хотелось обсудить с автором, может быть ему бы помогло.
  9. Нет, только если затереть сверху другим. Структура PDF формата неоднозначна с текстами, поэтому не получится.
  10. Решено собрать все основные и нужные функции для обработки PDF файлов в одной программе. Под это создал программу - АвтоРедакторПДФ На данный момент добавлено : - нумерация страниц; - объединение PDF файлов; - разделение файла PDF на отдельные страницы; - поворот страниц; - удаление страниц; - экспорт в различные форматы; - работа со слоями; - разделение цветных и ЧБ страниц. Обработка как одного файла, так и множества сразу. В планах добавление любых других нужных команд (если оно вообще реализуемо). У кого есть пожелания и предложения - пишите, добавлю. Страница программы - http://www.kdmsoft.ru/autoeditorpdf.html
  11. Я то прочитал, и не вижу окончательного решения, по крайней мере удобного для автора темы.
  12. Как успехи в решении проблемы ? Можете приложить файл примера ?
  13. Это совсем другая команда. EXPORTLAYOUT переносит лист в пространство Модель в новый файл. Главное слово - "работает", но в нанокаде не до конца. В Автокаде если FILEDIA=0, то окно не появляется. И можно использовать EXPORTLAYOUT в лиспе. В Нанокаде окно останавливает весь процесс.
  14. В 20 версии реализовали, но как всегда не до конца.... Как запустить EXPORTLAYOUT без открытия окна сохранения файла ? FILEDIA=0 не помогает.
  15. Суть в том в нанокаде не реализован доступ к публикации на программном уровне. Поэтому именно публикация всех форматов не запускается. Решение - Запускать через кнопку "Печать" на встроенный принтер ПДФ, предварительно в настройках Реверс указать имя выходного файла одинаковое для всех, а в настройках принтера отменить открытие pdf файла после печати. И тогда на выходе получим многолистовой pdf
  16. Спасибо. Но работает как то иначе, надо всё перепроверять.
  17. После Автокада никак не пойму почему лисп вставленный в ком строку сходит с ума - не грузится а выдаёт абракадабру. Это вообще возможно ?
  18. Реверс под AutoCAD LT не работает. Рекомендую поставить для начала nanoCAD free 5.1 там основные функции работают. Это решит ваш вопрос и причем бесплатно.
  19. byrondep Это готовая программа на все возможные варианты печати. На лисп переделать нельзя. Наверное вы хотели в другую тему написать.
  20. 50/50 С радостью бы на всю контору взяли обновление - если сделают то, что мы хотим. Там ещё и Лоцман. Хозяина ценник в 5 млн не испугал, но мы сами против, на новые грабли не хотим напороться. Уже некоторые не грамотные стали заглядываться на Волт с Инвертором, но это ещё хуже в нашей ситуации.
  21. Как пример - Компас, разработчики забили на отзывы пользователей. В результате - очень узкий круг пользователей, без желания переходить на новые версии. У нас как работали в Компас 14, так и остались, хотя каждый год к нам приходят и пытаются впихнуть новую версию.
  22. Вот тут вопрос именно к Вам - сделать так чтобы автоматом было отключено в любом открывающемся файле.
  23. Это хорошо что вы спрашиваете у пользователей чего им надо Только сделать надо немного по другому : если уж при включенной сетке у вас продажи повышаются, то по умолчании оставить, НО !!! Но сделать возможность автоматического отключения во всех открываемых файлах. Т.е. - стартанул в первый раз нанокад - сетка есть все довольны, а мне не нравится - залез в настройки, поставил галочку автоотключение - и потом всегда у меня во всех открываемых файлах сетка будет отключена автоматом. А то от смежников приходит это "окно в камере в клеточку", приходится постоянно тыкать отключение. И кстати не надо шаблон портить. Вотъ.
×
×
  • Create New...