Opencascade显示ColorScale

/采用Opencascade的ColorScale显示点云在Z方向的高度分布

//代码如下。采用Opencascade的版本是7.4

//new 一个ColorScale

Handle(AIS_ColorScale) aCS = new AIS_ColorScale();
//label 放在后边
aCS->SetLabelPosition(Aspect_TOCSP_RIGHT);

//ColorScale的size
aCS->SetSize(70, 400);

//数值范围

aCS->SetRange(minVal, maxVal);

//颜色平衡过渡
aCS->SetSmoothTransition(Standard_True);

//设置间隔数
aCS->SetNumberOfIntervals(10);

//最顶端的描述字符串
TCollection_ExtendedString string("mm");
aCS->SetTitle(string);
aCS->SetTitlePosition(Aspect_TOCSP_RIGHT);
aCS->SetLabelAtBorder(true);
aCS->SetColor(Quantity_NOC_BLACK);

aCS->SetLabelType(Aspect_TOCSD_AUTO);

aCS->SetZLayer(Graphic3d_ZLayerId_TopOSD);

//显示在第三现象
aCS->SetTransformPersistence(Graphic3d_TMF_2d, gp_Pnt(-1, -1, 0));


//显示

myOccView->getContext()->Display(aCS, false);
myOccView->getContext()->UpdateCurrentViewer();
myOccView->fitAll();

//以下是显示效果

//读入点云数据,pcd格式,算出点云Z方向的最大最小值用来作为 aCS->SetRange(minVal, maxVal)的入参

//最小值对应的颜色是蓝色,最大值对应的是红色

 

posted @ 2020-09-11 21:21  Craftsman-lee  阅读(753)  评论(1)    收藏  举报