| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Динамические блоки > При замене динамических блоков неправильно отображается поворот блоков

При замене динамических блоков неправильно отображается поворот блоков

Ответ
Поиск в этой теме
Непрочитано 28.05.2019, 04:27 #1
При замене динамических блоков неправильно отображается поворот блоков
Krovlaf
 
геология, геодезия
 
Хабаровск
Регистрация: 29.05.2009
Сообщений: 184

При замене динамических блоков использовался лисп RBLOC
(;;; RBLOC V2.22
;;; Replace a block with another
;;; Copyright (C) Patrick_35)
Ранее проблем с этим лиспом никогда небыло. Очень удобный и адекватный инструмент по замене динамических блоков.
Все блоки с одним именем. Замена происходила в два этапа. Проблема вылезла в блоках замененных во вторую очередь.
Часть блоков стала неадекватно реагировать на изменения угла поворота в свойствах. Задаешь блокам угол поворота 90 а они принимают какой-то другой определенный угол.
Задал всем блокам нулевой угол.У первой группы все в порядке. Вторая группа под углом.
Парадоксальная ситуация. Блоки с одним именем и углом поворота на экране имеют разные углы поворота.
Переопределение блоков, проверка в редакторе, обновление блоков через диспетчер атрибутов, регенерация чертежа, не помогают.
Как это исправить?

Вложения
Тип файла: dwg
DWG 2007
Блоки.dwg (173.0 Кб, 13 просмотров)

Просмотров: 2015
 
Непрочитано 28.05.2019, 12:03
#2
AMDen

Инженер-проектировщик
 
Регистрация: 07.07.2016
Санкт-Петербург
Сообщений: 723


Второй блок немного повернут по координате Z. Из-за этого, видимо, не хочет адекватно реагировать на смену угла. У меня сплющить не получилось, но есть разные лиспы для координаты Z. Надо пробовать...
AMDen вне форума  
 
Автор темы   Непрочитано 29.05.2019, 02:15
#3
Krovlaf

геология, геодезия
 
Регистрация: 29.05.2009
Хабаровск
Сообщений: 184


О! Спасибо! Я, честно говоря, в этом направлении и не копал. Обычно блоки "под наклоном" хорошо вычисляются когда в них есть полилинии с установленной шириной. Они тогда становятся "контурными".

----- добавлено через ~19 мин. -----
Причина оказалась до безобразия банальна. Выравнивание части чертежа с привязочкой по z...
Все перерыл но не нашел решения по выравниванию множества блоков относительно z. Проблема уже освещалась, но предсталенный там лисп не работает. Полноценного решения так и нет. Что самое интересное - была уже такая же проблема и с помощью чуть ли не стандартной командой все проблемные блоки были приведены к горизонтальной плоскости. Да вот не записал я тогда этого решения а память дырявая.

Последний раз редактировалось Krovlaf, 29.05.2019 в 06:42.
Krovlaf вне форума  
 
Непрочитано 29.05.2019, 07:51
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,832


_.flatten? Правда, как она будет работать в редакторе блоков - без понятия.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 29.05.2019, 09:45
#5
AMDen

Инженер-проектировщик
 
Регистрация: 07.07.2016
Санкт-Петербург
Сообщений: 723


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
в редакторе блоков
В редакторе блоков всё горизонтально. Повернуты некоторые экземпляры блока.
AMDen вне форума  
 
Автор темы   Непрочитано 29.05.2019, 09:56
#6
Krovlaf

геология, геодезия
 
Регистрация: 29.05.2009
Хабаровск
Сообщений: 184


Приветствую! _.flatten в чертеже просто удаляет блоки с пометкой в ком. строке:

Remove hidden lines? <Yes>: n

Неверный составной объект.
Неверный составной объект.
В редакторе блоков:

** команда ПСК недопустима в редакторе блоков. **

** команда ВИД недопустима в редакторе блоков. **

неверный тип аргумента: numberp: nil
Krovlaf вне форума  
 
Непрочитано 29.05.2019, 10:01
#7
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,832


Ну и в чем собственно проблема?
Код:
[Выделить все]
 (defun t1 (/ selset)
  (if (= (type (vl-catch-all-apply (function (lambda () (setq selset (ssget "_:L")))))) 'pickset)
    (progn (foreach ent ((lambda (/ tab item)
                           (repeat (setq tab  nil
                                         item (sslength selset)
                                         ) ;_ end setq
                             (setq tab (cons (ssname selset (setq item (1- item))) tab))
                             ) ;_ end of repeat
                           ) ;_ end of lambda
                         )
             (entmod (subst '(210 0. 0. 1.) (assoc 210 (entget ent)) (entget ent)))
             ) ;_ end of foreach
           ) ;_ end of progn
    ) ;_ end of if
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 29.05.2019, 15:51
#8
Krovlaf

геология, геодезия
 
Регистрация: 29.05.2009
Хабаровск
Сообщений: 184


Спасибо, работает.
Просто до сих пор не сталкивался с лиспами без "с: ". И такое бывает... Пересмотр матчасти восполнил пробелы.
Моё почтение!
Krovlaf вне форума  
 
Автор темы   Непрочитано 30.05.2019, 07:12
#9
Krovlaf

геология, геодезия
 
Регистрация: 29.05.2009
Хабаровск
Сообщений: 184


Попробовал на рабочем файле. При "обнулении" блоки улетают за пределы видимой вселенной. Восстановить прежнее положение не представляется возможным. Восстановил блоки скопировав все свойства в ексель и по новой вставил CadTools'ом. Короче, не так все просто как было в первом примере.
Вложения
Тип файла: dwg
DWG 2007
Блоки1.dwg (211.9 Кб, 3 просмотров)
Krovlaf вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Динамические блоки > При замене динамических блоков неправильно отображается поворот блоков

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Неправильно отображается однострочный текст Alexander88 AutoCAD 17 09.07.2014 08:57
Подсчет Блоков и Динамических блоков с учетом visibility (видимости) и сумму длин линий, полилиний по слоям и вывод результатов в Ecxel Andrey_nadym Программирование 18 07.01.2014 01:42
Наложение динамических блоков друг на друга dip Динамические блоки 2 22.10.2013 07:59
Подсчет простых и динамических блоков gizmo_zx Программирование 12 08.09.2010 16:04