Контуры в эскизе не должны пересекаться и/или иметь общие точки

Автор igorkom, 22.12.13, 20:46:17

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

igorkom

  Довелось тут в Компасе делать модели по 2D чертежам Автокада. И вот это сообщение при выдавливании "Контуры в эскизе не должны пересекаться и/или иметь общие точки" несколько удручало последующими поисками висячих отрезков и дуг. В связи с этим сделал небольшую программку, показывающую где что не так. Работает только с отрезками и дугами, стиль - основная линия (в 3d операциях с эскизом участвуют объекты только с таким стилем).
  В принципе можно бы не заморачиваться и пользоваться библиотекой Проверка документа, но она не все отлавливает.
Может кому это пригодится.

Николай

А как работать с библиотекой?  Всё время пишет: "Компас не открыт", хотя это не так.

В архиве приложение, а не библиотека, работает с активным видом, эскизом и фрагментом, но некорректно.

Николай

Понять бы, как приложение работает, даже и некорректно.

Falcon555

Цитата: igorkom от 22.12.13, 20:46:17
  Довелось тут в Компасе делать модели по 2D чертежам Автокада. И вот это сообщение при выдавливании "Контуры в эскизе не должны пересекаться и/или иметь общие точки" несколько удручало последующими поисками висячих отрезков и дуг. В связи с этим сделал небольшую программку, показывающую где что не так. Работает только с отрезками и дугами, стиль - основная линия (в 3d операциях с эскизом участвуют объекты только с таким стилем).
  В принципе можно бы не заморачиваться и пользоваться библиотекой Проверка документа, но она не все отлавливает.
Может кому это пригодится.
Так в Компасе есть же такая библиотека. Зачем изобретать велосипед?

Николай

Ключевые слова: "...но она не всё отлавливет". Если это действительно так, то изобретать велосипед стоит.

obesov

Цитата: Николай от 23.12.13, 16:34:15
Ключевые слова: "...но она не всё отлавливет". Если это действительно так, то изобретать велосипед стоит.
Кхм!  :-\
А что именно не всё?

"Земля плоская, потому что..."  ;)

igorkom

 А что именно не всё? - пример во вложении, там модель с одним эскизом. Открываем эскиз, далее биб-ку Проверка документа - проверка наложения элементов - все линии...все слои...галка частичные перекрытия - имеем справа внизу 1 покраснение.
Запускаем Eskiz.exe - пишет 5 мест.

Понять бы, как приложение работает - при открытом Компасе с эскизом(именно в режиме эскиза) или фрагментом/чертежом запускаем Eskiz.exe,
жмем проверить - получаем таблицу с линиями/дугами, находим незамкнутости, жмем правую кн мыши - возникает контекстное меню - удаляем или центрируем.

"В архиве приложение, а не библиотека, работает с активным видом, эскизом и фрагментом, но некорректно" -
у меня 13 версия, на других не проверял. Win7(64) и XP(32) -работает.

Taro

Так Ваш пример как-то не очень показателен. У Вас выделяется еще 3 отрезка и дуга. Если "ручками" проверить между ними расстояние - то оно "нулевое". А Ваша библиотека показывает, что контур незамкнут...
Если вызвать команду библиотеки "Проверка документа", то библиотека найдет один "тот самый" отрезок (у вас он пятый), который мешает замкнуть контур. Если его удалить, то та же операция выдавливания великолепно срабатывает.
Я так подозреваю, что Вы что-то не так делаете с проверкой числовых значений. Учитывая, что у Вас в указанном примере ряд координат дается со значениями 12 знаков после запятой ( а есть и еще координата вида [4,54747350886464E-13; 0] или [-3,37507799486048E-14;12]), то скорее всего я права  :shu:

Николай

       Заработало вроде.
Появились вопросы:
     1. Что такое Ref в таблице?
     2.Подсветились незамкнутые объекты и наложенные объекты.
Наложенные объекты слились с подсвеченными незамкнутыми и исчезли.
Придётся кропотливо, по координатам их выявлять.Трудоёмко.

1. Что такое Ref в таблице?
Указатель на объект, Вам он ничем не поможет, абсолютно ненужная графа.

igorkom

     1. Что такое Ref в таблице? - ответил Sabahs) (уберу, будет время)
     2.Подсветились незамкнутые объекты и наложенные объекты.
Наложенные объекты слились с подсвеченными незамкнутыми и исчезли.
Придётся кропотливо, по координатам их выявлять.Трудоёмко. - Короче, я делал так: эскизы готовлю обычно во фрагменте, его и проверяю, снимаю всю подсветку, далее в табличке с координатами правый клик по нужной строке - центрировать, подсветить этот 1 объект, все - вот виден крупно и по центру. А в режиме эскиза что-то не центрируется, ну мне и фрагмента хватает, копи-паста - все  прекрасно.

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

Вложил еще один примерчик из реальной жизни, несколько позапущенней первого.


Taro

Может я, конечно, чего-то и не понимаю, но у Вас и в новом примере есть лишние определения именно за счет того, что у Вас координаты неправильно определяются. Все объекты у которых появляется координата вида, например, [344; 2,27373675443232E-13] или [-1,13686837721616E-13; 204] будут незамкнутыми. Посмотрите, Вы же сравниваете действительные числа с неизвестно чем

Николай

Вот пример, подтверждающий опасения Снегурочки:
Фигура построена стандартными привязками, и появилась четвёртая строчка несуществующего отрезка.

Просто автору библиотеки, необходимо сравнивать разницу координат с точностью до 9-10 (-10E9)знака после запятой. Если абсолютное значение разницы больше -10E9, точки не совпадают, если меньше, то совпадают.

igorkom

Николай, а можете выложить ваш пример в файле frw? Мне что-то не удается такое воспроизвести.

Николай

К сожалению- удалил этот фрагмент. Конечно, по хорошему надо было его вам и переслать.Если такое явление возникнет- сообщу. А пока можно доработать программу по замечаниям- и будет нормальный продукт.