面透明和设置装配体着色类似,通过设置面的ProSurfaceAppearanceProps.transparency
即可。transparency
是一个double类型的数据,取值范围在1-0之间,值越高,透明度越大。直接给出代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| ProError status; ProModelitem modelitem; ProSurfaceAppearanceProps appearanceProperties; ProSelection *sel_array; int i, n_size;
status = ProMessageDisplay(MSGFILE, "IMI_PrompSetTransparent"); status = ProSelect((char *)"sldsurface,surface", -1, NULL, NULL, NULL, NULL, &sel_array, &n_size); status = ProArraySizeGet((ProArray *)sel_array, &n_size); if (status != PRO_TK_NO_ERROR || n_size < 1) { return; } for (i = 0; i < n_size; i++) { status = ProSelectionModelitemGet(sel_array[i], &modelitem); status = ProSurfaceAppearancepropsGet(&modelitem, &appearanceProperties); appearanceProperties.transparency = 0.7; status = ProSurfaceAppearancepropsSet(&modelitem, &appearanceProperties); }
|
完整代码可在Github.com下载。代码在VS2010,Creo 2.0 M060 X64下编译通过。