Lines Matching refs:pos
944 /* pos - initialized structure */
949 #define CV_INIT_PIXEL_POS(pos, origin, _step, roi, _x, _y, orientation) \
951 (pos).step = (_step)/sizeof((pos).currline[0]) * (orientation ? -1 : 1), \
952 (pos).width = (roi).width, \
953 (pos).height = (roi).height, \
954 (pos).bottomline = (origin) + (pos).step*(pos).height, \
955 (pos).topline = (origin) - (pos).step, \
956 (pos).step_arr[0] = 0, \
957 (pos).step_arr[1] = -(pos).step, \
958 (pos).step_arr[2] = (pos).step, \
959 (pos).x = (_x), \
960 (pos).currline = (origin) + (pos).step*(_y) )
964 /* pos - position structure */
967 #define CV_MOVE_TO( pos, _x, _y, cs ) \
968 ((pos).currline = (_y) >= 0 && (_y) < (pos).height ? (pos).topline + ((_y)+1)*(pos).step : 0, \
969 (pos).x = (_x) >= 0 && (_x) < (pos).width ? (_x) : 0, (pos).currline + (_x) * (cs) )
972 /* pos - position structure */
975 #define CV_GET_CURRENT( pos, cs ) ((pos).currline + (pos).x * (cs))
978 /* pos - position structure */
982 #define CV_MOVE_LEFT( pos, cs ) \
983 ( --(pos).x >= 0 ? (pos).currline + (pos).x*(cs) : 0 )
986 #define CV_MOVE_RIGHT( pos, cs ) \
987 ( ++(pos).x < (pos).width ? (pos).currline + (pos).x*(cs) : 0 )
990 #define CV_MOVE_UP( pos, cs ) \
991 (((pos).currline -= (pos).step) != (pos).topline ? (pos).currline + (pos).x*(cs) : 0 )
994 #define CV_MOVE_DOWN( pos, cs ) \
995 (((pos).currline += (pos).step) != (pos).bottomline ? (pos).currline + (pos).x*(cs) : 0 )
998 #define CV_MOVE_LU( pos, cs ) ( CV_MOVE_LEFT(pos, cs), CV_MOVE_UP(pos, cs))
1001 #define CV_MOVE_RU( pos, cs ) ( CV_MOVE_RIGHT(pos, cs), CV_MOVE_UP(pos, cs))
1004 #define CV_MOVE_LD( pos, cs ) ( CV_MOVE_LEFT(pos, cs), CV_MOVE_DOWN(pos, cs))
1007 #define CV_MOVE_RD( pos, cs ) ( CV_MOVE_RIGHT(pos, cs), CV_MOVE_DOWN(pos, cs))
1013 /* pos - position structure */
1017 #define CV_MOVE_LEFT_WRAP( pos, cs ) \
1018 ((pos).currline + ( --(pos).x >= 0 ? (pos).x : ((pos).x = (pos).width-1))*(cs))
1021 #define CV_MOVE_RIGHT_WRAP( pos, cs ) \
1022 ((pos).currline + ( ++(pos).x < (pos).width ? (pos).x : ((pos).x = 0))*(cs) )
1025 #define CV_MOVE_UP_WRAP( pos, cs ) \
1026 ((((pos).currline -= (pos).step) != (pos).topline ? \
1027 (pos).currline : ((pos).currline = (pos).bottomline - (pos).step)) + (pos).x*(cs) )
1030 #define CV_MOVE_DOWN_WRAP( pos, cs ) \
1031 ((((pos).currline += (pos).step) != (pos).bottomline ? \
1032 (pos).currline : ((pos).currline = (pos).topline + (pos).step)) + (pos).x*(cs) )
1035 #define CV_MOVE_LU_WRAP( pos, cs ) ( CV_MOVE_LEFT_WRAP(pos, cs), CV_MOVE_UP_WRAP(pos, cs))
1037 #define CV_MOVE_RU_WRAP( pos, cs ) ( CV_MOVE_RIGHT_WRAP(pos, cs), CV_MOVE_UP_WRAP(pos, cs))
1039 #define CV_MOVE_LD_WRAP( pos, cs ) ( CV_MOVE_LEFT_WRAP(pos, cs), CV_MOVE_DOWN_WRAP(pos, cs))
1041 #define CV_MOVE_RD_WRAP( pos, cs ) ( CV_MOVE_RIGHT_WRAP(pos, cs), CV_MOVE_DOWN_WRAP(pos, cs))
1055 /* pos - position structure */
1058 #define CV_MOVE_PARAM( pos, shift, cs ) \
1059 ( (pos).currline += (pos).step_arr[(shift)>>2], (pos).x += ((shift)&3)-2, \
1060 ((pos).currline != (pos).topline && (pos).currline != (pos).bottomline && \
1061 (pos).x >= 0 && (pos).x < (pos).width) ? (pos).currline + (pos).x*(cs) : 0 )
1065 /* pos - position structure */
1068 #define CV_MOVE_PARAM_WRAP( pos, shift, cs ) \
1069 ( (pos).currline += (pos).step_arr[(shift)>>2], \
1070 (pos).currline = ((pos).currline == (pos).topline ? \
1071 (pos).bottomline - (pos).step : \
1072 (pos).currline == (pos).bottomline ? \
1073 (pos).topline + (pos).step : (pos).currline), \
1075 (pos).x += ((shift)&3)-2, \
1076 (pos).x = ((pos).x < 0 ? (pos).width-1 : (pos).x >= (pos).width ? 0 : (pos).x), \
1078 (pos).currline + (pos).x*(cs) )