SKPhysicsBody 类

定义

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

[Foundation.Register("SKPhysicsBody", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 3, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 9, ObjCRuntime.PlatformArchitecture.Arch64, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 7, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public class SKPhysicsBody : Foundation.NSObject, Foundation.INSCopying, Foundation.INSSecureCoding, IDisposable
type SKPhysicsBody = class
    inherit NSObject
    interface INSCoding
    interface INativeObject
    interface IDisposable
    interface INSCopying
    interface INSSecureCoding
继承
SKPhysicsBody
属性
实现

注解

的视觉外观 SKScene 由其 SKNode确定。 的物理模拟SKSceneSKPhysicsWorldPhysicsWorld 属性的 SKScene对象决定。 该词的物理学应用于 SKNode具有非 null PhysicsBody的 。

以下示例演示了一个简单的动态系统:

var blockSize = new SizeF(20, 20);
var node1 = new SKSpriteNode(UIColor.Red, blockSize) {
	Position = new PointF(100, 100),
	Name = "Red",
	PhysicsBody = SKPhysicsBody.BodyWithRectangleOfSize(blockSize),
};
var node2 = new SKSpriteNode(UIColor.Green, blockSize) {
	Position = new PointF(150, 100),
	Name = "Green",
	PhysicsBody = SKPhysicsBody.BodyWithRectangleOfSize(blockSize)
};

//Pin node1 in position and connect node2 to it with a spring
node1.PhysicsBody.Dynamic = false;
var joint = SKPhysicsJointSpring.Create(node1.PhysicsBody, node2.PhysicsBody, node1.Position, node2.Position);

//Add nodes to scene
scene.AddChild(node1);
scene.AddChild(node2);

//Add the joint to the physics world
scene.PhysicsWorld.AddJoint(joint);

应用程序开发人员必须在设置 SKPhysicsJoints 之前将 添加到SKNode场景图,否则 Sprite Kit 可能会生成 。

构造函数

SKPhysicsBody(IntPtr)

创建非托管对象的托管表示形式时使用的构造函数;由运行时调用。

SKPhysicsBody(NSCoder)

从 unarchiver 对象中存储的数据初始化 对象的构造函数。

SKPhysicsBody(NSObjectFlag)

用于调用派生类的构造函数,以跳过初始化并仅分配 对象。

属性

AffectedByGravity

正文是否受 SKPhysicsWorldGravity 向量的影响。

AllContactedBodies

获取与该物理体接触的所有物理实体的数组。

AllowsRotation

获取或设置一个值,该值指示身体是否可以旋转以响应力和脉冲。

AngularDamping

获取或设置一个介于 0.0 和 1.0 (之间的值,默认值为 0.1) ,用于确定旋转的阻尼速度。 (0.0 对应于没有 damping.)

AngularVelocity

获取或设置角速度(以弧度/秒为单位)。

Area

获取物理体面积(以平方米为单位)。

CategoryBitMask

获取或设置确定物理主体的接触和碰撞行为的位掩码。

Charge

获取或设置物理主体的电量(以库伦布斯为单位)。

Class

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
ClassHandle

此类的句柄。

CollisionBitMask

获取或设置确定物理体碰撞行为的位掩码。

ContactTestBitMask

获取或设置一个位掩码,用于确定物理体接触的确定方式。

DebugDescription

此对象的开发人员有意义的说明。

(继承自 NSObject)
Density

获取或设置物理体密度(以公斤/米^2 为单位)。

Description

对象的说明,即 ToString 的 Objective-C 版本。

(继承自 NSObject)
Dynamic

获取或设置一个值,该值指示物理体是否受模拟中的力和脉冲的影响。

FieldBitMask

获取或设置一个位掩码,该掩码控制哪些类型的字段会影响物理体。

Friction

获取或设置一个介于 0.0 和 1.0 之间的值,默认值为 0.2,用于描述物理体的表面粗糙度。

Handle

处理指向非托管对象表示形式的 (指针) 。

(继承自 NSObject)
IsDirectBinding

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
IsProxy

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Joints

获取一个数组,该数组包含连接到物理主体的关节。

LinearDamping

获取或设置介于 0.0 和 1.0 之间的值(默认值为 0.1),该值确定物理体线性运动受阻的速度。

Mass

获取或设置物理体的质量。 在 set.) 时 (汇报密度

Node

获取物理体连接到的节点(如果有)。

Pinned

获取或设置一个值,该值指示物理体是否固定到其父节点。

Resting

获取或设置一个值,该值指示身体是否在模拟中位于另一个主体上,因此不参与模拟。

Restitution

获取或设置物理体从另一个物理体反弹时失去的能量比例(介于 0.0 和 1.0 之间)。 默认值为 0.2。

RetainCount

返回对象的当前 Objective-C 保留计数。

(继承自 NSObject)
Self

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Superclass

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
SuperHandle

用于表示此 NSObject 基类中方法的句柄。

(继承自 NSObject)
UsesPreciseCollisionDetection

获取或设置一个值,该值控制是否使用精确检测算法(适合减少小型和快速物理体之间的误报)。

Velocity

获取或设置物理体运动的量级和方向。

Zone

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)

方法

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

使用 NSString keyPath) 注册在外部 (观察到的对象。   观察到的更改将调度到观察者的 对象 ObserveValue(NSString, NSObject, NSDictionary, IntPtr) 方法。

(继承自 NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

使用 string keyPath) 注册在外部 (观察到的对象。   观察到的更改将调度到观察者的 对象 ObserveValue(NSString, NSObject, NSDictionary, IntPtr) 方法。

(继承自 NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

注册一个对象,以便使用任意方法在外部观察到。

(继承自 NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

注册一个对象,以便使用任意方法在外部观察到。

(继承自 NSObject)
ApplyAngularImpulse(nfloat)

将指定的角脉冲(以牛顿秒为单位)应用于物理体。

ApplyForce(CGVector)

在牛顿中通过物理体的质量中心应用一次力。

ApplyForce(CGVector, CGPoint)

在一个时间步的指定点处在牛顿中应用力。

ApplyImpulse(CGVector)

以牛顿秒为单位,通过物理体的质量中心应用脉冲。

ApplyImpulse(CGVector, CGPoint)

通过指定点向物理体应用脉冲(以牛顿秒为单位)。

ApplyTorque(nfloat)

将一个以牛顿米为单位的扭矩应用于物理体一次。

AwakeFromNib()

从 nib 文件加载对象后调用。 重写程序必须调用 base。AwakeFromNib () 。

(继承自 NSObject)
BeginInvokeOnMainThread(Action)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

在主 UI 线程上异步调用指定的代码。

(继承自 NSObject)
Bind(NSString, NSObject, String, NSDictionary)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Bind(String, NSObject, String, NSDictionary)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
BindingInfo(String)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
BindingOptionDescriptions(String)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
BindingValueClass(String)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
CommitEditing()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
CommitEditing(NSObject, Selector, IntPtr)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
ConformsToProtocol(IntPtr)

调用 以确定此对象是否实现指定的协议。

(继承自 NSObject)
Copy()

执行基础 Objective-C 对象的副本。

(继承自 NSObject)
Copy(NSZone)

执行基础 Objective-C 对象的副本。

Create(SKTexture, CGSize)

创建具有指定纹理和大小的新物理主体。

Create(SKTexture, Single, CGSize)

创建具有指定值的新物理体。

CreateBodyFromPath(CGPath)

从指定路径创建新的物理主体。

CreateCircularBody(nfloat)

创建具有指定半径的新圆形物理体。

CreateCircularBody(nfloat, CGPoint)

创建具有指定半径和中心的新圆形物理体。

CreateEdge(CGPoint, CGPoint)

创建从一个点到另一个点的边缘。

CreateEdgeChain(CGPath)

从指定路径创建边缘链。

CreateEdgeLoop(CGPath)

从指定路径创建一个闭合边缘循环,并在必要时关闭该路径。

CreateEdgeLoop(CGRect)

从指定的矩形创建一个闭合的边缘循环。

CreateRectangularBody(CGSize)

从指定的矩形创建矩形物理体。

CreateRectangularBody(CGSize, CGPoint)

从指定的矩形和中心创建矩形物理体。

DangerousAutorelease()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
DangerousRelease()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
DangerousRetain()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

指示对多关系的索引发生了更改。

(继承自 NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
DidChangeValue(String)

指示在指定的键上发生了更改。

(继承自 NSObject)
Dispose()

释放 NSObject 对象使用的资源。

(继承自 NSObject)
Dispose(Boolean)

释放 SKPhysicsBody 对象使用的资源。

DoesNotRecognizeSelector(Selector)

指示此对象无法识别指定的选择器。

(继承自 NSObject)
EncodeTo(NSCoder)

在提供的编码器上对对象的状态进行编码

Equals(NSObject)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Equals(Object)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
ExposedBindings()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
FromBodies(SKPhysicsBody[])

从物理实体的指定列表的并集创建新的物理主体。

GetBindingInfo(NSString)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
GetBindingOptionDescriptions(NSString)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
GetBindingValueClass(NSString)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

检索指定键的值。

(继承自 NSObject)
GetHashCode()

为当前实例生成哈希代码。

(继承自 NSObject)
GetMethodForSelector(Selector)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
GetNativeField(String)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
GetNativeHash()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Init()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
InitializeHandle(IntPtr)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
InitializeHandle(IntPtr, String)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Invoke(Action, Double)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Invoke(Action, TimeSpan)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
InvokeOnMainThread(Action)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
InvokeOnMainThread(Selector, NSObject)

在主 UI 线程上同步调用指定的代码。

(继承自 NSObject)
IsEqual(NSObject)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
IsKindOfClass(Class)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
IsMemberOfClass(Class)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
MarkDirty()

将常规对等对象 (IsDirectBinding 为 true) 提升为 toggleref 对象。

(继承自 NSObject)
MutableCopy()

创建指定 NSObject 的可变副本。

(继承自 NSObject)
ObjectDidEndEditing(NSObject)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

指示指定 keyPath 相对于此对象的值已更改。

(继承自 NSObject)
PerformSelector(Selector)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
PerformSelector(Selector, NSObject)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
PerformSelector(Selector, NSObject, Double)

在当前实例上调用选择器,如果 obj 不为 null,则将其作为单个参数传递。

(继承自 NSObject)
PerformSelector(Selector, NSObject, Double, NSString[])

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
PerformSelector(Selector, NSObject, NSObject)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[])

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
PrepareForInterfaceBuilder()

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
RemoveObserver(NSObject, NSString)

阻止指定的观察程序接收指定 keyPath 的更改值的进一步通知。

(继承自 NSObject)
RemoveObserver(NSObject, NSString, IntPtr)

阻止指定的观察程序接收指定 keyPath 和上下文的更改值的进一步通知。

(继承自 NSObject)
RemoveObserver(NSObject, String)

阻止指定的观察程序接收指定 keyPath 的更改值的进一步通知。

(继承自 NSObject)
RemoveObserver(NSObject, String, IntPtr)

阻止指定的观察程序接收指定 keyPath 和上下文的更改值的进一步通知。

(继承自 NSObject)
RespondsToSelector(Selector)

此对象是否识别指定的选择器。

(继承自 NSObject)
SetNativeField(String, NSObject)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
SetNilValueForKey(NSString)

将指定键的值设置为 null。

(继承自 NSObject)
SetValueForKey(NSObject, NSString)

将键指定的属性的值设置为指定值。

(继承自 NSObject)
SetValueForKeyPath(IntPtr, NSString)

创建非托管对象的托管表示形式时使用的构造函数;由运行时调用。

(继承自 NSObject)
SetValueForKeyPath(NSObject, NSString)

设置可使用键路径访问的属性的值。

(继承自 NSObject)
SetValueForUndefinedKey(NSObject, NSString)

指示尝试将值写入未定义的键。 如果未重写,则引发 NSUndefinedKeyException。

(继承自 NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

将此 NSObject 的值设置为指定字典中的值。

(继承自 NSObject)
ToString()

返回当前实例值的字符串表示形式。

(继承自 NSObject)
Unbind(NSString)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
Unbind(String)
已过时.

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
ValueForKey(NSString)

返回与指定键关联的属性的值。

(继承自 NSObject)
ValueForKeyPath(NSString)

返回可使用键路径访问的属性的值。

(继承自 NSObject)
ValueForUndefinedKey(NSString)

指示尝试读取未定义键的值。 如果未重写,则引发 NSUndefinedKeyException。

(继承自 NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

指示指定键中指定索引的值即将更改。

(继承自 NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

(继承自 NSObject)
WillChangeValue(String)

指示指定键的值即将更改。

(继承自 NSObject)

扩展方法

ObjectDidBeginEditing(NSObject, INSEditor)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

ObjectDidEndEditing(NSObject, INSEditor)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

GetValidModes(NSObject, NSFontPanel)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

ValidateToolbarItem(NSObject, NSToolbarItem)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

GetDebugDescription(INSObjectProtocol)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

BeginPreviewPanelControl(NSObject, QLPreviewPanel)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

EndPreviewPanelControl(NSObject, QLPreviewPanel)

一个对象,该对象对 的物理PhysicsWorld模拟SKScene做出反应。

GetAccessibilityCustomRotors(NSObject)

获取适用于 this 对象的 对象的数组UIAccessibilityCustomRotor

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

设置适用于 this 对象的 对象数组UIAccessibilityCustomRotor

适用于

另请参阅