var searchIndex = {}; searchIndex["collision"] = {"doc":"Computer graphics-centric math.","items":[[3,"Aabb2","collision","A two-dimensional AABB, aka a rectangle.",null,null],[12,"min","","",0,null],[12,"max","","",0,null],[3,"Aabb3","","A three-dimensional AABB, aka a rectangular prism.",null,null],[12,"min","","",1,null],[12,"max","","",1,null],[3,"Cylinder","","",null,null],[12,"center","","",2,null],[12,"axis","","",2,null],[12,"radius","","",2,null],[3,"Frustum","","",null,null],[12,"left","","",3,null],[12,"right","","",3,null],[12,"bottom","","",3,null],[12,"top","","",3,null],[12,"near","","",3,null],[12,"far","","",3,null],[3,"FrustumPoints","","",null,null],[12,"near_top_left","","",4,null],[12,"near_top_right","","",4,null],[12,"near_bottom_left","","",4,null],[12,"near_bottom_right","","",4,null],[12,"far_top_left","","",4,null],[12,"far_top_right","","",4,null],[12,"far_bottom_left","","",4,null],[12,"far_bottom_right","","",4,null],[3,"Obb2","","",null,null],[12,"center","","",5,null],[12,"axis","","",5,null],[12,"extents","","",5,null],[3,"Obb3","","",null,null],[12,"center","","",6,null],[12,"axis","","",6,null],[12,"extents","","",6,null],[3,"Sphere","","",null,null],[12,"center","","",7,null],[12,"radius","","",7,null],[3,"Plane","","A 3-dimensional plane formed from the equation: `A*x + B*y + C*z - D = 0`.",null,null],[12,"n","","",8,null],[12,"d","","",8,null],[3,"Ray","","A generic ray starting at `origin` and extending infinitely in\n`direction`.",null,null],[12,"origin","","",9,null],[12,"direction","","",9,null],[4,"Relation","","Spatial relation between two objects.",null,null],[13,"In","","Completely inside.",10,null],[13,"Cross","","Crosses the boundary.",10,null],[13,"Out","","Completely outside.",10,null],[11,"eq","","",0,null],[11,"ne","","",0,null],[11,"clone","","",0,null],[11,"decode","","",0,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",0,null],[11,"new","","Construct a new axis-aligned bounding box from two points.",0,{"inputs":[{"name":"point2"},{"name":"point2"}],"output":{"name":"aabb2"}}],[11,"to_corners","","Compute corners.",0,null],[11,"new","","",0,{"inputs":[{"name":"point2"},{"name":"point2"}],"output":{"name":"aabb2"}}],[11,"min","","",0,null],[11,"max","","",0,null],[11,"contains","","",0,null],[11,"fmt","","",0,null],[11,"eq","","",1,null],[11,"ne","","",1,null],[11,"clone","","",1,null],[11,"decode","","",1,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",1,null],[11,"new","","Construct a new axis-aligned bounding box from two points.",1,{"inputs":[{"name":"point3"},{"name":"point3"}],"output":{"name":"aabb3"}}],[11,"to_corners","","Compute corners.",1,null],[11,"new","","",1,{"inputs":[{"name":"point3"},{"name":"point3"}],"output":{"name":"aabb3"}}],[11,"min","","",1,null],[11,"max","","",1,null],[11,"contains","","",1,null],[11,"fmt","","",1,null],[11,"relate_plane","","",1,null],[11,"eq","","",10,null],[11,"partial_cmp","","",10,null],[11,"cmp","","",10,null],[11,"hash","","",10,null],[11,"fmt","","",10,null],[11,"clone","","",10,null],[11,"eq","","",2,null],[11,"ne","","",2,null],[11,"clone","","",2,null],[11,"decode","","",2,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",2,null],[11,"eq","","",3,null],[11,"ne","","",3,null],[11,"fmt","","",3,null],[11,"clone","","",3,null],[11,"decode","","",3,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",3,null],[11,"new","","Construct a frustum.",3,{"inputs":[{"name":"plane"},{"name":"plane"},{"name":"plane"},{"name":"plane"},{"name":"plane"},{"name":"plane"}],"output":{"name":"frustum"}}],[11,"from_matrix4","","Extract frustum planes from a projection matrix.",3,{"inputs":[{"name":"matrix4"}],"output":{"name":"option"}}],[11,"contains","","Find the spatial relation of a bound inside this frustum.",3,null],[11,"eq","","",4,null],[11,"ne","","",4,null],[11,"clone","","",4,null],[11,"decode","","",4,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",4,null],[11,"eq","","",5,null],[11,"ne","","",5,null],[11,"clone","","",5,null],[11,"decode","","",5,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",5,null],[11,"eq","","",6,null],[11,"ne","","",6,null],[11,"clone","","",6,null],[11,"decode","","",6,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",6,null],[11,"fmt","","",7,null],[11,"eq","","",7,null],[11,"ne","","",7,null],[11,"clone","","",7,null],[11,"decode","","",7,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",7,null],[11,"relate_plane","","",7,null],[11,"eq","","",8,null],[11,"ne","","",8,null],[11,"clone","","",8,null],[11,"decode","","",8,{"inputs":[{"name":"__ds"}],"output":{"name":"result"}}],[11,"encode","","",8,null],[11,"new","","Construct a plane from a normal vector and a scalar distance. The\nplane will be perpendicular to `n`, and `d` units offset from the\norigin.",8,{"inputs":[{"name":"vector3"},{"name":"s"}],"output":{"name":"plane"}}],[11,"from_abcd","","# Arguments",8,{"inputs":[{"name":"s"},{"name":"s"},{"name":"s"},{"name":"s"}],"output":{"name":"plane"}}],[11,"from_vector4","","Construct a plane from the components of a four-dimensional vector",8,{"inputs":[{"name":"vector4"}],"output":{"name":"plane"}}],[11,"from_vector4_alt","","Construct a plane from the components of a four-dimensional vector\nAssuming alternative representation: `A*x + B*y + C*z + D = 0`",8,{"inputs":[{"name":"vector4"}],"output":{"name":"plane"}}],[11,"from_points","","Constructs a plane that passes through the the three points `a`, `b` and `c`",8,{"inputs":[{"name":"point3"},{"name":"point3"},{"name":"point3"}],"output":{"name":"option"}}],[11,"from_point_normal","","Construct a plane from a point and a normal vector.\nThe plane will contain the point `p` and be perpendicular to `n`.",8,{"inputs":[{"name":"point3"},{"name":"vector3"}],"output":{"name":"plane"}}],[11,"normalize","","Normalize a plane.",8,null],[11,"approx_eq_eps","","",8,null],[11,"fmt","","",8,null],[11,"eq","","",9,null],[11,"ne","","",9,null],[11,"clone","","",9,null],[11,"decode","","",9,{"inputs":[{"name":"__dspv"}],"output":{"name":"result"}}],[11,"encode","","",9,null],[11,"new","","",9,{"inputs":[{"name":"p"},{"name":"v"}],"output":{"name":"ray"}}],[6,"Ray2","","",null,null],[6,"Ray3","","",null,null],[6,"Line2","","",null,null],[6,"Line3","","",null,null],[8,"MinMax","","",null,null],[10,"min","","",11,{"inputs":[{"name":"self"},{"name":"self"}],"output":{"name":"self"}}],[10,"max","","",11,{"inputs":[{"name":"self"},{"name":"self"}],"output":{"name":"self"}}],[8,"Aabb","","",null,null],[10,"new","","Create a new AABB using two points as opposing corners.",12,{"inputs":[{"name":"p"},{"name":"p"}],"output":{"name":"self"}}],[10,"min","","Return a shared reference to the point nearest to (-inf, -inf).",12,null],[10,"max","","Return a shared reference to the point nearest to (inf, inf).",12,null],[11,"dim","","Return the dimensions of this AABB.",12,null],[11,"volume","","Return the volume this AABB encloses.",12,null],[11,"center","","Return the center point of this AABB.",12,null],[10,"contains","","Tests whether a point is cointained in the box, inclusive for min corner\nand exclusive for the max corner.",12,null],[11,"grow","","Returns a new AABB that is grown to include the given point.",12,null],[11,"add_v","","Add a vector to every point in the AABB, returning a new AABB.",12,null],[11,"mul_s","","Multiply every point in the AABB by a scalar, returning a new AABB.",12,null],[11,"mul_v","","Multiply every point in the AABB by a vector, returning a new AABB.",12,null],[8,"Bound","","Generic bound.",null,null],[10,"relate_plane","","Classify the spatial relation with a plane.",13,null],[11,"relate_clip_space","","Classify the relation with a projection matrix.",13,null],[8,"Projection","","",null,null],[10,"to_frustum","","",14,null],[8,"Intersect","","",null,null],[10,"intersection","","",15,null],[11,"dim","","Return the dimensions of this AABB.",12,null],[11,"volume","","Return the volume this AABB encloses.",12,null],[11,"center","","Return the center point of this AABB.",12,null],[11,"grow","","Returns a new AABB that is grown to include the given point.",12,null],[11,"add_v","","Add a vector to every point in the AABB, returning a new AABB.",12,null],[11,"mul_s","","Multiply every point in the AABB by a scalar, returning a new AABB.",12,null],[11,"mul_v","","Multiply every point in the AABB by a vector, returning a new AABB.",12,null],[11,"relate_clip_space","","Classify the relation with a projection matrix.",13,null]],"paths":[[3,"Aabb2"],[3,"Aabb3"],[3,"Cylinder"],[3,"Frustum"],[3,"FrustumPoints"],[3,"Obb2"],[3,"Obb3"],[3,"Sphere"],[3,"Plane"],[3,"Ray"],[4,"Relation"],[8,"MinMax"],[8,"Aabb"],[8,"Bound"],[8,"Projection"],[8,"Intersect"]]}; initSearch(searchIndex);