1. ВНИМАНИЕ! В течении пары дней +- будет переезд форума на более защищённый сервер. Возможны периодические перебои в работе.

Точки COGO не отображаются в простом AutoCad-е

Тема в разделе "Civil 3D", создана пользователем Луговский, 29 май 2012.

  1. Alexandr-GR

    Alexandr-GR Форумчанин

    Если речь идет о CivilGeoTools, то как раз (упущенное) первое слово в названии говорит само за себя (приложение к Civil).
     
  2. Patron

    Patron Бронебойный Старожил Форумчанин

    Оно самое ::biggrin24.gif:: Т.е. систему не наипешь? ::sad24.gif:: или может под кад что-то подобное geotools посоветуете?
     
  3. Alexandr-GR

    Alexandr-GR Форумчанин

    Я из всего арсенала приложения пробовал только картограмму (понравилось, но тоже есть вопросы), поэтому даже не скажу, либо напишите какие именно возможности интересуют.
    Приложение, на сколько я понимаю, написано не на LISP. Впрочем, на этом форуме есть тема посвященная этой утилите, там же отписывался не то автор, не то представитель - civilgeotools...
     
  4. Patron

    Patron Бронебойный Старожил Форумчанин

    В арсенале интересует сугубо построение профиля. Уж очень удобно - готовые подвалы, не в пример геониксовскому..
    И в принципе, построить можно не по точкам COGO, а по 3D-полилинии..
    Но редактировать (добавлять) пикеты - увы, только по точкам COGO. В теле программы есть команда/отсыл на Add_Point (алгоритм ниже),
    и пытаюсь разобраться, можно ли как-то изменить, чтобы он воспринимал обычные точки када
    Раскрыть Спойлер
    (defun C:profile_add_new_point_be_profile ( /
    block-obj block-profile-obj buffer-zone curent-profile
    elevation horizontal-scale insert-point
    lightweightpolyline point reference-level
    scale-coefficient start-point trace-2dpline vertical-scale profile-mode plan-point)
    (load_global_variable)
    (geo_tools-help "profile_add_new_point_be_profile")
    (setq profile-mode (vlax-ldata-get "geo_tools_dictionary" "profile-mode"))
    (if(if (not profile-mode)(profile-seleckt-curent-mode)T)
    (if (=(vlax-ldata-get "geo_tools_dictionary" "profile-mode")1)
    (progn
    (setq curent-profile(vlax-ldata-get "geo_tools_dictionary" "curent-profile"))
    (if curent-profile
    (if (vlax-erased-p (cdr curent-profile))
    (alert "Ошибка! Текущий профиль был удален.\nВыбрать другой текущий профиль можно с помощью команды \"Выбрать текущий профиль\"")
    (progn

    (princ (strcat"\nТекущий профиль: "(car curent-profile)))
    (while (setq elevation (get-elivation-be-plan))
    (if (setq point (car elevation))
    (progn
    (setq block-profile-obj (cdr curent-profile))
    (setq trace-2Dpline (trace-create-2Dpline-by-block-profile block-profile-obj))
    (setq block-obj (cdr(assoc "block"(vlax-ldata-get block-profile-obj"obj-list"))))
    (setq vertical-scale (vlax-ldata-get block-profile-obj"vertical-scale"))
    (setq horizontal-scale (vlax-ldata-get block-profile-obj"horizontal-scale"))
    (setq scale-coefficient (/ 1.0 (/ 1000.0 horizontal-scale)))
    (setq height-text (*(atof(nth 9 (vlax-ldata-get block-profile-obj"profile-parameters")))scale-coefficient))
    (setq reference-level (vlax-ldata-get block-profile-obj"reference-level"))
    (setq buffer-zone(*(atof(nth 3 (vlax-ldata-get block-profile-obj"profile-parameters")))scale-coefficient))
    (setq start-point(mapcar'+ (vlax-safearray->list(vlax-variant-value(vla-get-InsertionPoint block-profile-obj)))(list buffer-zone 0)))
    (setq plan-point (vlax-curve-getDistAtPoint trace-2Dpline (vlax-curve-getClosestPointTo trace-2Dpline (list (car point)(cadr point)0))))
    (vla-erase trace-2Dpline)
    ;| раньше необходимость строить линейку определялось по присутствии в obj-list раздела ruler-list
    теперь для этого есть флаг ruler. Здесь предпологается использование предидущего варианта старого профиля
    удаляется (если есть) ruler-list и вместо него ставится ruler=1 |;

    (if (/= (cdr(assoc "ruler-list"(vlax-ldata-get block-profile-obj"obj-list")))nil)
    (progn
    (vlax-ldata-put block-profile-obj"ruler" 1)
    (if(setq number (analysis-number-item-in-list
    (assoc "ruler-list"(vlax-ldata-get block-profile-obj"obj-list"))
    (vlax-ldata-get block-profile-obj"obj-list")))
    (vlax-ldata-put block-profile-obj"obj-list"
    (edit-list-del-item-by-number number(vlax-ldata-get block-profile-obj"obj-list")))
    )
    )
    )
    (vla-StartUndoMark active_document)
    (if (/=(vlax-ldata-get block-profile-obj"ruler")1)
    (progn
    (profile-draw-ruler-in-basement block-profile-obj (convert-list-elevation2point-list(cadr elevation)))
    (vlax-ldata-put block-profile-obj"ruler" 1)
    )
    )
    (setq reference-level (vlax-ldata-get block-profile-obj"reference-level"))

    (if (=(vlax-ldata-get "geo_tools_dictionary" "profile-marker-type")nil)
    (vlax-ldata-put "geo_tools_dictionary" "profile-marker-type" "Мультивыноска"))
    (foreach x (cadr elevation)
    (setq insert-point
    (mapcar '+ start-point
    (list
    plan-point
    (/(- (car x) reference-level)(/ (* vertical-scale (/ 1000.0 horizontal-scale)) 1000.0))
    )))
    (cond
    ((=(vlax-ldata-get "geo_tools_dictionary" "profile-marker-type")"Треугольник")
    (setq LightWeightPolyline (vla-addLightWeightPolyline model_spece
    (convert-list-points-to-lwpolyline-safearray (list (mapcar '+ insert-point (list (* -1.25 scale-coefficient) (* -2.165 scale-coefficient)))
    insert-point
    (mapcar '+ insert-point (list (* 1.25 scale-coefficient) (* -2.165 scale-coefficient)))
    ))))
    (vla-put-Linetype LightWeightPolyline "Continuous")
    (vla-put-Closed LightWeightPolyline -1)
    )
    ((=(vlax-ldata-get "geo_tools_dictionary" "profile-marker-type")"Мультивыноска")
    (draw-mleader-vla-by-list-property
    (list(cons "spece" (if (eq (getvar "CTAB")"Model")model_spece paper_spece))
    (cons "LeaderLineCoor" (list insert-point (mapcar '+ insert-point (list (/ 2.0 scale-coefficient) (/ 2.0 scale-coefficient)0))))
    (cons "StyleName" "Подписи")
    (cons "TextHeight" height-text)
    (cons "TextString" (cadr x))
    (cons "ArrowheadType" 1)
    (cons "ArrowheadSize" (/ 1.0 scale-coefficient))
    (cons "ArrowheadBlock" "_ClosedBlank")
    ))
    )
    ((=(vlax-ldata-get "geo_tools_dictionary" "profile-marker-type")"тоЧка")
    (entmake (list '(0 . "POINT") (cons 10 insert-point)))
    )
    )

    )
    (vla-EndUndoMark active_document)
    )
    )

    )
    )
    )
    (alert "Ошибка! Текущий профиль не определен.\nВыбрать текущий профиль можно с помощью команды \"Выбрать текущий профиль\"")
    )
    )
    (alert "Данная команда не работает в режиме \"старый профиль\"!")
    )
    )
    (princ)
    )
     
  5. Qvinto

    Qvinto Форумчанин

    Patron, обратись к разработчику, может он добавит в свою программу твою хотелку. Или, работай в Цивиле, так проще.
     
  6. Bruse

    Bruse Форумчанин

    Здравствуйте, уважаемые коллеги!
    Тоже ой беда,беда. При экспорте в автокад творится непонятное для меня, выглядит это так.
    Метки точки увеличиваются до непонятных размеров. Что я сделал не так, при создании блока отображения точки отметки для стиля точки? Функция "сохранить как" матерится про enablers и прокси графику, так и не понял с чем это едят и как будет у заказчика выглядеть.
    Критика, по оформлению и прочее, категорически приветствуется, но с условием разъяснений! Прилагаю изначальный комплект.
    [​IMG]
    P.S. как рисунки в сообщения вставлять?
     

    Вложения:

  7. Alexandr-GR

    Alexandr-GR Форумчанин

    А блок, используемый в метке, аннотативный?
     
  8. Bruse

    Bruse Форумчанин

    Alexandr-GR, А вот теперь даже и не скажу, давно это было. Можно вытащить эти блоки из списка блоков они называются русло точка плана, берег точка плана, отметка грунта над трубопроводом и отметка трубопровода верх. Вроде как да аннотативный
     
  9. Alexandr-GR

    Alexandr-GR Форумчанин

    Сталкивался с такими же масштабными глюками, причина была именно в аннотативности.
     
  10. Bruse

    Bruse Форумчанин

    Alexandr-GR, а как тогда поменять цвет у стандартного стиля точки -точка плана? Я от такого отображения ушел, потому что иногда они плохо пропечатываются на плоттере.
     
  11. Alexandr-GR

    Alexandr-GR Форумчанин

    Не совсем понял при чем тут цвет?
    08-11-2013 12-50-46.png
    Можно выбрать ПОБЛОКУ или какой-либо другой цвет (сомневаюсь, что я для Вас что-т новое открыл)
     
    Grandpa нравится это.
  12. Ой, как Вы так красиво речку раскрасили в желто-синие оттенки? :)
     
  13. mumych

    mumych Форумчанин

    При создании блоков из точек COGO, атрибут высоты точки 0.00, все блоки лежат в 0 (Z-0.000).
    1.jpg 2.jpg
    В чем может быть проблема?
     
  14. Bruse

    Bruse Форумчанин

    Это geotiff файлик рисунок, сделанный в программе Trimble Terramodel из поверхности модели рельефа
     
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление