fix render4
This commit is contained in:
1 parent
c3af49d3e8
commit
e8ef385237
1 file changed
+14
@@ -113,6 +113,19 @@ function resolveSkeletalBone(rawName) {
|
||||
// apagar uma estrutura real.
|
||||
const LEADER_LINE_SOURCE_KEYS = new Set(["nervous", "regions"]);
|
||||
|
||||
// Uma linha de chamada de verdade do app original é um objeto decorativo
|
||||
// simples — poucos vértices, só o suficiente pra desenhar um segmento fino
|
||||
// (às vezes com um pequeno gancho na ponta). Uma faixa real de pele, MESMO
|
||||
// estreita (ex: bem em cima da coluna), é parte de uma superfície contínua
|
||||
// do corpo e tem muito mais vértices, porque segue o contorno real do
|
||||
// tronco em vez de ser um segmento reto desenhado à mão. Sem esse teto, o
|
||||
// teste de "reto e fino" sozinho não distingue as duas (uma faixa comprida
|
||||
// e estreita também passa) — foi exatamente o que causou o buraco na pele
|
||||
// da coluna. Esse limite só torna a classificação MAIS RESTRITIVA (nunca
|
||||
// exclui mais do que excluía antes), então não tem como abrir um buraco
|
||||
// novo — na pior hipótese, deixa passar algum tracinho residual.
|
||||
const MAX_LEADER_LINE_MESH_VERTS = 60;
|
||||
|
||||
function isLeaderLineMesh(mesh) {
|
||||
try {
|
||||
// Antes, cada primitivo era julgado sozinho ("every"). Isso deixava
|
||||
@@ -135,6 +148,7 @@ function isLeaderLineMesh(mesh) {
|
||||
points.push([arr[i * 3], arr[i * 3 + 1], arr[i * 3 + 2]]);
|
||||
}
|
||||
}
|
||||
if (points.length > MAX_LEADER_LINE_MESH_VERTS) return false;
|
||||
return isLeaderLinePointCloud(points);
|
||||
} catch {
|
||||
return false;
|
||||
|
||||
Reference in new issue
Block a user