Создать элемент 3d mesh (3d сетка) из таблицы точек и/или таблицы линий уровня по таблице контура.

Вызов:

ac_request("do_create_mesh_by_points_and_lines",  int iTable_Coords3DPointsTable, int iTable_Coords2DTableContour, int iTable_Coords3DPointsTable);


Здесь:

iTable_Coords3DPointsTable - дескриптор таблицы, описывающей 3d точки уровня поверхности (может быть -1, если уровни заданы только линиями);

iTable_Coords2DTableContour - дескриптор таблицы, описывающей 2d точки контура. Если указать -1 - то контуром будут точки будут рассчитаные автоматически по таблицам точек уровня и линий;

iTable_Coords3DPointsTable - дескриптор таблицы, описывающей 3d линии уровней (может быть -1, если уровни задаются только точками).


Пример.

Построить общую поверхность для набора выделенных элементов в виде 3d сетки, у которой координаты уровней заданы точками.


int iTable_Coords3DTable;

object("create", "ts_table", iTable_Coords3DTable);


int iTable_Coords2DTableContour;

object("create", "ts_table", iTable_Coords2DTableContour);


ac_request_special("load_elements_list_from_selection", 1, "MeshType", 2);

ac_request("get_loaded_elements_list_count", 1);

int icount = ac_getnumvalue();

cout << "Отобрано элементов для анализа = " << icount << "\n";

ac_request("get_lands_combined_contour_coords", 1, iTable_Coords2DTableContour);

string str;

ts_table(iTable_Coords2DTableContour, "print_to_str", str);

cout << "Контур\n";

coutvar << str;

ac_request("get_lands_topcoords", 1, iTable_Coords3DTable, 1);

ts_table(iTable_Coords3DTable, "print_to_str", str);

cout << "\nКоординаты\n";

coutvar << str;

ac_request("do_create_mesh_by_points_and_lines",  iTable_Coords3DTable, iTable_Coords2DTableContour,-1);


object("delete", iTable_Coords2DTableContour);

object("delete", iTable_Coords3DTable);