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

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Баги и пожелания в Autodesk > некорректная и неустойчивая работа BOUNDARY в режиме "Pick Points"

некорректная и неустойчивая работа BOUNDARY в режиме "Pick Points"

 
Поиск в этой теме
 
Автор темы   Непрочитано 21.03.2010, 02:19 некорректная и неустойчивая работа BOUNDARY в режиме "Pick Points"
#1
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,031


Команда BOUNDARY в предусмотренном в ней режиме "Pick Points"работает некорректно или не работает вообще, даже если область оконтурена набором корректно примыкающих друг к другу элементов.
Например, на фигуре-модели в приложенном файле видно, что невозможно создать полный и точный контур с помощью BOUNDARY в режиме "Pick Points". Контур образуется либо только в верхней части области, либо только в нижней, либо не образуется вообще, если достаточно приблизить узкое место фигуры. Также при создании контура часто "срезаются" небольшие детали внешней границы (место отмечено в файле стрелкой).
Кроме того, очень часто после указания точки внутри реальной области Автокад очень надолго "задумывается", но после этого очень часто сообщает, что контур не может быть создан.
Таким образом, использование BOUNDARY в режиме "Pick Points" либо
невозможно, либо результат непредсказуем, либо возможно получение неточного или вообще неправильного контура.
В то же время, команда BOUNDARY востребованна практически во всех файлах, а режим "Pick Points" является наиболее удобным для пользователей.
Судя по всему, проблема заключается в слабости алгоритма BOUNDARY, привязанного каким-то образом к экранному состоянию (степени увеличения, полноты отображения на экране) областей, с которыми идет работа, а не к координатам вершин элементов.
Удивительнее же всего, что в вертикальном приложении Autocad Map 3D используется корректный и надежный алгоритм определения границ областей - при создании площадных "топологий".
Вложения
Тип файла: dwg
DWG 2007
boundary_0.dwg (256.0 Кб, 2421 просмотров)
АлексЮстасу вне форума  
 
Непрочитано 23.03.2010, 15:24
#2
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


АлексЮстасу, 2010 создает корректно
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)
wetr вне форума  
 
Автор темы   Непрочитано 23.03.2010, 18:42
#3
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,031


Цитата:
Сообщение от wetr Посмотреть сообщение
АлексЮстасу, 2010 создает корректно
Специально прямо сейчас поставил себе 2010 (пока ознакомительная версия, но с последним обновлением).
Результат абсолютно такой же, как на 2008 и 2006 (на тестовой области из приложенного файла):
- в режиме Pick Points не создает единого контура,
- срезает "незначительные" изгибы,
- если не вся область на экране, то отказывается строить вообще - пишет "Не из чего создавать контур".

Что я не так делаю, и напраслину на Автокдушку возвожу?
АлексЮстасу вне форума  
 
Непрочитано 23.03.2010, 23:28
#4
Кулик Алексей aka kpblc
Moderator

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


АлексЮстасу, а ты файл-то не пробовал чистить? Для начала - от прокси-объектов. После explodeallproxy, очистки и проверки файла в AutoCAD 2010 Eng + SP все создается корректно.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 24.03.2010, 02:50
#5
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,031


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
АлексЮстасу, а ты файл-то не пробовал чистить? Для начала - от прокси-объектов. После explodeallproxy, очистки и проверки файла в AutoCAD 2010 Eng + SP все создается корректно.
Спасибо, о прокси-объектах не думал, т.к. не сообщалось, а о explodeallproxy еще был в неведении.

1. Аудит после открывания файла в 2010 дал 4 ошибки, и с успехом их исправил. (в 2008 ошибок не было, проверял).
2. ExplodeProxy2010x32.arx сообщил:
Команда: explodeallproxy
Удалено Proxy: 0 Новых объектов: 0
3. Еще один Аудит дал 0 ошибок.
4. Пурж не нужен - лишнего нет.

После всего этого (на всякий случай файл сохранил, закрыл, открыл заново) результат абсолютно тот же самый, что и раньше.
1. Делаю общий вид в файле boundary_0.dwg, чтобы вся фигура была видна,
2. Вызываю _BOUNDARY (или КОНТУР),
3. Нажимаю кнопку Pick Points (Указание точек),
4. Указываю точку в нижней (или верхней) части фигуры из приложенного файла boundary_0.dwg - Автокад предлагает создать контур только в нижней (или тольков верхней) части, а весь контур не видит, хотя это одна область, а не две и не три.
5. Если был построен контур в верхней части фигуры, то "мелкий" заусенец (помечен в файле стрелкой) срезается,
6. Если же на экране была видна не вся фигура целиком, то Автокад сообщает, что "Контур не замкнут".

На всякий случай проверил допуск в окне Штриховок - 0.0000 единиц чертежа.

