🚀 Auto-deploy: BrainWind atualizado em 30/07/2026 10:38:28
This commit is contained in:
@@ -51,11 +51,13 @@ function SignModel({
|
||||
const angleToNormalRad = ((90 - alpha) * Math.PI) / 180;
|
||||
const arrowDir = useMemo(() => new THREE.Vector3(Math.cos(angleToNormalRad), 0, Math.sin(angleToNormalRad)), [angleToNormalRad]);
|
||||
|
||||
// Posição da seta no plano da placa (inicia no ponto de aplicação com a excentricidade ao longo de Z)
|
||||
const arrowStart = useMemo(
|
||||
() => new THREE.Vector3(0, baseY + height / 2, applicationPoint),
|
||||
[applicationPoint, height, baseY],
|
||||
);
|
||||
// Posição alvo da seta no plano da placa (inicia no ponto de aplicação com a excentricidade ao longo de Z)
|
||||
// Afastada um pouco do muro para não encostar fisicamente
|
||||
const arrowStart = useMemo(() => {
|
||||
const targetPos = new THREE.Vector3(0, baseY + height / 2, applicationPoint);
|
||||
const offset = arrowDir.clone().multiplyScalar(-0.8);
|
||||
return targetPos.add(offset);
|
||||
}, [applicationPoint, height, baseY, arrowDir]);
|
||||
|
||||
// Cor da placa: Azul (Pressão/Empuxo) com intensidade proporcional ao Cf
|
||||
const plateColor = useMemo(() => {
|
||||
@@ -122,6 +124,7 @@ function SignModel({
|
||||
<WindArrow
|
||||
target={arrowStart}
|
||||
direction={arrowDir}
|
||||
scale={1.8}
|
||||
/>
|
||||
|
||||
{/* === LINHAS DE COTA (CAD-Style Dimensions) === */}
|
||||
|
||||
Reference in New Issue
Block a user