ObjectARX, AutoCAD. Среда программирования библиотеки C++


         

Сложные примитивы - часть 2


return BAD;

}

status = acdbEntMake(entlist);

acutRelRb(entlist); // Release acdbEntMake() buffer.

if (status != RTNORM) {

acdbFail("Unable to add polyline vertex\n");

return BAD;

}

newpt[X] = 4.0;

newpt[Y] = 6.0;

entlist = acutBuildList(

RTDXF0, "VERTEX", // Entity type

62, 5, // Color (blue)

6, "dashed", // Linetype

10, newpt, // Second point

0);

if (entlist == NULL) {

acdbFail("Unable to create result buffer list\n");

return BAD;

}

status = acdbEntMake(entlist);

acutRelRb(entlist); // Release acdbEntMake() buffer.

if (status != RTNORM) {

acdbFail("Unable to add polyline vertex\n");

return BAD;

}

newpt[X] = 3.0;

newpt[Y] = 2.0;

entlist = acutBuildList(

RTDXF0, "VERTEX", // Entity type

62, 5, // Color (blue)

6, "dashed", // Linetype

10, newpt, // Third point

0);

if (entlist == NULL) {

acdbFail("Unable to create result buffer list\n");

return BAD;

}

status = acdbEntMake(entlist);

acutRelRb(entlist); // Release acdbEntMake() buffer.

if (status != RTNORM) {

acdbFail("Unable to add polyline vertex\n");

return BAD;

}

entlist = acutBuildList(

RTDXF0, "SEQEND", // Sequence end

62, 5, // Color (blue)

6, "dashed", // Linetype

0);

if (entlist == NULL) {

acdbFail("Unable to create result buffer list\n");

return BAD;

}

status = acdbEntMake(entlist);

acutRelRb(entlist); // Release acdbEntMake() buffer.

if (status != RTNORM) {

acdbFail("Unable to complete polyline\n");

return BAD;

}

Создание блока подобно, за исключением того, что, когда acdbEntMake () успешно создает Endblk примитив, это возвращает значение RTKWORD. Вы можете проверять имя нового блока запросом к acedGetInput ().




Содержание  Назад  Вперед