首页 > 美厨数码网 > 配置参数 > (爱国者平板电脑怎么样)爱国者平板电脑m833 内容详情

(爱国者平板电脑怎么样)爱国者平板电脑m833

裴醉卉

(爱国者平板电脑怎么样)爱国者平板电脑m833

爱国者平板电脑怎么样?深度解析M833性能与体验

在当今这个数字化高速发展的时代,平板电脑作为连接工作与生活的桥梁,其重要性日益凸显。爱国者,一个深耕电子消费领域多年的国产品牌,近年来凭借其创新技术与高性价比的产品赢得了市场的广泛关注。今天,我们就来深入探讨一下爱国者平板电脑中的佼佼者——M833,看看它究竟能否满足现代人对高效生活与娱乐的多元化需求。

一、外观设计:简约而不失时尚

爱国者M833在外观设计上采用了简约而不失时尚的设计理念。轻薄的金属机身,不仅赋予了产品高级的质感,还大大减轻了携带负担,无论是日常通勤还是长途旅行,都能轻松携带。屏幕方面,M833配备了一块高分辨率显示屏,色彩饱满细腻,无论是观看高清视频还是处理图像设计,都能呈现出令人满意的视觉效果。边框设计巧妙收缩,既增加了屏占比,又提升了整体的美观度,让人一眼难忘。

二、性能配置:流畅体验,高效处理

性能方面,爱国者M833搭载了高性能处理器,保证了系统的流畅运行和多任务处理的能力。无论是运行大型游戏、办公软件还是视频编辑软件,都能游刃有余,减少卡顿现象,让用户享受丝滑的操作体验。内存与存储方面,M833提供了多种配置选择,满足不同用户的需求。即使是存储大量文件、安装多款应用,也能保持系统运行的高效稳定。值得一提的是,M833在电池续航上也有着不俗的表现,大容量电池配合智能节电技术,即便是长时间使用也能保持充足的电量,告别频繁充电的烦恼。

三、系统体验:人性化设计,便捷操作

系统层面,爱国者M833运行的是经过深度优化的Android系统,界面简洁直观,操作逻辑清晰,即便是初次使用的用户也能快速上手。系统内置了多项实用功能,如分屏多任务、智能助手等,极大地提升了工作效率和娱乐体验。同时,M833还支持多种手势操作和自定义快捷设置,让用户的个性化需求得到充分满足。安全性能方面,M833提供了指纹识别和面部解锁等多种生物识别技术,有效保护用户隐私和数据安全。

四、多媒体体验:视听盛宴,尽在掌握

在多媒体体验上,爱国者M833同样表现出色。高质量的扬声器搭配杜比音效技术,无论是观看电影、听音乐还是玩游戏,都能带来震撼的听觉享受。摄像头方面,M833配备了高像素前后摄像头,支持多种拍摄模式和美颜功能,无论是日常拍照、视频通话还是直播互动,都能轻松应对,记录下生活中的每一个精彩瞬间。

五、总结:性价比之选,值得推荐

综上所述,爱国者平板电脑M833凭借其时尚的外观设计、强大的性能配置、人性化的系统体验以及卓越的多媒体体验,在众多同类产品中脱颖而出,成为了一款集工作、学习、娱乐于一体的全能型平板。更重要的是,它在保持高品质的同时,还保持了亲民的价格,无疑是追求性价比用户的优选之一。对于正在寻找一款能够满足日常多元化需求的平板电脑的朋友来说,爱国者M833无疑是一个值得考虑的选择。

爱国者平板电脑m833为什么一充电就开不开机了,都已经修一遍了还是一

spine4fkCntGrp=sdd_createAnimDateGrp(spine4fkCnt)

cmds.delete(cmds.parentConstraint(spine4Skin,spine4fkCntGrp[-1]))

cmds.parent(spine4fkCntGrp[-1],spine3fkCntGrp[1])

cmds.parentConstraint(spine4fkCnt,spine4Skin)

sdd_connectAttrAnimDataToGrp(spine4Skin+_AnimData,spine4fkCntGrp[0])

chestfkCnt=sdd_createMocapCurveCnt(chestSkin+_FK,'Circle',_spRad,6)

chestfkCntGrp=sdd_createAnimDateGrp(chestfkCnt)

cmds.delete(cmds.parentConstraint(chestSkin,chestfkCntGrp[-1]))

cmds.parent(chestfkCntGrp[-1],spine4fkCnt)

cmds.parentConstraint(chestfkCntGrp[0],chestSkin)

