颜色标尺AIS_ColorScale的显示

在一些软件中经常会看到界面上放置一个颜色标尺,用来标识不同颜色所代表的温度、高度等。很多数值分析软件后处理的结果都有绘制云图的功能。

在OpenCADCADE中也提供了这样一个类AIS_ColorScale。如下为我的一个项目界面(读取stl网格,然后为每个顶点设定不同的颜色,颜色取值范围为0-1,每个定点的颜色根据其支撑强度计算颜色值,最后显示网格模型。该项目为3d打印工件创建支撑,可根据颜色计算不同的支撑立柱)。

 

 

 下面给出使用该类的C++代码。

Handle(AIS_ColorScale) colorScale = new AIS_ColorScale();
colorScale->SetRange(0, 1);//数值范围
colorScale->SetNumberOfIntervals(0.1);//颜色间隔
colorScale->SetSmoothTransition(true);//颜色光滑过渡
colorScale->SetLabelPosition(Aspect_TOCSP_RIGHT);//标签位置
colorScale->SetTextHeight(16);//文本高度
colorScale->SetSize(50, 200);//标尺大小
colorScale->SetZLayer(Graphic3d_ZLayerId_TopOSD);//最上层显示
Handle(Graphic3d_TransformPers) aTrsfPers = new Graphic3d_TransformPers(Graphic3d_TMF_2d, Aspect_TOTP_LEFT, Graphic3d_Vec2i(0, 0));
colorScale->SetTransformPersistence(aTrsfPers);//显示位置
colorScale->SetToUpdate();
m_AisCxt->Display(colorScale, Standard_True);//显示

 更多请参考:

参考1

 https://blog.csdn.net/qq_40247982/article/details/106619947

参考2(大神eryar的文章)

http://www.cppblog.com/eryar/archive/2014/09/20/208362.html

 

更多精彩请关注公众号

posted @ 2021-03-08 22:57  YiShan-CADCAM  阅读(748)  评论(0)    收藏  举报