armbot trigger events added
This commit is contained in:
@@ -15,6 +15,7 @@ type IKInstanceProps = {
|
||||
setArmBotCurvePoints: any
|
||||
};
|
||||
function IKInstance({ modelUrl, setIkSolver, ikSolver, robot, groupRef, processes, setArmBotCurvePoints }: IKInstanceProps) {
|
||||
console.log('robot: ', robot.position, robot.rotation);
|
||||
const { scene } = useThree();
|
||||
const gltf = useLoader(GLTFLoader, modelUrl, (loader) => {
|
||||
const draco = new DRACOLoader();
|
||||
@@ -65,15 +66,24 @@ function IKInstance({ modelUrl, setIkSolver, ikSolver, robot, groupRef, processe
|
||||
setIkSolver(solver);
|
||||
|
||||
const helper = new CCDIKHelper(OOI.Skinned_Mesh, iks, 0.05);
|
||||
|
||||
// scene.add(groupRef.current)
|
||||
if (solver) {
|
||||
const bone = solver.mesh.skeleton.bones.find(
|
||||
(b: any) => b.name === targetBoneName
|
||||
) ?? "";
|
||||
if (bone) {
|
||||
const position = new THREE.Vector3();
|
||||
bone.getWorldPosition(position);
|
||||
console.log("world position", position.x, position.y, position.z); // this is the bone's world position
|
||||
}
|
||||
}
|
||||
scene.add(helper)
|
||||
|
||||
|
||||
}, [gltf]);
|
||||
|
||||
return (
|
||||
<>
|
||||
<group ref={groupRef} position={robot.position}>
|
||||
<group ref={groupRef} position={robot.position} rotation={robot.rotation}>
|
||||
<primitive
|
||||
uuid={"ArmBot-X200"}
|
||||
object={cloned}
|
||||
|
||||
Reference in New Issue
Block a user