<!-- clanlib header begin --> <HTML> <HEAD> <TITLE>CL_CollisionOutline - ClanLib Game SDK</TITLE> <STYLE TYPE="text/css"><!-- HTML BODY { font-family: verdana, helvetica, sans-serif; font-size: 12px; } H1 { font-size: 22px; } H2 { font-size: 18px; } H3 { font-size: 16px; } H4 { font-size: 14px; } P { font-size: 12px; } LI { font-size: 12px; } --></STYLE> </HEAD> <body bgcolor=white text=black link=blue vlink=#800080> <center> <img src="http://clanlib.org/gfx/clanlib.png"> </center> <!-- clanlib header end --> <center> <p> <a href="http://clanlib.org/docs.html">Home</a> | <a href="classes.html">All Classes</a> | <a href="modules.html">Grouped Classes</a> | <a href="index.html">Index</a> | <a href="search.html">Search</a> </p> </center> <h1>Class CL_CollisionOutline</h1> <p> Collision detection outline. <a href="#description">More...</a></p> <p>Derived from: <i>none</i> <br> Derived by: <i>none</i> <br>Group: Display (Collision)</p> <p> #include <ClanLib/display.h> <p> <table border=0 width=100%> </table> <p><b>Construction:</b></p> <table border=0 width=100%> <tr><td width=30% valign=top><p><a href="CL_CollisionOutline__CL_CollisionOutline.html">CL_CollisionOutline</a></p></td><td valign=top><p> Construct a collision outline.</p></td></tr></table> <p><b>Attributes:</b></p> <table border=0 width=100%> <tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_object_bounding_box.html">get_object_bounding_box</a></p></td><td valign=top><p> Returns the contour used as an object bounding box. (an rotated rectangle)</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_minimum_enclosing_disc.html">get_minimum_enclosing_disc</a></p></td><td valign=top><p> Returns the radius of the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_inside_test.html">get_inside_test</a></p></td><td valign=top><p> Returns true if completely-inside test is used.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_contours.html">get_contours</a></p></td><td valign=top><p> Returns the contours in the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_translation.html">get_translation</a></p></td><td valign=top><p> Returns the position of the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_scale.html">get_scale</a></p></td><td valign=top><p> Returns the scaling factor.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_angle.html">get_angle</a></p></td><td valign=top><p> Returns the rotation angle.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_width.html">get_width</a></p></td><td valign=top><p> Returns the width of the image this outline was created from.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_height.html">get_height</a></p></td><td valign=top><p> Returns the height of the image this outline was created from.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_alignment.html">get_alignment</a></p></td><td valign=top><p> Get the translation origin and hotspot of the outline. </p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_rotation_hotspot.html">get_rotation_hotspot</a></p></td><td valign=top><p> Get the rotation hotspot of the outline. </p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_collision_info.html">get_collision_info</a></p></td><td valign=top><p> Return the info about the collisions. (collision points, normals, pointers to contours, and indexes to lines that intersected)</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__get_collision_info_state.html">get_collision_info_state</a></p></td><td valign=top><p> Fetch the state of the collision testing variables.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__resource.html">resource</a></p></td><td valign=top><p> Resource owning this outline, if any.</p></td></tr></table> <p><b>Operations:</b></p> <table border=0 width=100%> <tr><td width=30% valign=top><p><a href="CL_CollisionOutline__operator =.html">operator =</a></p></td><td valign=top><p> Assignment operator</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__optimize.html">optimize</a></p></td><td valign=top><p> Optimize the outline by removing redundant points.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__draw.html">draw</a></p></td><td valign=top><p> Draw outline on graphic context.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__draw_sub_circles.html">draw_sub_circles</a></p></td><td valign=top><p> Draw the subcircles surrounding the linesegments on graphic context.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__draw_smallest_enclosing_disc.html">draw_smallest_enclosing_disc</a></p></td><td valign=top><p> Draw the disc enclosing the entire outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_alignment.html">set_alignment</a></p></td><td valign=top><p> Set the translation hotspot of the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_rotation_hotspot.html">set_rotation_hotspot</a></p></td><td valign=top><p> Set the rotation hotspot of the outline. </p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_translation.html">set_translation</a></p></td><td valign=top><p> Set the position of the outline. </p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_scale.html">set_scale</a></p></td><td valign=top><p> Set the scale of the outline. </p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_angle.html">set_angle</a></p></td><td valign=top><p> Set the angle (in degrees) of the outline. </p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__rotate.html">rotate</a></p></td><td valign=top><p> Rotate the outline by angle (in degrees).</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_inside_test.html">set_inside_test</a></p></td><td valign=top><p> Set to true if completely-inside test should be done</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__enable_collision_info.html">enable_collision_info</a></p></td><td valign=top><p> Enable collision info gathering.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__set_collision_info.html">set_collision_info</a></p></td><td valign=top><p> This will set the collision info of the outline</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__clean_collision_info.html">clean_collision_info</a></p></td><td valign=top><p> This will empty the collision-info vector</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__calculate_radius.html">calculate_radius</a></p></td><td valign=top><p> (Re)calculate the radius of the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__calculate_sub_circles.html">calculate_sub_circles</a></p></td><td valign=top><p> (Re)calculate the subcircle segmentation of the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__calculate_smallest_enclosing_discs.html">calculate_smallest_enclosing_discs</a></p></td><td valign=top><p> (Re)calculate the smallest circles enclosing every contour in the outline.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__calculate_convex_hulls.html">calculate_convex_hulls</a></p></td><td valign=top><p> (Re)calculate the convex hull for every contour in the outline</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__save.html">save</a></p></td><td valign=top><p> Write the outline to a file.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__collide.html">collide</a></p></td><td valign=top><p> Returns true if outlines overlap</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__calculate_penetration_depth.html">calculate_penetration_depth</a></p></td><td valign=top><p> Will calculate the penetration_depth and penetration_normal for all colliding contours.</p></td></tr><tr><td width=30% valign=top><p><a href="CL_CollisionOutline__point_inside.html">point_inside</a></p></td><td valign=top><p> Returns true if a point is inside the outline.</p></td></tr></table> <a name="#description"><p><b>Detailed description:</b></p> !group=Display/Collision ! !header=display.h! <p>A collision outline is used in collision detection</p> <!-- clanlib footer begin --> <center><br><br><font color="#a0a0a0"> Questions or comments, write to the <a href="http://clanlib.org/contact.html">ClanLib mailing list</a>. </font></center> </body> </html> <!-- clanlib footer end -->