sdd_connectRotObjToObj(spine4fkCnt,chestfkCntGrp[1])

cmds.delete(chestfkCnt)

sdd_connectAttrAnimDataToGrp(chestSkin+_AnimData,chestfkCntGrp[0])

chestMidfkCnt=sdd_createMocapCurveCnt(chestMidSkin+_FK,'Circle',_spRad,6)

chestMidfkCntGrp=sdd_createAnimDateGrp(chestMidfkCnt)

cmds.delete(cmds.parentConstraint(chestMidSkin,chestMidfkCntGrp[-1]))

cmds.parent(chestMidfkCntGrp[-1],chestfkCntGrp[1])

cmds.parentConstraint(chestMidfkCnt,chestMidSkin)

sdd_connectAttrAnimDataToGrp(chestMidSkin+_AnimData,chestMidfkCntGrp[0])

neck1fkCnt=sdd_createMocapCurveCnt(neck1Skin+_FK,'finger_cv',_rad*3,6)

sdd_rotateCurveCnt(0,90,0,neck1fkCnt)

neck1fkCntGrp=sdd_createAnimDateGrp(neck1fkCnt)

cmds.delete(cmds.parentConstraint(neck1Skin,neck1fkCntGrp[-1]))

cmds.parent(neck1fkCntGrp[-1],chestMidfkCnt)

cmds.parentConstraint(neck1fkCnt,neck1Skin)

sdd_connectAttrAnimDataToGrp(neck1Skin+_AnimData,neck1fkCntGrp[0])

neck2fkCnt=sdd_createMocapCurveCnt('neck2Skin+_FK','finger_cv',_rad*3,6)

sdd_rotateCurveCnt(0,90,0,neck2fkCnt)

neck2fkCntGrp=sdd_createAnimDateGrp(neck2fkCnt)

cmds.delete(cmds.parentConstraint(neck2Skin,neck2fkCntGrp[-1]))

cmds.parent(neck2fkCntGrp[-1],neck1fkCnt)

cmds.parentConstraint(neck2fkCntGrp[0],neck2Skin)

sdd_connectRotObjToObj(neck1fkCnt,neck2fkCntGrp[1])

cmds.delete(neck2fkCnt)

sdd_connectAttrAnimDataToGrp(neck2Skin+_AnimData,neck2fkCntGrp[0])

neck3fkCnt=sdd_createMocapCurveCnt(neck3Skin+_FK,'finger_cv',_rad*3,6)

sdd_rotateCurveCnt(0,90,0,neck3fkCnt)

neck3fkCntGrp=sdd_createAnimDateGrp(neck3fkCnt)

cmds.delete(cmds.parentConstraint(neck3Skin,neck3fkCntGrp[-1]))

cmds.parent(neck3fkCntGrp[-1],neck2fkCntGrp[1])

cmds.parentConstraint(neck3fkCnt,neck3Skin)

sdd_connectAttrAnimDataToGrp(neck3Skin+_AnimData,neck3fkCntGrp[0])

headfkCnt=sdd_createMocapCurveCnt(headSkin+_FK,'Circle',_rad*2,6)

sdd_rotateCurveCnt(90,0,0,headfkCnt)

sdd_moveCurveCnt(0,_rad*2,0,headfkCnt)

headfkCntGrp=sdd_createAnimDateGrp(headfkCnt)

cmds.delete(cmds.parentConstraint(headSkin,headfkCntGrp[-1]))

cmds.parent(headfkCntGrp[-1],neck3fkCnt)

cmds.parentConstraint(headfkCnt,headSkin)

sdd_connectAttrAnimDataToGrp(headSkin+_AnimData,headfkCntGrp[0])

return chestMidfkCnt

def sdd_rotateCurveCnt(x,y,z,cnt):

cmds.rotate(x,y,z,cmds.ls(cnt+'.cv[*]'),r=1,p=[0,0,0],os=1,fo=1)

def sdd_moveCurveCnt(x,y,z,cnt):

cmds.move(x,y,z,cmds.ls(cnt+'.cv[*]'),r=1,os=1,wd=1)

def sdd_legRig(legList,hipFkCnt,direction):

rootSkin,upLegSkin,legSkin,footSkin,toeSkin,toeEndSkin=legList

moveCtrl='move_Ctrl'

for i in legList:

if(cmds.objExists(i)==0):

return

_Grp='_Grp'

_IK='_IK'

_FK='_FK'

_Jnt='_Jnt'

_AnimData='_AnimData'

