(изменено: Владимир Азарко, 12 июня 2009г. 12:43:55)

Re: Объём земляных работ

1. У объектов Автокада есть метод IntersectWith. С помощью его можно найти точку пересечения одного объекта с другим. Можно воспользоваться готовой функцией VxGetInters
2. Вряд ли у твоей полилинии будут дуговые сегменты, поэтому:
  - полилинию можно проеставить как набор отрезков
  - В dxf представлении 3Dface (группы 10 11 12) можно взять координаты вершин.
  - с помошью Autolisp функции inters найти перечение граней с полилинией.
Меня как-то просили написать программку для обрисовки 3Dface отрезками. Это как небольшой пример

(DEFUN C:3DF_convert ( / e1 int:i ed pt10 pt11 pt12 clay model-space cd1 osm )
  (setvar "CMDECHO" 0)
  (vl-load-com)
  (setq    model-space
     (vla-get-modelspace
       (vla-get-activedocument
         (vlax-get-acad-object)
       )
     )
  )
  
;;;  (initget "Yes No")
;;;  (setq e1 (getkword "\nПерерисовать 3DFACE отрезками [Yes/No]:"))
  (setq e1 "YES")
  (if (= (strcase e1) "YES")
    (progn
      (setq PICK1 nil
        PICK1 (ssget "_X" '((0 . "3DFACE")))
      )
      
      (setq int:i 0)
          (setq clay (getvar "CLAYER"))
          (command "_LAYER" "_M" "3DLine" "")
          (setq osm (getvar "OSMODE"))
      (while (and PICK1 (setq e1 (ssname PICK1 int:i)))
            (setq ed (entget e1))
        (setq pt10 (vlax-3d-point (cdr(assoc 10 ed))))
        (setq pt11 (vlax-3d-point (cdr(assoc 11 ed))))
        (setq pt12 (vlax-3d-point (cdr(assoc 12 ed))))
        (vla-AddLine model-space pt10 pt11)    
        (vla-AddLine model-space pt11 pt12)
        (vla-AddLine model-space pt12 pt10)
            (setq int:i (1+ int:i))
        (setq cd1 (* int:i 0.001))
        (if (zerop (- cd1 (fix cd1)))(progn  (princ "\r")(princ int:i)))
      )
          (setvar "OSMODE" osm)
    )
  )
  (command "_LAYER" "_M" clay "")
  (setq PICK1 nil)
 (princ) 
)

(изменено: Disney, 13 июня 2009г. 23:53:23)

Re: Объём земляных работ

Спасибо, Владимир, что откликнулись.
Пошел я по простому пути:

- В dxf представлении 3Dface (группы 10 11 12) можно взять координаты вершин.

Кстати почему (группы 10 11 12)?

((-1 . <Имя объекта: 7ef0bcc8>) (0 . "3DFACE") (330 . <Имя объекта:
7ef05fa0>) (5 . "979") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "0")
(62 . 3) (6 . "Continuous") (100 . "AcDbFace") (10 1092.02 1315.07 102.982) (11
1092.02 1315.07 102.982) (12 1073.46 1305.51 102.661) (13 1092.37 1302.89
103.088) (70 . 0))

т.е. 10 и 11 одинаковы
Вот что получилось

(defun geo_z
       (T1 / 3Df A B C dBx dBy dBz dCx dCy dCz dT1x dT1y Zx Zy )
;T1 точка в которой необходимо определить Z 3DFACE
  (VL-CMDF "_vscurrent"
       "_h"
  )
  (setq    3Df  (ssget "_C"
            (polar t1 5.49778714 0.0001414214)
            (polar t1 2.35619449 0.0001414214)
            '((0 . "3DFACE"))
         )
    A    (CDR
           (ASSOC 11 (ENTGET (SSNAME 3Df 0)))
         )
    B    (CDR
           (ASSOC 12 (ENTGET (SSNAME 3Df 0)))
         )
    C    (CDR
           (ASSOC 13 (ENTGET (SSNAME 3Df 0)))
         )
    dBx  (- (nth 0 B) (nth 0 A))
    dBy  (- (nth 1 B) (nth 1 A))
    dBz  (- (nth 2 B) (nth 2 A))
    dCx  (- (nth 0 C) (nth 0 A))
    dCy  (- (nth 1 C) (nth 1 A))
    dCz  (- (nth 2 C) (nth 2 A))
    dT1x (- (nth 0 T1) (nth 0 A))
    dT1y (- (nth 1 T1) (nth 1 A))
    Zy   (/ (- (* dCz dBx) (* dCx dBz)) (- (* dBx dCy) (* dCx dBy))) ;_изменение Z по Y
    Zx   (/ (- dBz (* dBy Zy)) dBx) ;_изменение Z по X
    T1z  (+ (nth 2 A) (* dT1x Zx) (* dT1y Zy))
      )

  (VL-CMDF "_vscurrent"
       "_2"
  )

)

