Comments (4)
From @Lohult on August 8, 2018 5:29
This problem can perhaps be fixed if the way the foot connects to the leg is setup in a way that it has a control that when rotated only affects the foot but when translated affects both ik effector and foot.
from shifter_classic_components.
Hi @Lohult I will check this since I also have another bug in this component:
#4
Thanks for the feedback :)
from shifter_classic_components.
I moving this to the other repository https://github.com/mgear-dev/shifter_classic_components/issues/
from shifter_classic_components.
Review the component with the feedback from the forum
http://forum.mgear-framework.com/t/hind-legs-for-quadraped-dont-align-with-guides-created/1698/4
Aerys code
import pymel.core as pm
from mgear.core.transform import getChainTransform2
# Pick joint chains
jnts = [pm.PyNode("jnt" + str(i)) for i in range(4)]
helperJnts = [pm.PyNode("helperJnt" + str(i)) for i in range(3)]
# Read world space xforms and positions
jnt_xform = [j.getMatrix(ws=1) for j in jnts]
Jn = [j.translate for j in jnt_xform]
L = sum([(Jn[i + 1] - Jn[i]).length() for i in range(3)])
# Compute ja and Jfull
ja = (Jn[1] - Jn[0])
ja.normalize()
Jfull = Jn[3] - Jn[0]
# Main formula
A = (Jfull * Jfull - L * L) / (2 * (ja * Jfull - L))
# Construct helper joint chain
hj1_pos = [Jn[0], Jn[0] + ja * A, Jn[3]]
hj1_norm = pm.dt.cross(Jn[1] - Jn[0], Jn[2] - Jn[1])
hj_xform = getChainTransform2(hj1_pos, hj1_norm)
helperJnts[0].setMatrix(hj_xform[0], ws=1)
helperJnts[1].setMatrix(hj_xform[1], ws=1)
helperJnts[2].setMatrix(hj_xform[2], ws=1)
from shifter_classic_components.
Related Issues (20)
- deleted
- chain_01 won't build when set to IK only.
- leg_2jnt_02: auto thickness not calculate correctly mid position HOT 1
- New Components: UI Slider and Container HOT 1
- S_Spine change the relative connections
- foot_bk_01 component roll_ctrl issue HOT 3
- shifter_classic_components: S_Spine optional hip joint HOT 1
- leg_2jnt_ms_01: IK/FK Leg rotation values not zeroed when set to FK
- Ik Pos switch space not working in synoptic with arm_2jnt_freeTangents_01 HOT 1
- global scaling of “blend_leg_L0_0_jnt” and “blend_leg_R0_0_jnt” is incorrect
- cable_01: New component
- Legs leg_L0_fk2_mth nodes need to be parented under foot_L0_fk_ref to take into account rolling and extra IK controls HOT 1
- SDK manager special component from Justin Pedersen
- arm_2jnt_04 align wrist to guide
- option to turn off lip collision on mouth component
- lite_chain_stack_02 component: add blend option to turn off the connection
- chain_spring_lite_stack_master_01: New component
- Control_01 component space switching with mgear viewport menu HOT 1
- add attributes to track IK and FK controls in limbs and mth nodes
- Shifter: leg_3jnt_02 review and update the component
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from shifter_classic_components.