_rad=cmds.getAttr(moveCtrl+'.gls')

#ikfk joint

upLegLoc=upLegSkin+_AnimData

legLoc=legSkin+_AnimData

footLoc=footSkin+_AnimData

toeLoc=toeSkin+_AnimData

upLegIk=cmds.duplicate(upLegSkin,n=upLegSkin+_IK+_Jnt,po=1)[0]

legIk=cmds.duplicate(legSkin,n=legSkin+_IK+_Jnt,po=1)[0]

footIk=cmds.duplicate(footSkin,n=footSkin+_IK+_Jnt,po=1)[0]

toeIk=cmds.duplicate(toeSkin,n=toeSkin+_IK+_Jnt,po=1)[0]

toeEndIk=cmds.duplicate(toeEndSkin,n=toeEndSkin+_IK+_Jnt,po=1)[0]

cmds.parent(toeEndIk,toeIk)

cmds.parent(toeIk,footIk)

cmds.parent(footIk,legIk)

cmds.parent(legIk,upLegIk)

cmds.parent(upLegIk,w=1)

upLegFk=cmds.duplicate(upLegSkin,n=upLegSkin+_FK+_Jnt,po=1)[0]

legFk=cmds.duplicate(legSkin,n=legSkin+_FK+_Jnt,po=1)[0]

footFk=cmds.duplicate(footSkin,n=footSkin+_FK+_Jnt,po=1)[0]

toeFk=cmds.duplicate(toeSkin,n=toeSkin+_FK+_Jnt,po=1)[0]

toeEndFk=cmds.duplicate(toeEndSkin,n=toeEndSkin+_FK+_Jnt,po=1)[0]

cmds.parent(toeEndFk,toeFk)

cmds.parent(toeFk,footFk)

cmds.parent(footFk,legFk)

cmds.parent(legFk,upLegFk)

cmds.parent(upLegFk,w=1)

upLegCon=cmds.parentConstraint(upLegIk,upLegFk,upLegSkin)

legCon=cmds.parentConstraint(legIk,legFk,legSkin)

footCon=cmds.parentConstraint(footIk,footFk,footSkin)

toeCon=cmds.parentConstraint(toeIk,toeFk,toeSkin)

toeEndCon=cmds.parentConstraint(toeEndIk,toeEndFk,toeEndSkin)

#dis

dis=sdd_getDistanceTwoObject(upLegSkin,legSkin)

#ik control

ikAllGrp=cmds.group(n=legSkin+_IK+'_All'+_Grp,em=1)

cmds.parent(ikAllGrp,moveCtrl)

ikfkCtrlJntGrp=cmds.group(n=legSkin+'_CtrlJnt'+_Grp,em=1)

cmds.parent(ikfkCtrlJntGrp,moveCtrl)

cmds.parent(upLegFk,upLegIk,ikfkCtrlJntGrp)

cmds.setAttr(ikfkCtrlJntGrp+'.v',0)

ikAllOffGrp=sdd_createIkOffAnimDateGrp(ikAllGrp+'_'+rootSkin,ikAllGrp,rootSkin)

sdd_connectAttrAnimDataToGrp(rootSkin+_AnimData,ikAllOffGrp[0])

cmds.parent(ikAllOffGrp[-1],moveCtrl)

#3ik

legIkH=cmds.ikHandle(sj=upLegIk,ee=footIk,sol='ikRPsolver',n=upLegSkin+_IK+'H')[0]

footIkH=cmds.ikHandle(sj=footIk,ee=toeIk,sol='ikSCsolver',n=footSkin+_IK+'H')[0]

toeIkH=cmds.ikHandle(sj=toeIk,ee=toeEndIk,sol='ikSCsolver',n=toeSkin+_IK+'H')[0]

#5Group

footIkHGrp=cmds.group(em=1,n=footIkH+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,footIkHGrp))

cmds.parent(footIkH,legIkH,footIkHGrp)

toeIkHGrp=cmds.group(em=1,n=toeIkH+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,toeIkHGrp))

cmds.parent(toeIkH,toeIkHGrp)

toeEndIkHGrp=cmds.group(em=1,n=toeEndSkin+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeEndIk,toeEndIkHGrp))

cmds.parent(toeIkHGrp,footIkHGrp,toeEndIkHGrp)

heelIkHGrp=cmds.group(em=1,n=footSkin+'_heel'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeEndIk,heelIkHGrp))

dis1=sdd_getDistanceTwoObject(footSkin,toeEndSkin)

