我觉得另外一款更好,用四点测圆的不方便
- read_image (Image, 'C:/Users/CZYF05/Desktop/测量软件/XVision -1/bin/Debug/HalconEngine/2.bmp')
- dev_display(Image)
- dev_get_window (WindowHandle)
- dev_set_draw ('margin')
- draw_circle (WindowHandle, roiRow, roiColumn, roiRadius)
- *创建测量模型
- create_metrology_model (MetrologyHandle)
- *设置测量对象的图像大小
- get_image_size (Image, Width, Height)
- set_metrology_model_image_size (MetrologyHandle, Width, Height)
- *对象参数
- genParamName:=['start_phi','end_phi','measure_transition','measure_select','num_measures','min_score']
- genParamValue:=[0,6.28318,'all','first',20,0.4]
- *创建测量ROI,第5,6个参数是测量矩型的长度和宽度(其实是一半)
- add_metrology_object_circle_measure (MetrologyHandle, roiRow, roiColumn, roiRadius, roiRadius/6, roiRadius/32, 1, 30, genParamName, genParamValue, Index)
- *应用测量
- apply_metrology_model (Image, MetrologyHandle)
- *获取测量结果
- get_metrology_object_result (MetrologyHandle, 0, 'all', 'result_type', 'all_param', Parameter)
- get_metrology_object_measures (Contours, MetrologyHandle, 'all', 'all', Row2, Column2)
- get_metrology_object_result_contour (Contour, MetrologyHandle, 0, 'all', 1.5)
- test:=Parameter[2]
- dev_display (Contour)
- dev_display (Contours)
- Result := 'OK'
- *清除/销毁测量对象
- clear_metrology_model (MetrologyHandle)
- return ()
复制代码 |