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

Вернуться   Форум DWG.RU > Программное обеспечение > Вертикальные решения на базе AutoCAD > Civil 3D 2017. План в отметках. Округление. Как научить цивил считать?

Civil 3D 2017. План в отметках. Округление. Как научить цивил считать?

Ответ
Поиск в этой теме
Непрочитано 28.11.2016, 15:30 | 1 #1
Civil 3D 2017. План в отметках. Округление. Как научить цивил считать?
ripeinik
 
ГИПик
 
Нерезиновая
Регистрация: 21.06.2012
Сообщений: 57

Доброго всем! Проблема в следующем, думаю сталкивались с ней многие генпланисты, дорожники и все те кто имеет дело с планами в отметках и картограммами.
суть: имеется три поверхности. верх бетона, верх выравнивающего и существующая. толщина бетона жестко зафиксирована проектом и равняется 30см. бетон лежит на выравнивающем слое переменной толщины. надо сделать план в отметках с округлением до 1см. опустим подробности и просто представим что план в отметках надо сделать по уже построенным поверхностям,т.е. имеются три исполнительных съемки по верху каждой поверхности.
и вот собсно в чем веселье : цивил вычисляет нам абсолютные отметки и толщины. т.е показывает нам 2 знака ну или сколько мы захотим, а сам в уме держит там 14знаков после запятой или сколько там я хз. и это выливается в следующую картинку см. вложение.
различные форму округлений усечений в стиле метки и прочие махинаций не помогли, потому что либо вылетают отметки там где перескок через 0,005, либо те где 0,001 и 0,009 рядом болтаются. кароче ни один из способов не дал правильные отметки. а отметок ой как много и ручками это строить геморрой.
проблема решалась выражениями на стаидии П и Р, но работало только для слоев постоянной толщины. слои же перемененной толщины приходилось проверять и исправлять руками (очень автоматизированно,ага)
посему просьба: как научить цивил производить математические вычисления только с 2мя знаками после запятой? отбрасывая нафиг все что там потом болтается и мешается? округлять до 3х знаков нельзя
спасибо!

Миниатюры
Нажмите на изображение для увеличения
Название: 2016-11-28_15-19-32.png
Просмотров: 206
Размер:	17.9 Кб
ID:	179891  

__________________
Нормально делай - нормально будет. И всегда бери аванс =)
Просмотров: 10917
 
Непрочитано 28.11.2016, 21:02
#2
Nick Z


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


Может тогда взять не три, а две поверхности для анализа?
Если бетон жёстко выше на 30 см чем выравнивающая, то взять выравнивающую и скопировать на 30 см вверх?
получится тогда - существующая + выравнивающая + её копия. А третью, которая исполнительная съёмка по бетону, выкинуть.
Nick Z вне форума  
 
Автор темы   Непрочитано 29.11.2016, 09:35
#3
ripeinik

ГИПик
 
Регистрация: 21.06.2012
Нерезиновая
Сообщений: 57


Цитата:
Сообщение от Nick Z Посмотреть сообщение
Может тогда взять не три, а две поверхности для анализа?
Если бетон жёстко выше на 30 см чем выравнивающая, то взять выравнивающую и скопировать на 30 см вверх?
получится тогда - существующая + выравнивающая + её копия. А третью, которая исполнительная съёмка по бетону, выкинуть.
нельзя. надо именно все 3 проверить. собственно одна из задач-проверить, правильно ли построили. т.е. выдержали толщину 30см

копировать нельзя. нужны именно ЭТИ поверхности и никакие другие

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

нужно просто как-то обойти это округление и заставить цивил вычитать с точностью до двух знаков, вопрос только-как это сделать? была уже идея взорвать до текста, текст загнать в точки, точки в иксель там вычитать и обратно каким-то чудным образом загонять в чертеж разницу, но это тупизм и динамики никакой. да, таким образом мы проверим разницу. но нам еще чертежи оформлять и вообще в будущем этот косяк надо устранить,она часто появляется, если имеются переменные толщины.
насколько помню в геониксе такой проблемы не было,но геоникс нефига не динамичный и это перетаскивание чертежей туда-сюда из цивила в геоникс задолбало и никакой динамики в итоге.
__________________
Нормально делай - нормально будет. И всегда бери аванс =)

Последний раз редактировалось ripeinik, 29.11.2016 в 09:42.
ripeinik вне форума  
 
Непрочитано 29.11.2016, 10:09
#4
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


нужно округлить исходные данные
trir вне форума  
 
Автор темы   Непрочитано 29.11.2016, 11:00
| 1 #5
ripeinik

ГИПик
 
Регистрация: 21.06.2012
Нерезиновая
Сообщений: 57


