Тема: МСК и ПСК

проблема у меня в следующем:
есть объект (полилиния, отрезок, и т.п.) - в общем любой, на который можно повесить тип линии.
Рисовался этот объект в системе координат - по виду (чтоб тип линии отобразился правильно).
Делаю копию этого объекта - выбираю грипсы и рисую в другом месте в координатах МСК.
Соответственно, тип линий отображается неправильно.
Ну и вопрос. Как убедить :) автокад в том, что объект нарисован в системе координат по виду а не в МСК.
Че-то я совсем запутался в матрицах преобразований.

Re: МСК и ПСК

Что-то у тебя каша в голове. В dwg-файле все примитивы хранятся в МСК (WCS). И при чем здесь "вид"? Ты не знаешь как преобразовать координаты ПСК<->МСК?

Re: МСК и ПСК

объяснить трудновато. попробую на примере.
например, меняем оси местами(X идет вверх, Y - влево, Z - не важно) Рисуем полилинию. Даем ей тип линии (например, с текстом). ОТОБРАЖАЕТСЯ ЗЕРКАЛЬНО.
После этого ставим систему координат по виду. Рисуем полилинию рядом с первой. Даем ей тот же тип линии. ОТОБРАЖАЕТСЯ ПРАВИЛЬНО.
Если я правильно понимаю, то за каждым элементом закрепляется еще и матрица визуализации (или что-то в этом роде)
Так вот что сделать, чтоб положение объекта осталось то же, а тип линии отображался, как-будто объект нарисован был в СК по виду.

Re: МСК и ПСК

> Николай
Нарисуй то, что ты описал, в командной строке AutoCAD набери:

(entget (car (entsel)))

сначала для одной, потом для второй полилинии и сравни результаты.
То о чем ты говоришь называется ОСК (ECS). К "визуализации" и виду вообще она не имеет никакого отношения.

Re: МСК и ПСК

для полилинии нарисованной в МСК:

Выберите объект: ((-1 . <Имя объекта: 7efaf3a0>) (0 . "LWPOLYLINE") (330 . <Имя
объекта: 7efadcf8>) (5 . "1B4") (100 . "AcDbEntity") (67 . 0) (410 . "Model")
(8 . "0") (6 . "-ШВ-") (48 . 2.0) (100 . "AcDbPolyline") (90 . 4) (70 . 1) (43
. 0.0) (38 . 0.0) (39 . 0.0) (10 249.413 -6.94765) (40 . 0.0) (41 . 0.0) (42 .
0.0) (10 178.536 -6.94765) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 178.536
172.033) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 249.413 172.033) (40 . 0.0) (41 .
0.0) (42 . 0.0) (210 0.0 0.0 1.0))

для полилинии нарисованной в СК по виду:

Выберите объект: ((-1 . <Имя объекта: 7efaf410>) (0 . "LWPOLYLINE") (330 . <Имя
объекта: 7efadcf8>) (5 . "1BA") (100 . "AcDbEntity") (67 . 0) (410 . "Model")
(8 . "0") (6 . "-ШВ-") (48 . 2.0) (100 . "AcDbPolyline") (90 . 4) (70 . 1) (43
. 0.0) (38 . 0.0) (39 . 0.0) (10 -163.301 -6.94765) (40 . 0.0) (41 . 0.0) (42 .
0.0) (10 -163.301 172.033) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 -75.8635
172.033) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 -75.8635 -6.94765) (40 . 0.0) (41
. 0.0) (42 . 0.0) (210 1.22465e-016 2.54072e-033 -1.0))

Re: МСК и ПСК

ECS определяется группой 210. Обрати на нее внимание. У первой полилинии ECS совпадает с WCS, у второй Z ECS направлено вниз, а не в вверх как у WCS.