小编JVE*_*999的帖子

使用three.js,我可以将信息附加到对象,例如URL吗?

我有一个与three.js相关的webgl问题.我想将信息附加到一个对象.例如,当我点击一个对象时,我想检索一些与该对象绑定的信息,如URL,然后使用该信息运行一个函数.

我用来查找对象的代码是:

    var vector = new THREE.Vector3((event.clientX / window.innerWidth) * 2 - 1, -(event.clientY / window.innerHeight) * 2 + 1, 0.5);
    projector.unprojectVector(vector, camera);

    var raycaster = new THREE.Raycaster(camera.position, vector.sub(camera.position).normalize());

    var intersects = raycaster.intersectObjects(objects);

    intersects[0].object.material.color.setHex(Math.random() * 0xffffff);
Run Code Online (Sandbox Code Playgroud)

最后一行是我当前如何操纵对象.该数组objects只是所有对象的数组.问题是我不太了解Raycaster或intersectObjects是如何工作的,或者关于如何将任何信息绑定到对象以便稍后可以调用它.

javascript webgl three.js

20
推荐指数
1
解决办法
8332
查看次数

使用SciPy中的wavfile.write在Python中编写wav文件

我有这个代码:

import numpy as np
import scipy.io.wavfile
import math

rate, data = scipy.io.wavfile.read('xenencounter_23.wav')

data2 = []

for i in range(len(data)):
    data2.append([int(round(math.sin(data[i][0])*3000)), int(round(math.sin(data[i][1])*3000))])

data2 = np.asarray(data2)

print data2

scipy.io.wavfile.write('xenencounter_23sin3.wav',rate,data2)
Run Code Online (Sandbox Code Playgroud)

这打印(截断):

[[-2524  2728]
 [ -423 -2270]
 [ 2270   423]
 ..., 
 [-2524     0]
 [ 2524 -2728]
 [-2270   838]]
Run Code Online (Sandbox Code Playgroud)

wav文件打开并在Windows Media Player中播放,所以至少它的格式正确.但是,当使用Audacity打开它并查看单个样本时,它们都是0,并且一致地文件根本不播放任何声音.

我不明白的是上面列出的那个numpy数组如何变成全0.它应该低于样本的最大值(或者如果它是负的则高于).

python wav scipy

13
推荐指数
1
解决办法
2万
查看次数

当我运行节点时,没有任何反应,永远相同

我安装了node.js和forever.js,当我在终端上运行它们(在Ubuntu 14.04上进行bash)时,没有任何反应.

所以,它看起来像:

#node
#
Run Code Online (Sandbox Code Playgroud)

要么

#forever
#forever --help
#forever listall
#
Run Code Online (Sandbox Code Playgroud)

其他不与节点相关的东西运行正常.

bash ubuntu node.js forever

13
推荐指数
3
解决办法
2万
查看次数

Flutter:为什么 Provider 比只有静态单例的 AppGlobal 类更好?

根据我对 flutter 包的理解Provider,它是一种在小部件之间共享对象的方法。我知道另一种方法是创建一个类,例如AppGlobal,并定义static整个应用程序可以使用的各种变量。有人建议这Provider是一种更好的方法,但我不明白为什么会这样。

dart flutter flutter-provider

13
推荐指数
2
解决办法
2750
查看次数

响应{"code":0,"message":"Transport unknown"}的Socket.io错误请求?

我正在尝试运行socket.io,我得到了一堆这些:

http://domain.com:8080/socket.io/?EIO=2&transport=polling&t=1401421022966-0 400 (Bad Request) 
Run Code Online (Sandbox Code Playgroud)

这是我得到的回应:

{"code":0,"message":"Transport unknown"}
Run Code Online (Sandbox Code Playgroud)

我找不到任何理由.我在某个地方看到它可能会误解客户端,但这就是我能得到的.

javascript node.js socket.io http-status-code-400

12
推荐指数
2
解决办法
3万
查看次数

如何在Python中操作wav文件数据?

我正在尝试读取一个wav文件,然后操作其内容,逐个样本

