int GetNearest(v3vec& vert,vec3 pt) { int res=0; float mll = pt.lengthSQR(vert[0]); for(int i=1;i<vert.size();i++) { float ll = pt.lengthSQR(vert[i]); if(ll<mll){mll=ll;res = i;} } return res; }
int GetVectorID(v3vec& vectors, vec3 pos) { for(int i=0;i<vectors.size();i++) { if(pos.lengthSQR(vectors[i])<0.00001f) return i; } return -1; }
float nearest_geoms(int g_ig,vec3 pt) { float res=1000; for(int i=0;i<neuron[g_ig].size();i++) { Geometry* g_er = &neuron[g_ig][i]; if(!g_er->tr.size())continue; float ll = pt.lengthSQR(g_er->vert[GetNearest(g_er->vert,pt)]); if(res>ll)res=ll; } return sqrt(res); }