private int TriRayCallback(IntPtr triMeshID, IntPtr rayID, int triangleIndex, dReal u, dReal v) { var triMesh = (TriMesh)Geom.FromIntPtr(triMeshID); var ray = (Ray)Geom.FromIntPtr(rayID); return(rayCallback(triMesh, ray, triangleIndex, u, v) ? 1 : 0); }
private int TriCallback(IntPtr triMeshID, IntPtr refObjectID, int triangleIndex) { var triMesh = (TriMesh)Geom.FromIntPtr(triMeshID); var geom = Geom.FromIntPtr(refObjectID); return(callback(triMesh, geom, triangleIndex) ? 1 : 0); }
private void TriArrayCallback(IntPtr triMeshID, IntPtr refObjectID, IntPtr triIndices, int triCount) { var triMesh = (TriMesh)Geom.FromIntPtr(triMeshID); var geom = Geom.FromIntPtr(refObjectID); var triangleIndices = new int[triCount]; Marshal.Copy(triIndices, triangleIndices, 0, triCount); arrayCallback(triMesh, geom, triangleIndices); }
private int TriTriMergeCallback(IntPtr triMeshID, int firstTriangleIndex, int secondTriangleIndex) { var triMesh = (TriMesh)Geom.FromIntPtr(triMeshID); return(triangleMergeCallback(triMesh, firstTriangleIndex, secondTriangleIndex)); }