草庐IT

points_into_buffer

全部标签

ios - Swift 3 : Segmented Control into TableView. 重新加载表时所选索引丢失

我有一个自定义UITableView和一个带有UISegmentedControl的自定义UITableViewCell。该单元格位于表格的第一行内。问题是我使用valueChanged事件从json加载数据,当我重新加载tableview时,选择索引自动返回到第一段。我该如何解决这个问题?这是我的部分代码:@IBActionfuncsegmentChanged(_sender:UISegmentedControl){switchsender.selectedSegmentIndex{case0:loadIdeas(idRole:[0,1],id_user:1,estado:"toda

arrays - 为什么我不能调用 reduce(into :) on an array literal in Xcode 9. 2?

我正在寻找一种将数组映射到字典的方法并找到了这个post.这很有帮助。我将该帖子中的代码复制到playground中并且可以正常工作。然后我决定更多地使用它:[1,2,3].reduce(into:[Int:String](),{$0[$1]=$1.description})我希望它返回[1:"1",2:"2",3:"3"]但出现编译错误:Cannotsubscriptavalueofincorrectorambiguoustype我试图减少到一个数组:[1,2,3].reduce(into:[Int](),{$0.append($1)})//Iamawarethatthisispoi

ios - swift 错误 : fatal error: Cannot index empty buffer

我是Swift语言的新手。我创建了一个MapKit应用程序,它从Sqlite数据库(最新的FMDB堆栈)中递归地检索MKPointAnnotation数据(纬度、日志和标题)。目的是把一堆兴趣点放在一个MKMapViewDelegate上。我尝试过不使用数组,但mapView.addAnnotation会覆盖任何点并仅显示map上的最后一个点,因此我正在尝试使用数组。我已经创建了一个函数,但是当调用wpoint数组时,我在运行时收到错误“fatalerror:无法索引空缓冲区”。代码如下:funcinitializeRoute(){sharedInstance.database!.op

IOS Swift 读取 PCM Buffer

我有一个Android项目,它读取一个short[]数组,其中包含来自麦克风缓冲区的PCM数据以进行实时分析。我需要将此功能转换为iOSSwift。在Android中,它非常简单,看起来像这样......importandroid.media.AudioFormat;importandroid.media.AudioRecord;...AudioRecordrecorder=newAudioRecord(MediaRecorder.AudioSource.DEFAULT,someSampleRate,AudioFormat.CHANNEL_IN_MONO,AudioFormat.ENC

ios - 使用 set point.x iphone 获取 UIBezierPath point.y

我有一个UIBezierPath当我设置点x时我需要得到点y谢谢 最佳答案 您需要在点之间进行插值。要访问这些点,最简单的方法是将它们存储到NSMutableArray中。创建此数组并添加所有CGPoint,同时将它们添加到绘图例程中的UIBezierPath。如果这不可能,请参阅here关于如何从UIBezierPath中提取点。请参阅下面的代码,了解如何实现您想要的:-(float)getYValueFromArray:(NSArray*)aatXValue:(float)x{NSValue*v1,*v2;floatx1,x2,

ios Metal : multiple kernel calls in one command buffer

我在结合Swift和Metal中实现多个内核函数时遇到问题。我的目标是对图像实现逐blockDCT变换。DCT通过两个矩阵乘法实现。J=H*I*H^-1以下代码显示了内核函数本身以及在swift代码中使用的调用。如果我单独运行每个内核函数,它可以工作,但我无法设法将写缓冲区从第一个内核函数移交给第二个函数。因此,第二个函数总是返回一个仅填充0的缓冲区。所有图像输入和输出缓冲区都是400x400大的RGB(每个分量为16位整数)。矩阵是8x816位整数。是否需要特殊命令来同步不同内核函数的缓冲区读写访问?还是我做错了什么?谢谢你的帮助shaders.metalstructImage3D1

iOS Swift : Trying to use write image buffer to construct video, 未调用 finishWritingWithCompletionHandler。输出视频包含零字节

我试图只从静态图像中写入两帧来构建视频。我一直在绕过时间参数。似乎最后一步finishWritingWithCompletionHandler从未被调用(完成写入......永远不会输出)。只创建了一个零字节.mp4视频。并且没有发生错误。不知道为什么。这是我使用的代码:funccreateBackgroundVideo(CompletionHandler:(path:String)->Void){varmaybeError:NSError?letfileMgr=NSFileManager.defaultManager()letdocDirectory=NSHomeDirectory(

c - 数组元素取消引用和寻址 - &buffer[index] - 在 Swift 中有效吗?

我正在编写一个Swift应用程序,我需要使用C函数从套接字进行一些网络缓冲。Swift通过桥接头导入这些函数,它们需要一个缓冲区指针参数。这两个函数是有效的:read(Sockets,void*buf,intnum);write(Sockets,constvoid*buf,intnum);Swift编译器指出这些函数需要UnsafePointer.我有一些[UInt8]保存我的可写数据并接受我的可读数据的类型。Swift编译器不会提示我写的东西,但是我相信下面的代码没有按照我期望的C语法执行。这是我的读取循环:varindex:Int32=0whileindexbufferSize{t

ios - "SceneKit: error, missing buffer [-1/2]"试图将制服传递给 Metal 着色器时

我已将SCNProgram附加到SceneKit的几何体,并且我正在尝试将制服传递给片段着色器。在我的简单代码片段中,我只是将输出颜色作为统一传递给片段着色器,片段着色器将它作为输出值返回。我已经测试了着色器并且它们可以工作,因为我可以在顶点着色器中成功地旋转一个对象,或者在片段着色器中以不同的颜色绘制一个对象,等等......但问题是当我通过制服时。这是我的片段着色器:structUniforms{float4color;};fragmentfloat4myFragment(MyVertexOutputin[[stage_in]],constantUniforms&uniforms[

swift 4 : Formatting number's into friendly K's

目前正在开发一个对我来说非常有用的简单功能..例如:如果我有1000,它会打印出1.0K,或者1,000,000它将是1M,直到这里一切正常,Whatifiwantedtoturn1,000,000,000into1B?我尝试了以下->funcformatPoints(from:Int)->String{letnumber=Double(from)letthousand=number/1000letmillion=number/1000000letbillion=number/1000000000ifmillion>=1.0{return"\(round(million*10)/10)