十二、多个 target 共用一个 Provider 在之前的样例中,我们都是一个 target 对应一个 Provider。有时我们程序会根据业务逻辑拆分成多个 target,这样 target 可能就会有很多个,如果有多少个 target 我们就创建多少个 Provider,会让应用程序的逻辑复杂化......
我们知道一个材质结合 THREE.Geometry 对象,可以构成 THREE.Mesh 对象。材质就像物体的皮肤,决定了几何体的外表。例如皮肤定义了一个几何体看起来是否像金属、透明与否、或者显示为线框。 本文先简单介绍下 Three.js 里的各种材质,以及它们共有的一些属性.......
九、文件下载的基本用法 1,网络层定义(MyServiceAPI.swift) 这里我只定义了一个枚举值 downloadAsset 用来表示资源下载请求,具体功能如下: 通过传入的资源名称(assetName)自动从 http://www.hangge.com/assets/ 路径下面下载对应的文件。 下载后文件保存在用户文档目录中......
五、THREE.HemisphereLight(环境光) 1,基本介绍 使用 THREE.HemisphereLight 可以创建更加贴近自然的户外光照效果。 THREE.HemisphereLight 不会产生阴影。 THREE.HemisphereLight 的优势: 如果不使用 THREE.HemisphereLight,要模拟户外光照......
有时我们需要判断一张照片是否是原始图片,没有做任何修改(比如许多摄影比赛都要求不能对图片作后期处理)。这个只需要借助 JPEGsnoop 这个小工具即可。 1,软件介绍 JPEGsnoop 是一个能够读取照片各种编码信息(EXIF metadata、IPTC 等等)的软件......
三、THREE.SpotLight(聚光灯光源) 1,基本介绍 THREE.SpotLight 是一种具有锥形效果的光源,该光源拥有产生光的方向和角度。我们可以将其与手电筒或者灯笼产生的光进行对比。 THREE.SpotLight 是最常使用的光源之一,特别是如果我们想要使用阴影的话......
本文接着介绍如何通过 MultipartFormData 的形式同时上传多个文件。并且我们在上传文件的同时还可以一起提交一些其它的参数。这些额外的参数我们可以放在 body 里,也可以跟在 url 地址后面。 下面针对这两种情况分别进行演示。 七、多文件上传(将参数放在 body 中......
JavaScript 并没有直接提供对象或者数组的复制方法。比如下面的代码,我们改变对象 b 的时候,对象 a 也会同时改变。 var a = {v1:1, v2:2}; var b = a; b.v1 = 3; console.log("对象a:", a); console.log("对象b:", b); 控制台输出如下......
十月头条:Swift 正在过时? 今年年初,Swift 语言在 TIOBE 指数排行榜中曾一度进入前十名。不过近期,其成绩在不断下降,本月甚至又回到了第 16 位。 目前多数情况下......
下面接着介绍如何通过 Moya 上传文件。本文首先演示如何以文件流的形式上传文件。注意这种方式一次只能上传一个文件。 六、文件流的形式上传文件 1,基本用法 (1)网络层定义(MyServiceAPI.swift) 只要在 task 属性中,将需要上传的文件 URL 通过 .uploadFile() 返回即可......