Не нашел переменной отвечающей за визуальный стиль, при 2Dкаркас выбрать 3DFACE можно только ухватившись за его ребро, по этому пришлось переключать визуальный стиль, а вот каким он был раньше, чтоб восстановить его?
Новая задача:
1) Построить контур (замкнутая полилиния), являющийся общим для двух других контуров.
2) Построить сетку из прямоугольников по заданным размерам, внутри контура, причём чтоб по периметру, примыкая к контуру, прямоугольники повторяли его конфигурацию, так же внутри контура могут быть характерные лини (полилинии) перелома рельефа, по которым также надо разбить прямоугольники на части.

Re: Объём земляных работ

По п.1 может это подойдет LISP. Отрисовка внешнего контура выбранных объектов

Re: Объём земляных работ

Владимир, я наверно немного не точно выразился по п.1, мне нужно получить контур, который как бы был контуром штриховки, если бы мы создали штриховку указав точку где-то внутри двух контуров.
Уже почти решил:
Иду по вершинам 1-го контура, дохожу до пересечения со 2-ым, дальше иду по 2-му до следующего пересечения...
Только сразу не угадаешь, получиться внутренний или наружный контур, поэтому создаю оба, а потом больший по площади удаляю. Осталось рассмотреть варианты: вершина на пересечении.

Re: Объём земляных работ

Помотри команду _-boundary
1. Запоминаешь имя (entlast) последнего примитива
2. _-boundary
3. Запоминаешь имя (entlast) последнего примитива
4. Сравниваешь результат в п.1 и п.3. Если имя одно и то же, то контур не создан. Если разные, то п.3 и есть искомый контур.

Re: Объём земляных работ

Владимир Азарко пишет:

Помотри команду  _-boundary 
1. Запоминаешь имя (entlast) последнего примитива
2.  _-boundary 
3. Запоминаешь имя (entlast) последнего примитива
4. Сравниваешь результат в п.1 и п.3. Если имя одно и то же, то контур не создан. Если разные, то п.3 и есть искомый контур.

Спасибо!
Наверно на будущее, прежде чем сочинять функцию, я буду сначала спрашивать у людей: - "А нет ли уже такой готовой в AutoCAD-е"
Сначала сломал мозг, ища общую точку для двух контуров, чтоб передать её в _-boundary, потом вернулся к своему варианту (в предыдущем посте), а потом решил, что не стоит изобретать велосипед и установил Geonics :D

Re: Объём земляных работ

Disney пишет:

Нашёл программу Евгения Елпанова
программа триангуляции облака точек
Она строит поверхность из треугольников примитивами 3dFace.
Так вот, чтоб автоматизировать подсчёт и оформления объёмов земляных работ, есть идеи по написанию программы которая сама будет строит сетку, и в каждом пересечении определять отметку.
   как можно найти координату пересечения полилинии с  3Dface -ом, т.е. предполагается из каждого пресечения сетки опускать нормаль на поверхность и находить отметку Z (Н) поверхности.

ничего не понял...
Зачем искать пересечения 3dface и полилиний? Объем, не сложно посчитать и по триангулированной сетке.
ps. В моей программе, можно взять одно ядро, вычисляющее координаты треугольников, после триангуляции.
Далее, находим пересечение любой линии и сторон треугольника, если пересечения есть, то их не более двух, т.е. после соединения, получаем отрезок. Но это для треугольника и линии в одной плоскости. Если же нужно найти пересечение плоскости и линии - переводи линию в нормаль плоскости и находи пересечение линии и ее же, но с высотой в начале и конце, равной высоте плоскости...
Потом переводи полученную точку в исходную систему координат линии.

Re: Объём земляных работ

Евгений Елпанов пишет:

ничего не понял...