dis2=sdd_getDistanceTwoObject(toeSkin,toeEndSkin)

cmds.move(0,0,dis1*-1,heelIkHGrp,r=1,os=1,wd=1)

cmds.parent(toeEndIkHGrp,heelIkHGrp)

sideOutIkHGrp=cmds.group(em=1,n=toeSkin+'_SideOut'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,sideOutIkHGrp))

sideInIkHGrp=cmds.group(em=1,n=toeSkin+'_SideIn'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,sideInIkHGrp))

pos1=cmds.xform(toeEndSkin,q=1,ws=1,t=1)

pos2=cmds.xform(toeSkin,q=1,ws=1,t=1)

cmds.move(0,pos1[1]-pos2[1],0,sideOutIkHGrp,r=1,os=1,wd=1)

cmds.move(dis2*0.5,0,0,sideOutIkHGrp,r=1,os=1,wd=1)

cmds.move(0,pos1[1]-pos2[1],0,sideInIkHGrp,r=1,os=1,wd=1)

cmds.move(-dis2*0.5,0,0,sideInIkHGrp,r=1,os=1,wd=1)

cmds.parent(heelIkHGrp,sideInIkHGrp)

cmds.parent(sideInIkHGrp,sideOutIkHGrp)

footRootIkGrp=cmds.group(em=1,n=footSkin+'_Root'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(footIk,footRootIkGrp))

cmds.parent(sideOutIkHGrp,footRootIkGrp)

cmds.setAttr(footRootIkGrp+'.v',0,l=1)

#ik attr

ikCnt=sdd_createMocapCurveCnt(legSkin+_IK,'legIK_cv',_rad*1,13)

pos1=cmds.xform(footSkin,q=1,ws=1,t=1)

pos2=cmds.xform(toeEndSkin,q=1,ws=1,t=1)

cmds.move(0,pos2[1]-pos1[1],0,cmds.ls(ikCnt+'.cv[*]'),r=1,os=1,wd=1)

if(direction==-1):

cmds.scale(-1,1,1,cmds.ls(ikCnt+'.cv[*]'),r=1,os=1)

cmds.addAttr(ikCnt,ln='Heel',at='double',k=1)

cmds.addAttr(ikCnt,ln='Ball',at='double',k=1)

cmds.addAttr(ikCnt,ln='TipToe',at='double',k=1)

cmds.addAttr(ikCnt,ln='Side',at='double',k=1)

cmds.connectAttr(ikCnt+'.Heel',heelIkHGrp+'.rx')

cmds.connectAttr(ikCnt+'.Ball',footIkHGrp+'.rx')

sideGCdt=cmds.createNode('condition',n=footSkin+'_Side_G_Cdt')

cmds.connectAttr(ikCnt+'.Side',sideGCdt+'.ft')

cmds.connectAttr(ikCnt+'.Side',sideGCdt+'.ctr')

cmds.setAttr(sideGCdt+'.op',2)

cmds.setAttr(sideGCdt+'.cfr',0)

sideLCdt=cmds.createNode('condition',n=footSkin+'_Side_L_Cdt')

cmds.connectAttr(ikCnt+'.Side',sideLCdt+'.ft')

cmds.connectAttr(ikCnt+'.Side',sideLCdt+'.ctr')

cmds.setAttr(sideLCdt+'.op',4)

cmds.setAttr(sideLCdt+'.cfr',0)

cmds.connectAttr(sideGCdt+'.ocr',sideInIkHGrp+'.rz',f=1)

cmds.connectAttr(sideLCdt+'.ocr',sideOutIkHGrp+'.rz',f=1)

cmds.connectAttr(ikCnt+'.TipToe',toeEndIkHGrp+'.rx')

toeEndIkCnt=sdd_createMocapCurveCnt(toeEndSkin+_IK,'Circle',_rad*1,13)

sdd_rotateCurveCnt(90,0,0,toeEndIkCnt)

toeEndIkCntGrp=sdd_createAnimDateGrp(toeEndIkCnt)

cmds.delete(cmds.parentConstraint(toeIk,toeEndIkCntGrp[-1]))

cmds.parentConstraint(footIk,toeEndIkCntGrp[-1],mo=1)

cmds.parentConstraint(toeEndIkCnt,toeIkHGrp,mo=1)

ikCntGrp=sdd_createAnimDateGrp(ikCnt)

cmds.parent(ikCntGrp[-1],moveCtrl)

cmds.delete(cmds.parentConstraint(footIk,ikCntGrp[-1]))

cmds.orientConstraint(ikCnt,footIk)

