zl程序教程

您现在的位置是:首页 >  其他

当前栏目

如何在代码中取得一个特点type的关节

代码 如何 一个 type 特点 取得
2023-09-14 08:56:50 时间
-(void)didLoadFromCCB{

 Class distanceJointClass = NSClassFromString(@"CCPhysicsSlideJoint");

 NSAssert(distanceJointClass, @"Class CCPhysicSlideJoint dont exist!");

 for (CCPhysicsJoint *joint in self.physicsBody.joints) {

 if ([joint isKindOfClass:distanceJointClass]) {

 _lockJoint = joint;

 break;

}

意思很清楚,从自身的joints集合中查找指定类型的关节(这里是查找距离关节)。

但是这段代码有点问题!

如果你在Spring.ccb中添加了多个距离关节,就不管用了。

不幸的是,关节中没有name或tag属性去帮助你简单的标示它们,无论是SpriteBuilder中还是代码中。

无论如何,你可以赋予关节节点一个不同的name来标示它们。你可以在代码中访问关节bodies以及它们的节点(nodes),并且比较节点的名字去找到特定的关节。

用下面的代码取个栗子 ;)

if([joint.bodyA.node.name isEqualToString:@"node A"] [joint.bodyB.node.name isEqualToString:@"node B"]){

 //do something

}

Unity组件:Fixed Joint 固定关节 Fixed Joints restricts an object s movement to be dependent upon another object. This is somewhat similar to Parentingbut is implemented through physics rather than Transform hierarchy.
C++11的版本在vector容器添加了emplace_back方法,相对于原先的push_back方法能够在一定程度上提升vector容器的表现性能。