Что-то я не так делаю, или мы друг друга не понимаем?
АлексЮстасу вне форума  
 
Непрочитано 24.03.2010, 03:16
#6
Кулик Алексей aka kpblc
Moderator

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


Сначала устанавливается demandload = 2, чтобы ничего лишнего не грузилось. Потом открываю файл.
Получаю сначала

Потом сообщения о прокси-объектах (proxyshow = 1, proxynotice = 1) следующих классов: AeccvBase50 (AutoCAD Civil 3D; 699 шт); AeccLand50 (то же; 814 шт.); AeccvSurvey50 (то же, 6 шт); AeccParamPart50 (то же, 33 шт); AeccNetwork50 (то же, 41 шт); AeccRoadway50 (то же, количество не записал).
Лог очистки:
Код:
[Выделить все]
Opening an AutoCAD 2007/LT 2007 format file.
Regenerating model.

AutoCAD menu utilities loaded.
 *CADWare* : Получение и обработка сетевых файлов; error: bad argument type: 
stringp nil
*Cancel*


Autodesk DWG.  This file is a TrustedDWG last saved by an Autodesk application 
or Autodesk licensed application.

Command: explodeallproxy
Удалено Proxy: 0 Новых объектов: 0
Command: removeallproxy
Первая метка объекта: <1>, последняя метка объекта: <950>
Всего найдено proxy-объектов: 1596. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: y

Всего удалено proxy-объектов: 1596. Из них proxy-примитивов: 0.
Для проверки ошибок выполните команду _AUDIT


Command: _audit
Fix any errors detected? [Yes/No] <N>: _y
<...>
Pass 1 200     objects audited
Auditing Entities Pass 2

Pass 2 200     objects audited
Auditing Blocks


 3       Blocks audited

Total errors found 305 fixed 305

Erased 0 objects

Command: _-purge
Enter type of unused objects to purge 
[Blocks/Dimstyles/LAyers/LTypes/MAterials/MUltileaderstyles/Plotstyles/SHapes/te
xtSTyles/Mlinestyles/Tablestyles/Visualstyles/Regapps/Zero-length 
geometry/Empty text objects/All]: _a
Enter name(s) to purge <*>:
Verify each name to be purged? [Yes/No] <Y>: _n
Deleting block "*U1".
Deleting block "*U2".
2 blocks deleted.

No unreferenced layers found.

No unreferenced linetypes found.

No unreferenced text styles found.

No unreferenced shape files found.

No unreferenced dimension styles found.

No unreferenced mlinestyles found.

No unreferenced plotstyles found.
Deleting table style "Legend".
1 table style deleted.

No unreferenced materials found.

No unreferenced visual styles found.

No unreferenced multileader styles found.

Command: _-purge
Enter type of unused objects to purge 
[Blocks/Dimstyles/LAyers/LTypes/MAterials/MUltileaderstyles/Plotstyles/SHapes/te
xtSTyles/Mlinestyles/Tablestyles/Visualstyles/Regapps/Zero-length 
geometry/Empty text objects/All]: _r
Enter name(s) to purge <*>:
Verify each name to be purged? [Yes/No] <Y>: _n
Deleting registered application "ACAD_DSTYLE_DIMJAG".
Deleting registered application "ACAD_DSTYLE_DIMTALN".
Deleting registered application "ACAD_EXEMPT_FROM_CAD_STANDARDS".
Deleting registered application "ACAD_MLEADERVER".
Deleting registered application "AcadAnnoPO".
Deleting registered application "AcadAnnotative".
Deleting registered application "AcMapDMDisplayStyleRegapp".
7 registered applications deleted.
---
Добавлено: странно. На другой машине все отобразилось и обработалось корректно (AutoCAD 2010 Eng + SP1). Сейчас запускаю AutoCAD Architecture 2010 Eng + SP1 как AutoCAD - контур не создается. Чертовщина какая-то...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 24.03.2010, 03:34
#7
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,031


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Сначала устанавливается demandload = 2, чтобы ничего лишнего не грузилось. Потом открываю файл.
Получаю сначала
[more="Сообщение о более старой версии AEC-объектов"] Command: explodeallproxy
Удалено Proxy: 0 Новых объектов: 0
Command: removeallproxy
Первая метка объекта: <1>, последняя метка объекта: <950>
Всего найдено proxy-объектов: 1596. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: y

Всего удалено proxy-объектов: 1596. Из них proxy-примитивов: 0.
Для проверки ошибок выполните команду _AUDIT

...
1. Сообщение о старости версии было
2. О прокси-объектах не сообщалось, хотя, вывод сообщения о них включил.
3. Установил demandload=2
4. Моя версия борьбы с несуществующими у меня прокси-объектами:

