compute_voronoi_triangulation_mesh

function [vertex_voronoi,faces_voronoi] = compute_voronoi_triangulation_mesh(Q, vertex, faces)

% compute_voronoi_triangulation_mesh - compute a triangulation
%
%   [vertex_voronoi,face_voronoi] = compute_voronoi_triangulation_mesh(Q, vertex, faces);
%
%   Q is a Voronoi partition function, computed using
%   perform_fast_marching_mesh.
%
%   Copyright (c) 2006 Gabriel Peyre

if size(vertex,1)>size(vertex,2)
    vertex = vertex';
end
if size(faces,1)>size(faces,2)
    faces = faces';
end

V = Q(faces);
V = sort(V,1);
V = unique(V', 'rows')';
% V = V( prod(V,2)>0 ,:);

d = (V(1,:)~=V(2,:)) + (V(2,:)~=V(3,:));

I = find(d==2); I = sort(I);
w = V(:,I); w = sort(w(:)); % index that are in the triangulation
w = unique(w);
nverts = size(vertex,2);
z = zeros(nverts,1);
z(w) = (1:length(w))';

faces_voronoi = z(V( :,I ));
vertex_voronoi = vertex(:,w);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值