高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】editing 0 layer color
editing '0' layer color
editing '0' layer color
hi,
anybody could help how to set green (color index :3) color for '0' layer.
by default, '0' layer is set with white color.if setcolorindex called to set green , it return error and crashes.
oddblayertableptr players = pdb->getlayertableid().safeopenobject(oddb::kforwrite) ;
oddblayertablerecordptr player = oddblayertablerecord::createobject();
player->setname(odstring(dd_t("0")));
player->setcolorindex(odcmentitycolor::kacigreen);
player->setlineweight(oddb::klnwt158);
but if we autocad, the default layer will have white color.later one can edit to required color.could anybody help to edit the color of default layer.
thanks in advance,
petchi muthu
you try to recreate layer 0, which implies its erasure, which is forbidden.
just open it, and change the color.
vladimir
could you explain little more detail.
whatever the way, it is not accepting to set other color.
oddblayertableptr players = pdb->getlayertableid().safeopenobject(oddb::kforwrite) ;
oddbsymboltableiteratorptr piter = players->newiterator();
oddblayertablerecordptr player = oddblayertablerecord::createobject();
oddbobjectid layerid;
for (piter->start(); !piter->done(); piter->step())
{
oddblayertablerecordptr precord = piter->getrecordid().safeopenobject(oddb::kforread);
odstring layname = precord->getname();
if(! layname.compare("0"))
{
precord->erase();
player->setname(odstring(dd_t("0")));
player->setcolorindex(0x00000003);
int col = player->colorindex();
layerid = players->add(player);
}
}
here it crashes during call "precord->erase();" and
"layerid = players->add(player);"
thank you.
regards,
petchi
once again - you don't need to erase a layer, to change it's color.
vladimir
the deafault layer setting assigned with color white.i don't want .
further if i set color for default layer, still it is not accepting newly assigned color.still it takes white.(it was tried initially).then i erased default layer and created layer with '0' assigned required color, it crashes.
i think, i am missing some understanding what you explain.could you explain little clear.
thanks in advance
perhaps it's me who doesn't understand something...
why not just open the layer and change its color? like this, e.g.:
code:
oddblayertablerecordptr(pdb->getlayerzeroid().safeopenobject(oddb::kforwrite))->setcolorindex(3);
vladimir
thanks lot.
i understand my mistake.
it works well.
regards,
petchi muthu
|