草庐IT

img_float

全部标签

ios - 在 Metal 中填充 float 缓冲区

问题:我需要填写一个MTLBuffer的Floats有一个常数值——比如说1729.68921.我还需要它尽可能快。因此我被禁止在CPU端填充缓冲区(即从UnsafeMutablePointer获取MTLBuffer并以串行方式分配)。我的方法理想情况下,我会使用MTLBlitCommandEncoder.fill(),但是AFAIK它只能用UInt8填充缓冲区值(假设UInt8是1个字节长,Float是4个字节长,我不能指定我的Float常量的任意值)。到目前为止,我只能看到2个选项,但两个选项似乎都过大了:创建另一个缓冲区B填充常量值并通过MTLBlitCommandEncoder

iphone - 寻找在 iPad 而不是 iPhone 的 HTML 中有条件地包含 "img src="的方法

尝试编写包含在我们iOS应用中的html帮助文件。对于iPad版本,我希望帮助文件显示一个较小的图形(大约156x204).对于iPhone/iPod,我不想显示图形。除了在文件h_login.html中使用javascript之外:if((navigator.userAgent.match(/iPhone/i))||(navigator.userAgent.match(/iPod/i))){location.replace("h_small_login.html");这需要每个文件的克隆,我还没有找到方法。宁愿继续使用最少的HTML...vanilla,没有CSS,一个单一的“元”开

objective-c - 需要一个 float 以标准形式显示 Obj C

我有一个正在计算过滤器值的应用程序。这些值通常在10^-9值范围内。目前这个计算的值被发送到一个float。有没有一种简单的方法可以强制这个数字以标准形式显示?即x*10^-9而不是长小数。问候 最佳答案 你想要NSNumberFormatter类(class)。具体来说,您希望将numberStyle属性设置为kCFNumberFormatterScientificStyle。像这样的东西:NSNumberFormatter*numFormatter=[[NSNumberFormatteralloc]init];numFormat

ios - [int] = [float] + [int] 时舍入(Obj-C,iOS?)

在这种情况下:floata=0.99999f;intb=1000;intc=a+b;结果c=1001。我发现它发生是因为b被转换为float(特定于iOS),然后a+b没有足够的精度1000.9999并且(为什么?)四舍五入到更高的值。如果a是0.999f,我们得到c=1000-理论上正确的行为。所以我的问题是为什么float四舍五入到更高的值?在哪里描述了这种行为(或惯例)?我在iPhone模拟器、AppleLLVM4.2编译器上对此进行了测试。 最佳答案 在intc=a+b中,整数b先转换为float,再转换为2个float添加

ios - 检查数组是否包含对象 :@(float) in Objective-C can unexpectedly return NO

我有一些方法接收float作为参数,并检查这个float是否在数组中。为此,我首先将float转换为NSNumber。这是我的代码的可测试简化:floataFloat=0.3;NSNumber*aNSNumber=@(aFloat);NSArray*anArray=@[@(0.0),@(0.3),@(1.0)];NSLog(@"%d",[anArraycontainsObject:aNSNumber]);此代码将记录0(即NO),因此表示0.3不在anArray中.如果aFloat是一个“整数”,例如0.0、0.5或1.0,则测试有效并记录1(即YES)。除此以外的任何数字(如上面的0

iOS 在资源中加载本 map 片,并显示在 <img src ='%@' >

我想在iOS中加载本地资源图像,但无法在应用程序中显示(但是当我NSLog时链接已经显示)。这是我的代码NSBundle*myBundle=[NSBundlemainBundle];NSString*imgurl=[myBundlepathForResource:@"list-gotit"ofType:@"png"];htmltext=[NSStringstringWithFormat:@"",imgurl];[self.postviewloadHTMLString:htmltextbaseURL:baseurl];imgsrc将加载我的数据/我认为我的url已经正确(我使用NSLOG

iOS 警告消息 : Incompatible pointer types passing 'CGFloat *' (aka 'double *' ) to parameter of type 'float *'

这导致我的应用出现问题。此错误发生在这一行modff(floatIndex,&intIndex);我需要做什么来解决这个问题?编辑:这是因为&intIndex-(BOOL)isFloatIndexBetween:(CGFloat)floatIndex{CGFloatintIndex,restIndex;restIndex=modff(floatIndex,&intIndex);BOOLisBetween=fabsf(restIndex-0.5f) 最佳答案 我记得CGFloat在32位设备上定义为float,在64位设备上定义为do

ios - 如何将 float 转换为带有千位分隔符和 2 个小数点的 NSString?

我想将floatvalue转换为带有千位分隔符和2个小数点的NSString,但没有成功。附上我的代码:-有什么错误吗?NSString*str=[NSStringstringWithFormat:@"%.2f",[_goodPricefloatValue]];NSLog(@"166-%@",str);//Result=900000.00NSNumber*myNumber=@((int)([_goodPricefloatValue]*100)/100.0);NSLog(@"169-%@",myNumber);//Result=900000NSNumberFormatter*format

iphone - 在 UILabel 中显示 float

我在UILabel中使用float时遇到问题。floatdoubleNum;floatNum=10/20;cashLabel.text=[[NSStringalloc]initWithFormat:@"%f",floatNum];如果我使用“floatNum=10/10;”它正确返回“1.000000000”,但是,如果我输入“floatNum=10/20”,它会返回“0.0000000”。我已经尝试了我所知道的一切,但它不起作用。我知道这是一个愚蠢的错误,但我想不通。节日快乐。:) 最佳答案 您需要将其中一个整数转换为float。

ios - 如何修复 : Cannot assign value of type 'CLLocationDegrees' (aka 'Double' ) to type 'Float!' in Swift 3

我从我的谷歌地图中得到一个坐标,我想将它分配给一个浮点变量,但它显示了这个错误:Cannotassignvalueoftype'CLLocationDegrees'(aka'Double')totype'Float!'funcmarkerButtonClicked(sender:MapButton){letcoord=self.getCenterCoordinate()letaddressObj=Address()addressObj.latitude=coord.latitudeaddressObj.longitude=coord.longitude}funcgetCenterCoo