anchor.diff:          ye = this_polygon%point(pe)%ptr%y
   
           if (abs(xe-xs) < 180.d0) then
  -          delta_x = (xe-xs)/100.d0
  +          delta_x = (xe-xs)/division
           else
             if (xs>=xe) then
  -            delta_x = (xe-xs+360.d0)/100.d0
  +            delta_x = (xe-xs+360.d0)/division
             else
  -            delta_x = (xe-xs-360.d0)/100.d0
  +            delta_x = (xe-xs-360.d0)/division
             end if
           end if
   
  -        delta_y = (ye-ys)/100.d0
  +        delta_y = (ye-ys)/division
   
          current_polygon => this_polygon%point(p)%ptr%target_polygon
          if (.not.associated(current_polygon)) cycle ! next ploop
  
positive.code:   current_polygon%max_xp = -99999999.d0
    current_polygon%min_yp = 99999999.d0
    current_polygon%max_yp = -99999999.d0
  
  end subroutine init_polygon
  
  
negative.code:            write(0,*) "seach_polygon_by_side, search count overflow ", this_polygon%index, p
             stop
           end if
  
  !!$         write(0,*)'search_polygon_by_side:search_count:',search_count
  
           call search_next_polygon(xs, ys, xe, ye, x, y, current_polygon, next_polygon)
           if (.not.associated(next_polygon)) exit searchloop
  