Цитата:
Сообщение от trir Посмотреть сообщение
нужно округлить исходные данные
такая мысль уже пришла в голову и этим занялись, но там, где метки стоят между точками исходных данный и цивил интерполирует-все равно такая херня происходит периодически=(
ну и при построении коридорами тоже не прокатит, уклоны могут быть любые и в точках по-любому получаются значения с кучей знаков на конце.... каждый раз придется округлять точки поверхностей в икселе. это бред имхо
__________________
Нормально делай - нормально будет. И всегда бери аванс =)
ripeinik вне форума  
 
Непрочитано 02.12.2016, 11:04
| 1 #6
P_S


 
Регистрация: 09.10.2006
Санкт-Петербург
Сообщений: 99


Считать округлённые значения Цивилу ядро не позволит. Считать округлённо должно приложение, в котором мы сами задаём, что хотим увидеть. В качестве примера:
Код:
[Выделить все]
 ;Считаем, что в чертеже созданы 3 поверхности, и мы указываем точку, принадлежащую всем трём
(vl-load-com)
(foreach app
    (vl-registry-descendents "HKEY_CLASSES_ROOT")
  (if (wcmatch(strcase app)"AECCXUILAND.AECCAPPLICATION*")
    (setq civ_app app)));версия Civil 3D
(setq lst nil
      pnt(getpoint "Укажите точку"))