Правильно, не поняли, вы же не геодезист, да и возможно я не совсем чётко ставлю задачу, и ещё менее чётко её решаю
Попробую объяснить:
1) Использования одного лишь ядра будет не достаточно, потому что ваша программа не научена учитывать контур поверхности, и характерные линии внутри поверхности (перелом рельефа: бровки-подошвы откосов и пр.), которые не стоит пересекать 3dFace-ми поэтому после создания поверхности, приходиться руками немного править 3dFace-ы, дабы поверхность адекватно отражала фактический рельеф местности.
2) Посчитать объём по триангулированной сетке не сложно, но надо не только посчитать объём, а ещё и оформить исполнительную схему, по которой любому(заказчику, технадзору и др.) будет понятно от куда этот объём берётся, как оформлять изложено в ГОСТ 21.508-93, обсуждалось рядом Как посчитать Объем земляных масс в Автокаде
3) Т.е. нам необходимо построить сетку из квадратов, скажем 10х10, в углу каждого квадрата определить отметку поверхности в данной точке (для чего нужна эта отметка читаем в  1 посте, кстати Геодезист это я). Так вот для определения этой отметки я и хотел искать координату пересечения полилинии, опущенной из угла квадрата сетки, на поверхность из 3dFace-ов.

Re: Объём земляных работ

Действительно, я не геодезист...
Видимо, ваши методы уходят корнями в чертежи на бумаге и подсчеты в столбик.
Я в свое время, делал программу для построения горизонталей по облаку точек и подсчету объемов, площадей, вертикальных сечений. Но такого как у вас усложнения не делал.
Удачи! :)

Re: Объём земляных работ

Здравствуйте, не могли бы помочь, добавить ручной ввод площади полилинии, или её масштаб (черчу в мм.)




(DEFUN c:raz  (/ TEXT TEXT_1 TEXT_2 OLD_DIM)
;|
вычисляет разницу между проектными и существующими отметками
|;
  (setq OLD_DIM (getvar "dimzin"))
  (IF
    (AND
      (SETQ text_1 (ENTSEL "\nПроектная отметка: "))
      (SETQ text_2 (ENTSEL "\nОтметка земли: "))
      (SETQ text_1 (CDR (ASSOC 1 (ENTGET (SETQ text (CAR text_1))))))
      (SETQ text_2 (CDR (ASSOC 1 (ENTGET (CAR text_2)))))
      (SETQ text_1 (ATOF text_1))
      (SETQ text_2 (ATOF text_2))
      )
     (PROGN
       (VL-CMDF "_.copy" text "" "_none" '(0 0 0) "_none" '(0 0 0))
       (SETQ text (ENTGET (ENTLAST)))
       (setvar "dimzin" 4)
       (ENTMOD
    (SUBST   (CONS 1 (STRCAT "(" (RTOS (- text_1 text_2) 2 2) ")"))
      (ASSOC 1 text)
      text))
       (setvar "dimzin" OLD_DIM)
       (VL-CMDF "_.change" "_l" "" "_p" "_co" 5 "")
       (VL-CMDF   "_.move"
      "_l"
      ""
      "_none"
      (CDR (ASSOC 10 (ENTGET (ENTLAST))))
      )
       )
     )
  )