cmds.parent(footRootIkGrp,ikCnt)

legIkOffGrp=sdd_createIkOffAnimDateGrp(ikCnt+'_'+legSkin,ikCntGrp[-1],legSkin)

upLegIkOffGrp=sdd_createIkOffAnimDateGrp(ikCnt+'_'+upLegSkin,legIkOffGrp[-1],upLegSkin)

cmds.parent(upLegIkOffGrp[-1],moveCtrl)

_Pole='_Pole'

ikPloeCnt=sdd_createMocapCurveCnt(upLegSkin+_Pole,'pole_cv',_rad*1,13)

sdd_rotateCurveCnt(180,0,0,ikPloeCnt)

ikPloeCntGrp=sdd_createAnimDateGrp(ikPloeCnt)

cmds.delete(cmds.parentConstraint(legSkin,ikPloeCntGrp[-1]))

cmds.delete(cmds.orientConstraint(legSkin,ikPloeCntGrp[-1]))

cmds.setAttr(ikPloeCntGrp[-2]+'.tz',dis)

cmds.poleVectorConstraint(ikPloeCnt,legIkH)

upLegPoleOffGrp=sdd_createIkOffAnimDateGrp(ikPloeCnt+'_'+upLegSkin,ikPloeCntGrp[-1],upLegSkin)

cmds.parent(upLegPoleOffGrp[-1],moveCtrl)

sdd_connectAttrAnimDataToGrp(upLegLoc,upLegIkOffGrp[0])

sdd_connectAttrAnimDataToGrp(legLoc,ikPloeCntGrp[0])

sdd_connectAttrAnimDataToGrp(upLegLoc,upLegPoleOffGrp[0])

爱国者平板电脑m833为什么一充电就开不开机了,都已经修一遍了还是一

spine4fkCntGrp=sdd_createAnimDateGrp(spine4fkCnt)

cmds.delete(cmds.parentConstraint(spine4Skin,spine4fkCntGrp[-1]))

cmds.parent(spine4fkCntGrp[-1],spine3fkCntGrp[1])

cmds.parentConstraint(spine4fkCnt,spine4Skin)

sdd_connectAttrAnimDataToGrp(spine4Skin+_AnimData,spine4fkCntGrp[0])

chestfkCnt=sdd_createMocapCurveCnt(chestSkin+_FK,'Circle',_spRad,6)

chestfkCntGrp=sdd_createAnimDateGrp(chestfkCnt)

cmds.delete(cmds.parentConstraint(chestSkin,chestfkCntGrp[-1]))

cmds.parent(chestfkCntGrp[-1],spine4fkCnt)

cmds.parentConstraint(chestfkCntGrp[0],chestSkin)

sdd_connectRotObjToObj(spine4fkCnt,chestfkCntGrp[1])

cmds.delete(chestfkCnt)

sdd_connectAttrAnimDataToGrp(chestSkin+_AnimData,chestfkCntGrp[0])

chestMidfkCnt=sdd_createMocapCurveCnt(chestMidSkin+_FK,'Circle',_spRad,6)

chestMidfkCntGrp=sdd_createAnimDateGrp(chestMidfkCnt)

cmds.delete(cmds.parentConstraint(chestMidSkin,chestMidfkCntGrp[-1]))

cmds.parent(chestMidfkCntGrp[-1],chestfkCntGrp[1])

cmds.parentConstraint(chestMidfkCnt,chestMidSkin)

sdd_connectAttrAnimDataToGrp(chestMidSkin+_AnimData,chestMidfkCntGrp[0])

neck1fkCnt=sdd_createMocapCurveCnt(neck1Skin+_FK,'finger_cv',_rad*3,6)

sdd_rotateCurveCnt(0,90,0,neck1fkCnt)

neck1fkCntGrp=sdd_createAnimDateGrp(neck1fkCnt)

cmds.delete(cmds.parentConstraint(neck1Skin,neck1fkCntGrp[-1]))

cmds.parent(neck1fkCntGrp[-1],chestMidfkCnt)

cmds.parentConstraint(neck1fkCnt,neck1Skin)

sdd_connectAttrAnimDataToGrp(neck1Skin+_AnimData,neck1fkCntGrp[0])

neck2fkCnt=sdd_createMocapCurveCnt('neck2Skin+_FK','finger_cv',_rad*3,6)

sdd_rotateCurveCnt(0,90,0,neck2fkCnt)

neck2fkCntGrp=sdd_createAnimDateGrp(neck2fkCnt)