(vlax-for surf
(vlax-get(vlax-get (vla-GetInterfaceObject(vlax-get-acad-object)civ_app) 'ActiveDocument)'Surfaces)
  (setq lst(cons
  (vlax-invoke surf 'FindElevationAtXY (car pnt)(cadr pnt))lst)))
;получаем список отметок поверхностей в указанной точке и делаем с ним что хотим:
(setq lst(vl-sort lst '>);упорядочиваем список
      t_const '((0 . "TEXT")
                        (100 . "AcDbEntity")
                        (67 . 0)
                        (410 . "Model")
                        (100 . "AcDbText")
                        (40 . 2.0)
                        (41 . 1.0)
                        (51 . 0.0)
                        (7 . "Standard")
                        (71 . 0)
                        (72 . 0)));DXF-коды, общие для всех текстовых меток
(entmakex (append'((0 . "POINT") (100 . "AcDbEntity") (67 . 0) (410 . "Model")
		   (100 . "AcDbPoint"))(list(list 10(car pnt)(cadr pnt)(caddr pnt)))))
;создаём маркер, а вокруг него - такие текстовые метки, какие хотим:
(entmakex (append t_const
                     (list(cons 1(rtos(car lst)2 2))
                     (list 10(+(car pnt) 1.0)(+ (cadr pnt) 1.0)(caddr pnt)))))
(entmakex (append t_const
                     (list(cons 1(rtos(cadr lst)2 2))
                     (list 10(+(car pnt) 1.0)(- (cadr pnt) 1.5)(caddr pnt)))))
(entmakex (append t_const
                     (list(cons 1(rtos(caddr lst)2 2))
                     (list 10(+(car pnt) 1.0)(- (cadr pnt) 4.0)(caddr pnt)))))
(entmakex (append t_const
                     (list(cons 1(rtos(-(atof(rtos(car lst)2 2))(atof(rtos(cadr lst) 2 2)))2 2))
                     (list 10(- (car pnt) 7.5)(+ (cadr pnt) 1.0)(caddr pnt)))))
(entmakex (append t_const
                     (list(cons 1(rtos(-(atof(rtos(cadr lst)2 2))(atof(rtos(caddr lst) 2 2)))2 2))
                     (list 10(- (car pnt) 7.5)(- (cadr pnt) 1.5)(caddr pnt)))))

А вообще, (извиняюсь, конечно) ловля сантиметра в округлениях попахивает паранойей.
P_S вне форума  
 
Автор темы   Непрочитано 02.12.2016, 12:12
#7
ripeinik

ГИПик
 
Регистрация: 21.06.2012
Нерезиновая
Сообщений: 57


Цитата:
Сообщение от P_S Посмотреть сообщение
Считать округлённые значения Цивилу ядро не позволит. Считать округлённо должно приложение, в котором мы сами задаём, что хотим увидеть.
спасибо, что-нибудь попробуем
Цитата:
Сообщение от P_S Посмотреть сообщение
А вообще, (извиняюсь, конечно) ловля сантиметра в округлениях попахивает паранойей.
а вот это щас обидно было слющай да.
параноики написали наши нормативы, в которых погрешность строительства 5мм.
если помножить 1см бетона на площадь аэродрома - это сколько ж рублей можно украсть у государства?
ну и заказчик задает вопросы из раздела : у вас тут отметка верха 100,23м, отметка низа 100,00м, а вы мне пишете толщины 0,24м. вы что-идиоты? его ж не волнует, - считаем мы вручную или в цивиле. ему нужен правильный чертеж. собно,первым этот косяк заказчик заметил,мы как-то не обращали внимания сначала. 4752378532194805739857389 отметок проверить сразу не догадались
ну и строители потом закрывать исполнительную будут весело. когда у них отметки будут биться, а толщина-нет. скажу:дебилы в своих проектных институтах сидят,вышки поназаканчивать, а вычитать не научились
__________________
Нормально делай - нормально будет. И всегда бери аванс =)
ripeinik вне форума  
 
Непрочитано 02.12.2016, 12:30
#8
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


печатайте 6 знаков после запятой - и не будет вопросов
trir вне форума  
 
Автор темы   Непрочитано 02.12.2016, 13:12
| 1 #9
ripeinik

ГИПик
 
Регистрация: 21.06.2012
Нерезиновая
Сообщений: 57


Цитата:
Сообщение от trir Посмотреть сообщение
печатайте 6 знаков после запятой - и не будет вопросов
ГОСТ 21.508-93 СПДС.
3.14 Система высотных отметок, принимаемая в рабочих чертежах генеральных планов, должна соответствовать системе высотных отметок, принятой на инженерно-топографическом плане.
3.15 Размеры, координаты и высотные отметки указывают в метрах с точностью до двух знаков после запятой.
__________________
Нормально делай - нормально будет. И всегда бери аванс =)
ripeinik вне форума  
 
Непрочитано 02.12.2016, 13:21
#10
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


а вы текстовым приложением - координаты, отметка
trir вне форума  
 
Непрочитано 02.12.2016, 18:36
#11
Nick Z


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


Ну фиг знает. Попробуйте в метках для поверхности настроить своё округление при помощи выражений.
там в выражениях есть функция TRUNC, она отсекает от числа целую часть.
пишете там что-то вроде {Отметка поверхности}-TRUNC({Отметка поверхности}) - это получается дробная часть от отметки
потом её умножаете на 100 и отсекаете ещё раз
Потом это отсечённое и умноженное на 100 округляете тамже в выражении функцией ROUND. Если округлённое равно 1, то прибавляете к отметке 0,01, если меньше, то оставляете отсечённое
Там это надо будет через IF делать.

Вот так получится
Миниатюры
Нажмите на изображение для увеличения
Название: 1.PNG
Просмотров: 112
Размер:	13.8 Кб
ID:	180173  

Последний раз редактировалось Nick Z, 02.12.2016 в 19:19.
Nick Z вне форума  
 
Непрочитано 03.12.2016, 11:08
#12
Neznayka


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


может проще все тупо через эксель пропустить:
1. все превращаете в текст
2. командой данныеизвл перегоняете координаты и содержимое в эксель
3. в экселе выполняете расчет нужный
4. точками заливаете обратно в цивил
Neznayka вне форума  
 
Автор темы   Непрочитано 15.02.2017, 17:04
#13
ripeinik

ГИПик
 
Регистрация: 21.06.2012
Нерезиновая
Сообщений: 57


Цитата:
Сообщение от Nick Z Посмотреть сообщение
Ну фиг знает. Попробуйте в метках для поверхности настроить своё округление при помощи выражений.
там в выражениях есть функция TRUNC, она отсекает от числа целую часть.
пишете там что-то вроде {Отметка поверхности}-TRUNC({Отметка поверхности}) - это получается дробная часть от отметки
потом её умножаете на 100 и отсекаете ещё раз
Потом это отсечённое и умноженное на 100 округляете тамже в выражении функцией ROUND. Если округлённое равно 1, то прибавляете к отметке 0,01, если меньше, то оставляете отсечённое
Там это надо будет через IF делать.
не прокатило...либо я чета неправильно наворотила в выражениях....

Цитата:
Сообщение от Neznayka Посмотреть сообщение
может проще все тупо через эксель пропустить:
1. все превращаете в текст
2. командой данныеизвл перегоняете координаты и содержимое в эксель
3. в экселе выполняете расчет нужный
4. точками заливаете обратно в цивил
это мы делали для проверки,но динамики у этого способа никакой, а хотелось бы динамику. да и чтоб такой херней не заниматься - юзается ГЕОНИКС. он кстати всегда правильно считает...как они обошли этот косяк? может можно его "вскрыть" и посмотреть?=)) есть умельцы?=)))


кстати вот интересно, почему этим вопросом никто не задался? все считают картограммы ручками и в геониксе что ли?