Команда: ExplodeAllProxy
Удалено Proxy: 0 Новых объектов: 0
Команда: RemoveAllProxy
Первая метка объекта: <1>, последняя метка объекта: <9E8>
Всего найдено proxy-объектов: 0. Из них proxy-примитивов: 0.
Очистить список масштабов? [Да/Нет] <Да>: y
Всего удалено proxy-объектов: 0. Из них proxy-примитивов: 0.
Для проверки ошибок выполните команду _AUDIT

5. Пурж по-прежнему делать не нужно.

6. Команда: _audit
Исправить все обнаруженные ошибки? [Да/Нет] <Н>: д
Проверка заголовка
Проверка таблиц
Проверка объектов, проход 1
Проход 1: проверено объектов: 1900
Проверка объектов, проход 2
Проход 2: проверено объектов: 1400 AeccDbPipeStyle(6CC)
восстановлен.
AeccDbPipeStyle(6CD) восстановлен.
Проход 2: проверено объектов: 1900
Проверка блоков
Проверено блоков: 3
Всего найдено ошибок: 4, исправлено: 4
Стерто 0 объектов

7. Пурж по-прежнему делать не нужно.

.......

И у меня контур всей области построился, и построился павильно после того как:
1. Указал точку в верхней большой области (Автокад увидел ее, но неточно),
2. Указал вторую точку в другой большой области,
3. Приблизил перешеек и указал точку внутри него.

Построилось три контура. Контур верхний - неточный, контур нижний, и общий точный контур.
Нда... Это получилось с этой - вдоль-поперек изученной фигурой, а с реальными получится? В реальных последовательность действий какая должна быть? А в реальных я "перешейки" всегда увижу? Или там сработает другая последовательность действий? И отдельные контуры я все вспомню, чтобы удалить?
По-моему, пока это больше похоже на шаманское камлание, а не на работу...
В реальности (проверено на производстве) люди сначала не заметят, что контура получились не полные и не точные, а потом руками будут их переделывать.

Проверил все это на 2008 - общий контур тоже получился. Так что дело не в версии, и не в прокси-объектах.

Последний раз редактировалось АлексЮстасу, 24.03.2010 в 03:59.
АлексЮстасу вне форума  
 
Непрочитано 24.03.2010, 08:32
#8
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


АлексЮстасу, поправлюсь. Контур действительно НЕ создается целый. Автокад не видит узкий перешеек и зуб указанный стрелкой.
Создается 2 отдельных...
И штриховка ведет себя точно также
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)

Последний раз редактировалось wetr, 24.03.2010 в 09:07.
wetr вне форума  
 
Автор темы   Непрочитано 24.03.2010, 13:13
#9
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,031


Цитата:
Сообщение от wetr Посмотреть сообщение
АлексЮстасу, поправлюсь. Контур действительно НЕ создается целый. Автокад не видит узкий перешеек и зуб указанный стрелкой.
Создается 2 отдельных...
И штриховка ведет себя точно также
Ну, да. Область ведь одна. Соответственно, и контур должен построиться только один.
Допустим, что контур без перешейков. И BOUNDARY его сразу видит. И даже не задумывается на неопределенное время. Как добиться, чтобы созданный контур в точности повторял границы области?
АлексЮстасу вне форума  
 
Непрочитано 25.03.2010, 02:42
#10
wetr

инженер
 
Регистрация: 09.08.2006
Владивосток
Сообщений: 1,535
<phrase 1= Отправить сообщение для wetr с помощью Skype™


Еще один любопытный образец. Контур не создается если, не приблицить его очень крупно. Даже когда он четко виден в экране, boundary не может найти контур. Чтобы увидеть это, нужно открыть файл и не приближая, выполнить _boundary -> Pick point. Получим сообщение о некорректности контура. Если приблизить так, что контур аж выйдет за границы экрана - то все создается...
Вложения
Тип файла: rar boundary.rar (20.1 Кб, 136 просмотров)
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14)
wetr вне форума  
 
Автор темы   Непрочитано 25.03.2010, 03:39
#11
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,031


Цитата:
Сообщение от wetr Посмотреть сообщение
Еще один любопытный образец. Контур не создается если, не приблицить его очень крупно. Даже когда он четко виден в экране, boundary не может найти контур. Чтобы увидеть это, нужно открыть файл и не приближая, выполнить _boundary -> Pick point. Получим сообщение о некорректности контура. Если приблизить так, что контур аж выйдет за границы экрана - то все создается...
Ну, да. Очередной сюрприз.
А у нас - в картографии - без подобной функции Автокад теряет клиентов.
АлексЮстасу вне форума  
 
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Баги и пожелания в Autodesk > некорректная и неустойчивая работа BOUNDARY в режиме "Pick Points"

Размещение рекламы