
maratovich
-
Posts
115 -
Joined
-
Last visited
-
Days Won
9
Content Type
Profiles
Forums
Downloads
Blogs
Posts posted by maratovich
-
-
Всем спасибо.
По выше приведённому не заработало.
Потратил сутки, но нашел решение, может кому пригодится :
Нужно внутри команды параметры заключать во внутренние скобки
retObjects = DOC1.CopyObjects((objCollection), (DOCOrg.ModelSpace))
-
1
-
-
26 минут назад, Robink сказал:
Как я в Excel отключу библиотеки, тогда работать не будет.
Какой у Вас NC? Какой проект создаете? Скрипт или что?
Отключить - В референсах две галочки уберите
NC любой. ну конечно 5.1 и выше, сейчас тестирую на 22
dll, exe VB6, VB.net, C#
-
7 минут назад, Robink сказал:
Отключите библиотеки нанокада чтобы не было As nanoCAD.Document
Чтобы чистая среда была и работал только Set App = GetObject(, "nanoCAD.Application") как он должен быть.
добавлено через 2 минуты1 минуту назад, kpblc сказал:Точнее, "только COM" ?
Да, как и положено. B Marshal.GetActiveObject вообще беда.
-
12 минут назад, kpblc сказал:
А можно пример кода, чтоб не придумывать?
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 минуты3 минуты назад, Robink сказал:Речь про .Net?
Юзаю
WblockCloneObjects
VBA, VB6, VB.Net, C#
И COM
-
Кто нибудь за все эти годы смог заставить работать CopyObjects ?
При любом обращении - просто выкидывает без описания ошибки.
Предполагаю что опять с Variant что то натворили.
-
Через COM взаимодействие аналогично - ФАТАЛ нанокада.
Вот пользователи обрадуются когда перейдут на 22 версию.
Опять в новой версии всё поломали.
Лучше бы вообще не трогали. Зачем изобретать свой велосипед, если у всех конкурентов работает стабильно изученный алгоритм.
Устроили очередную подставу с изменением названия форматов.
Приходится под каждую версию нанокада переписывать программы.
Господа разработчики, зачем вы тратите время и деньги ходя по кругу ?
-
2
-
-
Парни, если честно - я вообще то автора спрашивал.
У меня вообще с этим проблем нет. И решение своё есть. Нажал две кнопки - распечатал в PDF 100500 форматов, сразу нажал две другие кнопки и пошла печать на физический.
И хотелось обсудить с автором, может быть ему бы помогло.
-
2
-
1
-
-
2 часа назад, dromandon сказал:
Редактирование текста?)
Нет, только если затереть сверху другим. Структура PDF формата неоднозначна с текстами, поэтому не получится.
-
Решено собрать все основные и нужные функции для обработки PDF файлов в одной программе.
Под это создал программу - АвтоРедакторПДФ
На данный момент добавлено :
- нумерация страниц;
- объединение PDF файлов;
- разделение файла PDF на отдельные страницы;
- поворот страниц;
- удаление страниц;
- экспорт в различные форматы;
- работа со слоями;
- разделение цветных и ЧБ страниц.Обработка как одного файла, так и множества сразу.
В планах добавление любых других нужных команд (если оно вообще реализуемо).
У кого есть пожелания и предложения - пишите, добавлю.
Страница программы - http://www.kdmsoft.ru/autoeditorpdf.html
-
4
-
1
-
-
11 часов назад, bay сказал:
Вы прочитали обсуждение?
Я то прочитал, и не вижу окончательного решения, по крайней мере удобного для автора темы.
-
В 17.12.2020 в 16:54, СПиС сказал:
Ситуация:
При выборе устройства печати, происходит смещение содержимого на листе. (показано на видео)Наш рабочий процесс требует печатать как на pdf, так и на принтер,
Как успехи в решении проблемы ?
Можете приложить файл примера ?
-
Появилась новая версия Реверс - 5.3
Из основного - добавлена публикация в ПДФ
-
1
-
-
39 минут назад, EdwardSt сказал:
А команда СМЕНАПРОСТР (СМЕНА ПРОСТРАНСТВА) не решает ваших задач?
Это совсем другая команда.
EXPORTLAYOUT переносит лист в пространство Модель в новый файл.
40 минут назад, EdwardSt сказал:стати, EXPORTLAYOUT в акаде работает аналогично, с запросом имени файла.
Главное слово - "работает", но в нанокаде не до конца.
В Автокаде если FILEDIA=0, то окно не появляется. И можно использовать EXPORTLAYOUT в лиспе. В Нанокаде окно останавливает весь процесс.
-
В 20 версии реализовали, но как всегда не до конца....
Как запустить EXPORTLAYOUT без открытия окна сохранения файла ? FILEDIA=0 не помогает.
-
Суть в том в нанокаде не реализован доступ к публикации на программном уровне.
Поэтому именно публикация всех форматов не запускается.
Решение - Запускать через кнопку "Печать" на встроенный принтер ПДФ, предварительно в настройках Реверс указать имя выходного файла одинаковое для всех, а в настройках принтера отменить открытие pdf файла после печати.
И тогда на выходе получим многолистовой pdf -
-
После Автокада никак не пойму почему лисп вставленный в ком строку сходит с ума - не грузится а выдаёт абракадабру. Это вообще возможно ?
-
В 11 нано сделали -Publish ?
-
А под A-cad lite программа работает?
Реверс под AutoCAD LT не работает.
Рекомендую поставить для начала nanoCAD free 5.1 там основные функции работают. Это решит ваш вопрос и причем бесплатно.
-
Это готовая программа на все возможные варианты печати. На лисп переделать нельзя. Наверное вы хотели в другую тему написать.
-
Компас справляется с поставленными задачами?
50/50
Так зачем покупать новый?
С радостью бы на всю контору взяли обновление - если сделают то, что мы хотим. Там ещё и Лоцман. Хозяина ценник в 5 млн не испугал, но мы сами против, на новые грабли не хотим напороться.
Уже некоторые не грамотные стали заглядываться на Волт с Инвертором, но это ещё хуже в нашей ситуации.
-
Как пример - Компас, разработчики забили на отзывы пользователей. В результате - очень узкий круг пользователей, без желания переходить на новые версии.
У нас как работали в Компас 14, так и остались, хотя каждый год к нам приходят и пытаются впихнуть новую версию.
-
Так что тут вопрос не к нам, а к вашим смежникам... имхо ))
Вот тут вопрос именно к Вам - сделать так чтобы автоматом было отключено в любом открывающемся файле.
-
Это хорошо что вы спрашиваете у пользователей чего им надо
Только сделать надо немного по другому :
если уж при включенной сетке у вас продажи повышаются, то по умолчании оставить, НО !!! Но сделать возможность автоматического отключения во всех открываемых файлах.
Т.е. - стартанул в первый раз нанокад - сетка есть все довольны, а мне не нравится - залез в настройки, поставил галочку автоотключение - и потом всегда у меня во всех открываемых файлах сетка будет отключена автоматом. А то от смежников приходит это "окно в камере в клеточку", приходится постоянно тыкать отключение. И кстати не надо шаблон портить.
Вотъ.
-
1
-
Не работает CopyObjects от слова - совсем.
in Программирование под платформу nanoCAD
Posted
Почему - Сам бы хотел знать, методом научного тыка обнаружилось, без этого не работает. Может быть влияет установка 17 версий разных CAD и нано из них 7. Причем в чистом VB.net не работает и не будет и в автокаде тоже.
Зачем - чтобы работало и копипастило в другой блок.