**2.2 Paradigms of the C-space mapping algorithms in 2D** *sliced* **workspace**

In the present work, *sliced* c-space maps have been generated considering a two degrees-offreedom revolute type manipulator having finite dimensions (refer fig. 3) and an environment cluttered with polygonal obstacles. Both manipulator links and obstacles are represented as convex or concave polygons4.

Fig. 3. Representative schematics of a two-link manipulator with revolute joints

The obstacles are considered to be *regular* in shape with fixed dimensions, having a welldefined shape (sectional view) in 2D, preferably convex, for easier calculations. This has been made purposefully as in most of the manufacturing and/or shop-floor activities *geometric* objects are being handled by the robot, for example, loading and unloading of components to/from the machine, handling of semi-finished components between machines, storage and retrieval of finished components into bins etc. The philosophy behind these mapping algorithms is to consider each complex obstacle as a boolean combination of various primitives, viz,. *'Point'*, *'Line'* and *'Circle'*. That is to say, if the obstacle is theoretically considered as a 'point', 'line' or 'circle' in shape in 2D, then colliding angle of the robot link(s) with those will be obtained and C-space maps can be drawn there from. These algorithms can also be applied for concave objects by considering the 'convex hull' of those and proceeding in the same manner taking that as the *new* obstacle. Similarly, irregular shaped objects can also be tackled with these models, in which *envelope* of the object is to be considered to get the nearest convex shape. Obviously accuracy of the results will suffer to some extent by this approximation, but it would be a reasonable solution for practical situations.
