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

Создать коридор по готовым сечениям

Тема в разделе "Civil 3D", создана пользователем FOXXX591, 25 апр 2015.

  1. Евгений Рак

    Евгений Рак Форумчанин

    Хочу предложить вам свой метод, придуманный из за лени и нежелания все делать долго =)
    1) Подготавливаем чертеж с поперечниками в масштаб 1:1, так чтобы ось и верх проезжей части располагались в сетке с узлами равным одинаковым расстоянием, в моем примере это 150, то есть ось и верх асфальтобетона находится в точке с координатами N0-E0, следующий поперечник находится в точке N0-E150, следующий N0-E300. и тд. У меня в примере около 90 поперечников.
    2) Вынести на отдельный слой необходимый вам конструктив на всех поперечниках в виде полилинии, (у меня слой называется ЗП_проектная поверхность, зеленым цветом), после экспортируем в текстовый файл все узлы всех полилиний (я использовал программку geo_export).
    Получаем данные всех узлов полилиний.
    пример (раскрыть)

    1,-1.5932,-15.7719,0.0000
    2,-1.1200,0.0000,0.0000
    3,-1.6358,19.6380,0.0000
    4,-1.7091,19.6380,0.0000
    5,-1.6438,20.0380,0.0000
    6,2.1816,25.7761,0.0000
    7,-3.8130,130.4636,0.0000
    8,-1.6068,133.7729,0.0000
    9,-1.1200,150.0000,0.0000
    10,-1.6068,166.2271,0.0000
    11,-4.9923,171.3053,0.0000
    12,-5.0003,171.7053,0.0000
    13,1.1852,180.9836,0.0000
    14,-5.2930,278.8567,0.0000
    15,-1.5876,284.4149,0.0000
    16,-1.1200,300.0000,0.0000
    17,-1.5876,315.5851,0.0000
    18,-5.1947,320.9958,0.0000
    19,-9.0203,423.4651,0.0000
    20,-6.1771,428.4406,0.0000
    21,-1.5590,435.3679,0.0000
    22,-1.1200,450.0000,0.0000
    23,-1.5876,465.5851,0.0000
    24,-5.8408,471.9649,0.0000
    25,-9.3484,575.8124,0.0000
    26,-6.1321,581.4410,0.0000
    27,-1.4668,588.4389,0.0000
    28,-1.1200,600.0000,0.0000
    29,-1.5578,614.5931,0.0000
    30,-6.1830,621.5309,0.0000
    31,-7.5080,623.8497,0.0000
    32,-9.0367,728.3738,0.0000
    33,-6.1075,733.5000,0.0000
    34,-1.4033,740.5562,0.0000
    35,-1.1200,750.0000,0.0000
    36,-1.4604,761.3461,0.0000
    37,-6.1354,768.3586,0.0000
    38,-8.4616,772.4294,0.0000
    39,-8.7176,879.5849,0.0000
    40,-1.4033,890.5562,0.0000
    41,-1.1200,900.0000,0.0000
    42,-1.4033,909.4437,0.0000
    43,-6.1075,916.5000,0.0000
    44,-8.8183,921.2440,0.0000
    45,-6.7862,1032.4820,0.0000
    46,-1.4033,1040.5562,0.0000
    47,-1.1200,1050.0000,0.0000
    48,-1.4033,1059.4437,0.0000
    49,-8.2561,1069.7228,0.0000
    50,-8.2641,1070.1228,0.0000


    3) Далее в экселевской программе заполняем лист ПК, вводя восточную координату каждого поперечника и ПК поперечника.
    сделать это можно быстро введя прирощение восточной координаты, и ввод пикетажа, если интервал одинаковый то вообще ни каких проблем.
    4)Далее на листе ВОП заполняем графы пикет и отметка (проектная отметка оси по асфальтобетону)
    5)Далее на лист ЗП вставляем данные полученные в п.2, и программа автоматиески сортирует точки и определяет какому поперечнику принадлежит какая точка, берет высоту оси и от неё по превышению пересчитывает каждую точку. Таким бразом на выходе мы получаем данные ПК/смещение -лево +право от оси и высоту точки

    пикет смещение отметка (раскрыть)

    ПКСдвигН, м
     -15.772271.267
      271.740
     19.638271.224
     19.638271.151
     20.038271.216
     25.776275.042
    50-19.536269.117
    50-16.227271.323
    50 271.810
    5016.227271.323
    5021.305267.938
    5021.705267.930
    5030.984274.115
    100-21.143267.537
    100-15.585271.242
    100 271.710
    10015.585271.242
    10020.996267.635
    150-26.535263.540
    150-21.559266.383
    150-14.632271.001
    150 271.440
    15015.585270.972
    15021.965266.719
    200-24.188262.782
    200-18.559265.998
    200-11.561270.663
    200 271.010
    20014.593270.572
    20021.531265.947
    20023.85264.622
    250-21.626262.493
    250-16.5265.423
    250-9.444270.127
    250 270.410
    25011.346270.070
    25018.359265.395
    25022.429263.068
    300-20.415262.052
    300-9.444269.367
    300 269.650
    3009.444269.367
    30016.5264.663
    30021.244261.952
    350-17.518263.214
    350-9.444268.597
    350 268.880
    3509.444268.597
    35019.723261.744
    35020.123261.736
    35020.309261.860


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

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

    И в итого за день трудов я получал модель, ведомости на все слои и координаты для проверки всех слоев и занимался технадзором до конца объекта не вспоминая больше про оцифровку и обработку данных.
     

    Вложения:

    Grandpa, Ohr и FOXXX591 нравится это.
  2. FOXXX591

    FOXXX591 Форумчанин

    До сих пор я использую именно этот метод построения цифровой модели, но немного по другому, без помощи спец программ и с любым интервалом в продольном направлении, хоть через 1, с учетом продольного профиля.
    Оцифровка по готовым поперечникам мне видится более простым и быстрым способом.
    P.S посмотрел ваш вариант оцифровки. Да, там быстро все должно оцифровываться, но есть минус, это построение модели с интервалом в 50м, без учета выпуклых и вогнутых кривых. Т.е идет прямая интерполяция на 50м, а это не совсем верно. Коридор позволяет исправить эту оплошность.
     
    Grandpa и Ohr нравится это.
  3. Евгений Рак

    Евгений Рак Форумчанин

    Если вы имеете в виду выпуклые и вогнутые кривые в вертикальном плане то эта неточность при построении коридора как я описал в предыдущем сообщении устраняется построением продольного профиля, а в плане все строится "напрямик" и на кривых довольно большие погрешности это так.
    Но это совсем несложно исправить, в предыдущей программке добавил пару формул =)
    Для примера использовал данные из прошлого сообщения, только взял не все зем полотно,а только по верху (лево, ось, право).
    И теперь алгоритм выглядит примерно так. все те же действия что и в прошлом сообщении, но теперь в экселе после построения через 50 метров поперечных профилей с смещением и превышением, выполняется линейная интерполяция по ширине и превышению, то есть допустим на ПК 0+00 ширина 10 м, а на ПК 0+50 ширина 15м, то на ПК 0+10 ширина 11, на ПК 0+20 ширина 12 и тд, и тоже самое с превышением относительно оси по асфальтобетону. Если край зем полотна на ПК 0+00 имеет превышение -1 м а на ПК 0+50 превышение -0,5 то на ПК 0+10 -0,9, на 0+20 -0,8.
    Таким образом с помощью программы можно рассчитать линейную интерполяцию по ширине и по высоте между поперечниками.
    А дальше расчет абсолютных отметок интерполированных точек происходит не линейно, превышения в каждом поперечнике (то есть через 10м) прибавляются к отметке по оси с листа ВОП (там данные оси проезжей части через 10 м, это исходные данные).
    И при построении точек относительно оси (пикет/смещение) получаются точки по оси и по бровкам, т.к. как построение идет поочередно допустим с начала по левой потом по правой брове и по оси, строим 3д полилинию в автоматическом режиме по номерам точек, от первой до последней, подрезаем лишнее и имеем 3 структурные линии.
    Строим продольный профиль из файла (отдельная колонка в экселевской программке копируем и вставляем в txt файл), строим конструкцию которая имеет цели смещение по ширине и смещения по отметке. Создаем коридор указываем цели, и имеем коридор который имеет точно такую же точность построения как если бы вы строили на каждый поперечник отдельную конструкцию, но в моем случае где имеется 90 поперечных профелей это было бы жутко долго.
    Самое сложное в этом методе заключается в растаскивании поперечников по определенной сетке, и создание конструктива на отдельном слое. Минусы этот метод поддерживает интерполяцию только по одинаковому колличеству структурных линий на всех поперечниках (те есть если есть левая и правая бровки то только по ним, если еще и низ ЗП то он должен быть на всех поперечниках).
    Ну и из минусов нужно все таки понять как эта программка работает я специально сделал все в экселе без макрасов чтобы при желании можно было понять, хотя я писал макрос именно на эту интерполяцию давным давно.
    В автокадовском файле, точки, профиль, коридор, поперечники через 10 м. И все построено имея трассу, отметки продольного профиля через 10м, и поперечные профили через 50м, в другой файле (в предыдущем сообщении).
    Подробно расписывал не для вас, вам можно было в двух словах, а для других, может кому нибудь пригодится =) И если есть интерес можно поподробней пояснить действие экселевской программки.
     

    Вложения:

    Nik1983 и Grandpa нравится это.
  4. FOXXX591

    FOXXX591 Форумчанин

    Как вы их (данные) получили? В ручную забивали основываясь на продольный профиль или сначала строили профиль трассы в сивиле и экспортировали в эксель?
    Я строю сначала профиль в сивиле, а затем экспортирую отметки профиля в эксель через любой промежуток.
     
  5. Евгений Рак

    Евгений Рак Форумчанин

    Это данные с проекта отметок профиля через 10 метров, забил вручную в эксель, потом с помощью формулы сделал чтобы пикетаж и отметки были через пробел, и вставил в текстовый файл. Потом при создании профиля, выбор пункта создать профиль из файла.
    А возможность экспорта через отчеты я тоже как то пользовался, удобная штука, профиль отметки можно получать через любой интервал.
     
    Grandpa нравится это.
  6. FOXXX591

    FOXXX591 Форумчанин

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