public SplitByRayNode(Point3D raystart, Vector3D raydir, Mesh.ESplitMode sm, params Node[] nodes) { SetChildren(nodes); RayStart = raystart; RayDir = raydir; SplitMode = sm; }
public Shape Split2d(Point3D raystart, Vector3D raydir, Mesh.ESplitMode sm) { Mesh[] convexes = Convexes.ToArray(); foreach (Mesh m in convexes) { Mesh newmesh = null; if (sm != Mesh.ESplitMode.KEEP_BOTH) { newmesh = CreateConvex(); } m.Split2d(raystart, raydir, sm, newmesh); } Convexes = convexes.ToList(); return(this); }
public Node SplitByRay(double raystart_x, double raystart_y, double raystart_z, double raydir_x, double raydir_y, double raydir_z, Mesh.ESplitMode sm, params Node[] nodes) { return(new SplitByRayNode(new Point3D(raystart_x, raystart_y, raystart_z), new Vector3D(raydir_x, raydir_y, raydir_z), sm, nodes)); }
public SplitByRayNode(Point3D raystart, Vector3D raydir, Mesh.ESplitMode sm, params Node[] nodes) { SetChildren(nodes); RayStart = raystart; RayDir = raydir; SplitMode = sm; }