cmds.delete(cmds.parentConstraint(neck2Skin,neck2fkCntGrp[-1]))

cmds.parent(neck2fkCntGrp[-1],neck1fkCnt)

cmds.parentConstraint(neck2fkCntGrp[0],neck2Skin)

sdd_connectRotObjToObj(neck1fkCnt,neck2fkCntGrp[1])

cmds.delete(neck2fkCnt)

sdd_connectAttrAnimDataToGrp(neck2Skin+_AnimData,neck2fkCntGrp[0])

neck3fkCnt=sdd_createMocapCurveCnt(neck3Skin+_FK,'finger_cv',_rad*3,6)

sdd_rotateCurveCnt(0,90,0,neck3fkCnt)

neck3fkCntGrp=sdd_createAnimDateGrp(neck3fkCnt)

cmds.delete(cmds.parentConstraint(neck3Skin,neck3fkCntGrp[-1]))

cmds.parent(neck3fkCntGrp[-1],neck2fkCntGrp[1])

cmds.parentConstraint(neck3fkCnt,neck3Skin)

sdd_connectAttrAnimDataToGrp(neck3Skin+_AnimData,neck3fkCntGrp[0])

headfkCnt=sdd_createMocapCurveCnt(headSkin+_FK,'Circle',_rad*2,6)

sdd_rotateCurveCnt(90,0,0,headfkCnt)

sdd_moveCurveCnt(0,_rad*2,0,headfkCnt)

headfkCntGrp=sdd_createAnimDateGrp(headfkCnt)

cmds.delete(cmds.parentConstraint(headSkin,headfkCntGrp[-1]))

cmds.parent(headfkCntGrp[-1],neck3fkCnt)

cmds.parentConstraint(headfkCnt,headSkin)

sdd_connectAttrAnimDataToGrp(headSkin+_AnimData,headfkCntGrp[0])

return chestMidfkCnt

def sdd_rotateCurveCnt(x,y,z,cnt):

cmds.rotate(x,y,z,cmds.ls(cnt+'.cv[*]'),r=1,p=[0,0,0],os=1,fo=1)

def sdd_moveCurveCnt(x,y,z,cnt):

cmds.move(x,y,z,cmds.ls(cnt+'.cv[*]'),r=1,os=1,wd=1)

def sdd_legRig(legList,hipFkCnt,direction):

rootSkin,upLegSkin,legSkin,footSkin,toeSkin,toeEndSkin=legList

moveCtrl='move_Ctrl'

for i in legList:

if(cmds.objExists(i)==0):

return

_Grp='_Grp'

_IK='_IK'

_FK='_FK'

_Jnt='_Jnt'

_AnimData='_AnimData'

_rad=cmds.getAttr(moveCtrl+'.gls')

#ikfk joint

upLegLoc=upLegSkin+_AnimData

legLoc=legSkin+_AnimData

footLoc=footSkin+_AnimData

toeLoc=toeSkin+_AnimData

upLegIk=cmds.duplicate(upLegSkin,n=upLegSkin+_IK+_Jnt,po=1)[0]

legIk=cmds.duplicate(legSkin,n=legSkin+_IK+_Jnt,po=1)[0]

footIk=cmds.duplicate(footSkin,n=footSkin+_IK+_Jnt,po=1)[0]

toeIk=cmds.duplicate(toeSkin,n=toeSkin+_IK+_Jnt,po=1)[0]

toeEndIk=cmds.duplicate(toeEndSkin,n=toeEndSkin+_IK+_Jnt,po=1)[0]

cmds.parent(toeEndIk,toeIk)

cmds.parent(toeIk,footIk)

cmds.parent(footIk,legIk)

cmds.parent(legIk,upLegIk)

cmds.parent(upLegIk,w=1)

upLegFk=cmds.duplicate(upLegSkin,n=upLegSkin+_FK+_Jnt,po=1)[0]

legFk=cmds.duplicate(legSkin,n=legSkin+_FK+_Jnt,po=1)[0]

footFk=cmds.duplicate(footSkin,n=footSkin+_FK+_Jnt,po=1)[0]

toeFk=cmds.duplicate(toeSkin,n=toeSkin+_FK+_Jnt,po=1)[0]

toeEndFk=cmds.duplicate(toeEndSkin,n=toeEndSkin+_FK+_Jnt,po=1)[0]

cmds.parent(toeEndFk,toeFk)

cmds.parent(toeFk,footFk)

cmds.parent(footFk,legFk)

