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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Ширина, длина и высота Box'а (3dSolid)

Ширина, длина и высота Box'а (3dSolid)

Ответ
Поиск в этой теме
Непрочитано 16.02.2011, 00:11 #1
Ширина, длина и высота Box'а (3dSolid)
Rubль
 
Россия, Воронеж
Регистрация: 24.08.2009
Сообщений: 8

Здравствуйте.

Есть вопрос. Имеем обычный бокс шириной 20, длиной 300, высотой 500, нужно извлечь эти данные из примитива. все перерыл не могу понять как это сделать. Для чего нужно (просто логика) - конечная задача такая - в чертеже имеем много таких боксов, нажатием кнопки система создает список грубо скажем такой - бокс1__ширина-бокса1__длина-бокса1__высота-бокса1

в свойствах объекта эти параметры есть, командой list эти данные выдаются.... значит они в этом виде где то хранятся?... не может же быть что б система их пересчитывает каждый раз из координат точек?

как я понял dxf кодами можно поднять только координаты точек, кодов отвечающих именно за эти параметры - нет, или все таки есть???

соответствующих свойств ActiveX тоже не нашел....

Если не затруднит помогите решить задачу - извлечь из бокса параметры его длины, ширины и высоты...
Просмотров: 5956
 
Непрочитано 16.02.2011, 00:40
#2
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


http://www.caduser.ru/forum/index.ph...D=44&TID=22552
__________________
...в шее моей жилы железные, и лоб мой - медный...
Pastor вне форума  
 
Непрочитано 16.02.2011, 00:56
#3
Кулик Алексей aka kpblc
Moderator

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


А если тело повернуто в пространстве? Тогда надо ковырять DXF-представление тела (где-то в Download Евгений Елпанов выкладывал руководство по ACIS-формату, кажется)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.02.2011, 10:31
#4
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


То что выдает команда свойства, есть в истории создания фигур начиная кажется с 2007 автокада, но если тело было отредактированно какой-либо bool'евой операцией - то про них можно забыть - эти свойства "зарыты" где то глубоко под DXF кодами 310-330 - поищи по форуму - я кому-то выкладывал для цилиндров (созданных командой цилиндр), для ящиков (box'ов) там все по аналогии.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 16.02.2011, 11:09
1 | #5
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Функция GET-BOUNDINGBOX.

Вычисляет габаритный контейнер vla-объекта в проекциях на оси произвольной ПСК, заданной единичными векторами направления осей X и Y.
Возвращает список с габаритами объекта.
При сбое возвращает nil.

Пример вызова: (get-boundingbox (vlax-ename->vla-object (car(entsel))) (getvar 'ucsxdir) (getvar 'ucsydir))
Результат в данном примере зависит от того, как установлена текущая ПСК относительно измеряемого объекта.


Код:
[Выделить все]
(vl-load-com)

