Здравствуйте, коллеги! Сложилась следующая ситуация, создал 2 поверхности, черную и проектную красную, в пределах этих поверхностей создал N-ое количество ограничивающих замкнутых полилилиний для подсчета объемов котлованов под каждый ростверк. В 4х котлованах из 31 Civil выдал отрицательную площадь ограничивающей фигуры (причем в свойствах самой полилинии площадь как обычно положительна), отрицательный объем выемки и в результирующем столбце обозначил его насыпью и соответственно заминусовал эти объемы из итога. Специально для Qvinto: поиск юзал, чето либо я криворукий, либо такой проблемы на форуме никто не озвучивал :-))). Может кто сталкивался. Базовые поверхности проверены на 100 рядов уже, ошибку исключил. Что я делаю не так? Помогите, пожалуйста, разобраться.
Всё ты делаешь так. Проблема известная, но мало кто с ней сталкивался, т.к. редко считают "ограниченные объёмы" моё приложение Geo_Cartogram использует эту же функцию при расчёте методом призм, считая для каждого квадрата объём через эту функцию, и на каком-то этапе я с толкнулся с этой проблемой, ладно когда тупо + на - меняется, это можно проанализировать по отметкам и исправить, но порой эта функция выдаёт просто неверный объём но с верным знаком, такое выявит практически невозможно. --- Сообщения объединены, 7 июн 2019, Оригинальное время сообщения: 7 июн 2019 ---
Сводки, вытянутые из анализа поправлены вручную, смотрите анализ, там видно всю картину эту нехорошую) --- Сообщения объединены, 7 июн 2019, Оригинальное время сообщения: 7 июн 2019 --- Хм, Александр, а как ты поправил в своей Гео_картограмм данную корявость ограниченных объемов? потому что в следующей сводке объемов из 2х других поверхностей у меня уже было не 4 из 31 отрицательных объемов, а около 20 из 31. Это ж рандом какой то получается.
Разбиваю области на треугольники, считаю каждый треугольник, потом их складываю. --- Сообщения объединены, 7 июн 2019, Оригинальное время сообщения: 7 июн 2019 --- Ну а со знаком ещё проще. Контуры разбиваются по линии 0 работ, от того в одном контуре уже не может быть и выемки и насыпи, по значению рабочих отметок мы уже понимаем, будет там выемка или насыпь, поэтому берём модуль полученного объёма, а знак ему подставляем в соответствии со знаком рабочих отметок.
Контур не пересекает ни одна линия триангуляции поверхности объема, в связи с этим по каким причинам площадь данного полигона получается отрицательной. Пути решения проблемы: вставить вручную точку в поверхность верха или низа в пределах полигона и перестроить поверхность объема.