From ce3bb4d44017a2a51830464a372193ef2ff7aefd Mon Sep 17 00:00:00 2001 From: liiiiiii <13967374994@163.com> Date: Mon, 25 Mar 2024 10:08:42 +0800 Subject: [PATCH] t --- My_Sort_XY.hdvp | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 My_Sort_XY.hdvp diff --git a/My_Sort_XY.hdvp b/My_Sort_XY.hdvp new file mode 100644 index 0000000..513437f --- /dev/null +++ b/My_Sort_XY.hdvp @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + +num:=1 +* times:=1 +*先判断是行是列,用不同的排序方式 +height_width_ratio (ConnectedRegions, Height, Width1, Ratio) +tuple_mean (Height, Height_Mean) +tuple_mean (Width1, Width1_Mean) +if (Height_Mean>Width1_Mean) + para:='row' +else + para:='column' +endif +union1 (ConnectedRegions, RegionUnion11) +closing_rectangle1 (RegionUnion11, RegionClosing10, Width, 1) +connection (RegionClosing10, ConnectedRegions20) +sort_region (ConnectedRegions20, SortedRegions, 'first_point', 'true', 'row') +count_obj (ConnectedRegions20, Number15) +for Index9 := 1 to Number15 by 1 + select_obj (SortedRegions, ObjectSelected7, Index9) + intersection (ObjectSelected7, RegionUnion11, RegionIntersection3) + connection (RegionIntersection3, ConnectedRegions22) + sort_region (ConnectedRegions22, SortedRegions2, 'first_point', 'true', para) + count_obj (SortedRegions2, Number16) + for Index10 := 1 to Number16 by 1 + + if (times=num) + select_obj (SortedRegions2,ObjectSelected17, Index10) + return() + endif + num:=num+1 + endfor +endfor +return () + + + + + + + + + + +