double getMinDepth(ModelPathEntity mpe, double searchRadius) { List <AbmachPoint> jetIntersectList = surface.GetPointsInsideBox(BoundingBoxBuilder.GetSearchBox(mpe.PositionAsVector3, searchRadius)); double minDepth = 1e16; foreach (AbmachPoint pt in jetIntersectList) { double depth = getPointDepth(pt); if (depth < minDepth) { minDepth = depth; } } return(minDepth); }
double getAveDepth(ModelPathEntity mpe, double searchRadius) { double depth = 0; List <AbmachPoint> jetIntersectList = surface.GetPointsInsideBox(BoundingBoxBuilder.GetSearchBox(mpe.PositionAsVector3, searchRadius)); int pointCount = 0; foreach (AbmachPoint pt in jetIntersectList) { if (pt.JetHit) { depth += getPointDepth(pt); pointCount++; } } depth = pointCount > 0 ? depth / pointCount : 0; return(depth); }