private void ComputeVolume(SSBVHNodeAdaptor <GO> nAda) { Bounds = nAda.GetObjectBounds(ContainedObjects[0]); for (int i = 1; i < ContainedObjects.Count; i++) { ExpandVolume(nAda.GetObjectBounds(ContainedObjects[i])); } }
private double SAofList(SSBVHNodeAdaptor <GO> nAda, List <GO> list) { Bounds_d box = nAda.GetObjectBounds(list[0]); for (int i = 1; i < list.Count - 1; i++) { box.ExpandToFit(nAda.GetObjectBounds(list[i])); } return(SA(ref box)); }
public void AddObject(T newOb) { Bounds_d box = nAda.GetObjectBounds(newOb); double boxSAH = ssBVHNode <T> .SA(ref box); RootBVH.AddObject(nAda, newOb, ref box, boxSAH); }