Faces from a mesh: Difference between revisions

m
m (→‎{{header|Phix}}: lnk could be unassigned)
Line 246:
 
function toface(evec)
endtry
if isempty(evec) || !isvalid(evec)
ret, edges = collect(evec[1]), copy(evec[2:end])
throw("Invalid Edge vector for a Face.")
while !isempty(edges)
i = findfirst(x -> ret[end] == x[1] || ret[end] == x[2], edges)
push!(ret, ret[end] == edges[i][1] ? edges[i][2] : edges[i][1])
deleteat!(edges, i)
end
return ret[1:end-1]
catch y
throwprintln("Invalid Edgeedges vector: for a Face.$evec")
exit(1)
end
ret, edges = collect(evec[1]), copy(evec[2:end])
while !isempty(edges)
i = findfirst(x -> ret[end] == x[1] || ret[end] == x[2], edges)
push!(ret, ret[end] == edges[i][1] ? edges[i][2] : edges[i][1])
deleteat!(edges, i)
end
return ret[1:end-1]
end
 
Line 283 ⟶ 285:
[11, 23, 17, 1]
[8, 14, 10, 12, 17, 19, 18]
Invalid edges vector: Tuple{Int64,Int64}[(1, 3), (9, 11), (3, 11), (1, 11)]
ERROR: LoadError: "Invalid Edge vector for a Face."
</pre>
 
4,105

edits