Boris писал(а):Имеется файл DXF С отметками высот. Хотелось бы в MapInfo построить или отобразить 3-х мерную поверхность.
1) Автокада среди них нет. Стандартными средствами MapInfo 3-ю координату получить не удалось.
Как бы получить эти точки в виде поверхности или хотя бы точек с атрибутом высотой?
---
2) Если известен путь получения аналогичных данных из линий и полигонов (горизонталей), то он так же интересен.
можно попробовать "brute force", чтобы решить задачу:
- "разваливаем" блоки, чтобы получить абсолютные координаты (автокадовцы должны знать, как это сделать)
- убираем из DXF все лишнее, кроме нужных данных
- пишем простую программу, которая ищет группы координат (таги не помню, но вроде 10, 11, ... для X)
- "прочесываем" весь файл, и выводим (X,Y,Z))
или просить спецов по автолиспу сделать тоже самое ...
2) Известен, для этого нужно интерполировать (в идеале) по линиям, соответствующим линиям тока(нормалям к изолиниям )- ищем пересечения линий тока с изолиниями, и делаем одномерную интерполяцию, потом фильтруем полученные линии и переносим на результирующую сетку. Для этого нужно либо построить поле линий тока, либо его некоторую сеточную аппроксимацию, поймать тальвеги и хребты (на которых имеет место разрыв гладкости), и т.д. Это делали в МГУ (программа MAG), такой же алгоритм встроен в Сканекс. Я когда-то подобное делал, но не доделал и бросил - на равнине построить линии тока сложно.