| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
06.07.2006, 21:57 | #1 | |
Как упорядочить наложение штриховок,полилиний (Draworder)?
Москва
Регистрация: 06.07.2006
Сообщений: 42
|
||
Просмотров: 5254
|
|
||||
Регистрация: 06.07.2006
Москва
Сообщений: 42
|
Почти доделал!
Технология следующая: нужные примитивы добавляются в ActiveSelectionSet, к которому потом применяется команда draworder. Однако такой способ работает с отдельными примитивами, но не работает с вложенными, элементами блока (пишет "Ключ не найден", затем "метод ActiveSelectionSet.AddItems failed...") Что делать??? Код такой: Код:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787
|
Он и не будет работать со вложенными примитивами - по идее порядок отображения примитивов в блоке (как мне в свое время указал, по-моему, ZZZ) зависит от порядка их создания. То бишь тебе надо внутри блока выбирать все примитивы, кроме растров и штриховок, применять к ним CopyObjects с одинаковыми базовой и конечной точками и удалять исходные.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787
|
Но ты ж сносить должен исходные примитивы... Так что объем не изменится (как я полагаю_)
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787
|
Стоп. С самого начал. Тебе надо расположить примитивы, входящие в блок, определенным образом, так? Например, самыми нижними идут растры, затем следуют штриховки, потом все остальное. В таком случае тебе по идее надо сделать одно из двух:
- либо выбрать все, кроме того, что попадает "в самый низ", то есть растров, к примеру, скопировать не изменяя точек и удалить исходный; потом повторить для того, что лежит выше штриховок. Или (как вариант) попросту по новой добавить такие примитивы, скопировав свойства. - либо вручную исправить блоки в библиотеке. Это может оказаться более простым и очевидным, чем что бы то ни было другое.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 06.07.2006
Москва
Сообщений: 42
|
Цитата:
Цитата:
Но в общем суть, мне кажется, та же... Вот вариант CopyObjects. Но он почему-то не работает. То есть штриховка копируется (причем автоматом в тот же блок), старая из блока удаляется, но порядок следования не изменяется! Код:
|
|||