(изменено: Евгений, 1 апреля 2013г. 11:16:54)

Тема: Подавление примитивов внутри объекта.

Добрый день.
Существует ли возможность выполнить контур подавления внутри одного объекта, что бы он перекрывал определенные примитивы этого же объекта? см. видео
Сейчас эта задача решена не очень удобно. Внешние границы контура на самом деле представляют собой три отрезка. И когда координаты отверстия совпадают с координатами внешнего контура, средний из трех отрезков получает параметр видимости = 0.
Это очень муторно.
Может можно решить проблему с помощью штриховки или контура подавления? У меня не получилось решить проблему...но может я что-то не так делаю...

Re: Подавление примитивов внутри объекта.

Два разных объекта вас не устроят?

Re: Подавление примитивов внутри объекта.

К сожалению нет )
Это огромный сложный объект ж.б. плиты, с арматурным каркасом, кучей исполнений...все должно быть включено )

(изменено: Яков, 2 апреля 2013г. 09:36:13)

Re: Подавление примитивов внутри объекта.

Возьмите в качестве примера объекты "Стройплощадки". Кран например. В отрисовке вида найдите DrawReference.

Позволяет внутри отрисовки одного вида добавлять отрисовку другого. Сильно упрощает образмеривание сложных видов. позволяется использовать сложные необразмеренные виды в отрисовке и поворачивать их с помощью гриппоинтов.
DesignName="SysViewName";
DrawReference(DesignName, VFRONT, pnt, vecDir, vecPlane, scale, bDisableCache = FALSE, iReplaceLineType= -1,  bCutPrevius = FALSE);
bDisableCache по умолчанию кэширование включено, выключать надо если вид параметрический.
iReplaceLineType если -1, то ничего не делается, если же отлично, то заменяет тип линии 1 на iReplaceLineType.
bCutPrevius , если TRUE то будет вырезать из всей предыдущей отрисовки, контуром из этого референса.
Распознование с чертежа:
вставка блока содержащаяя линию+текст, образмеривать нужно линию, длина линии не будет учитыватся, но образмерить ее придется.
текст должен быть в таком виде:
DrawReference(DesignName, VFRONT, 1.0);
или
DrawReference(DesignName, VFRONT, 1.0,FALSE, -1, FALSE);
т.е. координатная составляющая будет подставлена автоматически. остальные параметры пойдут в команду отрисовки.
Для указания вектора vecPlane референса в блок нужно включить вторую линию, перпендикулярную первой. Если второй линии не будет, то направление вида будет браться по-умолчанию.

Re: Подавление примитивов внутри объекта.

Яков, а не могли бы вы на почту выслать пример крана...за отсутствием стройплощадки... )

(изменено: Яков, 3 апреля 2013г. 07:00:57)

Re: Подавление примитивов внутри объекта.

Если сегодня, то проще скачать и установить http://www.spds.ru/download/ppr/ppr-3.html. А утром смогу выложить sad
Смотри почту.

(изменено: Евгений, 3 апреля 2013г. 17:57:23)

Re: Подавление примитивов внутри объекта.

Спасибо )
DrawReference - у меня с горем пополам заработал, но с bCutPrevius разобраться не получается.
При bCutPrevius = TRUE - референс отрисовывается, но ничего не вырезает при этом, а если поставить bCutPrevius = FALSE, вообще референс не отрисовывается...

Re: Подавление примитивов внутри объекта.

Яков, подскажите пожалуйста...
можно ли заставить DrawReference отображать текст?