определение координат плоскости по одной точке

0 голосов
спросил 24 Окт, 08 от tuman (1,120 баллов) в категории Программные продукты Esri
Здравствуйте! Может ли кто прокосультировать по следующему вопросу. Возможно ли построение плоскости по одной точке, если мы знаем ее координаты. (азимут падения и угол падения)?

37 Ответы

0 голосов
ответил 29 Окт, 08 от tuman (1,120 баллов)
Кстати, тут мне посоветовали определять плоскость через нормаль к ней, т.е. через перпендикуляр. Имея координаты в одной точке, определить координаты нормали к этой плоскости и пытаться построить эту плоскость. Хотя наверное хрен редьки не слаще.
0 голосов
ответил 29 Окт, 08 от Stvan (7,620 баллов)
Да не надо вам уравнение, нарисуйте тин плоскости, как geologic посоветовал.
0 голосов
ответил 29 Окт, 08 от AndreyL (5,420 баллов)
Линию пересечения можно получить, если вычесть в 3D аналисте, через инструмент насыпи выемки, эти две поверхности, нулевая линия и будет являться линией пересечения пласта и поверхности рельефа. Далее ее спокойно можно превести в шейп.
Не совсем понял, как, но идея все равно та же - нулевая изолиния разницы поверхностей дает линию их пересечения, а способов получения этой разности, как и изолинии, навалом.
По поводу уравнения плоскости - в аналитической геометрии плоскость действительно задается нормалью, и как Вы получите эту нормаль - это Ваше дело. Я получил ее из трех точек, Вы можете в лоб расчитать из координат точки и элементов залегания - результат будет одинаковый, именно тот, который я и записал. Теперь не нужно построений методом треугольников (фактически это уже сделано), просто задаете любую пару XY и получаете высоту этой точки, лежащей на плоскости.
0 голосов
ответил 29 Окт, 08 от geologic (39,860 баллов)
2AndreyL: Да, покрутил в голове - вроде все получается по вашей методе. Никакого бейсика, конвертация точки-тин-точки и построчная калькуляция. не скажу гениальная, но озарительная идея :) Тин разницы плоскости и рельефа будет построен точно на тех же точках, что и тин самого рельефа. Значит, треугольники обоих тинов совпадут в плане абсолютно, и здесь точность будет идеальная. Однако два замечания:
1) как вы и отметили, линия сечения будет выдана плоская - ее надо будет затрехмерить, спроецировав на TIN рельефа. Другой вариант - задать ее вертексам высоту плоскости по вашей методе (формуле). Возможно, второй вариант более точный, но и более хлопотный.
2) 3D analyst строит изолинии сразу скругленными, изобразительно красивыми, а за этим надо следить, если хочешь точного сечения.

А что, в серфере появилось вычитание TIN и сечения произвольными плоскостями? Раньше там и тинов-то не было.

2Tuman: инструменты новые, надо пробовать. Возможно и они что-то дадут, но в пред. версиях Volume Calculation работало только по горизонтальным сечениям (границам).

2Stvan: Делать "как geologic советовал", можно, но пересечения это не дает, чисто для погляду. То, как советует Андрей, именно дает ЛИНИЮ сечения в виде 3D шейпа.

Тема явно в FAQ просится ;)

    
0 голосов
ответил 29 Окт, 08 от AndreyL (5,420 баллов)
1) как вы и отметили, линия сечения будет выдана плоская - ее надо будет затрехмерить, спроецировав на TIN рельефа. Другой вариант - задать ее вертексам высоту плоскости по вашей методе (формуле). Возможно, второй вариант более точный, но и более хлопотный.
 
Для этого проще построить еще один ТИН по плоскости, и спроецировать линию на него. Тогда не надо разбивать на вертексы и пересобирать потом линию по точкам, а результат будет точно тот-же

2) 3D analyst строит изолинии сразу скругленными, изобразительно красивыми, а за этим надо следить, если хочешь точного сечения.
 
Да, но это зависит от плотности ТИНа. В ГлобалМаппере можно управлять параметром сглаживания, в АркГИС нельзя. Насколько я понимаю, что сглаживания как такового нет - чистая триангуляция - на то и ТИН. 

А что, в серфере появилось вычитание TIN и сечения произвольными плоскостями? Раньше там и тинов-то не было.
 
