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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Непонятное смещение атрибутов блока

Непонятное смещение атрибутов блока

Ответ
Поиск в этой теме
Непрочитано 19.04.2009, 19:52 #1
Непонятное смещение атрибутов блока
PAULkan
 
Регистрация: 19.04.2009
Сообщений: 6

Помогите решить такую проблему. Из Delphi создаю в AutoCad 2002 блок и добавляю в него атрибуты. Затем мне нужно считать значения атрибутов. Проблемы начинаются при вставке. При различных комбинациях режимах создания атрибута (перепробовал все варианты) получаются 2 варианта:

1) Атрибуты в блоке отображаются на своих местах, как мне и нужно
2) Атрибуты смещены от своих заданных координатам по пространству модели. Причем когда захожу в редактирование блока (или разбиваю блок), они встают на свои места, а после сохранения опять "улетают"

По идее, первый вариант мне и нужен, НО! Когда я начинаю программно считывать атрибуты блока функцией Getattributes, я их не получаю...как-будто их там и нет При считывании во втором варианте все проходит на ура, но атрибуты не на своих местах... Уже второй день бьюсь над этим и ничего не получается... Может кто поможет?
Просмотров: 3541
 
Непрочитано 19.04.2009, 20:28
#2
Кулик Алексей aka kpblc
Moderator

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


После вставки блока с атрибутами попробуй выполнить над вставкой метод Update.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 19.04.2009, 21:50
#3
PAULkan


 
Регистрация: 19.04.2009
Сообщений: 6


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
После вставки блока с атрибутами попробуй выполнить над вставкой метод Update.
Не помогает... Подозреваю, что что-то не так с режимами добавления атрибутов в AddAtribute. В хэлпе написано, что есть 5 значений, которые можно использовать в любых сочетаниях:

0 No attribute mode selected
1 Invisible
2 Constant
4 Verify
8 Preset

Перепробовал все 16 вариантов И вот что получается. Первая колонка - сумма параметров при вставке, вторая - определяются ли атрибуты функцией getattributes после вставки блока, третья - смещаются ли отображения атрибутов в пространстве модели от заданных координат.

0 опред. смещ.
1 опред. смещ.
2 не опред. не смещ.
3 не опред. не смещ.
4 опред. смещ.
5 опред. смещ.
6 не опред. не смещ.
7 не опред. не смещ.
8 опред. смещ.
9 опред. смещ.
10 не опред. не смещ.
11 не опред. не смещ.
12 опред. смещ.
13 опред. смещ.
14 не опред. не смещ.
15 не опред. не смещ.

Даже закономерность какая-то прослеживается - 2 через 2

По идее, ведь в любом случае атрибуты должны выдаваться по getattributes, в каком бы режиме они не были вставлены. Или я не прав? Не понимаю, в чем загвоздка, уже мозги закипают
PAULkan вне форума  
 
Непрочитано 19.04.2009, 22:40
#4
Кулик Алексей aka kpblc
Moderator

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


Есть метод GetAttributes, а есть GetConstantAttributes (по крайней мере в версиях от 2005 и выше; в 2002 надо проверять).
На крайний случай можно выполнить команду _.attsync, но это будет уже совсем... Именно "на крайний случай". Честно говоря, капитально программировать начал под 2005, поэтому 2002-й помню уже весьма смутно
Может, вставка блока выполняется не в мировой системе координат? Тогда да, тогда надо дополнительно выполнять преобразования OCS для атрибутов. Насчет угла поворота и смещения точки вставки - вроде не требовалось выполнять TransformBy, и было достаточно Update. Но не уверен
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Непонятное смещение атрибутов блока

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Назначение свойств атрибутов блока без attsync Кулик Алексей aka kpblc Программирование 9 15.08.2017 06:32
Извлечение атрибутов блока и вставка атрибутов в формулу andery AutoCAD 38 15.06.2009 02:39
Изменения блока, атрибутов блока сразу в нескольких файлах andery AutoCAD 7 03.04.2009 17:07
Редактирование блока, используя значение его атрибутов Mazai Программирование 14 19.01.2009 20:49
Изменение характеристик атрибутов в вхождении блока zenon AutoCAD 9 27.11.2008 14:43