|
[code]static void ChangeColor(void)
{
ads_point p; ads_name ent;
int nColor;
if (acedEntSel("\nВыберите примитив для изменения цвета: ",ent,p) == RTNORM) {
AcDbObjectId id; acdbGetObjectId(id,ent);
AcDbObjectPointer<AcDbEntity> pEnt(id,AcDb::kForWrite);
if (pEnt.openStatus() == Acad::eOk) {
nColor = pEnt->colorIndex();
char buf[256]; sprintf(buf,"\nУкажите номер цвета (0...256) <%d>: ",nColor);
acedInitGet(RSG_NONEG,NULL);
if (acedGetInt(buf,&nColor) == RTNORM) {
nColor = nColor % 257; // На всякий случай приводим к диапазону 0...256
pEnt->setColorIndex(nColor);
}
}
}
}[/code] |
|