Разработка условных знаков для AutoCAD

Тема в разделе "Autodesk", создана пользователем ivsem, 31 дек 2014.

  1. ivsem

    ivsem Форумчанин

    Решил создать условные знаки 1:500 - 1:5000. Основные "постулаты" и требования.
    1. Условные знаки для рисовки 2D чертежей.
    2. Съемочный пикет в виде блока с атрибутами.
    3. Атрибуты в пикете - номер(название), отметка, код, глубина коммуникации и, возможно, еще несколько служебных атрибутов.
    Условные знаки рисуются по кодам или вручную вводом номеров пикетов из абриса или указанием пикетов мышкой. Так же будет задействована программная обработка всякого рода промеров-домеров.
    В программах будут использоваться наработки из темы по кодированию:
    http://geodesist.ru/forum/threads/Рисуем-чертеж-по-кодам-из-файла-с-тахеометра.36029/
    Программы будут выкладываться по мере разработки в первом посте.
    Пожелания и критические замечания крайне приветствуются.
    =======================================================================
    Выложена вторая версия.
    Программа MakeShemaHodaSDR02.fas предназначена для вычерчивания схемы теодолитного хода.
    При вычерчивании схемы хода программа использует три файла.
    Теод_ход01.sdr - файл с полевыми измерениями формата SDR33.
    ТеодХод01_code.txt - файл с координатами и кодами полученный после уравнивания хода в Credo_dat.
    ShemaCodeBlock.txt - файл соответствия кодов блокам-усл.знакам используемым при отрисовки хода. В архиве есть картинка поясняющая структуру файла.
    Для тестирования программы разархивируйте все в папку, щелкните мышкой по 0.dwg,
    перетащите мышкой в рабочее окно автокада файл MakeShemaHodaSDR02.fas, выберите в окне выбора файл Теод_ход01.sdr, далее в появившемся окне выберите файл ТеодХод01.txt.
    В программу добавлена опция масштабирования блоков в чертеже.
    Если на запрос масштаба ввести отрицательное число, то сработает отдельная опция масштабирования блоков.
    Например, если ввести -2, то масштаб всех блоков в чертеже будет увеличен в два раза.
    Если ввести -0.5, то масштаб всех блоков в чертеже будет уменьшен в два раза.
    --------------------------------------------------------------------------------------------------------------
    Программа 3DmakePk01.fas доставляет пикеты в чертеж методом интерполяции между горизонталями. Горизонтали должны быть полилиниями с высотами не равными нолю.
    Порядок работы.
    Выбираете нужный масштаб, выбираете первую горизонталь (автоматически включается привязка ближайшая), выбираете вторую горизонталь, указываете точку между горизонталями куда нужно добавить пикет.
    Для тестирования программы разархивируйте все в папку, щелкните мышкой по Газ-отвод план с горизонталями 1000 3D.dwg, перетащите мышкой в рабочее окно автокада файл 3DmakePk01.fas и следуйте запросам программы.
    -------------------------------------------------------------------------------------------------------------
    Программа InsertPiket01.fas предназначена для вставки вручную в чертеж "камеральных" съемочных пикетов.
    Блоки-пикеты в чертеж можно вставлять в следующих масштабах:
    Если Вы на запрос масштаба введете 0.1, то пикеты будут выводится для рисовки чертежа
    масштаба 1:100, если 0.2 то 1:200, если 0.5 или 0(мне лень набираить 0.5) то 1:500, если 1 то 1:1000, если 2 то 1:2000, если 5 то 1:5000, если 10 то 1:10000, если 25 то 1:250000, если 50 то 1:50000, если 100 то 1:100000. Другие масштабы не предусмотрены.
    В зависимости от выбранного числа знаков после запятой, программа добавляет нужное количество нулей в десятичных разрядах. Например, если выбрано два знака после запятой, то при наборе числа 145 на экран будет выведено 145.00, при наборе числа 145.1 будет выведено 145.10.
    При наборе числа-отметки можно использовать в качестве разделителя запятую. Запятая автоматически будет заменена на точку.
    ----------------------------------------------------------------------------------------------------------------
    Программа ChangeZinPkPoint01.fas меняет отметки в пикетах, а так же в других геодезических точках имена которых перечислены в файле ChangeZIni.txt. Название блока-пикета должно стоять первым. В блоке-пикете отметка должна быть вторым по порядку атрибутом. В блоках-ОГС отметка должна быть вторым по порядку атрибутом, земля третьим по порядку атрибутом.
    Для тетирования программы разархивируйте все в папку, щелкните мышкой по Drawing0.dwg,
    затем перетащите мышкой в рабочее окно автокада файл ChangeZinPkPoint01.fas
    -------------------------------------------------------------------------------------------------------------------
    Вторая версия программ, добавлен файл соответствия условного знака слою, в котором усл.знак будет чертится.
    Усл_знаки02.zip - несколько программ для тестирования.
    Перед работой программ отключайте 3D привязки (F4)!
    Описание программ предназначенных для вычерчивания условных знаков масштабов 1:500 - 1:5000.
    В пользовательской переменной автокада useri5 хранится знаменатель масштаба съемки(500, 1000, 2000, 5000).
    Если переменная useri5 "пустая", то программы выдадут запрос на ввод знаменателя масштаба.
    Для повторного перезапуска программ нужно набрать 11. Я, обычно, перзапускаю программы левой рукой нажимая два раза единицу и клавишу пробел.
    Если в процессе работы Вам нужно перейти к другому масштабу в этом же чертеже, то нужное значение переменной можно ввести вручную.
    Цифровые номера в названиях файлов соответсвуют номеру усл.знака в книге "Условные знаки для топопланов масштабов 1:5000 - 1:500".
    Описание программ:
    368s.fas - леса естеств. высокоствольные.
    371s.fas - поросль леса.
    401s.fas - растительность травяная луговая.
    402s.fas - растительность высокотравная.
    403s.fas - растительность травяная влаголюбивая.
    404s.fas - заросли камышовые.
    407s.fas - моховая растительность.
    410s.fas - сады фруктовые.
    411s.fas - виноградники.
    416s.fas - газоны.
    FillRhombus.fas - файл поддержки.
    UslZnIni.txt - файл соответствия условного знака слою, в котором усл.знак будет чертится.
    файлы dwg с блоком-усл.знаком.
    Усл.знаками можно заполнять существующий контур, отрисовывть и заполнять "временный" контур, рисовать условные знаки по одному.

    332s.fas - обрывы земляные.
    84s.fas - откос не укрепленный.
    85s.fas - откос укрепленный.
    Линии верха и низа откоса должны быть заранее отрисованы полилинией или сплайном.
    Выбираем верх откоса, выбираем низ откоса и отрисовывается откос.
    Длинный штрих не доходит до линии подошвы на 0.4 мм.
    Длина короткого штриха откоса 2 мм. Если расстояние между верхом и низом откоса менее 4 мм., короткий штрих пропорционально уменьшается.
    Если расстояние между верхом и низом откоса менее 1.2 мм, то откос рисуется "внемаштабным" знаком откоса.
    Так же в эти программы включен модуль облегчающий удаление ранее отрисованных откосов.
    Если на запрос программы "Наберите расстояние между штрихами нажать - (минус), то подгрузится модуль удаления штрихов откоса.
    Нужно мышкой выбрать любой из штрихов откоса (будет настроен фильтр), далее выбрать простой или фигурной (wp) рамкой удаляемые штрихи откоса.
    Фильтр фильтром, но нужно визуально следить, что бы чего нужного не прихватить.
    Откос за пределами экрана не отрисовывается! Если на момент отрисовки откос выходит за пределы экрана, нужно крутнуть колесико-зумм мышки и поместить откос на экран полностью.
    ----------------------------------------------------------------------------------------------------------------
    Обновление от 09.03.15 архива 13s.zip
    Восьмая версия программы 13s.fas, добавлена опция подписи номера дома.
    Описание программы 13s.fas предназначенной для вычерчивания зданий и сооружений или фасадов оных.
    Для рисовки фасадов нужно удваивать число номера модуля (например: 3 - здания прямоуг. по трем точкам, 33 - фасад здания прямоуг. по трем точкам).
    Для повторного перезапуска программы нужно набрать 11. Я, обычно, перзапускаю программы левой рукой нажимая два раза единицу и клавишу пробел.
    Рисовку можно вести при помощи мышки, вводом номеров пикетов, введением значений промеров.
    На экран выводятся вспомогательные линии(они не являются примитивами автокада), которые убираются при первом же движении экрана или командой реген.
    Программа имеет семь модулей.
    0. Переход в Мировую систему координат
    00. Создание пользовательской системы координат.
    1. Рисует здания-прямоугольники по направлению, домерам до отражетеля и промерам стен. Это упрощенный вариант модуля 4 без перехода в пользовательскую систему координат.
    2. Рисует здания-прямоугольники по двум точкам и промеру.
    3. Рисует здания-прямоугольники по трем точкам.
    4. Рисует здания сложной конфигурации по обмерам. Использует пользовательскую систему координат. Если после рисовки не произошел автоматический возврат в Мировую систему координат, используйте опцию перехода в Мировую систему координат под номером 0 (ноль). Подробно работа с модулем 4 описана в файле "Рисовка зданий по обмерам в программе 13s.doc".
    5. Рисует, веранды и другие "пристройки".
    Более детальное описание читайте в архиве.
    --------------------------------------------------------------------------------------------------
    Обновление от 01.03.15
    Архив Ограждения08.zip. В программы рисовки ограждений добавлена функция "отмены" отрисованного элемента ограждения и еще ряд функций. Читайте файл Read_me.
    Рисовать можно мышкой, набором номеров пикетов. Реализована отрисовка ворот, реализована обработка домеров-промеров от забора до пикетов - своего рода "офсеты".
    Содержание архива:
    472s.fas - программа вычерчивания оград каменных и железобет. высотой 1 и более одного метра.
    473s.fas - программа вычерчивания оград каменных и железобет. высотой менее одного метра.
    474s.fas - программа вычерчивания оград металлических.
    475s.fas - программа вычерчивания заборов деревянных.
    476s.fas - программа вычерчивания оград проволочных.
    477s.fas - программа вычерчивания изгородей.
    PiketIni.txt - файл с названием блока-пикета, можно редактировать.
    UslZnIni.txt - файл соответсвия слоев условным знакам, можно редактировать.
    vorota1.dwg - файл с блоком-черточкой ворот, можно редактировать.
    ivsem.lin - линии условных знаков, можно редактировать.
    ivsem.shx - шейпы для линий условных знаков
    472s_473s.dwg - файл с примерами работы программы в формате AutoCAD 2000.
    474s.dwg - файл с примерами работы программы в формате AutoCAD 2000.
    475s.dwg - файл с примерами работы программы в формате AutoCAD 2000.
    476s_477s.dwg - файл с примерами работы программы в формате AutoCAD 2000.
    ----------------------------------------------------------------------------------------------
    Архив с утилитами Утилиты от ivsem.zip.
    В данном архиве будут выкладываться утилитки и другие сопутствующие программки.

    Программа RotateTo0Blok01.fas предназначенной для горизонтирования блоков в чертеже.
    Иногда при объединении чертежей блоки вставляемого чертежа оказываются развернуты на некоторый угол. Программа всем выбранным блокам задает угол поворота 0 (ноль).
    Содержание архива:
    RotateTo0Blok01.fas - программа горизонтирования блоков.
    RotateTo0Blok.dwg - тестовый чертежик в формате AutoCAD2000.
    На кнопку прописывайте ^C^C(load"RotateTo0Blok01")
    Для повторного перезапуска программы нужно набрать 11, пробел или Enter.
     

    Вложения:

    Последнее редактирование: 14 апр 2015
    btigeotop, Grandpa, foxfer и 11 другим нравится это.
  2. Палыч

    Палыч Форумчанин

    Так это программа будет или отдельно набор блоков?Если прога ,то с постоянной установкой(пропиской) и управлением кнопками из ленты(лично мне так удобнее::biggrin24.gif::) С Новым годом! Успехов.Удачи.
     
  3. ivsem

    ivsem Форумчанин

    Предполагается цепочка программ-условных знаков, плюс сопутствующие программы.
    Нужные программы можно будет посадить на кнопки. Плюс будет реализован быстрый повторный перезапук программ с клавиатуры.
    Спасибо. Всех так же с Новым годом!
     
    i77artur, max7, Андрей Р. и ещё 1-му нравится это.
  4. Krovlaf

    Krovlaf Форумчанин

    Прекрасная идея. Только подобных комплектов условных знаков для CAD среды накоплено уже немало. Это условные знаки в GeoniCS, Civil, Нанокад и прочие (GeoBL, ГУГК) ну и "самопалы" здесь (иногда весьма достойные: здесь.У Митяя блоки хороши! Есть правда ошибочки, но это поправимо).
    Я пользуюсь знаками "выдранными" из GeoniCS. В точечных объектах, где это необходимо, есть атрибутика, Многие блоки (мосты, переходы и другие) динамические, что очень удобно при настройке и оформлении. Знаки закинул в палетки - удобно пользоваться.
    GeoBL и ГУГК для себя считаю неприемлемыми. ИМХО информация об объекте должна содержаться в нем самом, а не болтаться где то рядом в виде отстраненного текста.
    Думаю, можно взять лучшее из уже созданного, а недостающее сделать совместными усилиями. Каждый из заинтересованных может взять на себя часть работы в оцифровке недостающих УЗ.
     
  5. flareon

    flareon Форумчанин

    А можете ссылочку на УЗ, ''выдранные'' из GeoniCS? Очень заинтересовали динамические блоки :) Спасибо!
     
  6. Krovlaf

    Krovlaf Форумчанин

    К сожалению, ссылочки нет. Берется GeoniCS, пассатижи::-ph34r.gif:: , и вперед!::biggrin24.gif::. Валяется у меня недоделанный файл с УЗ от геоникса. Найду, выложу. Гляньте выше ссылочки на "самопалы". У Самусенкова Дмитрия неплохой комплект для М500.
     
  7. flareon

    flareon Форумчанин

    Спасибо!!
     
  8. Krovlaf

    Krovlaf Форумчанин

    Вот, нашел. Делал давно, неосилил... так что прошу сильно не бить. CAD 2008
     

    Вложения:

    • УЗ GeoniCS.dwg
      Размер файла:
      585,7 КБ
      Просмотров:
      449
  9. ANAT01

    ANAT01 Форумчанин

    Тоже интересно. Есть много вопросов:
    1) Условные знаки по-файлово? (один знак - один файл двг)
    2) "Стандарт" именования блоков/файлов? (или кто во что горазд)
    3) Какой шрифт использовать по умолчанию?
    4) Где это все хранить?
    5) Организация процесса? (типа "дорожной карты")
    6) Еще есть разные типы усл. знаков - точечные(блоки), площадные(заливки), линейные(стили линий) - что с этим?!
    7) Масштаб знаков? Какой "стандартный" масштаб, и как масштабировать в другой масштаб???
    8) Некоторые знаки - это как минимум динамические блоки с изменяемыми параметрами. Например лестница с количеством ступеней и их шириной...

    Если просто "чтобы было", то лучше взять какой-нибудь готовый набор-солянку. Тот же геоникс или нанокад

    PS Была как то идея описать знаки в какой нибудь простой и понятной форме в виде текста(svg или чего то похожего) и потом генерировать из них dxf. А далее в программе использовать _include dxf. Смысл был в том чотбы из этого "простого формата" генерировать шрифты, векторную графику и т.д.
     
    Последнее редактирование: 3 янв 2015
  10. ivsem

    ivsem Форумчанин

    ANAT01, попытаюсь ответить на ваши вопросы-пункты.
    1) Я придерживаюсь принципа - для точечных усл.знаков, один знак - один файл. Типы линий в одном файле. Хотя в нашей конторе все точечные усл.знаки находились в одном dwg и вставлялись в чертеж при первом открытии. В итоге в базе данных чертежа были многие десятки неиспользуемых в работе блоков - хаос тот еще.
    2) Я предпочитаю именовать блоки-усл.знаки в соотвествии в нумерацией знаков в книге "Условные знаки для топографических планов", добавляя в конце суффикс s (1s.dwg - пункт ГГС, 390-5s.dwg - отд.стоящее дерево хвойное и т.д.).
    3) Со шрифтами пока нет ясности.
    4) Хранится все будет в структурированных папках.
    5) "Дорожная карта" - минимальное колличество телодвижений в процессе работы. Все что можно, должно быть программно автоматизировано.
    6) Отрисовка условных знаков возлагается на программы.
    7) Условные знаки рисуются в чертеже с масштабом 1:1000 (в реальных коодинатах) с учетом дальнейшего вывода на печать. То есть для вывода на печать в масштабе 1:500 знаки рисуются-вставляются с масштабом 0.5 (уменьшаются в два раза)
    Перемасштабирование чертежа то же будет возложено на соответствующую программу, но без ручной доработки вряд ли обойдется.
    8) С динамическими блоками буду разбираться, бо пока в своих чертежах я такие блоки не использовал.
     
  11. ANAT01

    ANAT01 Форумчанин

    2) Есть же знаки с несколькими вариантами вариантами изображения (например 117 - колодцы смотровые). Как именовать?
    6) Рисовать "решетчатый забор" в виде кучи отрезков(блоков) программно - это очень неправильно. Линии должны быть описоны в *.lin, а площадные в .pnt
    7) Отображение знака в разных масштабах(напр. 2000 и 500) согласно ГУГК - может отличатся в принципе, так что масштабирование не даст соответствия ГУГК. И тут можно вернутся к п.2)
    8) Тоже не использовал, но вот пример: Здание - Это блок или программная рисовка? у здания есть атрибуты в виде его типа и адресного номера. Если делать программно - теряется связь между графикой и атрибутной информацией. Если делать блоком - нереально нарисовать здание произвольной формы (по крайней мере по заранее подготовленному блоку).
    Столбы линий электропередач и связи - что это? блок или программа? Как в блоке сделать 3, 6, 7 линий-направлений проводов? А если программа - теряем атрибутику...
     
  12. ivsem

    ivsem Форумчанин

    ANAT01, отвечаю по пунктам.
    2) Я буду именовать блоки 117_1s, 117_2s и т.д. Если другой пользователь предпочитает другие блоки с другими названиями можно будет просто подредактировать текстовый файлик "адаптации".
    6) Где возможно, линейные объекты будут рисоваться типами линий. Другое дело, программа будет максимально
    облегчать процесс рисовки (включит нужный слой, цвет, загрузит линию, использует, если есть, кодировку или введенные номера пикетов с абриса).
    7) При масштабировании чертежа (переходе от одного масштаба к другому)программно можно решить очень многое. Не только тупо отмаштабировать блоки и линии, но и при необходимости заменить одни блоки на другие, одни типы линии на другие типы и т.д.
    8) Здания я рисую программой. Можно рисовать по трем угла, по двум и промеру, по одному углу направлению стены и промерам. Атрибутика (номер дома, тип и этажность здания...) текст. В принципе при необходимости можно здание превратить в блок и повесить на этот блок атрибутику в виде рассширенных данных или атрибутов(сам такое пока не пробовал, бо нужды не было).
    В линиях электропередач столбы-блоки, стрелочки-блоки. Атрибутика в виде текста. На не застроенных территориях по пикетам столбов рисуется программно полилиния. Она и задает направление стелок.
    На застроенных полилиния убирается или рисовка стрелок идет в полуавтомате указанием вручную направлений на столбы или вводом номеров пикетов нужных столбов с абриса, бо бывает настолько черно от пикетов, что проще набрать номер пикета нужного столба, чем пытаться визуально отыскать его на чертеже.
    Правда в таких случаях я выбираю рамкой эту группу пикетов и программа масштабирует пикеты в сторону уменьшения. Потом так же программно масштаб пикетов возвращается в исходный.
     
    Последнее редактирование: 5 янв 2015
  13. ivsem

    ivsem Форумчанин

    В первом посте выложена программа MakeShemaHodaSDR01.fas рисующая схему теодолитного хода.
    В этой программе используются наработки из темы по кодированию.
    http://geodesist.ru/forum/threads/Рисуем-чертеж-по-кодам-из-файла-с-тахеометра.36029/
    Соответствие кодов усл.знакам настраивается в файле ShemaCodeBlock.txt
    1_2.jpg
     
    Последнее редактирование: 17 янв 2015
  14. ivsem

    ivsem Форумчанин

    В первом посте выложена вторая версия программы MakeShemaHodaSDR02.fas
    В программу добавлена опция масштабирования блоков в чертеже, бо не всегда с первого раза удается правильно выбрать масштаб усл.знаков.
     
  15. ivsem

    ivsem Форумчанин

    В первом посте выложены программы 3DmakePk01.fas и InsertPiket01.fas для добавления пикетов в чертеж.
    Иногда при съемке образуются дырки в которые так и просятся пикеты.
     
    Последнее редактирование: 17 янв 2015
  16. ivsem

    ivsem Форумчанин

    В первом посте выложена программа ChangeZinPkPoint01.fas
    Программа меняет отметки в пикетах, а так же в других геодезических точках имена которых перечислены в файле ChangeZIni.txt.
     
  17. ivsem

    ivsem Форумчанин

    В первом посте выложено несколько условных знаков для тестирования.
    Не большое пояснение по работе усл.знака откос.
    Длинный штрих откоса не доходит до линии подошвы 0.4 мм.
    Короткий штрих откоса равен 2 мм. Если расстояние между верхом и низом откоса станет менее 4 мм, программа начнет пропорционально подрезать короткий штрих. Если расстояние между верхом и низом откоса станет менее 1.2 мм, то на таком участке программа чертит откос "внемаштабным" знаком. На приложенной картинке сие хорошо видно.
    Откос.jpg
     
    Последнее редактирование: 27 янв 2015
    Geo_major нравится это.
  18. Палыч

    Палыч Форумчанин

    Низ откоса обычно точками(контуром)показывается, а тут сплошная линия. Потом менять или может сразу сделать.
     
  19. ivsem

    ivsem Форумчанин

    В первом посте выложена для тестирования вторая версия усл.знаков, добавлена функция разнесения усл.знаков по слоям.
    Для этого используется текстовый файл соответствия усл.знаков слоям
    Можно чертить низ откоса сразу контуром.

    .
     
  20. АлексЮстасу

    АлексЮстасу Форумчанин

    1. Скопировал Усл_знаки02.zip, разархивировал, загрузил 84s.fas успешно.
    2. На запрос знаменателя масштаба ввел 1000.
    3. Появилось сообщение "Не найден файл UslZnIni.txt. Работа прервана!" Файл такой в той же папке, что и 84s.fas есть.
    Автокад Цивил 2012.
     
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление
  1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление