在HDevelop中
dev_open_window(10,10,600,300,'black',WindowHandle)
dev_set_line_width (3)
*设置region,contour输出的线宽
*****坐标数组****
rows1:=[20,100,100,20,20]
cols1:=[20,20,250,250,20]
radius:=[20,20,20,20,20]
rows2:=[20,20,100,100,20]
cols2:=[320,550,550,320,320]
*注意:坐标数组的第一个值和最后一个值相同,用以形成一个封闭的多边形轮廓
gen_contour_polygon_rounded_xld (Contour, rows1, cols1, radius, 1)
*创建带圆角的多边形轮廓,坐标和圆角可以通过数组的形式指定
*参数1:输出轮廓
*参数2:多边形的行坐标
*参数3:多边形的列坐标
*参数4:圆角的半径
*参数5:样本的距离
gen_contour_polygon_xld (Contour1, rows2, cols2)
*不带圆角的多边形轮廓
dev_display (Contour)
dev_display (Contour1)
在QtCreator中
HObject ho_Contour, ho_Contour1;
HTuple hv_WindowHandle, hv_rows1, hv_cols1, hv_radius;
HTuple hv_rows2, hv_cols2;
SetWindowAttr("background_color","black");
OpenWindow(10,10,600,300,0,"visible","",&hv_WindowHandle);
HDevWindowStack::Push(hv_WindowHandle);
if (HDevWindowStack::IsOpen())
SetLineWidth(HDevWindowStack::GetActive(),3);
//设置region,contour输出的线宽
//****坐标数组****
hv_rows1.Clear();
hv_rows1[0] = 20;
hv_rows1[1] = 100;
hv_rows1[2] = 100;
hv_rows1[3] = 20;
hv_rows1[4] = 20;
hv_cols1.Clear();
hv_cols1[0] = 20;
hv_cols1[1] = 20;
hv_cols1[2] = 250;
hv_cols1[3] = 250;
hv_cols1[4] = 20;
hv_radius.Clear();
hv_radius[0] = 20;
hv_radius[1] = 20;
hv_radius[2] = 20;
hv_radius[3] = 20;
hv_radius[4] = 20;
hv_rows2.Clear();
hv_rows2[0] = 20;
hv_rows2[1] = 20;
hv_rows2[2] = 100;
hv_rows2[3] = 100;
hv_rows2[4] = 20;
hv_cols2.Clear();
hv_cols2[0] = 320;
hv_cols2[1] = 550;
hv_cols2[2] = 550;
hv_cols2[3] = 320;
hv_cols2[4] = 320;
//注意:坐标数组的第一个值和最后一个值相同,用以形成一个封闭的多边形轮廓
GenContourPolygonRoundedXld(&ho_Contour, hv_rows1, hv_cols1, hv_radius, 1);
//创建带圆角的多边形轮廓,坐标和圆角可以通过数组的形式指定
//参数1:输出轮廓
//参数2:多边形的行坐标
//参数3:多边形的列坐标
//参数4:圆角的半径
//参数5:样本的距离
GenContourPolygonXld(&ho_Contour1, hv_rows2, hv_cols2);
//不带圆角的多边形轮廓
if (HDevWindowStack::IsOpen())
DispObj(ho_Contour, HDevWindowStack::GetActive());
if (HDevWindowStack::IsOpen())
DispObj(ho_Contour1, HDevWindowStack::GetActive());