| 1164 | VERIFY2(_valid(form), "not valide transform"); |
| 1165 | } |
| 1166 | CPhysicsElement* CPHShell::NearestToPoint(const Fvector& point) |
| 1167 | { |
| 1168 | ELEMENT_I i, e; |
| 1169 | i = elements.begin(); |
| 1170 | e = elements.end(); |
| 1171 | float min_distance = dInfinity; |
| 1172 | CPHElement* nearest_element = NULL; |
| 1173 | for (; i != e; ++i) |
| 1174 | { |
| 1175 | Fvector tmp; |
| 1176 | float distance; |
| 1177 | (*i)->GetGlobalPositionDynamic(&tmp); |
| 1178 | tmp.sub(point); |
| 1179 | distance = tmp.magnitude(); |
| 1180 | if (distance < min_distance) |
| 1181 | { |
| 1182 | min_distance = distance; |
| 1183 | nearest_element = *i; |
| 1184 | } |
| 1185 | } |
| 1186 | return nearest_element; |
| 1187 | } |
| 1188 | void CPHShell::CreateSpace() |
| 1189 | { |
| 1190 | if (!m_space) |
no test coverage detected