модуль картограмма и прочие навешанные на цивил фишки для расчетов планов в отметках не предлагать,они все в той или иной степени глючные и косячные, половина вылетает. видимо у нас очень большие площади и очень сложные поверхности
__________________
Нормально делай - нормально будет. И всегда бери аванс =)
ripeinik вне форума  
 
Непрочитано 24.02.2017, 14:58
#14
Nick Z


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


Давайте файл. Я сам попробую настроить выражения.
Nick Z вне форума  
 
Непрочитано 25.02.2017, 02:16
#15
CTPAHHuK

инженер-генпланист
 
Регистрация: 23.11.2013
Москва
Сообщений: 35


Цитата:
Сообщение от ripeinik Посмотреть сообщение
а вот это щас обидно было слющай да.
если помножить 1см бетона на площадь аэродрома - это сколько ж рублей можно украсть у государства?
ну и заказчик задает вопросы из раздела : у вас тут отметка верха 100,23м, отметка низа 100,00м, а вы мне пишете толщины 0,24м. вы что-идиоты?
Какой у вас заказчик внимательный.
Один раз убедил начальство, что если экспертиза "косяк" заметит - буду сам объяснять, что это не баг, а фича. Экспертиза то ли не заметила, то ли не стала придираться. ЧСХ, это был именно аэродром.
В принципе, погрешность съемки + ошибка метода квадратов (а он сам не точный) дадут куда больше, чем этот сантиметр, но заказчика в этом не всегда можно убедить.
CTPAHHuK вне форума  
 
Непрочитано 25.02.2017, 12:14
#16
vovkaf


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


Цитата:
Сообщение от ripeinik Посмотреть сообщение
модуль картограмма и прочие навешанные на цивил фишки для расчетов планов в отметках не предлагать,они все в той или иной степени глючные и косячные, половина вылетает. видимо у нас очень большие площади и очень сложные поверхности
http://www.civilgeotools.ru/cgt/ пробовали?
1. Давно не считал в нем картограмм (на днях попробую), но исполнительную по поверхностям (Исполнительная съёмка - создать факт), вроде верно считает (см. в приложении). И автоматизация высокая) Точность представления можно отрегулировать в стиле метки точки.

2. По-моему, вариант с экселем очень даже рабочий, только немного иначе:
- заливаем точки в эксель. Исходник у вас тхт?;
- меняем точность представления в ячейках с координатами до 2 знаков после запятой;
- экспортируем в текстовый файл;
- импорт точек в Цивил.

P. S. Интересно, а что, Цивил2017 умеет брать разности (проект-факт) и показывает это в стиле точек? Цивилгеотулз так делает. Минус в том, что ЦГТ уже не поддерживается разработчиком и на свежие версии Цивила он не становится.
Вложения
Тип файла: pdf Исполнительная плиты 1-4 отм+15.00.pdf (117.5 Кб, 72 просмотров)

Последний раз редактировалось vovkaf, 25.02.2017 в 12:38.
vovkaf вне форума  
 
Непрочитано 26.08.2020, 23:13
#17
NewNeo


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


Ну че, Ксюх, получилось научить Civil правильно считать?
NewNeo вне форума  
 
Автор темы   Непрочитано 30.03.2022, 00:46
#18
ripeinik

ГИПик
 
Регистрация: 21.06.2012
Нерезиновая
Сообщений: 57


Цитата:
Сообщение от NewNeo Посмотреть сообщение
Ну че, Ксюх, получилось научить Civil правильно считать?
ага получилось, студенты сидят, вручную правят, ГИПам не до того
__________________
Нормально делай - нормально будет. И всегда бери аванс =)
ripeinik вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Вертикальные решения на базе AutoCAD > Civil 3D 2017. План в отметках. Округление. Как научить цивил считать?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка обновления AutoCad Civil 3D 2013 Русский до SP2 AlexCain AutoCAD 1 17.03.2015 13:11
AutoCAD Civil 3D. Перспективность в РФ и США. Djeker Профессии и трудовые отношения 14 22.08.2014 10:30
Autodesk.AutoCAD Civil 3D 2015x64 почему устанавливается в папку C:\Program Files\Autodesk\AutoCAD 2015 Nikolays Вертикальные решения на базе AutoCAD 3 21.04.2014 12:45
Civil 3d 2014. Где в Civil 3d 2014 устанавливается стиль размера для выноски метки. Valery Brelovsky Вертикальные решения на базе AutoCAD 2 08.04.2014 11:00
Создание поверности и 3d модели поверхности в AutoCAD Civil 3d 2009 Arhistratig Вертикальные решения на базе AutoCAD 25 07.05.2013 14:53