Тема: Объект не параллелен ПСК. Как изменить ситуацию?

В чертеже есть некая кривая, разбитая на разные примитивы. Все примитивы "стыкуются" в смежных вершинах. Однако, при попытке объединить их, возникает проблема, из-за того, что некоторые из них не параллельны ПСК.
Вот список по одному их таких примитивов:
ARC       Layer: "CTROENIY"
                            Space: Model space
                   Color: 1 (red)    Linetype: "DGN Style 4"
                   Handle = BAF57
            center point, X=-18024.9709  Y=-10176.4225  Z=   0.0000
            radius  267.3900
Extrusion direction relative to UCS:
                   X=   0.0000  Y=   0.0000  Z=  -1.0000
            length   35.0701
             total angle 7d30'53.13"

Как исправить ситуацию, чтобы можно было бы объединить примитивы в одну полилинию?

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Иногда помогает просто поставить ПСК по трем точкам на этих примитивах. Если конечно они действительно в одной плоскости.

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Судя по объекту, этот чертеж был сделан в Microstation. Особенность - координата Z вершин показывает высоту над уровнем моря. Если этот параметр не важен, то попытайтесь сбросить координату Z для всех объектов в 0 (посмотрите поиском по форуму). Проверьте вершины дуг, может их придется вручную подтягивать к отрезкам. И тогда можно будет объединить все в полилинию.

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Совершенно верно - этот объект из Microstation. Но все координаты Z (начало, конец, середина и центр дуги) равны 0. Вот список по этой же дуге, которая превращена в LWPOLYLINE командой _PEDIT:
LWPOLYLINE  Layer: "CTROENIY"
                            Space: Model space
                   Color: 1 (red)    Linetype: "DGN Style 4"
                   Handle = BE55E
              Open
    Constant width    0.0000
Extrusion direction relative to UCS:
                   X=   0.0000  Y=   0.0000  Z=  -1.0000

              area   13.4311
            length   35.0701
          at point  X=-18279.4675  Y=-10258.4524  Z=   0.0000
             bulge    0.0328
            center  X=-18024.9709  Y=-10176.4225  Z=   0.0000
            radius  267.3900
       start angle 342d8'4.96"
         end angle 349d38'58.09"
          at point  X=-18288.0097  Y=-10224.4644  Z=   0.0000
Не могу разобраться со строкой, выделенной жирным шрифтом - автокад не дает возможности изменить параметр Z=-1.0000. А в нем все проблемы.

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Пришли чертеж, попробую посмотреть.
serg_cstrade.koenig.ru
Вместо "_" известный символ.

Re: Объект не параллелен ПСК. Как изменить ситуацию?

> Коваленко Сергей
Послал. Заранее спасибо.

Re: Объект не параллелен ПСК. Как изменить ситуацию?

А такие команды как ELEVATION, THIСKNESS не помогают?

Re: Объект не параллелен ПСК. Как изменить ситуацию?

> SAF
Судя по выделенным строкам, направление выдавливания у одних элементов с плюсом, у других с минусом. Т.е. они в одной плоскости, но часть их -  "вниз головой". Можно попробовать отзеркалить "минусовые" относительно плоскости XY командой _mirror3d

Re: Объект не параллелен ПСК. Как изменить ситуацию?

> Геннадий aka PG
Насколько я знаю, команда ELEV не применяется к какому-либо выбранному примитиву, а изменяет текущую настройку Автокада. То же thickness. С ними ничего не получается.

> Андрей С.
Нет. выдавливание у всех в одну сторону (все Z=-1.0000)

Re: Объект не параллелен ПСК. Как изменить ситуацию?

У SAF проблема в том, что дуга создавалась в ПСК. В ПСК положительное направление осей X и Z противоположно направлению этих осей в МСК (X направлена влево, Z - вниз).

Re: Объект не параллелен ПСК. Как изменить ситуацию?

/b

Re: Объект не параллелен ПСК. Как изменить ситуацию?

asdfasjdghjasdg

Re: Объект не параллелен ПСК. Как изменить ситуацию?

провел эксперимент. Установил ПСК "наоборот" - X влево, Z вниз. Нарисовал несколько дуг. Попробовал - объединяются.
Перешел в МСК. Не объединяются - The object is not parallel to the UCS, т.е. случай SAF'а. Может, установить-таки текущей такую ПСК? Главное, чтобы направление оси Z ПСК соответствовало направлению выдавливания примитивов - угол поворота вокруг Z не важен...

Re: Объект не параллелен ПСК. Как изменить ситуацию?

> Андрей С.
Все так, но у меня часть примитивов создана в МСК, а часть - в ПСК. Но мне их надо объединить в одну полилинию. Если я изменю ПСК по этой дуге, то другие примитивы станут непараллельны ПСК.

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Что-то непонятно. Выше было сказано, что у всех примитивов вектор выдавливания один и тот же, значит, направление оси Z в ПСК, где они создавались, тоже совпадает. Пришли файл, может, я чего-то не догоняю....

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Примитивы не параллельные МСК создаются в программах использующих геодезическую СК, у которой оси Х и У поменялись местами, а ось Z имеет орт -1, т.е. координатные оси ХУ повернуты на 90 градусов относительно OZ и вся система отзеркалена относительно OX.
Ваша ситуация решается при помощи команды _mirror3d, см. листинг:
Command:
PEDIT Select polyline or [Multiple]:
The object is not parallel to the UCS.
Select polyline or [Multiple]: *Cancel*
Command: _mirror3d
Select objects: 1 found
Select objects:
Specify first point of mirror plane (3 points) or
[Object/Last/Zaxis/View/XY/YZ/ZX/3points] <3points>: XY
Specify point on XY plane <0,0,0>:
Delete source objects? [Yes/No] <N>: y
Command: pedit
Select polyline or [Multiple]:
Enter an option [Close/Join/Width/Edit vertex/Fit/Spline/Decurve/Ltype
gen/Undo]: j
Select objects: 1 found
Select objects:
3 segments added to polyline
Enter an option [Close/Join/Width/Edit vertex/Fit/Spline/Decurve/Ltype
gen/Undo]:

Re: Объект не параллелен ПСК. Как изменить ситуацию?

Пришли чертеж, охота тоже посмотреть и подумать, что можно сделать.
Адрес: 3dcad@3dcad.ru

Re: Объект не параллелен ПСК. Как изменить ситуацию?

> SAF
Чертеж получил, протокол того, как удалось решить задачу, отправил. Как я и говорил в посте от 2004-09-21 17:11:11, если отзеркалить "неправильный" примитив командой _mirror3d относительно плоскости XY, все объединяется. Особенно удобно использовать pljoin из Express Tools.
Поскольку у SAF'а таких линий много, самое главное - их все выловить. Задачу решил бы простенький лисп, выбирающий все примитивы с направлением выдавливания 0,0,-1 и, к примеру, помещающий их на отдельный слой. Может, кто поможет человеку? После этого все уже просто.