这是我到目前为止所拥有的:

import scipy.io.wavfile
import math

rate, data = scipy.io.wavfile.read('xenencounter_23.wav')

for i in range(len(data)):
    data[i][0] = math.sin(data[i][0])
    print data[i][0]
Run Code Online (Sandbox Code Playgroud)

我得到的结果是:

0
0
0
0
0
0
Run Code Online (Sandbox Code Playgroud)

等等

它正在读取,因为如果我写,print data[i]我通常得到大小为2的非零数组.

python wav scipy

9
推荐指数
1
解决办法
3万
查看次数

从新对象中运行requestAnimationFrame

我在运行动画时遇到了麻烦.这是在里面var ob1 = function() {};.当被调用时,它会运行一段时间,然后我得到错误Uncaught RangeError: Maximum call stack size exceeded.但是,这种相同的结构在对象之外运行没有问题.

/////////////// Render the scene ///////////////
this.render = function (){

        renderer.render(scene,camera);
        if(isControls == true) controls.update(clock.getDelta());
        this.animate();
        //console.log(true);
        requestAnimationFrame(this.render());
}

/////////////// Update objects ///////////////
this.animate = function (){
        console.log("!");
}
Run Code Online (Sandbox Code Playgroud)

javascript three.js requestanimationframe

7
推荐指数
1
解决办法
3664
查看次数

从JavaScript中的数字中删除小数点

我想删除小数,但保留所有数字.

我能想到的只是找到数字的长度,找出它的大小比它大10,然后乘以.虽然,我找不到如何找到一个数字的长度.

javascript

5
推荐指数
2
解决办法
9137
查看次数

Qt的安装程序文件在Chrome中显示"...是恶意的,Chrome已阻止它"消息

我从qt网站下载了Qt:

http://qt-project.org/downloads

下载后,我收到来自Chrome的消息"qt-opensource-win .... exe是恶意的,Chrome已阻止它." 这是我页面上的默认链接,它是:

Qt Online Installer for Windows (9 MB) (Info)
Run Code Online (Sandbox Code Playgroud)

我也试过下载:

Qt 5.2.1 for Windows 64-bit (VS 2012, 556 MB) (Info)
Run Code Online (Sandbox Code Playgroud)

但是,完成下载后会出现同样的错误.

这是我应该关注的吗?我不记得在我下载Qt的任何其他时间都出现此错误.

qt google-chrome

5
推荐指数
1
解决办法
2370
查看次数

将服务器重新定位到不同的 apache 服务器后,Dart http.MultipartRequest 未将数据发送到 Lumen,Postman 工作正常

我有一个多部分请求,正在尝试从我的 Flutter 应用程序发送到我的远程 Lumen/Apache 服务器。当我在 Homestead 本地托管 Lumen 服务器(运行 nginx)时,这段代码运行良好。

通过 Postman 发送请求时,Lumen 服务器本身会准确响应。我怀疑 Flutter 应用程序根本没有发送任何内容,因为它在服务器移动之前就在工作。由于它不是 Lumen 应用程序,因为它与 Postman 一起使用,所以我认为它与 apache 有关。

我设置的标题http.MultipartRequest()是(在我使用的 Postman 中form-data):

headers['Content-Type'] = 'multipart/form-data';
Run Code Online (Sandbox Code Playgroud)

我还有一个Authorization Bearer: token工作正常的标头,因为应用程序会在运行路线之前呈现未经授权的响应。

我有以下代码:

    ...
    print("Multipart request fields: " + request.fields.toString());
    print("Multipart request files: " + request.files.toString());
    var streamedResponse = await request.send();
    response = await http.Response.fromStream(streamedResponse);
    if (response.statusCode == 200) print('Uploaded!');
Run Code Online (Sandbox Code Playgroud)

我在调试中得到以下输出:

I/flutter ( 7073): Multipart request fields: {productName: new, description: new, price: 30.0, currency: USD, …
Run Code Online (Sandbox Code Playgroud)

apache nginx dart lumen flutter

5
推荐指数
1
解决办法
1177
查看次数