gpt4 book ai didi

Swift 相当于这个类

转载 作者:行者123 更新时间:2023-11-28 15:05:32 25 4
gpt4 key购买 nike

我正在尝试实现来自 this 的一些基本 UIGestureRecongnizer 控件教程。我在理解此类并将其翻译成 Swift 3 时遇到了一些问题

interface Transformations : NSObject

- (id)initWithDepth:(float)z Scale:(float)s Translation:(GLKVector2)t Rotation:(GLKVector3)r;
- (void)start;
- (void)scale:(float)s;
- (void)translate:(GLKVector2)t withMultiplier:(float)m;
- (void)rotate:(GLKVector3)r withMultiplier:(float)m;
- (GLKMatrix4)getModelViewMatrix;

@end

(ps:GLK前缀的方法来自苹果的GLKit框架)

class Transformations: NSObject {
init(Scale: Float, Translation: GLKVector2, Rotation: GLKVector3) {
func scale(s: Float) {
}
func translate(t: GLKVector2, withMultiplier: Float) {
}
func rotate(r: GLKVector3, withMultiplier: Float) {
}

}
}

到目前为止,情况如何?

这是我试图翻译成 Swift 3 的 .m 文件。

#import "Transformations.h"

@interface Transformations ()
{
// 1
// Depth
float _depth;
}

@end

@implementation Transformations

- (id)initWithDepth:(float)z Scale:(float)s Translation:(GLKVector2)t Rotation:(GLKVector3)r
{
if(self = [super init])
{
// 2
// Depth
_depth = z;
}

return self;
}

- (void)start
{
}

- (void)scale:(float)s
{
}

- (void)translate:(GLKVector2)t withMultiplier:(float)m
{
}

- (void)rotate:(GLKVector3)r withMultiplier:(float)m
{
}

- (GLKMatrix4)getModelViewMatrix
{
// 3
GLKMatrix4 modelViewMatrix = GLKMatrix4Identity;
modelViewMatrix = GLKMatrix4Translate(modelViewMatrix, 0.0f, 0.0f, -_depth);

return modelViewMatrix;
}

@end

最佳答案

所以你应该翻译 .m 文件。像这样:

class Transformations: NSObject {

var _depth: Float

init(z: Float, scale s: Float, translation t: GLKVector2, rotation r: GLKVector3) {
self._depth = z
}

func start() {

}

func scale(s: Float) {

}

func translate(t: GLKVector2, withMultiplier m: Float) {

}

func rotate(r: GLKVector3, withMultiplier m: Float) {

}

func getModelViewMatrix() -> GLKMatrix4 {
var modelViewMatrix = GLKMatrix4Identity
modelViewMatrix = GLKMatrix4Translate(modelViewMatrix, 0, 0, -_depth)
return modelViewMatrix
}

}

关于Swift 相当于这个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48520460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com