cmds.parent(legFk,upLegFk)

cmds.parent(upLegFk,w=1)

upLegCon=cmds.parentConstraint(upLegIk,upLegFk,upLegSkin)

legCon=cmds.parentConstraint(legIk,legFk,legSkin)

footCon=cmds.parentConstraint(footIk,footFk,footSkin)

toeCon=cmds.parentConstraint(toeIk,toeFk,toeSkin)

toeEndCon=cmds.parentConstraint(toeEndIk,toeEndFk,toeEndSkin)

#dis

dis=sdd_getDistanceTwoObject(upLegSkin,legSkin)

#ik control

ikAllGrp=cmds.group(n=legSkin+_IK+'_All'+_Grp,em=1)

cmds.parent(ikAllGrp,moveCtrl)

ikfkCtrlJntGrp=cmds.group(n=legSkin+'_CtrlJnt'+_Grp,em=1)

cmds.parent(ikfkCtrlJntGrp,moveCtrl)

cmds.parent(upLegFk,upLegIk,ikfkCtrlJntGrp)

cmds.setAttr(ikfkCtrlJntGrp+'.v',0)

ikAllOffGrp=sdd_createIkOffAnimDateGrp(ikAllGrp+'_'+rootSkin,ikAllGrp,rootSkin)

sdd_connectAttrAnimDataToGrp(rootSkin+_AnimData,ikAllOffGrp[0])

cmds.parent(ikAllOffGrp[-1],moveCtrl)

#3ik

legIkH=cmds.ikHandle(sj=upLegIk,ee=footIk,sol='ikRPsolver',n=upLegSkin+_IK+'H')[0]

footIkH=cmds.ikHandle(sj=footIk,ee=toeIk,sol='ikSCsolver',n=footSkin+_IK+'H')[0]

toeIkH=cmds.ikHandle(sj=toeIk,ee=toeEndIk,sol='ikSCsolver',n=toeSkin+_IK+'H')[0]

#5Group

footIkHGrp=cmds.group(em=1,n=footIkH+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,footIkHGrp))

cmds.parent(footIkH,legIkH,footIkHGrp)

toeIkHGrp=cmds.group(em=1,n=toeIkH+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,toeIkHGrp))

cmds.parent(toeIkH,toeIkHGrp)

toeEndIkHGrp=cmds.group(em=1,n=toeEndSkin+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeEndIk,toeEndIkHGrp))

cmds.parent(toeIkHGrp,footIkHGrp,toeEndIkHGrp)

heelIkHGrp=cmds.group(em=1,n=footSkin+'_heel'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeEndIk,heelIkHGrp))

dis1=sdd_getDistanceTwoObject(footSkin,toeEndSkin)

dis2=sdd_getDistanceTwoObject(toeSkin,toeEndSkin)

cmds.move(0,0,dis1*-1,heelIkHGrp,r=1,os=1,wd=1)

cmds.parent(toeEndIkHGrp,heelIkHGrp)

sideOutIkHGrp=cmds.group(em=1,n=toeSkin+'_SideOut'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,sideOutIkHGrp))

sideInIkHGrp=cmds.group(em=1,n=toeSkin+'_SideIn'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(toeIk,sideInIkHGrp))

pos1=cmds.xform(toeEndSkin,q=1,ws=1,t=1)

pos2=cmds.xform(toeSkin,q=1,ws=1,t=1)

cmds.move(0,pos1[1]-pos2[1],0,sideOutIkHGrp,r=1,os=1,wd=1)

cmds.move(dis2*0.5,0,0,sideOutIkHGrp,r=1,os=1,wd=1)

cmds.move(0,pos1[1]-pos2[1],0,sideInIkHGrp,r=1,os=1,wd=1)

cmds.move(-dis2*0.5,0,0,sideInIkHGrp,r=1,os=1,wd=1)

cmds.parent(heelIkHGrp,sideInIkHGrp)

cmds.parent(sideInIkHGrp,sideOutIkHGrp)

footRootIkGrp=cmds.group(em=1,n=footSkin+'_Root'+_IK+'H'+_Grp)

cmds.delete(cmds.parentConstraint(footIk,footRootIkGrp))

cmds.parent(sideOutIkHGrp,footRootIkGrp)

cmds.setAttr(footRootIkGrp+'.v',0,l=1)

#ik attr

ikCnt=sdd_createMocapCurveCnt(legSkin+_IK,'legIK_cv',_rad*1,13)

pos1=cmds.xform(footSkin,q=1,ws=1,t=1)