ТИНов и сейчас нет, зато есть полностью контролируемые гриды - можно построить грид не только с определенным разрешением, но и на четко определенную площадь. Строите два одинаковых (по площадным параметрам) грида, и делаете с ними что хотите, хоть умножение с логарифмированием. Так это уже давно есть.
0 голосов
ответил 29 Окт, 08 от geologic (39,860 баллов)
ну математика гридов и в Arc есть. Грид все-таки немножко проще по сути... Приходилось сочинять :)

C тинами много вопросов последнее время, и почему-то в ГИС.
0 голосов
ответил 30 Окт, 08 от Stvan (7,620 баллов)
Если делать по методике AndreyL не получится точной линии пересечения потому, что на тине рельефа просто не будет точек в том месте где плоскость пересекается с рельефом, нужно сначала эти точки откуда-то взять.
Мы такие штуки в Micromine делаем, но в ГИСе то же было бы интересно. Нужно пожалуй гриды вычитать, ну или делать из грида нужного разрешения точки и далее по формуле AndreyL.
0 голосов
ответил 30 Окт, 08 от AndreyL (5,420 баллов)
И да, и нет – эти точки будут интерполированы по ближайшим точкам ТИНа. Тогда чем плотнее ТИН, тем точнее интерполяция, т.е. точность выхода равна точности входа. Для получения абсолютно точного рельефа Вам нужно будет определить высоту каждой молекулы, находящейся на поверхности, а межмолекулярное пространство рассчитывать исходя из формы этой молекулы. А что вычитать - гриды или тины - это дело вкуса и качества исходной информации.
0 голосов
ответил 30 Окт, 08 от geologic (39,860 баллов)
2Stvan: Мне тоже сначала так показалось, но ведь как делаются подобные операции на ТИНах (вычитания, расчеты сечений)? Именно интерполяцией, между точками треугольника. Можно ее делать вручную, можно - как подсказал AndreyL, ловким трюком применить встроенный механизм интерполяции. До конца в трехмерке не могу представить, как сработает, но кажется, что идея очень здравая. Точно так же удалось в свое время запустить механизм калибровки маршрутных тем для интерполяции 3D-линий.

Насчет геологических Майкромайн, Джемком, Дэйтамайн, Сюрпак и тем более насчет всяких земельных Терейнов вопроса нет, их и надо применять. Да еще повыбирать-попривередничать в конкретном случае. Однако вопрос 3D-построений именно в ГИС постоянно всплывает, и будет всплывать - ну так уж хочется населению... Будем решать - там где это не до конца противно логике :)

Грид не годится для инженерки. Масштабы не те, расчет объемов чисто приблизительный, да и сама модель каркас поверхности слабо учитывает по своей сути. Для подземной геологии - применяется, для рельефа - категорически.
    
0 голосов
ответил 31 Окт, 08 от AndreyL (5,420 баллов)
Блин, СО РАН экономит на провайдере, посему на некоторое время оказался выключен из дискуссии.
Короче, надоел мне общий треп, типа может – не может! Вот модель. Все промежуточные сохраняются на G: диске, меняйте как хотите. Модель сделана буквально за пару часов, т.е. не для использования, а исключительно для демонстрации того, о чем я тут писал. Предполагается, что имеется ТИН и точечный слой (3Д, высоты соответствуют ТИНу) с углами и азимутами – для примера есть в архиве. Они могут быть в любых системах координат, поэтому их нужно перевести в прямоугольную. Плоскость будет строиться по одной точке с определенный идентификатором, который нужно задать. На выходе линия пересечения и ТИН плоскости. Тут нужно учесть, что ТИН – это выпуклый многоугольник, посему, когда линия пересечения определяет вогнутость, будет косяк.
На самом деле, держать ТИН ради плоскости, по-моему, глупо. Плоскость определяется (кривой) линией сверху и (прямой) линией снизу. Т.е. для построения плоскости достаточно задать нижнюю линию двумя точками – формула высот есть. Только вот потом соединить две линии в 3Д-полигон стандартными средствами не получится – тут либо использовать сторонние расширения, типа ЕТ, либо бейсик. Для примера по нулевой точке есть в архиве. uploads/20081031_121754_Model.rar
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...