diff --git a/src/brushes/DisplacementBrush.js b/src/brushes/DisplacementBrush.js index 55d4e52..d94fe6a 100644 --- a/src/brushes/DisplacementBrush.js +++ b/src/brushes/DisplacementBrush.js @@ -5,7 +5,7 @@ import { Falloff } from "../constants/Falloff.js"; /** * Moves vertices within a specified radius around a target position along a given direction */ -export const displacementBrush = (geometry, position, radius, strength, axis = Direction.UP, falloffFn = Falloff.LINEAR) => { +export const displacementBrush = (geometry, position, radius, strength, direction = Direction.UP, falloffFn = Falloff.LINEAR) => { const positions = geometry.attributes.position; for (let i = 0; i < positions.count; i++) { const vertex = new Vector3(); @@ -19,7 +19,7 @@ export const displacementBrush = (geometry, position, radius, strength, axis = D const influence = falloff * strength; // Apply the effect (e.g., pulling the vertex upwards) - vertex.add(axis.clone().multiplyScalar(influence)); + vertex.add(direction.clone().multiplyScalar(influence)); // Update the vertex position positions.setXYZ(i, vertex.x, vertex.y, vertex.z); diff --git a/src/brushes/FlattenBrush.js b/src/brushes/FlattenBrush.js index 04c6698..866740a 100644 --- a/src/brushes/FlattenBrush.js +++ b/src/brushes/FlattenBrush.js @@ -5,7 +5,7 @@ import {Falloff} from "../constants/Falloff.js"; /** * Flattens vertices to a given plane defined by a target height or normal direction. */ -export const flattenBrush = (geometry, position, radius, targetHeight, strength, axis = Direction.UP, falloffFn = Falloff.LINEAR) => { +export const flattenBrush = (geometry, position, radius, targetHeight, strength, direction = Direction.UP, falloffFn = Falloff.LINEAR) => { const positions = geometry.attributes.position; for (let i = 0; i < positions.count; i++) { const vertex = new Vector3(); @@ -17,10 +17,10 @@ export const flattenBrush = (geometry, position, radius, targetHeight, strength, const influence = falloff * strength; // Project vertex onto flatten plane - const projectedHeight = vertex.dot(axis.normalize()); + const projectedHeight = vertex.dot(direction.normalize()); const delta = targetHeight - projectedHeight; - vertex.add(axis.clone().multiplyScalar(delta * influence)); + vertex.add(direction.clone().multiplyScalar(delta * influence)); positions.setXYZ(i, vertex.x, vertex.y, vertex.z); } } diff --git a/src/brushes/TwistBrush.js b/src/brushes/TwistBrush.js index 91d3f1e..bdd24b4 100644 --- a/src/brushes/TwistBrush.js +++ b/src/brushes/TwistBrush.js @@ -3,9 +3,9 @@ import { Direction } from "../constants/Direction.js"; import { Falloff } from "../constants/Falloff.js"; /** - * Applies a twisting force to the vertices, rotating them around the axis defined by the target position. + * Applies a twisting force to the vertices, rotating them around the direction defined by the target position. */ -export const twistBrush = (geometry, position, radius, strength, axis = Direction.UP, falloffFn = Falloff.LINEAR) => { +export const twistBrush = (geometry, position, radius, strength, direction = Direction.UP, falloffFn = Falloff.LINEAR) => { const positions = geometry.attributes.position; const quaternion = new Quaternion(); @@ -20,7 +20,7 @@ export const twistBrush = (geometry, position, radius, strength, axis = Directio const angle = falloff * strength; // Create quaternion for rotation around the axis - quaternion.setFromAxisAngle(axis, angle); + quaternion.setFromAxisAngle(direction, angle); // Apply twist rotation vertex.sub(position).applyQuaternion(quaternion).add(position);