예제 #1
0
void drawLine( ipl_image_wrapper& ipl_image
               , point_t            start
               , point_t            end
               , PIXEL              color
               , std::size_t        line_width )
{
    cvLine( ipl_image.get()
            , make_cvPoint( start )
            , make_cvPoint( end )
            , make_cvScalar( color )
            , line_width              );
}
예제 #2
0
void drawRectangle( ipl_image_wrapper&  ipl_image
                    , point_t             start
                    , point_t             end
                    , PIXEL               pixel
                    , std::size_t         line_width )
{
    cvRectangle( ipl_image.get()
                 , make_cvPoint( start )
                 , make_cvPoint( end   )
                 , make_cvScalar( pixel )
                 , line_width             );
}
예제 #3
0
void drawCircle( ipl_image_wrapper& ipl_image
                 , point_t            center
                 , std::size_t        radius
                 , PIXEL              color
                 , std::size_t        line_width )
{
    cvCircle( ipl_image.get()
              , make_cvPoint( center )
              , radius
              , make_cvScalar( color )
              , line_width             );
}
예제 #4
0
inline
cvpoint_array_t make_cvPoint_array( const curve_t& curve )
{
   std::size_t curve_size = curve.size();

   cvpoint_array_t cvpoint_array( new CvPoint[ curve.size() ] );

   for( std::size_t i = 0; i < curve_size ; ++i )
   {
      cvpoint_array[i] = make_cvPoint( curve[i] );
   }

   return cvpoint_array;
}
예제 #5
0
/// circle

template< typename Color
        , typename Line_Type
        >
inline
void drawCircle( ipl_image_wrapper& ipl_image
               , const point_t&     center
               , std::size_t        radius
               , const Color&       color
               , std::size_t        thickness
               , const Line_Type&
               )
{
   cvCircle( ipl_image.get()
           , make_cvPoint( center )
           , radius
           , make_cvScalar( color )
           , thickness
           , typename Line_Type::type::value
           );
}

template< typename View
        , typename Line_Type
        >
inline
void drawCircle( View                      view
               , point_t                   center
               , std::size_t               radius
               , typename View::value_type color