pos2=cmds.xform(toeEndSkin,q=1,ws=1,t=1)

cmds.move(0,pos2[1]-pos1[1],0,cmds.ls(ikCnt+'.cv[*]'),r=1,os=1,wd=1)

if(direction==-1):

cmds.scale(-1,1,1,cmds.ls(ikCnt+'.cv[*]'),r=1,os=1)

cmds.addAttr(ikCnt,ln='Heel',at='double',k=1)

cmds.addAttr(ikCnt,ln='Ball',at='double',k=1)

cmds.addAttr(ikCnt,ln='TipToe',at='double',k=1)

cmds.addAttr(ikCnt,ln='Side',at='double',k=1)

cmds.connectAttr(ikCnt+'.Heel',heelIkHGrp+'.rx')

cmds.connectAttr(ikCnt+'.Ball',footIkHGrp+'.rx')

sideGCdt=cmds.createNode('condition',n=footSkin+'_Side_G_Cdt')

cmds.connectAttr(ikCnt+'.Side',sideGCdt+'.ft')

cmds.connectAttr(ikCnt+'.Side',sideGCdt+'.ctr')

cmds.setAttr(sideGCdt+'.op',2)

cmds.setAttr(sideGCdt+'.cfr',0)

sideLCdt=cmds.createNode('condition',n=footSkin+'_Side_L_Cdt')

cmds.connectAttr(ikCnt+'.Side',sideLCdt+'.ft')

cmds.connectAttr(ikCnt+'.Side',sideLCdt+'.ctr')

cmds.setAttr(sideLCdt+'.op',4)

cmds.setAttr(sideLCdt+'.cfr',0)

cmds.connectAttr(sideGCdt+'.ocr',sideInIkHGrp+'.rz',f=1)

cmds.connectAttr(sideLCdt+'.ocr',sideOutIkHGrp+'.rz',f=1)

cmds.connectAttr(ikCnt+'.TipToe',toeEndIkHGrp+'.rx')

toeEndIkCnt=sdd_createMocapCurveCnt(toeEndSkin+_IK,'Circle',_rad*1,13)

sdd_rotateCurveCnt(90,0,0,toeEndIkCnt)

toeEndIkCntGrp=sdd_createAnimDateGrp(toeEndIkCnt)

cmds.delete(cmds.parentConstraint(toeIk,toeEndIkCntGrp[-1]))

cmds.parentConstraint(footIk,toeEndIkCntGrp[-1],mo=1)

cmds.parentConstraint(toeEndIkCnt,toeIkHGrp,mo=1)

ikCntGrp=sdd_createAnimDateGrp(ikCnt)

cmds.parent(ikCntGrp[-1],moveCtrl)

cmds.delete(cmds.parentConstraint(footIk,ikCntGrp[-1]))

cmds.orientConstraint(ikCnt,footIk)

cmds.parent(footRootIkGrp,ikCnt)

legIkOffGrp=sdd_createIkOffAnimDateGrp(ikCnt+'_'+legSkin,ikCntGrp[-1],legSkin)

upLegIkOffGrp=sdd_createIkOffAnimDateGrp(ikCnt+'_'+upLegSkin,legIkOffGrp[-1],upLegSkin)

cmds.parent(upLegIkOffGrp[-1],moveCtrl)

_Pole='_Pole'

ikPloeCnt=sdd_createMocapCurveCnt(upLegSkin+_Pole,'pole_cv',_rad*1,13)

sdd_rotateCurveCnt(180,0,0,ikPloeCnt)

ikPloeCntGrp=sdd_createAnimDateGrp(ikPloeCnt)

cmds.delete(cmds.parentConstraint(legSkin,ikPloeCntGrp[-1]))

cmds.delete(cmds.orientConstraint(legSkin,ikPloeCntGrp[-1]))

cmds.setAttr(ikPloeCntGrp[-2]+'.tz',dis)

cmds.poleVectorConstraint(ikPloeCnt,legIkH)

upLegPoleOffGrp=sdd_createIkOffAnimDateGrp(ikPloeCnt+'_'+upLegSkin,ikPloeCntGrp[-1],upLegSkin)

cmds.parent(upLegPoleOffGrp[-1],moveCtrl)

sdd_connectAttrAnimDataToGrp(upLegLoc,upLegIkOffGrp[0])

sdd_connectAttrAnimDataToGrp(legLoc,ikPloeCntGrp[0])

sdd_connectAttrAnimDataToGrp(upLegLoc,upLegPoleOffGrp[0])

相关