(defun get-boundingbox (vlao; измеряемый VLA-объект.
			xdir; единичный вектор оси X ПСК.
			ydir; единичный вектор оси Y ПСК.
			/
			adoc; указатель на активный документ.
			matrix; матрица преобразования.
			fantom; временная копия объекта.
			lay; указатель на слой временной копии.
			lock_back; статус слоя объекта.
			minb; буфер.
			maxb; буфер.
			)
  (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
  (cond
    ((vl-catch-all-error-p
       (vl-catch-all-apply
	 (function
	   (lambda ()	     
	     ; Принимаем меры к временному разблокированию слоя объекта:
	     (setq lay (vlax-invoke-method (vlax-get-property adoc 'layers) 'item (vlax-get-property vlao 'layer)))
	     (cond
	       ((equal (vlax-get-property lay 'lock) :vlax-true)
		(setq lock_back :vlax-true)
		(vlax-put-property lay 'lock :vlax-false)
	       );
	       (T (setq lock_back :vlax-false));
	     ); end cond.

	     ; Создаем объект-двойник и отключаем его видимость:
	     (setq fantom (vlax-invoke-method vlao 'copy))
	     (vlax-put-property fantom 'visible :vlax-false)

	     ; Получаем матрицу преобразования:
	     (setq matrix (get-ucs-matrix '(0.0 0.0 0.0) xdir ydir t nil)); обратная матрица правого вращения.
	     ;
	     ; Примененяем матрицу преобразования к копии объекта, вычисляем габаритный контейнер и удаляем копию:
	     (vlax-invoke-method fantom 'transformby matrix)
	     (vlax-invoke-method fantom 'getboundingbox 'minb 'maxb)
	     (vlax-invoke-method fantom 'delete)

	     ; Восстанавливаем состояние блокировки слоя объекта:
	     (vlax-put-property lay 'lock lock_back)
	   ); /lambda.
	 ); /function.
       ); /vl-catch-all-apply.
     ); /vl-catch-all-error-p.
     ; Если мы здесь, значит зафиксирован сбой.
     ; Аварийная зачистка:
     (vl-catch-all-apply 'vlax-invoke-method (list fantom 'delete))
     (vl-catch-all-apply 'vlax-put-property (list lay 'lock lock_back))
     nil; return on error.
    );
    (T (mapcar '- (vlax-safearray->list maxb) (vlax-safearray->list minb))); список с габаритами.
  ); end cond.
); end defun.


; Библиотечная функция.
; Описание см. http://www.caduser.ru/forum/index.ph...D=44&TID=27943
(defun get-ucs-matrix (org; начало координат ПСК - список из трех значений.
		       xdir; направление оси X ПСК - список из трех значений.
		       ydir; направление оси Y ПСК - список из трех значений.
		       right; вращение ПСК: T- правое или nil левое
		       direct; флаг получения T- прямой или nil- обратной матрицы.
		       /
		       x y z;
		       leng;
		       l1 m1 n1;
		       l2 m2 n2;
		       l3 m3 n3;
		       )
  (setq x (car org) y (cadr org) z (caddr org))
  (setq leng (distance '(0.0 0.0 0.0) xdir))
  (setq l1 (/ (car xdir) leng) m1 (/ (cadr xdir) leng) n1 (/ (caddr xdir) leng))
  (setq leng (distance '(0.0 0.0 0.0) ydir))
  (setq l2 (/ (car ydir) leng) m2 (/ (cadr ydir) leng) n2 (/ (caddr ydir) leng))
  (if right
    (setq l3 (- (* m1 n2) (* n1 m2))
     m3 (- (* n1 l2) (* l1 n2))
     n3 (- (* l1 m2) (* m1 l2))
    ); setq.
    (setq l3 (- (* m2 n1) (* n2 m1))
     m3 (- (* n2 l1) (* l2 n1))
     n3 (- (* l2 m1) (* m2 l1))
    ); setq.
  ); end if.
  (if direct
    (vlax-tmatrix (list (list l1 l2 l3 x) (list m1 m2 m3 y) (list n1 n2 n3 z) (list 0.0 0.0 0.0 1.0)))
    (vlax-tmatrix (list
          (list l1 m1 n1 (- (+ (* l1 x) (* m1 y) (* n1 z))))
          (list l2 m2 n2 (- (+ (* l2 x) (* m2 y) (* n2 z))))
          (list l3 m3 n3 (- (+ (* l3 x) (* m3 y) (* n3 z))))
          (list 0.0 0.0 0.0 1.0)
        ); list.
    ); vlax-tmatrix.
  ); end if.
); end defun.
__________________
...в шее моей жилы железные, и лоб мой - медный...

Последний раз редактировалось Pastor, 16.02.2011 в 11:19.
Pastor вне форума  
 
Непрочитано 16.02.2011, 11:27
#6
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


Вот оно, по box'ам - аналогично.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 16.02.2011, 11:31
#7
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Там, вами же, перечислена груда условий, которая не позволит практически использовать данный подход
__________________
...в шее моей жилы железные, и лоб мой - медный...
Pastor вне форума  
 
Непрочитано 16.02.2011, 11:33
#8
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


Данные о длинне, ширине и высоте находятся в там-же (в тех-же группах).
...когда я писал этот пост - он был ответом на неисправленный предыдущий - в таком виде он кажется смысл потерял
__________________
Когда в руках молоток все вокруг кажется гвоздями.

Последний раз редактировалось Дима_, 16.02.2011 в 11:57.
Дима_ вне форума  
 
Непрочитано 16.02.2011, 11:40
#9
Лиспер


 
Регистрация: 11.10.2010
Сообщений: 980


Не, народ, я говорю про такое (формат 2004). Код Pastor'a, конечно, лично меня поверг в шок (таким никогда не занимался, и, если повезет, и не буду ), но даст ли он гарантированно ожидаемый автором результат?
Вложения
Тип файла: dwg
DWG 2004
BoxRotated.dwg (37.0 Кб, 1332 просмотров)
__________________
(/= RegDate StartReadDate)
Лиспер вне форума  
 
Непрочитано 16.02.2011, 11:49
#10
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


То лиспер - насколько я понимаю делал ты его явно не в 2004 т.к.
Код:
[Выделить все]
 
((lambda (x)
  (mapcar '(lambda (cod) (cdr (assoc cod x)))
          '(40 41 42)))
 (member '(100 . "AcDbShPrimitive")
         (entget (cdr (assoc 360 
           (entget (cdr (assoc 360 
             (entget (cdr (assoc 350 
               (entget (entlast)))))))))))))
вернул ожидаемый результат (из истории).
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 16.02.2011, 11:54
#11
Лиспер


 
Регистрация: 11.10.2010
Сообщений: 980


Ага, делал в АА2008. Просто историю забыл обнулить...
__________________
(/= RegDate StartReadDate)
Лиспер вне форума  
 
Непрочитано 16.02.2011, 11:55
#12
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


Короче если в свойствах объекта д.ш.в. будет показыватся - то и мой код их увидит - вне зависимости от наклона и пр.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 16.02.2011, 13:27
#13
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Цитата:
Код Pastor'a, конечно, лично меня поверг в шок (таким никогда не занимался, и, если повезет, и не буду ), но даст ли он гарантированно ожидаемый автором результат?
Открыл приведенный вами в посте №9 файл, выровнял ПСК по объекту и выполнил код примера. Вот лог командной строки:
Код:
[Выделить все]
Command: _ucs
Current ucs name:  *WORLD*
Specify origin of UCS or [Face/NAmed/OBject/Previous/View/World/X/Y/Z/ZAxis] 
<World>: _3
Specify new origin point <0,0,0>:
Specify point on positive portion of X-axis <42528.68,9491.05,5743.28>:
Specify point on positive-Y portion of the UCS XY plane 
<42528.18,9491.92,5743.28>:
Command: (get-boundingbox (vlax-ename->vla-object (car(entsel))) (getvar 
'ucsxdir) (getvar 'ucsydir))

Select object: (7924.0 10672.1 12130.0)
размеры совпадают с параметрами из окна Properties.
__________________
...в шее моей жилы железные, и лоб мой - медный...
Pastor вне форума  
 
Непрочитано 16.02.2011, 13:41
#14
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


то Пастор - для чего Вы в матрицы полезли - ради двух поворотов?
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 16.02.2011, 14:11
#15
Pastor

это только кличка
 
Регистрация: 22.10.2006
Москва
Сообщений: 252


Ради очень удобного ActiveX-метода transformby - раз, и в дамки.
Функция get-ucs-matrix получилась очень скромного размера (имхо).
По другому, при использовании метода "двух поворотов", придется вычислить углы Эйлера, что займет не меньше места и времени.
Вот пример.

p.s.
Я не математик, не программист, и не специалист по САПР. Все что я публикую - поделки для частного пользования.
Можете написать лучше - напишите.
__________________
...в шее моей жилы железные, и лоб мой - медный...
Pastor вне форума  
 
Автор темы   Непрочитано 16.02.2011, 22:34
#16
Rubль


 
Регистрация: 24.08.2009
Россия, Воронеж
Сообщений: 8
<phrase 1=


Pastor, огромнейшая благодарность вам, правда с кодом до конца еще не разобрался, что к чему, но то что он работает - факт. теперь буду разбираться и затачивать под свои задачи. еще раз спасибо.

Дима_, я работаю в девятом акаде и там к сожалению все что касается dxf кодов 3d объектов работает некорректно, т.е. там не реально получить dxf коды ни ящика ни цилиндра.

Елси мы начертим ящик и потом введем вот такой код в командную строку
Код:
[Выделить все]
(setq a (entget (entlast)))
то получим вот это

Код:
[Выделить все]
joo rn o o V V |") (1 . ":;8: {rn rn {rn {lh rmjo {jo mjo {ll {go 90-(>-; _h 
*1410(1 |") (1 . ":;8: {rn rn {rn {li rmjo {jn mjo {lk {gn 90-(>-; _h *1410(1 
|") (1 . "/061+ {rn rn {rn lghqjgngnhlhojggfi rnloqfnmfogjoikmiim joo |") (1 . 
"/061+ {rn rn {rn lghqjgngnhlhojggfi rkloqfnmfogjoikmiim joo |") (1 . 
"/3>1:r,*-9><: {rn rn {rn lghqjgngnhlhojggfi rmgoqfnmfogjoikmiim mjo rn o o o o 
n -:):-,:@) V V V V |") (1 . "<0:;8: {rn rn {rn {km {kk {ki {hn 90-(>-; {mn {rn 
|") (1 . ":;8: {rn rn {rn {io rmjo {hm mjo {jg {gm 90-(>-; _h *1410(1 |") (1 . 
"):-+:' {rn rn {rn {hn o {gl |") (1 . ",+->687+r<*-): {rn rn {rn 
lhnqjgngnhlhojggfi rnloqfnmfogjoikmiim mjo o o rn V V |") (1 . ":;8: {rn rn {rn 
{if rnjo {hm njo {ih {gk 90-(>-; _h *1410(1 |") (1 . "):-+:' {rn rn {rn {kg o 
{gj |") (1 . ",+->687+r<*-): {rn rn {rn lhfqjgngnhlhojggfi rkloqfnmfogjoikmiim 
o n o o V V |") (1 . ",+->687+r<*-): {rn rn {rn lhfqjgngnhlhojggfi 
rnloqfnmfogjoikmiim o rn o o V V |") (1 . "/061+ {rn rn {rn lghqjgngnhlhojggfi 
rkloqfnmfogjoikmiim o |") (1 . "/061+ {rn rn {rn lghqjgngnhlhojggfi 
rnloqfnmfogjoikmiim o |") (1 . ",+->687+r<*-): {rn rn {rn lhnqjgngnhlhojggfi 
rmgoqfnmfogjoikmiim joo o n o V V |") (1 . "/061+ {rn rn {rn lhnqjgngnhlhojggfi 
rnloqfnmfogjoikmiim joo |") (1 . "/061+ {rn rn {rn lhnqjgngnhlhojggfi 
rkloqfnmfogjoikmiim joo |") (1 . ",+->687+r<*-): {rn rn {rn lghqjgngnhlhojggfi 
rkloqfnmfogjoikmiim mjo o o rn V V |") (1 . ",+->687+r<*-): {rn rn {rn 
lghqjgngnhlhojggfi rnloqfnmfogjoikmiim mjo o o rn V V |") (1 . ",+->687+r<*-): 
{rn rn {rn lhnqjgngnhlhojggfi rkloqfnmfogjoikmiim mjo o o rn V V |") (1 . 
"/061+ {rn rn {rn lhnqjgngnhlhojggfi rnloqfnmfogjoikmiim o |") (1 . 
",+->687+r<*-): {rn rn {rn lhnqjgngnhlhojggfi rmgoqfnmfogjoikmiim o o rn o V V 
|") (1 . "/061+ {rn rn {rn lhnqjgngnhlhojggfi rkloqfnmfogjoikmiim o |") (100 . 
"AcDb3dSolid") (350 . <Имя объекта: 7ef03438>))n rn {rn {nj {ki {kl {kf 
-:):-,:; {f {rn |") (1 . "<0:;8: {rn rn {rn {lk {ll {nj {mh 90-(>-; {lj {rn |") 
(1 . ":;8: {rn rn {rn {jo rnjo {jn njo {mi {jm 90-(>-; _h *1410(1 |") (1 . 
"<0:;8: {rn rn {rn {nh {ni {jl {jk -:):-,:; {i {rn |") (1 . "<0:;8: {rn rn {rn 
{jj {ml {ni {lo 90-(>-; {nl {rn |") (1 . ":;8: {rn rn {rn {ji rg {li g {mf {jh 
90-(>-; _h *1410(1 |") (1 . "<0:;8: {rn rn {rn {jg {jf {nh {lm 90-(>-; {ko {rn 
|") (1 . ":;8: {rn rn {rn {lh rg {io g {ln {in 90-(>-; _h *1410(1 |") (1 . 
"<0:;8: {rn rn {rn {mi {ng {jf {im 90-(>-; {lj {rn |") (1 . "<0:;8: {rn rn {rn 
{ng {mi {jj {il -:):-,:; {lj {rn |") (1 . "300/ {rn rn {rn {rn {lk {lf |") (1 . 
"):-+:' {rn rn {rn {nf o {ik |") (1 . "):-+:' {rn rn {rn {nf n {ij |") (1 . 
",+->687+r<*-): {rn rn {rn lghqjgngnhlhojggfi rmgoqfnmfogjoikmiim joo o rn o V 
V |") (1 . "9><: {rn rn {rn {rn {lj {l {rn {ii -:):-,:; ,6183: |") (1 . "300/ 
{rn rn {rn {rn {jf {mo |") (1 . "/3>1:r,*-9><: {rn rn {rn lhfqjgngnhlhojggfi 
rkloqfnmfogjoikmiim mjo o n o o o rn -:):-,:@) V V V V |") (1 . "<0:;8: {rn rn 
{rn {jl {ih {jg {ig -:):-,:; {mn {rn |") (1 . "<0:;8: {rn rn {rn {ml {jj {mj 
{kf 90-(>-; {nl {rn |") (1 . "<0:;8: {rn rn {rn {ih {jl {ml {kj 90-(>-; {mn {rn 
|") (1 . ":;8: {rn rn {rn {ji rmjo {if mjo {kk {ho 90-(>-; _h *1410(1 |") (1 . 
"<0:;8: {rn rn {rn {mj {mk {ih {hn -:):-,:; {f {rn |") (1 . "<0:;8: {rn rn {rn 
{jf {jg {mk {kg 90-(>-; {ko {rn |") (1 . ":;8: {rn rn {rn {hm rg {jo g {kh {hl 
90-(>-; _h *1410(1 |") (1 . ":;8: {rn rn {rn {jn rg {if g {kl {hk 90-(>-; _h 
*1410(1 |") (1 . "):-+:' {rn rn {rn {mh o {hj |") (1 . "):-+:' {rn rn {rn {il n 
{hi |") (1 . ",+->687+r<*-): {rn rn {rn lghqjgngnhlhojggfi rmgoqfnmfogjoikmiim 
o o n o V V |") (1 . "<0:;8: {rn rn {rn {kk {km {mg {jk 90-(>-; {mn {rn |") (1 
. ":;8: {rn rn {rn {io rnjo {ji njo {jl {hh 90-(>-; _h *1410(1 |") (1 . "<0:;8: 
{rn rn {rn {kl {mf {lk {il 90-(>-; {nl {rn |") (1 . "):-+:' {rn rn {rn {jk n 
{hg |") (1 . ",+->687+r<*-): {rn rn {rn lhfqjgngnhlhojggfi rnloqfnmfogjoikmiim 
joo n o o V V |") (1 . "<0:;8: {rn rn {rn {kh {ln {km {ig 90-(>-; {ko {rn |") 
(1 . "<0:;8: {rn rn {rn {ln {kh {ll {im -:):-,:; {ko {rn |") (1 . "):-+:' {rn 
rn {rn {lm n {hf |") (1 . ",+->687+r<*-): {rn rn {rn lhfqjgngnhlhojggfi 
rkloqfnmfogjoikmiim
аналогично и для цилиндра например.

ничего кроме 100 и 350 кодов извлечь из 3d объекта нереально. ну по крайней мере в девятом акаде.
все равно спасибо за то что откликнулись и предложили вариант решения.
Rubль вне форума  
 
Непрочитано 16.02.2011, 23:02
#17
Кулик Алексей aka kpblc
Moderator

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


Rubль, подобные действия крайне желательно выполнять как минимум не в командной строке...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 17.02.2011, 01:27
#18
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,407
Отправить сообщение для Александр Ривилис с помощью Skype™


Цитата:
Сообщение от Rubль Посмотреть сообщение
ничего кроме 100 и 350 кодов извлечь из 3d объекта нереально. ну по крайней мере в девятом акаде.
Ты пропустил группу 1, которая как раз и содержит зашифрованную информацию ACIS для твердого тела. Если не поленишься и воспользуешься поиском по этому форуму и форуму caduser.ru, то узнаешь много полезного.
Александр Ривилис вне форума  
 
Непрочитано 17.02.2011, 08:26
#19
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


Цитата:
Сообщение от Rubль Посмотреть сообщение
Дима_, я работаю в девятом акаде и там к сожалению все что касается dxf кодов 3d объектов работает некорректно, т.е. там не реально получить dxf коды ни ящика ни цилиндра.

Елси мы начертим ящик и потом введем вот такой код в командную строку
А вы вместо "вот такого кода" введите код из #10 - в 2009 он точно будет работать.
__________________
Когда в руках молоток все вокруг кажется гвоздями.

Последний раз редактировалось Дима_, 17.02.2011 в 10:11.
Дима_ вне форума  
 
Непрочитано 17.02.2011, 08:58
#20
Александр Ривилис

программист, рыцарь ObjectARX
 
Регистрация: 09.05.2005
Киев
Сообщений: 2,407
Отправить сообщение для Александр Ривилис с помощью Skype™


Дима_ Offtop: подправь цитату. Я такого не писал.
Александр Ривилис вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Ширина, длина и высота Box'а (3dSolid)

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с расчетом Ж/Б каркаса в ANSYS derik ANSYS 457 04.07.2017 16:16
Максимальная высота и минимальная ширина ступенек Sarman Архитектура 55 11.10.2016 23:57
Ширина проема выхода на лестничную клетку -ART- Архитектура 5 05.02.2015 22:27
Как получить свойства 3dSolid Box в VB... 99garry Программирование 8 22.06.2009 20:58
Подскажите серию жб. панелей (на фото), высота 1800, длина 6000, толщина 300. mosunova Поиск литературы, чертежей, моделей и прочих материалов 1 09.12.2008 09:31