(DEFUN c:ob  (/ I NABOR NN PLO SUMA TEXT OLD_DIM)
;|
вычисляет объем срезки\насыпи по разнице отметок и площаде фигуры
|;
  (setq OLD_DIM (getvar "dimzin"))
  (IF
    (AND
      (SETQ nabor (SSGET '((0 . "*text") (1 . "(*)") (62 . 5))))
      (SETQ plo (ENTSEL "\nУчасток: "))
      (SETQ plo (CAR plo))
      (SETQ plo (VLA-GET-AREA (VLAX-ENAME->VLA-OBJECT plo)))
      )
     (PROGN
       (SETQ nn     (SSLENGTH nabor)
        i     -1
        suma 0.0)
       (REPEAT nn
    (SETQ suma
      (+
        suma
        (ATOF
          (VL-STRING-TRIM
            "()"
            (CDR
         (ASSOC
           1
           (ENTGET (SSNAME nabor (SETQ i (1+ i))))))))))
    )
       (SETQ suma (* (/ suma nn) plo))
       (VL-CMDF   "_.copy"
      (SSNAME nabor 0)
      ""
      "_none"
      '(0 0 0)
      "_none"
      '(0 0 0))
       (SETQ text (ENTGET (ENTLAST)))
       (setvar "dimzin" 4)
       (ENTMOD
    (SUBST   (CONS 1 (RTOS suma 2 2))
      (ASSOC 1 text)
      text))
       (setvar "dimzin" OLD_DIM)
       (VL-CMDF "_.change" "_l" "" "_p" "_co" 1 "")
       (VL-CMDF   "_.move"
      "_l"
      ""
      "_none"
      (CDR (ASSOC 10 (ENTGET (ENTLAST))))
      )
       )
     )
  )

Re: Объём земляных работ

Граждане сочувствующие помогите страждущему, поправьте код чтоб результат вставлялся в существующий текст и без скобок ...   :cry:

(defun c:raz1  (/ text text_1 text_2 old_dim etext *error* delta)
;|
вычисляет разницу между проектными и существующими отметками
|;
(defun *error*(msg)(princ msg)(setvar "dimzin" old_dim)(princ))
(setq old_dim (getvar "dimzin"))
(setvar "dimzin" 0)
(and
 (setq text_1 (car(entsel "\nПроектная отметка: ")))
 (wcmatch (cdr(assoc 0 (entget text_1))) "*TEXT")
 (setq text_2 (car(entsel "\nОтметка земли: ")))
 (wcmatch (cdr(assoc 0 (entget text_2))) "*TEXT")
 (setq text_1 (cdr (assoc 1 (entget (setq text text_1)))))
 (setq text_2 (cdr (assoc 1 (entget text_2))))
 (setq text_1 (atof text_1))
 (setq text_2 (atof text_2))
 (setq delta (- text_1 text_2))
 (setq etext (entget text))
 (setq etext (entmakex (subst  (cons 1 (strcat
                           (if (> delta 0) "(+" "(")
                           (rtos delta  2 2) ;_здесь происходит округление
                           ")"))
                   (assoc 1 etext)
                   etext)
           )
        )
      (princ "\nТочка втавки разности отметок: ")
      (VL-CMDF "_.change" "_l" "" "_p" "_co" 5 "")
      (vl-cmdf "_.copybase" (trans (cdr (assoc 10 (entget etext))) 0 1) etext "" "_.erase" etext "" "_.pasteclip" "_none" pause)
      )
  (setvar "dimzin" old_dim)

  )

Re: Объём земляных работ

Largo_GT пишет:

Граждане сочувствующие помогите страждущему, поправьте код чтоб результат вставлялся в существующий текст и без скобок ..

1. результат вставлялся в существующий текст - не понял в какой
2. без скобок. Что мешает убрать их, религия?

(setq etext (entmakex (subst  (cons 1 (strcat 
                           (if (> delta 0) "+" "") 
                           (rtos delta  2 2) ;_здесь происходит округление
                           "")) 
                   (assoc 1 etext) 
                   etext) 
           ) 
        )

Re: Объём земляных работ

Alan aka Александр Назаров пишет:

1. результат вставлялся в существующий текст - не понял в какой

Я копирую в каждый угол квадрата (прямоугольника, треугольника...) три цифры: одна до выемки (черная), другая после выемки грунта(красная) и еще одна это их разница. Далее я высчитываю вручную черные и красные отметки и с помощью этого лиспа хочу вставлять их разницу в существующий текст (это избавит от точного "выцеливания" нужного места).

2. без скобок. Что мешает убрать их, религия?

(setq etext (entmakex (subst  (cons 1 (strcat 
                           (if (> delta 0) "+" "") 
                           (rtos delta  2 2) ;_здесь происходит округление 
                           "")) 
                   (assoc 1 etext) 
                   etext) 
           ) 
        )

Отсутствие элементарных знаний языка LISP, что в этом коде необходимо убрать ?

Re: Объём земляных работ

Если вы хотите чтобы вас поняли, говорите разборчиво...

Я копирую в каждый угол квадрата (прямоугольника, треугольника...) три цифры: одна до выемки (черная), другая после выемки грунта(красная) и еще одна это их разница.

Ну это похоже на действия проектировщика использующего Автокад как кульман.

Далее я высчитываю вручную черные и красные отметки

Вроде они были вставлены в предыдущем действии?

и с помощью этого лиспа хочу вставлять их разницу в существующий текст (это избавит от точного "выцеливания" нужного места).

ИМХО. Проще создать блок с тремя атрибутами. Тогда потребуется только одно указание, все остальные действия просты как угол дома.

что в этом коде необходимо убрать ?

(setq etext (entmakex (subst  (cons 1 (strcat 
                           (if (> delta 0) "+" "") 
                           (rtos delta  2 2) ;_здесь происходит округление 
                           "")) 
                   (assoc 1 etext) 
                   etext) 
           ) 
        )

в этом кусочке текста всё уже убрано.

Re: Объём земляных работ

Если вы хотите чтобы вас поняли, говорите разборчиво...

постараюсь

Ну это похоже на действия проектировщика использующего Автокад как кульман.

а разве этот лисп не для любителей "кульманCADa"? Про существование GeoniCS я осведомлен, но пока не было времени с ним разобраться, считать картограммы это не основной род занятий.

ИМХО. Проще создать блок с тремя атрибутами. Тогда потребуется только одно указание, все остальные действия просты как угол дома.

До атрибутов я еще не добрался... в этом блоке разница будет высчитываться автоматом и можно задать цвет текста, точку(запятую)в значении?

в этом кусочке текста всё уже убрано.

Вот за это спасибо.

(изменено: Alan aka Александр Назаров, 4 декабря 2013г. 13:42:44)

Re: Объём земляных работ

в этом блоке разница будет высчитываться автоматом и можно задать цвет текста, точку(запятую)в значении?

Да всё что угодно! :D
Больше того, тогда можно выделить все(!) блоки отметок и за 1(одну) сек. получить подписанную разницу.
>Largo_GT
Посылал тебе сообщение в Личку, хотел прислать Блок с атрибутами (тут нельзя его прикрепить) и Лиспик к нему.

Re: Объём земляных работ

Alan aka Александр Назаров пишет:

можно выделить все(!) блоки отметок и за 1(одну) сек. получить подписанную разницу.

Сделали с Largo_GT и тот и этот вариант. Если кому-то интересно, можно опубликовать.

Re: Объём земляных работ

Alan пишет:
Alan aka Александр Назаров пишет:

можно выделить все(!) блоки отметок и за 1(одну) сек. получить подписанную разницу.

Сделали с Largo_GT и тот и этот вариант. Если кому-то интересно, можно опубликовать.

Добрый день. Было бы ОЧЕНЬ интересно посмотреть на этот блок и Lisp. Можете опубликовать?

(изменено: Alan, 19 апреля 2019г. 16:53:43, причина: Добавим текст)

Re: Объём земляных работ

Erema_Misha пишет:
Alan пишет:
Alan aka Александр Назаров пишет:

можно выделить все(!) блоки отметок и за 1(одну) сек. получить подписанную разницу.

Сделали с Largo_GT и тот и этот вариант. Если кому-то интересно, можно опубликовать.

Добрый день. Было бы ОЧЕНЬ интересно посмотреть на этот блок и Lisp. Можете опубликовать?

Я только помогал Largo_GT править Лисп. В моих архивах и следов то этого не осталось...
М.б. у Largo_GT осталось? Если очень надо, пишите ему. Я на месяц в отпуск отбываю.
Хотя какой-то ЛИСП-текст нашел.
(defun c:raz2 (/ ss el spmr delta att seqend a_name new_value att0 att)
          ;|
вычисляет разницу между проектными и существующими отметками
и вставляет её в блок otm01
   
|;
;;;  ===========; считывание  атрибутов в список ss  ======================
  (setq ss nil)
  (while (null ss)
    (setq ss (ssget '((0 . "INSERT") (2 . "OTM01"))
         ) ;_ конец ssget
    ) ;_ setq
  ) ;_ while
;;;  (setq el (car (entsel "\nУкажите блок: ")))
;;;      Цикл чтение АТРИБУТОВ
  (setq i 0)
  (if ss
    (progn
      (while (setq el (ssname ss i)) ; el -   примитив

    (setq att (entnext el))
    (setq seqend (cdr (assoc 0 (entget att))))
;;;                    ; пока есть атрибуты в блоке
    (while (not (eq seqend "SEQEND"))
;;;                    ; имя атрибута
      (setq    att_name  (cdr (assoc 2 (entget att)))
        att_value (cdr (assoc 1 (entget att))) ; значение
        att_value (if (= att_value "")
                "0"
                att_value
              ) ;_ if
      ) ;_ setq
      (cond
        ((= att_name "DELTA") (setq mar (list "DELTA" att_value)))
        ((= att_name "RED") (setq mar (list "RED" att_value)))
        ((= att_name "BLACK") (setq mar (list "BLACK" att_value)))
      ) ;_ cond

      (setq    spmr (cons mar spmr)
      ) ;_ конец setq
      (setq    att (entnext att)
        att_value nil
      ) ;_ setq
      (setq seqend (cdr (assoc 0 (entget att))))
    ) ;_ конец while


    (setq delta (- (atof (car (cdr (assoc "RED" spmr))))
               (atof (car (cdr (assoc "BLACK" spmr))))
            ) ;_ конец -
          delta
;;;     (vl-string-subst
;;;        ","
;;;        "."
            (strcat (if    (> delta 0)
                  "+"
                  ""
                ) ;_ конец if
                (rtos delta 2 2)
            ) ;_ конец strcat
;;;          ) ;_ конец vl-string-subst
    ) ;_ конец setq
    (nz_att_ch10 el (list (list "DELTA" delta)))
        (setq     i       (1+ i))

      ) ;_ конец while
    ) ;_ конец progn
    (prompt
      "\n Блоков маркировки отметок земли - не найдено"
    ) ;_ конец prompt
  ) ;_ конец if
  (princ)
) ;_ конец defun

                         
;;; ===================      ЗАМЕНА ЗНАЧЕНИЙ АТРИБУТОВ ========================================
(defun nz_att_ch10
       (el_sp sp_atr / att seqend a_name new_value att0 att)
;;;    el_sp - элемент списка
;;;     new_value - новое значение
  (setq att (entnext el_sp))
  (setq seqend (cdr (assoc 0 (entget att))))
  (while (not (eq seqend "SEQEND"))
                  ; пока есть атрибуты в блоке
    (setq a_name (cdr (assoc 2 (entget att)))) ; находим  атрибут

;;; начинаем проверять по списку для изменений: есть - меняем
    (setq new_value (car (cdr (assoc a_name sp_atr))))

    (if    new_value
      (setq att0 (subst    (cons 1 new_value)
            (assoc 1 (entget att))
            (entget att)
         ) ;_ конец subst
      ) ;_ конец setq
    ) ;_ конец if
    (entmod att0)
    (entupd att)
    (setq att (entnext att))
    (setq seqend (cdr (assoc 0 (entget att))))
  ) ;_ конец while
) ;_ конец defun

Спасибо сказали: Erema_Misha1
Post's attachments

otm01.dwg 59.09 Кб, 4 скачиваний с 2019-04-19 

You don't have the permssions to download the attachments of this post.

Re: Объём земляных работ

спасибо. блок и лисп работают, но считает только разницу отметок, объем не считает.

Re: Объём земляных работ

Alan пишет:

в этом блоке разница будет высчитываться автоматом и можно задать цвет текста, точку(запятую)в значении?

Больше того, тогда можно выделить все(!) блоки отметок и за 1(одну) сек. получить подписанную разницу.

Я другого и не обещал!

Спасибо сказали: Erema_Misha1

(изменено: Erema_Misha, 23 апреля 2019г. 11:17:18, причина: редактирование)

Re: Объём земляных работ

Alan пишет:
Alan пишет:

в этом блоке разница будет высчитываться автоматом и можно задать цвет текста, точку(запятую)в значении?

Больше того, тогда можно выделить все(!) блоки отметок и за 1(одну) сек. получить подписанную разницу.

Я другого и не обещал!

Спасибо за пояснение. (не до конца вчитался в форум).
А можно лисп объема из этой темы применить к блокам (атрибуту DELTA)

(изменено: Alan, 23 апреля 2019г. 15:48:55)

Re: Объём земляных работ

Alan пишет:

А можно лисп объема из этой темы применить к блокам (атрибуту DELTA)

Может быть и можно, но разбираться нет времени. Попробуй сам.
Я на месяц в отпуск отбываю.

Re: Объём земляных работ

Alan пишет:
Alan пишет:

А можно лисп объема из этой темы применить к блокам (атрибуту DELTA)

Может быть и можно, но разбираться нет времени. Попробуй сам.
Я на месяц в отпуск отбываю.

Добрый день. Если есть возможность, посмотрите, пожалуйста, вариант применения данного лиспа к атрибуту DELTA.

Re: Объём земляных работ

Erema_Misha пишет:

Если есть возможность, посмотрите, пожалуйста, вариант применения данного лиспа к атрибуту DELTA.

Какой Лисп взять для рассмотрения, из пункта 35 или 36?
Что там указывать надо?
Сделайте какой-то чертеж, чтобы я на нём производил действия программы.
Я не геодезист, я немного программирую на ЛИСПе!