以下是我的相关代码
//绑定系统标注样式 DgnDimStyleP dimStyleP = mdlDimStyle_create(); if (SUCCESS != mdlDimStyle_getByName(dimStyleP, L"Notes Arrow", ACTIVEMODEL, DIMSTYLE_SEARCH_DEFAULT)) { mdlDimStyle_free(&dimStyleP); mdlDialog_dmsgsPrint("Can NOT find PL dimStyle"); return; } //改变样式的某些属性,并应有样式 if (NULL != dimEdP) { StatusInt s1 = mdlDimStyle_setColorProp(dimStyleP, color, DIMSTYLE_PROP_General_Color_COLOR); StatusInt s2 = mdlDimStyle_setColorProp(dimStyleP, color, DIMSTYLE_PROP_ExtensionLine_Color_COLOR); StatusInt s3 = mdlDimStyle_setColorProp(dimStyleP, color, DIMSTYLE_PROP_Terminator_Color_COLOR); StatusInt s4 = mdlDimStyle_setColorProp(dimStyleP, color, DIMSTYLE_PROP_Text_Color_COLOR); mdlDim_applyDimStyle(&dimEdP, dimStyleP, ACTIVEMODEL); //mdlElmdscr_setSymbology(dimEdP, &color, &style, &weight, NULL); //mdlDim_validate(&dimEdP->el); mdlElmdscr_appendDscr(cellEdP, dimEdP); } mdlDimStyle_free(&dimStyleP); mdlElmdscr_add(cellEdP);//cellEdP为一个单元的元素描述符 return;
但是发现设置无效,其颜色均无改变。请问需要如果设置?
【MS V8i C++】
用mdlElement_setSymbology修改元素的颜色,终端符最好是在标注样式里边定制好直接拿来用。
使用您推荐的函数或者mdlElmdscr_setSymbology修改颜色只会修改标注里面中间带箭头线段的颜色,而两边的扩展线?的颜色无法改变。
请问是否有办法在使用系统自带标注样式的前提下,修改其某些属性以满足我的需要?