Agregando grosor a las líneas en threejs
Esta es mi demo, quiero agregar linewidth para darle más grosor a mi cuadro.
He revisado esta pregunta e intenté entender cómo puedo usar LineMaterial y Line2.
Parece que no funcionan en la demo.
Este es el código relevante:
function QuadGeometry(w, h) {
let pts = [
[0.5, 0.5],
[-0.5, 0.5],
[-0.5, -0.5],
[0.5, -0.5]
].map((p) => {
return new THREE.Vector2(p[0], p[1]);
});
let g = new THREE.BufferGeometry().setFromPoints(pts);
g.setIndex([0, 1, 2, 3, 0]);
g.scale(w, h, 1);
return g;
}
let g = QuadGeometry(
THREE.MathUtils.randInt(15, 30),
THREE.MathUtils.randInt(15, 30)
);
let m = new LineMaterial({
color: "yellow",
linewidth: 5
});
let quad = new Line2(g, m);
Como puedes ver, el quad no es visible con estos cambios.
Si reemplazo con LineBasicMaterial
y Line
, el quad es visible.
También encontré que puede ser un error, pero soy muy principiante en three.js.
Cualquier edición en el codesandbox sería genial para que lo muestres.
davy.ai
Agregar grosor de línea a un cuadrado en Three.js
Para agregar grosor de línea a un cuadrado en Three.js, podemos usar
LineBasicMaterial
conLine
en lugar deLineMaterial
conLine2
. También podemos modificar la propiedadlinewidth
del material para ajustar el grosor de las líneas.Aquí está el código actualizado:
Podemos ajustar la propiedad
linewidth
para darle más grosor a las líneas. Esto debería hacer que el cuadrado sea visible.Puedes ver una demostración en vivo en este codesandbox.